[docs]definduce_schema_view(self)->SchemaView:logger.info(f"Inducing schema view for {self.handle}")sb=SchemaBuilder()schema=sb.schemaforcollection_nameinself.file:sb.add_class(collection_name)hdf5_group=self.file[collection_name]forfieldinhdf5_group:iffield=="_id":continuesd=SlotDefinition(field)ifisinstance(hdf5_group[field][()],list):sd.multivalued=Truesb.schema.classes[collection_name].attributes[sd.name]=sdsb.add_defaults()forcls_nameinschema.classes:ifcls_nameinself.metadata.collections:collection_metadata=self.metadata.collections[cls_name]ifcollection_metadata.attributes:delschema.classes[cls_name]cls=ClassDefinition(name=collection_metadata.type,attributes=collection_metadata.attributes)schema.classes[cls.name]=clsreturnSchemaView(schema)