The document OWL 2 Mapping to RDF Graphs specifies the subtractive parsing process used to parse an RDF graph as an OWL ontology.
When using an externally-developed tool to try reviewing UCO's current OWL conformance, I saw some issues reported around the semi-open vocabularies. See e.g. vocabulary:BitnessVocab, chosen only because it is short:
vocabulary:BitnessVocab
a rdfs:Datatype ;
rdfs:label "Bitness Vocabulary"@en-US ;
rdfs:comment "Defines an open-vocabulary of word sizes that define classes of operating systems."@en ;
owl:equivalentClass [
a rdfs:Datatype ;
owl:onDatatype xsd:string ;
owl:oneOf (
"32"^^vocabulary:BitnessVocab
"64"^^vocabulary:BitnessVocab
) ;
] ;
.
It appears owl:onDatatype is incorrect to use in this definition. From reviewing the OWL2--RDF document noted above, the only OWL construct that predicate appears in is DatatypeRestriction (Table 12, last row; Table 1, a sole row in the middle).
Due to the subtractive nature of the OWL parsing process (described recently in the competencies under Issue 591), that predicate will be left "dangling" after the structure pertaining to owl:oneOf is consumed and removed from the graph. (The reverse seems unlikely, because no owl:withRestrictions predicate is present.)
It appears it is necessary to remove all occurrences of [] owl:onDatatype xsd:string . from the UCO (and CASE) vocabulary namespaces.
Steps to reproduce
This is among the issues reported from ROBOT 1.9.5[^1][^2], using the following command from UCO's root directory:
[^1]: Participation by NIST in the creation of the documentation of mentioned software is not intended to imply a recommendation or endorsement by the National Institute of Standards and Technology, nor is it intended to imply that any specific software is necessarily the best available for the purpose.
[^2]: This Issue is not a suggestion to add that tool to UCO's test suite.
Bug description
The document OWL 2 Mapping to RDF Graphs specifies the subtractive parsing process used to parse an RDF graph as an OWL ontology.
When using an externally-developed tool to try reviewing UCO's current OWL conformance, I saw some issues reported around the semi-open vocabularies. See e.g.
vocabulary:BitnessVocab
, chosen only because it is short:It appears
owl:onDatatype
is incorrect to use in this definition. From reviewing the OWL2--RDF document noted above, the only OWL construct that predicate appears in isDatatypeRestriction
(Table 12, last row; Table 1, a sole row in the middle).Due to the subtractive nature of the OWL parsing process (described recently in the competencies under Issue 591), that predicate will be left "dangling" after the structure pertaining to
owl:oneOf
is consumed and removed from the graph. (The reverse seems unlikely, because noowl:withRestrictions
predicate is present.)It appears it is necessary to remove all occurrences of
[] owl:onDatatype xsd:string .
from the UCO (and CASE) vocabulary namespaces.Steps to reproduce
This is among the issues reported from ROBOT 1.9.5[^1][^2], using the following command from UCO's root directory:
[^1]: Participation by NIST in the creation of the documentation of mentioned software is not intended to imply a recommendation or endorsement by the National Institute of Standards and Technology, nor is it intended to imply that any specific software is necessarily the best available for the purpose. [^2]: This Issue is not a suggestion to add that tool to UCO's test suite.