The second half of my response to review comments on Profiles: Ian's comments + Jim's comments

Hello,

Here is the second half of my response to the comments by Ian and Jim. Here is the diff:

http://www.w3.org/2007/OWL/wiki/index.php?title=Profiles&diff=13524&oldid=13466

Please let me know should you have comments to my responses.

Regards,

	Boris


---- Review by Ian --------------------------------

> 
> - General comment: "OWL 2" is used a lot. Sometimes it seems
> excessive. E.g., "The following features
> of OWL 2 are not supported
> ...". Wouldn't it be enough to say "The following features are not
> supported ..."? Also, I recall
> that Ivan asked if we always need
> to say, e.g., OWL 2 QL? Perhaps OWL QL would be enough. We could
> say something in the introduction
> about this.
> 

Regarding OWL 2 QL vs. OWL QL, I think we should stick to the official name of the profile: if this name is OWL 2 QL, then we should
as well use OWL 2 QL. Defining OWL 2 QL as the official name but then calling the profile OWL QL seems quite confusing.

I haven't changed the document in response to this comment.

> - "[OWL 2 EL] captures the expressive power used by many such
> ontologies and is the maximal subset of
> OWL 2 for which the basic
> reasoning problems (i.e., consistency, satisfiability, subsumption,
> classification, and instance checking) can be performed in time
> that is polynomial with respect to the size of the ontology"
> Perhaps a citation would be in order?
> 

I added a reference.

> - "in particular, rule based engines"
> Suggest deleting the comma.
> 

I cannot find this any more -- probably I already changed this while answering Jeff's comments.

> - "only the productions that differ from [OWL 2 Specification] are
> presented and the productions that are the same as in [OWL 2
> Specification] are not repeated."
> Bad style to use a citation in this way. Should be "only the
> productions that differ from the functional-style syntax [OWL 2
> Specification] ..."
> 

I agree.

> - "A main design principle of OWL 2 EL is to focus on the class
> constructors ObjectIntersectionOf and ObjectSomeValuesFrom, but to
> provide ObjectAllValuesFrom only in the form of range
> restrictions."
> Suggest but --> and
> 

OK.

> - The document isn't very consistent in the way it refers to the
> functional-style syntax. Sometimes it says "the functional-style
> syntax [OWL 2 Specification]", sometimes "structural specification
> [OWL 2 Specification]" (see 2.2.6), sometimes just "[OWL 2
> Specification]" (see above), sometimes "OWL 2 [OWL 2
> Specification]" (e.g., 2.2.3), and sometimes
> just "OWL 2" (see 2.2.5). I don't
> think that "OWL 2" makes much sense -- what is being described
> here is also OWL 2!
> 

I have tried to unify this. In general, we are not referring to the structural specification, which means the whole document. In a
few places, however, we are referring to the functional-style syntax, which is a part of the structural specification. I believe
this is correct: sometimes we want to refer to the whole document and sometimes to a part of it. Please let me know should you
disagree.

> - In 2.2.6, "Range restrictions on reflexive and transitive roles
> are generally allowed, unless they
> are used in axioms that are
> explicitly forbidden using the previous definition." could be made
> clearer!
> 

I have rephrased this as follows:

    There are no additional restrictions for range restrictions 
    on reflexive and transitive roles; that is, a range restriction
    can be placed on a reflexive and/or transitive role provided
    that it satisfies the afore-mentioned restriction.

> - "OWL 2 QL is based on the DL-LiteR"
> Delete "the".
> 

OK.

> - "need to impose certain global restriction on the interaction
> between properties used in different
> types of axiom"
> restriction --> restrictions.
> 

OK.

> - In 3.1 it says "All axioms in OWL 2 QL are constrained in a way
> that is compliant with these restrictions. Thus, OWL 2 QL supports
> the following axioms:". This doesn't seem very clear. Perhaps
> better to say "OWL 2 QL supports the following axioms, constrained
> so as to be compliant with the above restrictions:"
> 

OK.

> - It might be useful to say something about why the datatypes are
> restricted in the way that they are
> (i.e., to make sure there can
> be no restrictions to finite sets of values) -- this would help
> developers wanting to extend the set
> of supported datatypes while
> retaining the computational properties. This comment also applies
> to the other profiles.
> 

Jeff had the same comment. Please refer to my responses to him for a more info; here is how I addressed his comment:

    The set of supported datatypes has been designed such that the
    intersection of the value spaces of any set of these datatypes is
    finite, which is necessary to obtain the desired computational
    properties [EL++]. Consequently, the following predefined OWL 2
    datatypes MUST NOT be used in OWL 2 EL:

> - In 3.2.3 it says "The subClassExpression production defines the
> class expressions that can occur in the antecedents of
> implications". This could be clearer -- OWL 2 doesn't support
> implications per se.
> 

I've changed the paragraph as follows:

    In OWL 2 QL, there are two types of class expressions. The
    subClassExpression production defines the class expressions that
    can occur as subclass expressions in SubClassOf axioms, and the
    superClassExpression production defines the classes that can
    occur as superclass expressions in SubClassOf axioms.

To properly explain this, we'd need to introduce the notion of polarity, and we probably don't want to go there in this document.


> - 3.2.5 "Different OWL 2 class axioms from the structural
> specification [OWL 2 Specification] that
> refer to the ClassExpression
> production, however, are redefined and restricted them to
> appropriate forms of class expressions."
> This needs to be translated into
> English. Suggest: "Class axioms that refer to the ClassExpression
> production are, however, redefined so as to use subClassExpression
> and/or superClassExpression as appropriate."
> 

I agree; here is the new paragraph:

    The class axioms of OWL 2 QL are the same as in OWL 2, with the
    exception that DisjointUnion is disallowed; however, all axioms
    that refer to the ClassExpression production are redefined so as
    to use subClassExpression and/or superClassExpression as
    appropriate.

> - 3.2.5 "... it redefines object property domain and range axioms
> to use the appropriate class expressions." It would be clearer to
> say "... it redefines object property domain and range axioms to
> use superClassExpression." Moreover, in the following productions,
> it uses "superClass" -- presumably this should be
> "superClassExpression".
> 

Agreed.

> - 3.2.5 "OWL 2 QL disallows the functional data property axioms,
> and it redefines the object property domain axioms to use the
> appropriate class expressions."
> Firstly, "... the functional ..." --> "... functional ...".
> Secondly, "... appropriate class
> expressions" could again be simply superClassExpression.
> Thirdly, the following productions again use superClass.
> 

Agreed.

> - Section 4.2 should be called "Profile Specification" in line with
> the other profiles.
> 

Agreed.

> - 4.2.3 "antecedents of implications" again.
> 

I changed the paragraph like this:

    There are three types of class expressions in OWL 2 RL. The
    subClassExpression production defines the class expressions that
    can occur as subclass expressions in SubClassOf axioms; the
    superClassExpression production defines the classes that can
    occur as superclass expressions in SubClassOf axioms; and the
    equivClassExpression production defines the classes that can
    occur in EquivalentClasses axioms.

> - 4.2.3 "Finally, the equivClassExpressions production ..." -->
> "Finally, the equivClassExpression production ..."
> 

Agreed.

> - 4.2.5 "... property domain and range axioms are restricted to the
> appropriate form of class expressions." As above -- could say
> superClassExpression instead of "appropriate form of class
> expression".
> 

Agreed.

> - 4.2.5. "OWL 2 RL restricts the positive assertions to a
> particular type of classes, ...".
> First, "the positive" --> "positive".
> Second, "a particular type of classes" --> superClassExpression
> 

Agreed.

> - 4.2.5. "Keys are redefined in OWL 2 RL to allow for correct type
> of class expression in the axiom." Would need a "the" to be
> added, but suggest to rephrase as something like "Keys are
> redefined in OWL 2 RL to allow only subClassExpression in the
> HasKey axiom."
> 

I rephrased the paragraph like this:

    OWL 2 RL restricts class expressions in keys to
    subClassExpression.

> - 4.3 "Variables in the implications are preceded with the question
> mark." --> "Variables in implications are preceded with a
> question mark."
> 

OK.

> - 5 "None of the described profiles, however, is propositionally
> closed, so these reasoning problems thus can have different
> complexity and require different algorithmic solutions." --> "None
> of the described profiles is, however, propositionally closed, so
> these reasoning problems can have different complexity and require
> different algorithmic solutions."
> 

In response to Jeff's comment, I have removed this sentence altogether.

> - 5 The bullet points describing Class Expression Subsumption and
> Conjunctive Query Answering are missing their full stops.
> 

I have actually removed the full stops: these are not full sentences at all. I've done so in the second list as well.

> - 5 "When evaluating the complexity ..." --> "When evaluating
> complexity ..."
> 

OK.

> - 5 "the complexity measured with respect to both the size of the
> axioms and the facts."  "facts" --> "assertions"
> 

OK.

> - 5 "Table 8 summarizes the known complexity results for OWL 2,
> ...", but the 1st row of the table is labelled "OWL 2 DL".
> 

I've changed OWL 2 to OWL 2 DL.

> - 5 Why is OWL 2 EL italicised in the 1st column?
> 
> 
> 

I've removed the italics.

---- Review by Jim -------------------------

> 
> overall comments and section 1:
> 
> My main metacomment is that there is some material in the document
> that was probably useful in the history of putting it together, and
> in earlier drafts, but which is not needed in the current version -
> I try to indicate these below.  Please note when I suggest
> something could be deleted that in no way means I think it is wrong
> or misleading or any other negative term, rather, the document is
> quite long and things which add theoretical background, without
> having a direct impact, make it harder to read
> 
> section 2.1 and section 3.1 (the EL and QL feature overviews) could
> be done in the same tabular form as section 4.1 - that would
> improve consistency, but also make comparison of the profiles
> easier
> 

Please note that the table in Section 4.1 enumerates only the supported class expressions, and not all of the features of OWL 2 RL.
Furthermore, OWL 2 RL is asymmetric, which is why there is a table with two columns: one for the LHS of axioms and one for the RHS.

OWL 2 EL is symmetric, so there is no need for a table. I have, however, separated the set of supported class expressions from the
set of supported axioms, thus somewhat achieving unity with OWL 2 RL.

OWL 2 QL is asymmetric, so there is need for a table. I have added one and have removed the class expressions from the description
of the supported axioms.


Please let me know should you not be happy with this.

> The user coming to this document, not familiar with the others,
> will be confused about the mapping to the various syntaxes - the
> note in the introduction (section 1) says
>       OWL 2 profiles are defined by placing restrictions on the OWL
>       2 syntax
> and then gives some details - but a reader coming to this document
> alone won't necessarily know what that means or what other syntaxes
> are available.  I suggest that a sentence added to this might be
> helpful -- I would add a sentence after  the  sentence above that
> says something like:
>    "Each of the profiles can be realized through any of the
> serializations of OWL described in our documents including
> <<Functional, XML, RDF, Manchester and any others that I've
> forgotten>>. "
> 

I have added the following sentence after the paragraph you mentioned:

    An ontology in any profile can be written into a document by
    using any of the syntaxes of OWL 2.

> There is an assumption that the reader is familiar with a number of
> technical terms that are used somewhat differently in different
> communities - for example, in the motivation for OWL 2 EL it says:
>     for which the following reasoning problems can be decided in
> polynomial time: satisfiability, subsumption, classification, and
> instance checking.
> but, for example, instance checking is not a term used consistently
> across the various literatures of logics (and dbs, for that
> matter). I don't think we should try to define all these here, but
> rather should put appropriate pointers to Section 5 where these
> things are defined appropriately (and in section 5, I note that
> terms like "every model of the ontology" are thrown around, these
> could in turn direct people to the model theoretic semantics)
> 

I have removed the explicit mention of the reasoning problems in the motivation for OWL 2 EL.

I have also removed the definition of various inference problems and have included a pointer to the semantics. I've slightly
reformatted the Direct Semantics document to add a name for each problem.

>   SECTION 2 - OWL EL:
> 
>   I found the sentence in the intro to OWL 2 EL which reads:
>    A main design principle of OWL 2 EL is to focus on the class
> constructors ObjectIntersectionOf and ObjectSomeValuesFrom, but to
> provide ObjectAllValuesFrom only in the form of range restrictions.
>    to be fairly odd - I'd think it should either be motivated or
> removed -- I don't see that it adds anything as a standalone  - if
> it does stay, please note that the definition of range restriction
> is made in section 2.2.6, which comes later, so at least a pointer
> is necessary to understand the comment (my preference would be to
> delete it as it doesn't really have an impact on the definition)
> 

I've replaced the sentence with this one:

    OWL 2 EL provides class constructors that are sufficient to
    express many complex ontologies, such as the biomedical ontology 
    SNOMED CT [SNOMED CT].

> section 2.2.6 is hard to read - it is hard to tell when the range
> restriction definition ends and where the "additional
> condition" (mentioned in the first sentence of 2.2.6) starts.
> Reorganization might help (state the condition first and then the
> definition perhaps) -- I also think that the chances of even
> sophisticated reasoner developers to understand how to check this
> condition will be somewhat limited - I'd suggest an explicit
> pointer to a paper might be useful here.
> 

I've added a pointer to the paper. Also, I've rephrased this section slightly in response to Jeff's comments. Please let me know if
you think this section needs further work.

> Section 3 -  OWL QL
>   The second statement sentence of the intro to OWL QL states
>        OWL 2 QL includes most of the main features of conceptual
> models such as UML class diagrams and ER diagrams.
> That is probably debatable, and even if true, could be contentious
> - I suggest an easy fix which is to change "Most" to "Many"
> 

Done.

> The description of which kind of DL-Lite this is and the relation
> to the UNA is useful, but I think it should be moved to the end of
> the discussion of QL - having it in the introduction is confusing.
> It also makes it easy to miss the last sentence of the introduction
> (about where the constructs occur) which is very important.
> 

The current situation reflects the resolution of the UNA issue. (ISSUE-133), and I would prefer not reopening it.

Furthermore, I'm not sure I agree that the paragraph is misplaced: I think it is good to warn implementors in the beginning that
"This is DL-Lite_R, but you can extend this if you want".

>   The sentence (2nd sentence of Section 3.2):
>       The expressive power of OWL 2 QL is such that the global
> restriction on axioms defined in Section 11 of [OWL 2
> Specification] are vacuously satisfied in every DL-lite ontology.
> is confusing - even changing  "DL-Lite" to "OWL 2 QL" it is unclear
> why this needs to be stated at this point - is unnecessary to the
> language design.  I would suggest deleting this sentence.
> 

I have changed DL-Lite to OWL 2 QL.

Apart from that, this sentence was actually incorrect: the global restrictions now include a number of conditions that actually need
to be satisfied for an OWL 2 QL ontology. (It is true that some of them are vacuously satisfied, but that's beyond the point: the
restrictions as a whole need to be satisfied.) I have therefore changed the sentence to this:

    Note that each OWL 2 QL ontology must satisfy the global
    restrictions on axioms defined in Section 11 of the structural
    specification [OWL 2 Specification].

I have added a similar sentence to OWL 2 RL as well.

>   Section 3.2.5 either has a wording problem or a logic problem - I
> think it is just the former -- above the second syntax box (about
> object properties) it reads:
>     ... and it redefines object property domain and range axioms to
> use the appropriate class expressions.
> and the box talks about object properties.  The next box has text
> which reads:
>   ... and it redefines the object property domain axioms to use the
> appropriate class expressions.
> but it then only talks about Dataproperties -- I assume that
> "object" should be changed to "data" in the second sentence, but I
> am not sure whether that is sufficient
> 

The box talks about object property axioms, not about properties, so, I believe, the formulation is correct.

These sections were rephrased in response to other reviewers' comments, so I hope things are clearer now.

> 
> Section 4 OWL RL
>   Section 4.2, the third sentence reads
>      The idea is based on Description Logic Programs [DLP] - a
> logic obtained by intersecting description logics with rule-based
> languages. that is undoubtedly true, but not enlightening at this
> point - I'd move it to the end of the section or delete it (I
> suggest delete it)
> 

I agree that this sentence was misplaced. I believe, though, it is good to give pointers to the literature that actually inspired
the creation of this profile. I have therefore removed this sentence ein Section 4.2, but have added the following sentence to the
first paragraph of Section 4:

    The design of OWL 2 RL has been inspired by Description Logic
    Programs [DLP] and pD* [pD*].

> Section 4.2.5 contains the sentence
>      Keys are redefined in OWL 2 RL to allow for correct type of
> class expression in the axiom.
> which is grammatically incorrect, but I'm not sure what fix is
> right - depends whether there is only one appropriate type (in
> which case it should say "the correct type") or multiple (in which
> case "types" and "class expressions" is needed for agreement) or a
> mix in which case it needs to be reworded.  I think it is the
> second of these, but I'm not actually sure.
> 

In response to Ian's comments, I have changed the sentence like this:

    OWL 2 RL restricts class expressions in keys to
    subClassExpression.

> Section 4.3 just above Theorem 1 -- the /may/ (in italics) should
> be MAY
> 

All references to RFC keywords were formatted according to official W3C guidelines, and these explicitly say that we should use
italics for the keywords.

> Theorem 1 seems to me to add nothing importance to the design - if
> I'm missing something I would certainly just assert the conclusion
> and omit the proof - I suggest just deleting it completely (which
> will also save the work of generating the proof sketch).
> 

I would prefer not to do this, as it establishes the link between the DL and the RDF view of the profile.

> Section 5
>   I'm willing to believe most of these, but must admit that the
> ones on OWL RL confuse me -- I assume we mean OWL RL restricted to
> the DL subset and doing complete reasoning - is that right?  If so,
> it might be worth stating that explicitly (or at least w/some sort
> of footnote)

I am not sure I understand this. Either in the DL or the RDF view, the complexity results hold.

Received on Sunday, 28 September 2008 17:12:43 UTC