owlcs / owlapi

OWL API main repository
821 stars 315 forks source link

Range as abbreviated IRI in annotation property frame, Manchester syntax #1095

Open daniilsvc opened 1 year ago

daniilsvc commented 1 year ago

Problem description

According to Manchester syntax IRI := fullIRI | abbreviatedIRI | simpleIRI. So IRI can be abbreviated IRI. But if we represent Range field of AnnotationPropertyFrame as abbreviated IRI then it can't be parsed by OWL API (tried with version 4.5.20).

Exapmle

If we transform BDO into Manchester syntax with Protege we can see next AnnotationPropertyFrame in result:

AnnotationProperty: count

    Annotations: 
        rdfs:label "count"^^xsd:string

    Domain: 
        <http://purl.org/skeletome/bonedysplasia#Gene_Mutation>

    Range: 
        <http://www.w3.org/2001/XMLSchema#nonNegativeInteger>

If we change Range field to

Range:
    xsd:nonNegativeInteger

then it can't be parsed with OWL API.

The point is that if some tool generates .omn file with IRI in abbreviated form (which is allowed according to OWL standard) it becomes inconsistent with OWL API.