added CachedReferenceField restriction to use in EmbeddedDocument