Hermit and Literals

已查看 71 次
跳至第一个未读帖子

Alexandre Rademaker

未读,
2015年8月20日 01:45:242015/8/20
收件人 HermiT Users
I have an ontology that says

wn30:lexicalForm
    a rdf
:Property, owl:DatatypeProperty;
    rdfs
:comment "A datatype relation between Word and its lexical form."@en-us ;
    rdfs
:domain wn30:Word ;
    rdfs
:range rdfs:Literal .
    rdfs
:subPropertyOf rdfs:label .

wn30:Word
    a rdfs:Class, owl:Class ;
    rdfs:subClassOf [
        a owl:Restriction ;
        owl:onProperty wn30:sense ;
        owl:someValuesFrom wn30:WordSense
    ], [
        a owl:Restriction ;
owl:onProperty wn30:lexicalForm ;
        owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ;
        owl:onDataRange rdfs:Literal
    ] ;
    owl:disjointWith wn30:WordSense .

So I am expecting that adding the ABOX below to the ontology I would have an inconsistency ontology because of the two lexicalForm values for the same entity:

:ws a wn30:WordSense ;
   wn30
:word :w1 ;
   wn30
:word :w2 .

:w1 a wn30:Word .
:w2 a wn30:Word .

:w1 wn30:lexicalForm "w1 form" ;
    wn30
:lexicalForm "w2 form" .

but Hermit didn't complain 

$ java -jar /usr/local/HermiT/HermiT.jar --classify test-complet.rdf

Only after I remove the axiom 

wn30:lexicalForm rdfs:subPropertyOf rdfs:label .

I got the expected result

$ java -jar /usr/local/HermiT/HermiT.jar --classify test-complet.rdf
Exception in thread "main" org.semanticweb.owlapi.reasoner.InconsistentOntologyException: Inconsistent ontology
at org.semanticweb.HermiT.Reasoner.throwInconsistentOntologyExceptionIfNecessary(Unknown Source)
at org.semanticweb.HermiT.Reasoner.checkPreConditions(Unknown Source)
at org.semanticweb.HermiT.Reasoner.precomputeInferences(Unknown Source)
at org.semanticweb.HermiT.cli.CommandLine$ClassifyAction.run(Unknown Source)
at org.semanticweb.HermiT.cli.CommandLine.main(Unknown Source)

The only document that I found a possible explanation is Section 3.1.1 of http://www.w3.org/TR/owl-guide/. It seems to indicate that rdfs:Label is considered an annotation property, that is, it is ignored and considered as a documentation only. Am I right? 


OWL 2 allows ontologies, anonymous individuals, and axioms to be annotated; furthermore, annotations themselves can contain additional annotations. All these types of annotations, however, have no semantic meaning in OWL 2 and are ignored in this document. OWL 2 declarations are used only to disambiguate class expressions from data ranges and object property from data property expressions in the functional-style syntax; therefore, they are not mentioned explicitly in this document.


but it didn't say that rdfs:label is an annotation propery. This is only mentioned at http://www.w3.org/TR/2012/REC-owl2-syntax-20121211/ 


For annotations properties note that annotations are not "semantic-free" under the OWL 2 RDF-Based Semantics. Just like every other triple or set of triples occurring in an RDF graph, an annotation is assigned a truth value by any given OWL 2 RDF-Based interpretation. Hence, although annotations are meant to be "semantically weak", i.e., their formal meaning does not significantly exceed that originating from the RDF Semantics specification, adding an annotation may still change the meaning of an ontology. A similar discussion holds for statements that are built from ontology properties, such as owl:imports, which are used to define relationships between two ontologies.





Ignazio Palmisano

未读,
2015年8月20日 02:45:012015/8/20
收件人 Alexandre Rademaker、HermiT Users
On 20 August 2015 at 06:45, Alexandre Rademaker <arade...@gmail.com> wrote:
> I have an ontology that says
>
> wn30:lexicalForm
> a rdf:Property, owl:DatatypeProperty;
> rdfs:comment "A datatype relation between Word and its lexical
> form."@en-us ;
> rdfs:domain wn30:Word ;
> rdfs:range rdfs:Literal .
> rdfs:subPropertyOf rdfs:label .

This is a datatype property that's also an annotation property. This
is forbidden punning, and, depending on the parser, the property will
be seen either as a datatype property or an annotation property.
As you mention below, annotation properties do not have semantic value
and reasoners can ignore them. This would be what's happening here, I
believe.
rdfs:label is a built in annotation property, described here:
http://www.w3.org/TR/owl-semantics/syntax.html

HTH,
I.

>> For annotations properties note that annotations are not "semantic-free"
>> under the OWL 2 RDF-Based Semantics. Just like every other triple or set of
>> triples occurring in an RDF graph, an annotation is assigned a truth value
>> by any given OWL 2 RDF-Based interpretation. Hence, although annotations are
>> meant to be "semantically weak", i.e., their formal meaning does not
>> significantly exceed that originating from the RDF Semantics specification,
>> adding an annotation may still change the meaning of an ontology. A similar
>> discussion holds for statements that are built from ontology properties,
>> such as owl:imports, which are used to define relationships between two
>> ontologies.
>
>
>
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "HermiT Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to hermit-users...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
回复全部
回复作者
转发
0 个新帖子