- From: Ivan Herman <ivan@w3.org>
- Date: Thu, 10 Apr 2008 09:42:06 +0200
- To: Carsten Lutz <clu@tcs.inf.tu-dresden.de>
- CC: Bijan Parsia <bparsia@cs.man.ac.uk>, OWL Working Group WG <public-owl-wg@w3.org>
- Message-ID: <47FDC4CE.1050401@w3.org>
(I was not sure which mail to answer in the thread, because while I was sleeping, new mails came in from Bijan, Deb, Michael,... So I decided to be a narcissist and reply my own mail:-) Carsten, it is my turn to be the target for flames:-) So here is how I understand things at this moment and how I would formulate it for outsiders: [[[ In some cases, the emphasis is on possibly very large concept hierarchies and the corresponding queries, rather than on sophisticated characterizations of, and with properties (roles). EL++ is a profile where such queries can be responded in polynomial time. In other cases, the emphasis is to provide a minimal classification and federation vocabulary over a possibly very large set of data (typically in the form of RDF triplets), while maintaining efficient querying. Two such profiles are defined: DL-Lite, that can be implemented on top of traditional database systems using query rewriting, and OWL-R, that can be implemented using basic rule systems. ]]] I hope this is at least factually correct. It is interesting to note that on such high level there is no real difference between DL-Lite and OWL-R, and the only way to differentiate them on that level is how they are implemented. This is not necessarily a problem, just an observation. I would probably stay on that level in the profile document as part of the intro, and then dive into the technical details that Carston provided. In the primer I would more or less repeat these, and I would then add examples for each of the three profiles on what can and cannot be done, typically, and what type of inferences cannot be done when compared to DL. I also believe that the names of the profiles should somehow reflect the high level characterization. Something like: EL++ -> OWL HI (for hierarchies?) DL Lite -> OWL DB OWL-R -> OWL Rules But I am really not sure. Ivan Ivan Herman wrote: > Carsten, > > as far as I am concerned, this thread was actually very helpful. > Followup tomorrow... > > Thank you > > ivan > > Carsten Lutz wrote: >> A wrap-up after my longish mail. My view on the use of fragments is: >> >> - you want to design an ontology and efficiently reason about it >> -> EL++ >> - you want to query large-scale data w.r.t. a very lightweight ontology >> -> DL-Lite >> - you want to enrich RDF with some OWL expressivity retaining efficiency >> of reasoning >> -> OWL-R >> >> I expect that not everybody agrees. True? >> >> greetings, >> Carsten >> >> PS: Zhe: can you provide a one-liner describing the most typical scenario >> for OWL-R? We are clearly not restricted to a one-liner in our >> documents, but it would help to understand your view. >> >> On Wed, 9 Apr 2008, Carsten Lutz wrote: >> >>> >>> I totally agree with Bijan to put a note to the intro for now. Still, >>> here is a bit of discussion of fragments (maybe for future use). >>> >>> On Wed, 9 Apr 2008, Ivan Herman wrote: >>>> >>>> [[[ >>>> - "The EL++ profile is for efficient reasoning about large-scale >>>> ontologies formulated on a high level of abstraction." >>>> ]]] >>>> >>>> To be honest, I do not understand that. I am not playing dumm; I >>>> _really_ do not understand what you mean! >>> >>> Can you elaborate? "Efficient reasoning about large-scale ontologies" >>> sounds reasonably comprehensible. Is it the high level of abstraction >>> that bothers you? Here is a more detailed explanation of what I mean, >>> phrased in a possibly more controversial style that I would not use in >>> the documents: >>> >>> EL++ is designed for use in the construction of real (and large scale) >>> ontologies such as SNOMED and NCI. IMHO, this already distinguishes it >>> from DL-Lite and OWL-R as, in my very personal opinion, the latter two >>> are not good as ontology languages: >>> >>> - DL-Lite is very weak: it does not allow at all to relate two classes >>> in terms of a property (neither SomeValuesFrom nor AllValuesFrom >>> available). >>> >>> - OWL-R allows different constructs on the left-hand side and right-hand >>> side of SubClassOf. For example, ObjectSomeValuesFrom is allowed only >>> on the left. This means that I cannot use *definitions* in my ontology, >>> i.e., statements that give both necessary and sufficient conditions for >>> class membership. As an example, take >>> >>> "A Father is a Human which has a Child" >>> >>> To say this, I need to say that i) Father is a subclass of the >>> intersection of Human and (someValuesFrom hasChild Human) and >>> (ii) the intersection of Human and (someValuesFrom hasChild Human) >>> is a subclass of Father. Such symmetric definitions are standard, >>> but cannot be made if the left- and right-hand sides of SubClassOf >>> admit different constructs. >>> >>> This does not at all mean that DL-Lite and OWL-R are useless. To me, >>> they are constraint languages rather then ontology languages, and they >>> are useful for data access and from an RDF perspective. But if you >>> want to *design an OWL ontology*, you may not be happy with DL-Lite >>> and OWL-R (and indeed, I know of no ontologies at all formulated in >>> these languages). >>> >>> Back to the "high level of abstraction": the benefit of EL++ over full >>> OWL DL as an ontology language is that is admits efficient (in the >>> sense of polytime) reasoning. You have to pay for this advantage by >>> giving up expressive power. But we should not say to a user "use it if >>> you want to give up expressive power". That's simply not the right way >>> to put it. The typical use pattern of EL++ is to give a much less >>> fine-grained modelling than with a more expressive language, see >>> e.g. SNOMED and NCI. In other words: representing things in a formal >>> language *always* means abstraction. Even in full OWL 2 and even in >>> first-order logic, there are a lot of standard things that are not >>> expressible. When using EL++ instead of OWL DL, this simply means that >>> you have to abstract even further than in OWL DL. This is what the >>> switch to a more lightweight ontology language means to the user. >>> >>>> [[[ >>>> - "The DL-Lite profile is for using conventional database systems to >>>> efficiently query large amounts of data in the presence of a very >>>> lightweight ontology." >>>> - "The OWL-R profile is for efficient rule-based reasoning about >>>> lightweight ontologies and potentially large amounts of data." >>>> ]]] >>>> >>>> The interesting thing is that, from a user point of view and based >>>> on those two statements, there is no clear reason why choosing one >>>> over the other! >>> >>> There is, and I tried to capture it in the slogans: If you want to use >>> a conventional and off-the-shelf database system without modifying it >>> in any way whatsoever, you can only use DL-Lite, but (provably!) not >>> OWL-R. If you want to do forward chaining, OWL-R is for you (though >>> you could also use DL Lite, and would then get a different kind of >>> expressive power). >>> >>> But let me also say this: it is naive to think that there is always a >>> clear reason to use an ontology language and not another. In the end, >>> users will anyway have to look at the provided expressivity to decide >>> whether they can live with it. >>> >>>> Both profiles are for lightweight ontologies and large amount of >>>> data.... _That_ statement I do understand and like. But then... why >>>> having _both_ DL-Lite and OWL-R? >>> >>> Because they are orthogonal in expressive power, and target a different >>> use (conventional DBs vs rules, see above). >>> >>>> Is there a way to differentiate between the terms 'lightweight' >>>> ontologies? Can we say that OWL-R is 'lighter' than DL-Lite? >>> >>> They are orthogonal in expressive power, but to me DL-Lite "feels" >>> lighter than OWL-R. I intended to reflect this in my slogans: "very >>> lightweight" for DL-Lite as opposed to "lightweight" for OWL-R. >>> >>>> To be more positive:-), I guess _a_ differentiating factor is the >>>> technology that can be used to implement those. Rule based means >>>> that I can implement OWL-R via either some simple (Horn?) rule >>>> engine or a simple procedural environment easily. I am not sure how >>>> one can characterize the DL-Lite implementation engine. >>> >>> Query rewriting + off-the-shelf database system. >>> >>> greetings, >>> Carsten >>> >>> -- >>> * Carsten Lutz, Institut f"ur Theoretische Informatik, TU Dresden * >>> * Office phone:++49 351 46339171 >>> mailto:lutz@tcs.inf.tu-dresden.de * >>> >>> >> >> -- >> * Carsten Lutz, Institut f"ur Theoretische Informatik, TU >> Dresden * >> * Office phone:++49 351 46339171 >> mailto:lutz@tcs.inf.tu-dresden.de * > -- Ivan Herman, W3C Semantic Web Activity Lead Home: http://www.w3.org/People/Ivan/ PGP Key: http://www.ivan-herman.net/pgpkey.html FOAF: http://www.ivan-herman.net/foaf.rdf
Received on Thursday, 10 April 2008 07:42:47 UTC