ucoProject / UCO

This repository is for development of the Unified Cyber Ontology.
Apache License 2.0
73 stars 34 forks source link

`owl:Datatype` mistakenly used when `rdfs:Datatype` is intended #584

Closed ajnelson-nist closed 2 months ago

ajnelson-nist commented 5 months ago

Bug description

OWL does not have a concept owl:Datatype, but it appears in one of the SHACL reviewing shapes of OWL syntax. (OWL does have a concept owl:DatatypeProperty, which may have contributed to masking this oversight.)

https://github.com/ucoProject/UCO/blob/1.3.0/ontology/owl/owl.ttl#L147-L162

This was not caught by the "upstream" design-vocabulary tests (IRI typo checkers for RDF, RDFS, and OWL) in Issue 488 because the concept reference occurred in a SPARQL query, which is not reviewed by the concept typo-checking function.

This is a straightforward fix, and will be handled with the bug-fix workflow, not requiring a committee vote. The fix will still receive testing through the CASE example repositories.

Steps to reproduce

This should be flagged as an error:

@prefix ex: <http://example.org/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

ex:ClassDatatype-1
    a
        owl:Class ,
        rdfs:Datatype
        ;
    .

owl.ttl currently (UCO 1.3.0) considers that conformant.

Coordination

ajnelson-nist commented 5 months ago

It is possible to spell the affected shapes and similar shapes using other SHACL constructs aside from SPARQL, which would enable Issue 488's testing to catch this kind of error. But, I intend to handle that with a proposal requiring at least one committee vote. If there's a nontrivial testing impact from this bugfix proposal, this issue might morph to become that syntax change proposal too.

ajnelson-nist commented 3 months ago

No issues arose in testing. This Issue is proceeding as a bugfix proposal, with no committee action requested.