- From: Peter F. Patel-Schneider <pfps@research.bell-labs.com>
- Date: Fri, 17 Jan 2003 12:22:34 -0500 (EST)
- To: herman.ter.horst@philips.com
- Cc: www-webont-wg@w3.org
From: herman.ter.horst@philips.com Subject: AS & S review: RDFS-compatible OWL semantics Date: Fri, 17 Jan 2003 17:13:06 +0100 > Here is the next part of my review comments on the Semantics > document: > Section 5 RDFS-Compatible Model-Theoretic Semantics > Version of 16 January > > This part of the document is crucial for the semantic > layering of OWL on RDF. It is perhaps surprising that > after all the work and discussion on this topic, more needs > to be said about several formal aspects to ensure that the > text becomes completely suitable. > > The first point that I want to raise is that many > small, additional assumptions need to be made on an > OWL interpretation in order to assure that each use that > is made of the functions EXTI and CEXTI can really be made. > In order to explain this, note that the current text does not > start from a suitable summary of the RDF Semantics. > In the second and third paragraph of Section 5.2, > an RDFS interpretation is first described as a three-tuple, > and then, in a "datatyped" version, as a four-tuple. > However, an RDFS interpretation, datatyped or not, is currently > described as a five-tuple, including a set of properties PI as > part of the basic definition. The domain of the function EXTI > is not all of RI, but only the set PI. This change was made in > November (when the RDF Model Theory was renamed to RDF Semantics; > the OWL AS & S document still speaks of RDF MT). I've made the appropriate change, to something very close to what you say below. > A related point is that the domain of the function CEXTI consists > only of the set of classes CI, which may also not be all of RI > (this was already the case with the RDF MT version of April). This is not correct. ICEXT is still defined for all resources, even for literals. This may be a bug in the RDFS semantics. > In view of this, the given summary of RDF semantics should be > replaced by an up to date and somewhat more extensive summary. > Let me briefly summarize the basic definition of the RDF semantics, > in order to be able to describe the additional assumptions that > need to be made in the OWL semantics, and in order to facilitate > the replacement of the given summary of the RDF semantics. > I use the slight adaptation made by Peter of the original notation > of Pat, however without making many final I's a subscript, of > course. > An RDFS interpretation of a vocabulary V is a five-tuple consisting > of: > - a set RI (the universe) > - a set PI subsetOf RI > - a function EXTI : PI -> P(RI x RI) > - a function SI : V -> RI > - a function LI : {typed literals} -> RI > satisfying many special conditions specified in the RDF Semantics. > (By the way, referring to an earlier part of this review, > note that the P(X) notation for power set is very convenient here.) > > Given such an RDFS interpretation, the set of classes is defined > to be > CI := {x in RI: <x,SI(rdfs:Class)> in EXTI(SI(rdf:type))}. > This set is defined to be the domain of the function > CEXTI : CI -> P(RI) > CEXTI(c) := {x in RI : <x,c> in EXTI(SI(rdf:type))} (c in CI) This is not in the RDF Semantics document. > These are all the definitions that need to be summarized. > It follows from the complete definition of RDFS interpretation > (actually, it follows already from the definition of RDF > interpretation) that > (*) CI = CEXTI(SI(rdfs:Class)) and PI = CEXTI(SI(rdf:Property)). > (The range that I give above to the function CEXTI does not > appear explicitly in the RDF Semantics document, but follows > clearly from what is said there.) range -> domain ? > So each table in Section 5.2 needs to be expanded with an > assumption > SI(E) in CI (in case CEXTI(SI(E)) is used) or > SI(E) in PI (in case EXTI(SI(E)) is used). > > In the second table of Section 5.2 this is easy: each of > the empty cells in the second column can just be assigned > the content CI. Not needed. > In the later tables it is also possible to incorporate the > required additional assumptions, in the bold header texts. Not needed. > A simpler and more elegant way to incorporate these additional > assumptions could be as follows. > The OWL vocabulary at the beginning of Section 5.1.1 > (where it now "appears" with an ellipsis) could be expanded > explicitly, using two disjoint subsets VOWLC and VOWLP (it is > clear which vocabulary members should go where). Then the > required additional assumptions on an OWL interpretation > can be made in one stroke with > SI(VOWLC) subsetOf CI and SI(VOWLP) subsetOf PI. I think that this is neither necessary nor desirable. > The equations (*) above can be used to simplify many entries > in the tables in Section 5.2, by taking CI or PI instead of > the expansions in the right-hand sides of these equations. > It should be noted that CI and PI are more fundamental in the > RDF Semantics then these expansions. CI actually is subordinate to ICEXT(I(rdfs:Class)). Given that CI is subordinate, I prefer to keep consistency by using ICEXT throughout. > Also, the conditions for an OWL interpretation to be OWL Full > become simply IOT = RI, IOC = CI, IOP = PI. > There is a problem with the definition of > "sequence of y1,...,yn over C". I can prove that this > definition cannot be suitable. Namely, in the first application > of this definition, C becomes IOC. The definition uses > CEXTI(C), so assumes IOC in CI. In OWL Full, IOC = CI, > so we get CI in CI. This contradicts the axiom of foundation. > The definition can be repaired by letting yi in C instead > of yi in CEXTI(C). This seems to be suitable for each use of > the definition, except perhaps the use in connection with > distinctMembers: shouldn't it be IOT instead of IOC there? Yes, this is a stupid bug in my definition. Thanks for picking it up. > This seems to be suitable for each use of > the definition, except perhaps the use in connection with > distinctMembers: shouldn't it be IOT instead of IOC there? Yes. > In my view, the formal definition of an OWL interpretation should > include, in addition to an RDFS interpretation <RI,PI,EXTI,SI,LI>, > the distinguished subsets IOC, IOP, IOT, IOR, IOOP, IODP, IDC, > IAD, and IL of RI. Otherwise, these sets "fall out of the air". > Each of these 9 subset relationships is implied by the second > table of Section 5.2, except for IAD subsetOf RI, which should > be added to this table. I think that this is neither needed nor desirable. > The second table does not include the inclusion LV subsetOf RI, > which can be assumed by the RDF Semantics, and which would > be appropriate to recall in the table. This is now incorporated in the text, but putting it in the table is a good idea. > The first table in Section 5.2 uses sets IOP, IOC etc. whose > meaning is not yet clear. Therefore I propose to move this table > to the third position. Then, moreover, we get three more coherent > "groups of tables" in a row: > 1. universe/syntactic categories; classes/datatypes/properties > 2. the "iff tables": domains/ranges; equivalence > 3. the "DL tables": Boolean combinations; restrictions; > comprehension principles I don't think that this reordering is helpful. > I feel that Section 5.2 could use more text to motivate these > different kinds of tables. For example, can it be 'explained' > why is there an iff for owl:sameClassAs and owl:disjointWith > but not for owl:complementOf? There is very little motivation now. However, I think that a useful amount of motivation would turn out to be a large amount of motivation. I've been too busy with RDF to attend to it. > In my view, the first condition on oneOf is an unsuitable integration > of dissimilar conditions. In fact, the next table, which is > completely devoted to oneOf, could be omitted by slightly > extending the condition in the previous table, as follows: > ( x in IOC and l is a sequence of y1,...,yn over IOT > or x in CI and l is a sequence of y1,...,yn over LV ) > and CEXTI(X) = {y1,...,yn} The condition for oneOf is similar to the ones for unionOf and intersectionOf. I thus think that it should stay. The change you suggest would cause problems for OWL DL. > The first table where oneOf currently appears has two header > lines with bold text. The first of these lines should be > omitted. first -> second? Yes, I see how this can be done. > Section 5.1 starts with the following sentence: > "All of the OWL vocabulary is defined on the 'OWL universe', > which is a collection of RDFS classes that are intended to > circumscribe the domain of application of the OWL vocabulary: > owl:Thing, owl:Class and owl:Property." > I read here that > OWL universe = {owl:Thing, owl:Class and owl:Property}. > However, with the RDF semantics it is inherited that > the set RI is called the universe of the interpretation, > as is also mentioned in the beginning of Section 5.2. > As the word universe is used here in two different ways, > I feel that the wording of the cited sentence should be > adapted to incorporate the connection with RDF semantics. Changed to <p>All of the OWL vocabulary is defined on the 'OWL universe', which is a division of part of the RDFS universe into three parts, namely the class extensions of owl:Thing, owl:Class and owl:Property. The class extension of owl:Thing comprises the individuals of the OWL universe. The class extension of owl:Class comprises the classes of the OWL universe. The class extension of owl:Property comprises the properties of the OWL universe. </p> > > The table on the semantics of the cardinality restrictions > does not yet include the corrections which I believe you > confirmed earlier. > It should be, three times: > card{v in IOT union LV : <u,v> in EXTI(p)} > (In our earlier discussion I missed the LV part. > In this way, both object properties and datatype properties > are covered, in the correct, intended way.) > Without this addition, formally, there is no set, so > no cardinality can be taken. Instead, formally, there is > only a class, not in the sense of OO or RDF or OWL, but > in the sense of Zermelo-Fraenkel set theory. I disagree. I believe that the definitions are fine as they are. > I find it confusing, in the definition of separated OWL > vocabulary in Section 5.3.2, to identify a vocabulary > with a partition of it. I am in favor of omitting the > = sign, and of speaking of a vocabulary V' with partition > <...>. This would also affect (improve) the next paragraphs, > including the statement of Theorem 1. I should have used V = VI + VC + VD + VOP + VDP > As to the next definition, of OWL abstract ontology with > separated names, it is not consistent with the first sentence > of Section 2.1, to speak of a set of axioms and facts > in the abstract syntax: it should become a sequence. I think that this is a suitable abuse of terminology. > In Sections 5.3.1/2, three RDF Graphs should become RDF graphs. Technical terms can (and often should) be capitalized, I believe. > In the definition of OWL DL interpretation, it is awkward to > use the letter n for a vocabulary element, in the third line > of the table (since n suggests integers). Changed to v > As to notation, I prefer the standard notation for empty set > instead of {} (this also appeared in earlier sections). I prefer {}, as it uses the same notation as non-empty sets. peter
Received on Friday, 17 January 2003 12:22:46 UTC