Closed aucampia closed 3 years ago
Since the CloseNamespace
class is just to be used like type hinting - to help people do the right thing - all PROV terms should be present.
Double checking, I make the missing terms to be:
[
'aq',
'category',
'component',
'constraints',
'definition',
'dm',
'editorialNote',
'editorsDefinition',
'inverse',
'n',
'order',
'qualifiedForm',
'sharesDefinitionWith',
'unqualifiedForm'
]
It seems that PROV mistakenly claims to define two RDFS terms:
rdfs:comment
rdf:type owl:AnnotationProperty ;
rdfs:comment ""@en ;
rdfs:isDefinedBy <http://www.w3.org/ns/prov-o#> ;
.
rdfs:label
rdf:type owl:AnnotationProperty ;
rdfs:comment ""@en ;
rdfs:isDefinedBy <http://www.w3.org/ns/prov-o#> ;
.
So, ignoring those, I'll just add the missing terms.
Currently there are some terms defined in http://www.w3.org/ns/prov.ttl that are not in
rdflib.namespace.PROV
.The only missing terms that match
[] rdfs:isDefinedBy <http://www.w3.org/ns/prov-o#> .
are[] rdf:type owl:AnnotationProperty .
, butrdflib.namespace.PROV
already contains some terms which are annotation properties such aswasRevisionOf
andspecializationOf
, however these terms are also object properties, so I guess there is some argument to be made the extra properties should not be inrdflib.namespace.PROV
, however at the very least the inclusion criteria forrdflib.namespace.PROV
should be clarified and documented in it's docstring.I made a test to check it which can be found here: https://gitlab.com/aucampia/contrib/rdflib/-/blob/master/tests/test_namespace.py#L17
Output of the test is below, first element in tuples are the term URI, second is the ontology it was defined in.