- From: Michael Schneider <schneid@fzi.de>
- Date: Wed, 1 Sep 2010 20:25:06 +0200
- To: "Yoshio FUKUSHIGE" <paatje@cam.hi-ho.ne.jp>
- Cc: <public-owl-dev@w3.org>
Hi Yoshio! >-----Original Message----- >From: Yoshio FUKUSHIGE [mailto:paatje@cam.hi-ho.ne.jp] >Sent: Wednesday, September 01, 2010 4:33 PM >To: Michael Schneider; public-owl-dev@w3.org >Subject: Re: How to put "universal" restrictions to members of two >classes? > > > Thanks Michael, > >(2010/08/31 19:51), Michael Schneider wrote: >> Hi Yoshio! >> >> Your example below is, in the given form, only valid in OWL 2 Full >[1]. But >> you don't need a complete OWL 2 Full reasoner for making it work. Any >> reasoner implementing the OWL 2 RL/RDF rules [2] will give you the >result >> you expect (the OWL 2 RL/RDF rules define a sub-semantics of the >semantics >> of OWL 2 Full). >> >Oh, I almost forgot OWL 2 Full, Many do, no worries! :) >for I've been trying to use only OWL2 DL >with Pellet. > >And I was kind of surprised to see my initial statements are valid (in >OWL 2 Full), >for I almost got the idea that property chain only allows >ObjectProperties as its >constructing blocks, which was wrong, right? No, it was correct that sub property chain axioms only take object properties. It is just that in OWL (2) Full all (RDF) properties happen to be object properties. Even "rdf:type", as you use it in the property chain axiom of your proposed solution, is an object property in OWL Full. In OWL DL, however, rdf:type is not an object property. Rather, if being used in the "normal" way, e.g. in a triple of the form "ex:w rdf:type ex:c", then it is just some fraction of the RDF encoding of the OWL 2 construct for class assertions without any own semantic meaning. You will not even find it being mentioned in the corresponding construct of the OWL 2 Structural Specification (the OWL 2 syntax). Of course, you can still use the term "rdf:type" in property chain axioms directly in the OWL 2 syntax, and the OWL 2 Direct Semantics will even interpret it, since the OWL 2 Direct Semantics allows for interpreting the whole OWL 2 syntax, not only the particular fraction called "OWL 2 DL" (that is, the OWL 2 syntax with the OWL 2 DL constraints being applied; see the beginning of Chap. 3 of the OWL 2 Structural Specification). But this will still not give you the expected reasoning result, since that "rdf:type" property is then only some ordinary object property without any connection to class assertion axioms. >> For example, you can use Ivan Herman's OWL 2 RL reasoner for checking, >which >> is available as an online service at [3]. For your convenience, here >is your >> complete example in a form that can be directly be inserted into >Ivan's >> reasoner. Press "Go" and check for the expected triple >> >> my:MyRecorder my:recordableTo my:MyDisc . >> >> in the result set. >> >I tested the coding with Ivan's OWL 2 RL reasoner and the triple above >was >in the result set. > >But does that mean my statements were valid in OWL2 RL?? If by "valid in OWL 2 RL" you mean that it was a valid OWL 2 RL ontology, then the answer is no. The OWL 2 RL (syntactic!) profile is a sub-syntax of the OWL 2 DL syntax. Hence, since your input has not been a valid OWL 2 DL ontology, it cannot be a valid OWL 2 RL ontology. That you can apply the OWL 2 RL/RDF rules does not mean that you are restricted to the OWL 2 RL syntax. The OWL 2 RL/RDF rules define a semantics (defined by the set of first-order logic axioms the rule set consists of) and can formally be applied to arbitrary RDF, even to "generalized" RDF (e.g. allowing for literals in subject position). Of course, you /may/ restrict the rules' use to the OWL 2 RL syntax, if you like or have to, or to any other fragment of RDF. That's not different from any other semantics. For example, as said above, the OWL 2 Direct Semantics is also not restricted to the OWL 2 DL fragment, although one usually uses it in connection with the OWL 2 DL constraints applied to the OWL 2 Syntax, or with the even more restricted OWL 2 RL syntactic profile. >Given that I'm now using Joseki + Pellet to process SPARQL queries with >dataset with an ontology, >what is your suggestion. please? > >Using some OWL 2 Full/RL? reasoner which can be used with Joseki (then >what are my options?) >or remaining in OWL 2 DL using kind of tricks as Pavel showed me in his >response? >From looking at it, Pavel's solution seems to work well in OWL 2 DL. So go with this solution if you need to use Pellet or some other OWL 2 DL reasoner, or if you want/need to stay in OWL 2 DL. However, I remember that you asked whether there can be a specific property between two classes which indicates - and allows for inferring - a certain relationship between all pairs of instances of these classes. Your own OWL 2 Full solution was pretty obvious (from an OWL 2 Full perspective, at least) and really worked. So it's now kind of a close-modeling-vs-constraining-technology tradeoff, and you have to decide for yourself what has priority for you. In any way, you are in the lucky position that there are working solutions for both approaches. >Best, >Yoshio Cheers, Michael -- Dipl.-Inform. Michael Schneider Research Scientist, Information Process Engineering (IPE) Tel : +49-721-9654-726 Fax : +49-721-9654-727 Email: michael.schneider@fzi.de WWW : http://www.fzi.de/michael.schneider ======================================================================= FZI Forschungszentrum Informatik an der Universitat Karlsruhe Haid-und-Neu-Str. 10-14, D-76131 Karlsruhe Tel.: +49-721-9654-0, Fax: +49-721-9654-959 Stiftung des burgerlichen Rechts, Az 14-0563.1, RP Karlsruhe Vorstand: Prof. Dr.-Ing. Rudiger Dillmann, Dipl. Wi.-Ing. Michael Flor, Prof. Dr. Dr. h.c. Wolffried Stucky, Prof. Dr. Rudi Studer Vorsitzender des Kuratoriums: Ministerialdirigent Gunther Lesnerkraus =======================================================================
Received on Wednesday, 1 September 2010 18:25:42 UTC