Skip to content

UCO semi-open vocabularies seem to use owl:onDatatype incorrectly #593

@ajnelson-nist

Description

@ajnelson-nist

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 for illustration here 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, Result 1.1), 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.512, using the following command from UCO's root directory:

java -jar robot.jar validate-profile \
  --input ontology/uco/vocabulary/vocabulary.ttl \
  --profile DL

The change proposal form is posted in a comment below.

Coordination

  • Tracking in Jira ticket OCUCO-322
  • Administrative review completed, proposal announced to Ontology Committees (OCs) on 2024-08-09
  • Requirements to be discussed in OC meeting, 2024-08-20
  • Requirements Review vote occurred, passing, on 2024-08-20
  • Requirements development phase completed.
  • Solution announced to OCs on 2024-09-11
  • Solutions Approval to be discussed in OC meeting, 2024-09-26
  • Solutions Approval vote occurred, passing, on 2024-09-26
  • Solutions development phase completed.
  • Backwards-compatible implementation merged into develop for the next UCO release
  • Backwards-compatible implementation merged into develop for the next CASE release
  • develop state with backwards-compatible implementation merged into develop-2.0.0 for UCO
  • develop state with backwards-compatible implementation merged into develop-2.0.0 for CASE
  • Backwards-incompatible implementation merged into develop-2.0.0 (N/A)
  • Milestone linked
  • Documentation logged in pending UCO release page
  • Documentation logged in pending CASE release page
  • Prerelease publication: CASE develop branch updated to track UCO's updated develop branch
  • Prerelease publication: CASE develop-2.0.0 branch updated to track UCO's updated develop-2.0.0 branch

Footnotes

  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.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions