Open adhamhashibon opened 1 year ago
Possible solution:
enhance the generator in _pp_list_of_labels_or_uids
to take into account non name spaced entities. Currently this is checked for the root entity assuming all other superclasses belong to the name space.
--> We can add an if else
inside the generator like so:
labels = ( f"{entity.label} ({entity.namespace.name} )" if entity.namespace else f"{entity.label}" for entity in entities )
and essentially reduce the lines needed, and get the proper result:
- Ontology individual:
identifier: d77a2f2e-e460-4b11-919a-15f7fc8f943c
type: Person (foaf )
superclasses: Person (foaf ), Spatial Thing, Agent (foaf ), Thing (owl )
will integrate this probably with the fix to issue #853 as it also requires a fix to the pretty_print.
seems like pretty_print expects a that all superclasses of a class belong to a loaded name space. If for example we load the FOAF namespace and ontology, which uses internally geo, geo is not loaded as a name space, the superclass of a
Person
is ageo:SpatialThing
. Usingpretty_print
on aPerson
instance fails:fails with
AttributeError: 'NoneType' object has no attribute 'name'
at end of a longish message.