- From: Jos De_Roo <jos.deroo@agfa.com>
- Date: Wed, 14 Apr 2004 21:54:34 +0200
- To: "Benjamin Nowack <bnowack" <bnowack@appmosphere.com>
- Cc: Seth Ladd <seth@picklematrix.net>, www-rdf-logic@w3.org
On 2004-04-14 10:01 UTC Benjamin Nowack wrote: > On 14.04.2004 07:52:17, Seth Ladd wrote: >> >> Hello, >> >> Forgive me if this isn't the right place to ask Euler questions, but I >> haven't been able to find a mailing list or contact for Euler. If there >> is a better place, please let me know. >> >> I am trying to write some tests using owl:hasValue and run it through >> Euler. Unfornately, I'm not having much luck. I am trying say "any >> object that has a property "dc:subject" and a value of "foo" is an >> instance of a :Foo class". I do it with: >> >> :Foo a owl:Class ; >> rdfs:subClassOf [ a owl:Restriction ; >> owl:onProperty dc:subject ; >> owl:hasValue^^xsd:string "foo" ] . >> >> I then give it the facts: >> >> :foo a owl:Thing ; dc:subject^^xsd:string "foo" . >> dc:subject a owl:DatatypeProperty ; rdfs:range xsd:string . >> >> Then I ask: >> >> _:X a :Foo . >> >> But I don't get any proofs. Of course, I could be asking the question >> incorrectly. Before I go down that route, I want to see if anyone knows >> if Euler can handle the above owl:hasValue usage. > > hi seth, > your class description above says that any instance of Foo will > have at least one dc:subject value "foo". that's the other way round that's exactly what I also thought... > and not what you intended, I guess (i.e. there still can be non-Foo > individuals with a dc:subject of "foo"). Euler could (if owl stuff is > supported) infer class membership if Foo was described as a complete > class via an owl:equivalentClass construct: > > <owl:Class rdf:ID="Foo"> > <owl:equivalentClass> > <owl:Restriction> > <owl:onProperty rdf:resource="&dc;subject"/> > <owl:hasValue rdf:datatype="&xsd;string">foo</owl:hasValue> > </owl:Restriction> > </owl:equivalentClass> > </owl:Class> quite and with the other facts it then looks like http://eulersharp.sourceforge.net/temp/sethP.rdf plus we assume http://eulersharp.sourceforge.net/2003/03swap/owl-rules http://eulersharp.sourceforge.net/2003/03swap/rdfs-rules and then asking http://eulersharp.sourceforge.net/temp/sethC.n3 results in http://eulersharp.sourceforge.net/temp/sethE.n3 (i.e. some kind of Evidence/Explanation, but remark that we internally convert an owl:equivalentClass in a bidirectional rdfs:subClassof and that is not shown in that explanation but is in the source code) >> Thanks for your tips or ideas! >> Seth > > hope that helps. > > best, > benjamin > > -- > Benjamin Nowack > > Kruppstr. 82-100 > 45145 Essen, Germany -- Jos De Roo, AGFA http://www.agfa.com/w3c/jdroo/
Received on Wednesday, 14 April 2004 15:59:57 UTC