- From: Michael Schneider <schneid@fzi.de>
- Date: Tue, 12 Feb 2008 16:12:09 +0100
- To: <public-owl-wg@w3.org>
- Message-ID: <0EF30CAA69519C4CB91D01481AEA06A0750B3E@judith.fzi.de>
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
Received on Tuesday, 12 February 2008 15:12:35 UTC