- From: Jim Hendler <hendler@cs.rpi.edu>
- Date: Tue, 12 Feb 2008 11:17:31 -0500
- To: Jim Hendler <hendler@cs.rpi.edu>
- Cc: Michael Schneider <schneid@fzi.de>, <public-owl-wg@w3.org>
obviously there is a "o" missing in the below, please don't beat me up... On Feb 12, 2008, at 10:43 AM, Jim Hendler wrote: > > Just to be clear where I stand - I have no objection to us doing a > formal semantics for OWL 1.1 Full, and Michael's approach would be > the one that makes most sense. However, I also believe we would > need to provide an explanation that is more "human > readable" (operational or axiomatic semantcs or a god reference) > because most Web App developers I know have told me they don't > really understand the model theory stuff (which isn't that > surprising, because after 30 years as an AI professor, I admit that > I don't fully understand all the details) > -JH > p.s. again, to be clear, this is my "druthers" > > > On Feb 12, 2008, at 10:12 AM, Michael Schneider wrote: > >> Hello WG! >> >> My ACTION-78 [0] is to explain what it means to define OWL-1.1-Full >> as a >> "delta" to OWL-1.0-Full. There was a straw poll about this question >> at the >> last telecon, but some people asked what this actually means. Here >> is my >> understanding of it. >> >> In short, the idea is to take the current OWL-1.0-Full semantics >> [1] as a >> base, and to add semantics for each of the new language constructs in >> OWL-1.1 (e.g. QCRs). This "adding" of semantics would be performed by >> defining a set of "semantic conditions" to treat the new OWL-1.1 >> vocabulary, >> and to add these semantic conditions to those which already exist for >> OWL-1.0-Full. By this, one would follow the same approach which was >> taken >> for defining OWL-1.0-Full as a "delta" to RDFS semantics. This >> approach >> would automatically maintain backwards compatibility to OWL-1.0- >> Full and >> RDF(S) in the sense that every entailment of RDF(S) and OWL-1.0- >> Full is also >> an entailment of OWL-1.1-Full. >> >> I am going to elaborate on this idea now. I will first talk about >> what it >> means that OWL-Full is a "semantic extention of RDFS". I will then >> point to >> the observation that OWL-Full semantics is organized in a "layered" >> style. >> Based on this, I will argue that a "delta" just means an additional >> semantic >> layer for OWL-1.1-Full. There will also be an example for a "semantic >> condition", which is the basic building block of a semantic layer. >> >> == 1. OWL-Full as a "semantic extention of RDF(S)" == >> >> The OWL-1.0-Full spec [1] calls OWL-Full a "semantic extention of >> RDF[S]" in >> its first sentence, and points to the RDF semantics spec [2] for a >> definition of this term [3]. What this means is the following: >> >> The semantics of RDF(S) is a model theoretic semantics, which is >> presented >> in the form of a set of "semantic conditions". These semantic >> conditions are >> "IF->THEN" rules, which map one or more RDF triples in an RDF graph >> to their >> respective mathematical meaning (see the example of such a semantic >> condition below). OWL-Full only adds additional semantic conditions >> to the >> existing semantic conditions of RDFS. >> >> These additional semantic conditions of OWL-Full are primarily >> intended to >> deal with the specific OWL vocabulary (e.g. 'owl:disjointWith'). >> There are >> also a few additional semantic conditions which extend the >> semantics for the >> RDFS vocabulary (e.g. 'rdfs:subClassOf', see the example below). >> But most of >> the semantics for RDFS vocabulary is already specified by RDFS >> itself. So >> OWL-Full simply "inherits" parts of its semantics from RDFS, and >> augments it >> with own semantic conditions. >> >> == 2. The layered architecture of OWL-Full semantics === >> >> OWL-Full does not only inherit parts of its semantics from RDFS, >> but it also >> copycats RDFS in defining the /style/ how the semantics are >> presented. RDFS >> itself is a semantic extention to RDF. RDFS augments the existing >> semantic >> conditions of RDF by own semantic conditions for the specific RDFS >> vocabulary (e.g. 'rdfs:Class'). And even RDF is a semantic >> extention to so >> called "Simple" semantics. This will also be demonstrated in the >> example >> below. >> >> With other words, the semantics for OWL-Full is presented in a >> "layered" >> style: Each layer (1 "Simple", 2 RDF, 3 RDFS, 4 OWL-Full) just adds >> new >> semantic conditions to the previous layer's set of semantic >> conditions. This >> happens primarily in order to provide additional semantics to the >> layer's >> specific vocabulary, and sometimes also in order to enrich the >> semantics of >> the vocabulary from lower layers. *Never* is semantics from lower >> layers >> canceled out by higher layers. All semantic conditions from lower >> layers >> also exist in the higher layers. >> >> This approach has the advantage that higher layer languages are >> always >> automatically downwards compatible to all of its lower layer >> languages (for >> example, OWL-Full is downwards compatible with RDFS). This means >> that if >> there is some RDF graph G, all entailed triples produced from G by >> the lower >> layer language are also entailed by the higher layer language. The >> reason >> for this is that the higher layer language uses all the semantic >> conditions >> of the lower one, and if some triple is already entailed by a >> subset of >> semantic conditions, then it is entailed by a superset of semantic >> conditions, too. >> >> == 3. What does the "delta" mean? == >> >> I interpret saying that OWL-1.1-Full is a "delta" to OWL-1.0-Full >> to mean >> that OWL-1.1-Full is specified by just another layer of semantic >> conditions >> on top of OWL-1.0-Full (layer 5). This means that there will be >> dedicated >> semantic conditions for the new OWL-1.1 vocabulary, like e.g. >> vocabulary >> related to QCRs, sub property chains, and the new property >> characteristics. >> Everything else is inherited from OWL-1.0-Full, and by this >> transitively >> from the lower layers, like RDFS. >> >> Note that this is an assertion about both the semantics for OWL-1.1- >> Full >> itself AND the style how this semantics is organised. So if one >> asks only >> for the semantics of OWL-1.1-Full, it would be sufficient to >> present the >> same semantics in another style, perhaps a more "direct", non- >> layered style. >> >> == 4. An example of a semantic condition == >> >> Here is an example for how the layered approach works. The >> semantics for >> subclassing axioms in RDFS and OWL-Full is discussed by looking at >> the >> respective semantic conditions involved. The following semantic >> condition is >> given in the RDFS semantics spec [4]: >> >> (SC-SUBCLASS) >> >> IF >> <x,y> is in IEXT(I(rdfs:subClassOf)) >> THEN >> x and y are in IC >> AND >> ICEXT(x) is a subset of ICEXT(y) >> >> This semantic condition has the form of a rule. It "fires" its >> "THEN" part, >> whenever there is some triple of the form "x rdfs:subClassOf y" in >> the >> regarded RDF graph, or when such a triple can be entailed by >> applying other >> semantic conditions from RDFS semantics. >> >> Actually, the "IF" part specifies a slightly different (and more >> complicated >> looking) condition: It demands that the tuple <x,y>, consisting of >> resources >> x and y, is contained in the "property extention" IEXT(.) of the >> property >> denoted by 'rdfs:subClassOf'. This is in fact a statement about the >> interpreted domain, not about the RDF graph itself (remember that >> RDFS >> semantics is a model theoretic semantics!). But this doesn't matter >> here >> much, since it is essentially what the existence of a triple "x >> rdfs:subClassOf y" means. >> >> Now if this semantic condition fires, we get some new information: >> >> (1) The not further specified resources x and y are determined to >> be in >> fact /class/ resources. This is expressed by "x in IC", where "IC" >> is that >> part of the RDFS universe, which contains exactly all class >> resources. A >> class resource x is a resource, which additionally owns a "class >> extention", >> i.e. the set of all resources z with "z rdf:type x". >> >> (2) The class extention of x, named "ICEXT(x)", is a subset of >> ICEXT(y), >> which is the class extention of y. This is, of course, what one >> actually >> intends to express by specifying a subclass axiom. >> >>> From what I have said above about the layered approach to specify >>> semantics >> for RDFS, the semantic condition SC-SUBCLASS is not yet the full >> story. The >> RDFS semantics for 'rdfs:subClassOf' is given not only by this RDFS- >> specific >> semantic condition, but also by the respective semantic conditions >> for >> "Simple" semantics and RDF semantics. The semantics of >> 'rdfs:subClassOf' is >> thus "cumulative". >> >> * Layer 1: From "Simple" semantics one can conclude that the >> statements >> >> _:u rdfs:subClassOf y >> x rdfs:subClassOf _:w >> _:u rdfs:subClassOf _:w >> >> are all true, where "_:u" and "_:w" are bNodes, which are >> existentially >> interpreted. So, e.g., from knowing that x is a rdfs:subClassOf y, >> one also >> learns that there /exists/ some subClassOf y. >> >> * Layer 2: From RDF semantics one can conclude that the statement >> >> rdfs:subClassOf rdf:type rdf:Property >> >> is true, i.e. 'rdfs:subClassOf' denotes some property in the RDF >> universe. >> >> * Layer 4: OWL-Full additionally specifies the semantic condition >> SC-SUBCLASS to be an IF-AND-ONLY-IF condition (in RDFS it is only a >> "IF-THEN" condition). So if one happens to find two class resources >> x and y, >> and their class extentions ICEXT(x) and ICEXT(x) occur in a subset >> relationship, then the statement "x rdfs:subClassOf y" can be >> deduced to be >> true. >> >> The first two layers (Simple and RDF semantics) can IMHO be >> regarded to >> create a "semantic foundation" for RDF graphs. The entailed triples >> itemized >> above result from /every/ triple within an RDF graph, not only from >> 'rdfs:subClassOf' triples. >> >> The fourth layer from OWL-Full allows in certain situations to >> directly >> derive new triples from existing ones. For example, if one has the >> triples >> 'x rdfs:subClassOf y' and 'y rdfs:subClassOf z' in an OWL-Full >> ontology, one >> can, via the additional transitivity semantic condition of RDFS on >> 'rdfs:subClassOf', entail the triple 'x rdfs:subClassOf z'. The >> semantic >> condition SC-SUBCLASS of RDFS semantics alone only provides the >> "mathematical meaning" of such an additional rdfs:subClassOf >> triple, not the >> triple itself. >> >> Regards, >> Michael >> >> >> [0] http://www.w3.org/2007/OWL/tracker/actions/78 >> [1] http://www.w3.org/TR/owl-semantics/rdfs.html >> [2] http://www.w3.org/TR/rdf-mt/ >> [3] http://www.w3.org/TR/rdf-mt/#DefSemanticExtension >> [4] http://www.w3.org/TR/rdf-mt/#RDFSINTERP >> >> -- >> Dipl.-Inform. Michael Schneider >> FZI Forschungszentrum Informatik Karlsruhe >> Abtl. Information Process Engineering (IPE) >> Tel : +49-721-9654-726 >> Fax : +49-721-9654-727 >> Email: Michael.Schneider@fzi.de >> Web : http://www.fzi.de/ipe/eng/mitarbeiter.php?id=555 >> >> FZI Forschungszentrum Informatik an der Universität Karlsruhe >> Haid-und-Neu-Str. 10-14, D-76131 Karlsruhe >> Tel.: +49-721-9654-0, Fax: +49-721-9654-959 >> Stiftung des bürgerlichen Rechts >> Az: 14-0563.1 Regierungspräsidium Karlsruhe >> Vorstand: Rüdiger Dillmann, Michael Flor, Jivka Ovtcharova, Rudi >> Studer >> Vorsitzender des Kuratoriums: Ministerialdirigent Günther Leßnerkraus > > "If we knew what we were doing, it wouldn't be called research, > would it?." - Albert Einstein > > Prof James Hendler http://www.cs.rpi.edu/~hendler > Tetherless World Constellation Chair > Computer Science Dept > Rensselaer Polytechnic Institute, Troy NY 12180 > > > > > "If we knew what we were doing, it wouldn't be called research, would it?." - Albert Einstein Prof James Hendler http://www.cs.rpi.edu/~hendler Tetherless World Constellation Chair Computer Science Dept Rensselaer Polytechnic Institute, Troy NY 12180
Received on Tuesday, 12 February 2008 16:17:48 UTC