cordawyn / spira

Fork of Spira with experimental branches, occasionally merged upstream.
http://blog.datagraph.org/2010/05/spira
The Unlicense
8 stars 2 forks source link

Allow the redefinition of properties on subclasses #14

Closed abrisse closed 11 years ago

abrisse commented 11 years ago

Signed-off-by: Aymeric Brisse aymeric.brisse@perfect-memory.com

cordawyn commented 11 years ago

Do you think it's a good idea to redefine properties on children? Theoretically, this should cause inconsistency with the reasoner. Especially when you replace a collection with a single property. I'll need to check with RDF(S) specs on that, but I don't remember such cases described. Perhaps it's up to the reasoner implementation. Any thoughts?

abrisse commented 11 years ago

As you know cardinalities restrictions on properties are subClasses so operate not at the property definition but at the class definition. (See OWL spec). For example:

<owl:Class rdf:ID="AudioEncodingProfile">
  <rdfs:subClassOf>
    <owl:Restriction>
      <owl:onProperty rdf:resource="#hasFormat"/>
      <owl:allValuesFrom rdf:resource="#AudioFormat"/>
    </owl:Restriction>
  </rdfs:subClassOf>
  <rdfs:subClassOf rdf:resource="#MediaWrapperEncodingProfile"/>
</owl:Class>

To answer your question concerning the reasoner, I don't think it can lead to any problem since it respects the OWL specs.