tetherless-world / dco-ontology

Deep Carbon Observatory Ontology
Creative Commons Zero v1.0 Universal
1 stars 0 forks source link

Multi-typed annotation properties? #7

Closed zednis closed 9 years ago

zednis commented 9 years ago

dco:inOrganization is defined as both an owl:AnnotationProperty and owl:ObjectProperty.

According to the OWL spec the OWL-DL profile defines annotation and object properties as disjoint and annotation properties are not allowed in property axioms (range, domain, subclass, inverseOf)

from http://www.w3.org/TR/owl-ref/#Header

The sets of object properties, datatype properties, annotation properties and ontology properties must be mutually disjoint. Thus, in OWL DL dc:creator cannot be at the same time a datatype property and an annotation property. ... Annotation properties must not be used in property axioms. Thus, in OWL DL one cannot define subproperties or domain/range constraints for annotation properties.

from dco.ttl

dco:inOrganization
      a       owl:AnnotationProperty , owl:ObjectProperty ;
      rdfs:domain foaf:Person ;
      rdfs:label "organization"@en-US ;
      rdfs:range foaf:Organization ;
      rdfs:subPropertyOf dco:inOrganization , owl:topObjectProperty ;
      owl:inverseOf dco:hasPeople .

I think we should remove the assertion of type owl:AnnotationProperty for dco:inOrganization.

zednis commented 9 years ago

Same issue with dco:hasPeople.

zednis commented 9 years ago

Side question - does this basically break VIVO forms for annotation properties? If annotation properties cannot have domains or ranges then are they basically invisible on VIVO forms?

zednis commented 9 years ago

dco:dcoId and dco:hasLatitude also exhibit this issue.

dco:hasLatitude
      a       owl:FunctionalProperty , owl:AnnotationProperty , owl:DatatypeProperty ;
      rdfs:label "latitude (decimal)"@en-US .

dco:dcoId
      a       owl:FunctionalProperty , owl:AnnotationProperty , owl:DatatypeProperty ;
      rdfs:domain dco:Object ;
      rdfs:label "DCO ID"@en-US ;
      rdfs:range xsd:anyURI ;
      rdfs:subPropertyOf owl:topDataProperty , dco:dcoId .
mrpatrickwest commented 9 years ago

removed owl:AnnotationProperty from dco:dcoId, dco:hasLatitude, dco:inOrganization, dco:hasPeople