Prevent empty structs if no attributes, relationships or fetched properties exist
Fix conflicting return type by making subentity's objectID class a subclass of the superentity's objectID class