- From: Peter F. Patel-Schneider <pfps@research.bell-labs.com>
- Date: Tue, 02 Sep 2008 21:11:25 -0400 (EDT)
- To: schneid@fzi.de
- Cc: public-owl-wg@w3.org, team-owl-chairs@w3.org
Here are my comments on the OWL 2 Full Semantics. I haven't made
review comments because I read the document while I was not connected to
the web, and thus couldn't edit the document.
In general I think that the document is quite good. I have a number of
minor changes listed here.
I also have a comment that is more general than the document itself:
- owl:distinctMembers should be deprecated, as its function is handled
by owl:members
Initial comments on the document:
- Vocabulary changes
xsd:short - add to list of datatypes
xsd:anyURI - replace owl:anyURI by xsd:anyURI
owl:NAryDatatype - remove
owl:datatypeArity - remove
owl:Annotation - add as class, subset of IR
- "owlV" is not used after being defined. I suggest removing it from
the definition of the OWL 2 Full vocabulary.
- The deprecation of owl:DataRange should say
The URI reference rdfs:Datatype SHOULD be used instead.
- Definition 3.2 should also require that the datatype and facet names
of D be in V.
- Definition 3.2 should read "... let V be a vocabulary that includes
...".
- What are the "constraints in this section" referred to in Definition
3.2? I don't see any.
- Definition 3.3 and 3.4: Satisfaction of RDF graphs is not defined in
this document. If this means some RDF satisfaction, then you need to
point
there. If not, you need to define satisfaction.
- Definition 3.3: Q is not used.
- The semantic conditions are additions to also the D-entailment
conditions, I think. The first sentence of Section 4 should be
changed accordingly.
- ICEXT(owl:NamedIndividual) = IR is probably incorrect, there are only
countably many named individuals, but potentially uncountably many
resources. Should be <= IR.
- Table 4.1 - add column for description, e.g., Domain of discourse /
Literal Values / Ontologies / Classes / Datatypes / ...
- owl:NAryDatatype is no longer in the RDF mapping
owl:datatypeArity is no longer in the RDF mapping
- Replace "<= empty set" with "= empty set" in several places.
- IEXT(IS(owl:object)) <= ICEXT(IS(owl:Axiom)) x IR is wrong, as it
states that annotated annotations are axioms. It should be IR x IR.
Similarly for owl:predicate and owl:subject. (This may be because the
document does not yet handle annotations on annotations.)
- owl:allValuesFrom should be <= owl:Restriction x IC.
- owl:TopDataProperty has wrong domain. It should be = IR x ILV.
- Table 4.7 needs to be augmented with the conditions for nary some/all
as follows:
if l is the sequence p1,...,pn in IDP
- <x,c> in IEXT(IS(owl:someValuesFrom))
<x,l> in IEXT(IS(owl:onProperties))
then
ICEXT(x) = { y | exists z1, ..., zn <y,zi> in IEXT(pi) for each
1<=i<=n
and <z1,...,zn> in ICEXT(c) }
- <x,c> in IEXT(IS(owl:allValuesFrom))
<x,l> in IEXT(IS(owl:onProperties))
then
ICEXT(x) = { y | forall z1, ..., zn <y,zi> in IEXT(pi) for each
1<=i<=n
imply <z1,...,zn> in ICEXT(c) }
- The above change removes the need for Table 4.9.
- The last part of the paragraph before Table 4.10 should read something
like:
Note that only the additional semantic conditions are given here and
that the other RDFS conditions on this vocabulary are retained.
- There is no definition of sequence.
- Semantic conditions should be provided for property chains directly,
as in:
Table 4.11: Property Chains
if l sequence of p1,...,pn in IR
then
<x,l> in IEXT(IS(owl:propertyChain))
IFF
x,p1,...pn in IP
IEXT(x) = IEXT(p1) o ... o IEXT(pn)
- The x,y,z in Table 4.15 should be explicitly quantified over IR in
the RHS of the table.
- I believe that Table 4.16 should have x in CEXT(c), y in CEXT(c).
Also Table 4.16 is missing quantifiers for the zi. I believe that
they should be existentially quantified.
- Table 4.18 is missing a membership symbol.
- Table 4.18 already almost handles annotations on annotations, I think,
provided that the domain of the OWL reification properties are changed
as suggested. However, I think that it would be better to change
Table 4.18 and its introduction as follows:
Table 4.18 lists the semantic conditions for the OWL vocabulary used
for some axiom annotations and for annotations on annotations. Both
these kinds of annotations employ a reified version of a triple
representing either the annotated axiom or the annotated annotation.
The semantic conditions below recovers the triple itself from the
reified version.
Table 4.18: Reified Axioms and Annotations
- if x in ICEXT(IS(owl:Axiom))
<x,u> in IEXT(IS(owl:subject))
<x,p> in IEXT(IS(owl:predicate))
<x,w> in IEXT(IS(owl:object))
then <u,w> in IEXT(p))
- if x in ICEXT(IS(owl:Annotation))
<x,u> in IEXT(IS(owl:subject))
<x,p> in IEXT(IS(owl:predicate))
<x,w> in IEXT(IS(owl:object))
then <u,w> in IEXT(p))
- There needs to be a section on the differences from OWL 1 Full
semantics, talking about comprehension principles, at least.
- Why is there a partial comprehension principle for propertychains and
subpropertyof (in Table 4.11)? See suggestion for Table 4.11 above.
- Why do AllDifferent, AllDisjointClasses, and AllDisjointProperties
have partial comprehension principles? I suggest removing second half
of Table 4.13 or moving it to Section 6.
- Why are there comprehension principles for negative property
assertions? I suggest removing second half of Table 4.17 or moving it
to Section 6.
- I have not examined Section 6 closely.
I am thinking about the comprehension principles and how to best handle
them. I may have a proposal for further changes in this area.
Peter F. Patel-Schneider
Bell Labs Research
Received on Wednesday, 3 September 2008 01:12:11 UTC