- From: Smith, Michael K <michael.smith@eds.com>
- Date: Fri, 3 Jan 2003 17:32:44 -0600
- To: Jeff Heflin <heflin@cse.lehigh.edu>, WebOnt <www-webont-wg@w3.org>
Thanks Jeff. Reaction to comments below. Most incorporated.
- Mike
> From: Jeff Heflin [heflin@cse.lehigh.edu]
> Sent: Thursday, January 02, 2003 3:21 PM
> To: WebOnt
> Subject: Review of Guide
>
> Major comments:
----[TODO]------------------------------------------------------------------
> - The sections should be numbered. It will make it easier for people to
> reference parts of the document, particulary when commenting on it.
----------------------------------------------------------------------------
----
> - You need a section called "Using Ontologies to Describe Data" (perhaps
> between Complex Property Axioms and Usage Examples). This section should
> point out that once an ontology is developed, you will want to describe
> data with it. It can mostly point back to the defining individuals and
> properties of individuals sections, but should have additional material
> on how ordinary documents (those without an owl:Ontology) tag import
> ontologies. i.e.:
>
> <rdf:Description rdf:about="">
> <owl:imports rdf:resource="someURI">
> </rd:Description>
Will think about it.
----------------------------------------------------------------------------
----
> - Introduction, para. 7: Suggested rewording for last three sentences:
> The owl:Ontology tag indicates that an OWL document is intended to be
> used as an ontology. However, the use of this tag does not mean that the
> document has to contain classes or property definitions. Furthermore,
> class and property definitions may appear in documents that do not have
> the owl:Ontology tag.
----[DONE]------------------------------------------------------------------
----
> - The Structure of Ontologies, para. 1, "New information cannot negate
> previous information." This is false. New information CAN negate
> previous information, it would just be contradictory. New information
> cannot retract previous information.
----------------------------------------------------------------------------
----
> - Ontology headers, para. 3, "... the owl:Ontology tag simply identifies
> a document as containing OWL syntax.": I disagree! In order to
> determine if a document contains OWL syntax, find out if it uses names
> from the OWL namespace. The owl:Ontology tag makes an assertion that the
> current document is an ontology. Now, this "ontology" may or may not
> have classes and properties, and may just consist of instances, but the
> author is stating that they think there is vocabulary worth reusing
> here.
You are right. This is funny. But an owl document does not have to use
names from the OWL namespace. I think of owl:Ontology as a statement
of intent. Perhaps "... the owl:Ontology tag simply identifies
a document as an OWL document." ?
----[already
DONE]--------------------------------------------------------------
> - Ontology headers, para. 7: owl:backCompatibleWith =>
> owl:backwardCompatibleWIth
----------------------------------------------------------------------------
----
> - Ontology headers, para. 6-8: The various ontology versioning stuff
> would be better in a separate section. First, owl:DeprecatedClass and
> owl:DeprectaedProperty do not go in the header.
Actually, they are outside the header. Maybe I added the closing
ontology tag post 12/18.
> Second, this is really
> advanced stuff that most people writing their first ontology won't need
> (if it's your first ontology, there shouldn't be a prior version!). I
> suggest you move this to a section titled "Ontology versioning" which
> would be between "Complex Classes" and "Usage Examples." You should be
> able to get some supporting text from Sect. 3.2 of the Requirements
> Document. I'd also be happy to contribute something if you need me to.
You are right. I will try to get to that.
----------------------------------------------------------------------------
----
> - Ontology headers, para. 10, "Importing another ontology...": Add at
> end of paragraph "Note that the definition of a name can be distributed
> across many ontologies, some of which you may not agree with. With
> owl:imports you can select the ontologies whose definitions are
> appropriate for your context."
Will think about it. Seems implicit.
----[DONE]------------------------------------------------------------------
-----
> - Simple Properties - Defining Properties, para. 3: Explain in words
> what a
> domain and range are.
Implicit in following paragraph.
> Point out that because the Web is an open world,
> these are not used to check data, but instead to infer things. For
> example, if I have W as the subject of a "made-from-grape" predicate but
> do not state that W is a Wine, this is not an error, but instead leads
> to the inference that W must be a Wine. It is only an "error" if this
> inference leads to a logical contradiction. Also mention that multiple
> domains or ranges mean the domain or the range is the intersection of
> all such classes.
>
----[DONE
~]-------------------------------------------------------------------
> - hasValue, "... an individual will be a member of such a class whenever
> at least one of its property values is equal to the hasValue resource":
> This is confusing. First, it is not clear that "such a class" means the
> anonymous class in the restrciton and not the class that the restriction
> is applied to. It may be useful to add a clarification (perhaps at the
> beginning of Property Restrictions, since it applies to all) that says
> "A Restriction is used in combination with subClassOf or sameClassAs.
> When used with subClassOf it says that restriction provides a necessary
> but not sufficient condition but class membership. When used with
> sameClassAs, then it provides both necessary and sufficient conditions.
Added forward ref in restriction section to sameClassAs.
----[DONE]------------------------------------------------------------------
----
> - sameClassAs, samePropertyAs: It is essential that we point out that
> sameClassAs and samePropertyAs do not mean that two classes or
> properties are identical. It only means that they have the same members
> (or subject/object pairs). Nothing is said about any properties of the
> Class or Property itself. In order to say that the classes are
> identical, we would have to use sameInstanceAs or sameAs.
----------------------------------------------------------------------------
----
> Minor comments:
---[Deleted ref to other
syntax]------------------------------------------------
> - Structure of Document, para 2: "Other notations ... in particular a
> UML version" => "Other notations ... in particular a (non-RDF) XML
> Presentation Syntax and a UML version."
----------------------------------------------------------------------------
----
> - Namespaces, para. 2, "The default namespace ... unprefixed elements
> and empty URI references refer to the current ontology": I don't believe
> that namespaces say anything about empty URI references. XML says they
> are relative to the current document.
In XML they do. If my namespace declarations include
xmlns="http://www.example.org/wine#"
Then <Wine> expands to <http://www.example.org/wine#wine>.
----------------------------------------------------------------------------
----
> - Ontology headers, para. 2: Add that if a URN is used to identify an
> ontology some name resolution would be needed in order to locate and
> access the ontology.
Implicit in URN use.
----[DONE]------------------------------------------------------------------
----
> - Ontology headers, syntax example: This would be a good place to also
> include:
>
> <rdfs:Label>Wine Ontology</rdfs:Label>
>
> Since most ontologies will copy the patterns we use, we should get
> people in the habit of providing natural language titles for the
> ontologies. These will be useful in displaying human-readable ontology
> lists in both authoring tools and ontology catalogs.
----------------------------------------------------------------------------
----
> - Ontology headers, para. 5, "<rdfs:comment> provides the obvious needed
> capability to annotate an ontology": obvious => obviously
Adj vs adv. obvious, needed vs obvious needed.
----[DONE]------------------------------------------------------------------
----
> - Defining Simple Hierarchical Named Classes, para. 5,
> "documentURI#Region" : Use the actual URI for the document here (to be
> consistent with the use of Region as opposed to a variable).
----[Already
done]----------------------------------------------------------------
> - Defining Simple Hierarchical Named Classes, para "The fundamental
> taxonomic constructor for classes is subClassOf...": Describe the other
> important property of subclassOf. Namely, add at end of para. "An
> instance of a class C is also an instance of every class that C is a
> subclassOf."
----------------------------------------------------------------------------
----
> - Design for Use, bullets: The "levels of representation" and "subclass
> vs. instance" descriptions seem are confusing.
Will reread
----[DONE]------------------------------------------------------------------
----
> - Simple Properties - Defining Properties: "Defining properties" =>
> "Defining Properties" (use initial caps in heading)
----[DONE]------------------------------------------------------------------
----
> - Simple Properties - Defining Properties, "... two types of properties
> are distinguished": Remove commas after each item in bulleted list
----[DONE]------------------------------------------------------------------
----
> - Simple Properties - Defining Properties, para. 3: Say what
> "subPropertyOf" means generically. e.g. add "If X has property A with
> value Y, and A is a subPropertyOf B, the X als has property B with value
> Y."
----[DONE]------------------------------------------------------------------
----
> - Simple Properties - Defining Properties, para "Notice how the domain
> and range... And the transitive composition of the relation": Provide a
> forward pointer to TransitiveProperty when mentioning the transitive
> composition
----[DONE]------------------------------------------------------------------
----
> - Simple Properties - Defining Properties, "We can now define the class
> of Vintages, discussed previously." Perhaps not put the s in Vintage in
> teletype.
----[DONE]------------------------------------------------------------------
----
> - Simple Properties - Defining Properties:.
> <owl:Class rdf:ID="Vintage">
> <rdfs:subClassOf rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
> <rdfs:subClassOf>
> <owl:Restriction>
> <owl:onProperty rdf:resource="#vintageOf"/>
> <owl:minCardinality>1</owl:minCardinality>
> </owl:Restriction>
> </rdfs:subClassOf>
> </Class>
>
> </Class> => </owl:Class>
----------------------------------------------------------------------------
----
> - Properties and Datatypes
>
> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> xmlns="http://www.example.org/wine-dt.xsd">
>
> <xsd:simpleType name="year">
> <!-- year is an XMLS datatype based on integer -->
> <xsd:restriction base="xsd:integer"/>
> </xsd:simpleType>
>
> <xsd:simpleType name="wineYear">
> <!-- wineYear is an XMLS datatype based on year -->
> <!-- with the added restriction that values must be GEQ 1700 -->
> <xsd:restriction base="year">
> <xsd:minInclusive value="1700"/>
> </xsd:restriction>
> </xsd:simpleType>
> </xsd:schema>
>
> Indent is incorrect with the </xsd:restriction> part.
Going to undergo radical change anyway.
----[DONE]------------------------------------------------------------------
----
> - SymmetricProperty, "The property adjacentRegion is symmetric, while
> locatedIn is not. (To be more precise, locatedIn is not intended to be
> symmetric. Nothing in the wine ontology at presetn prevents it from
> being symmetric.)": at presetn => at present
----[DONE]------------------------------------------------------------------
----
> - Functional Property: Functional Property => FunctionalProperty
----------------------------------------------------------------------------
----
> - Functional Property: mention that FunctionalProperty is equivalent to
> maxCardinality = 1 when used a restriction on owl:Thing
Huh.
----[ALREADY]---------------------------------------------------------------
-----
> - InverseFunctionalProperty, "In OWL Full, we can use tag a
> DatatypeProperty as inverseFunctional.": use tag a => tag a
----[DONE
~]--------------------------------------------------------------------
> - allValuesFrom, someValuesFrom, para. 2: Add a generic description of
> allValuesFrom, e.g.: "owl:allValuesFrom means that every value of the
> specified property must be an instance of the specified class
> restriction."
----[DONE
~]--------------------------------------------------------------------
> - Cardinality, para. 2, "We defined hasVintageYear to be a functional
> property.": Change rest of paragraph to: "Note that this is the same as
> saying that every Vintage has at most one WineYear. When we use
> owl:cardinality equal to 1, then we assert something stronger, that
> every Vintage has exactly one WineYear."
----[DONE
~]--------------------------------------------------------------------
> - Cardinality, last para: Mention that minCardinality is used to specify
> a lower bound.
----[DONE
~]--------------------------------------------------------------------
> - hasValue, last para.: The first two sentences also apply to every
> property restriction, and should be moved earlier in the Property
> Restrictions section.
----[DONE]------------------------------------------------------------------
--
> - sameClassAs, samePropertyAs, "Of course the example above is somewhat
> contrived, since we can always use &vin;Wine anywhere we would #Wine and
> get the same effect without redefinition. A more likely use would be in
> a case were we ...": we would #Wine => we would use #Wine; in a case
> were => in a case where
----[Already
done]------------------------------------------------------------
> - differentFrom:
>
> <WineSugar rdf:ID="Sweet">
> <owl:differentFrom rdf:about="#Dry"/>
> </WineSugar>
>
> rdf:about => rdf:resource
> (can't use rdf:about as an attribute of a property)
----[DONE]------------------------------------------------------------------
----
> - Complex classes, para 1: "These are denoted unionOf, intersectionOf
> and complementOf" => "These are denoted intersectionOf, unionOf and
> complementOf" to make it fit right with regards to respectively.
----[DONE]------------------------------------------------------------------
----
> - Disjoint Classes, "A common requirement is to define as a class as the
> union of a set of mutually disjoint subclasses.": define as a class as
> => define a class as
----[DONE]------------------------------------------------------------------
--
> - References: (note some changes are indicated parenthetically inline
> with =>)
> Wine Ontology Tutorial
> Ontology Development 101: A Guide to Creating Your First Ontology (=> .)
> Natalya Fridman Noy and Deborah L. McGuinness. Stanford Knowledge
> Systems
> Laboratory Technical Report KSL-01-05 and Stanford Medical Informatics
> Technical Report SMI-2001-0880, March 2001.
>
> Wine Ontology in CLASSIC
> Living with CLASSIC: When and How to Use a KL-ONE-Like Language , (, =>
> .)
> Ronald J. Brachman, Deborah L. McGuinness , Peter F. Patel-Schneider ,
> Lori
> Alperin Resnick , and Alex Borgida. in John Sowa, ed., Principles of
> Semantic
> Networks: Explorations in the representation of knowledge,
> Morgan-Kaufmann:
> San Mateo, California, 1991, pages 401--456.
>
> => insert a line here
> VerticalNet
> Industrial Strength Ontology Management . Aseem Das, Wei Wu, and Deborah
> L.
> McGuinness. Stanford Knowledge Systems Laboratory Technical Report
> KSL-01-09
> 2001. In the Proceedings of the International Semantic Web Working
> Symposium.
> Stanford, CA, July 2001
>
> OKBC: A programmatic foundation for knowledge base interoperability, V.
> K.
> Chaudhri, A. Farquhar, R. Fikes, P. D. Karp, and J. P. Rice. In
> Proceedings of
> the 15th National Conference on Artificial Intelligence (AAAI-98), pages
> 600?
> 607. AAAI Press,1998.
>
> 600?607 => 600-607
----------------------------------------------------------------------------
----
> - Appendix B: History: Don't list both DAML and DAML-ONT, choose one or
> the other
----[DONE]------------------------------------------------------------------
-----
> - Appendix B: History, "MNF- Meta Content Framework": MNF => MCF
----[DONE]------------------------------------------------------------------
-----
> - Appendix C: An Alternate Region Ontology, "vineyards are located in
> towns: Chateau Margaux us a vineyard in Margaux, Avignonesi in
> Montepulciano": us => is
----[DONE]------------------------------------------------------------------
-----
> - Appendix C: An Alternate Region Ontology, "This simplifies the model
> and is consistent with the fact that a "town" as a wine production area
> typically stands for an area surrounding the town, which can be larger
> or smaller that the actual town area": larger or smaller that => larger
> or smaller than
----[DONE]------------------------------------------------------------------
-----
> - Appendix C: An Alternate Region Ontology:
>
> Classes:
> <owl:Class rdf:ID="&vin;ProductionArea"/ >
> <owl:Class rdf:ID="&vin;Country:">
> <rdfs:subClassOf rdf:resource="&vin;ProductionArea"/>
> </owl:Class>
> <owl:Class rdf:ID="&vin;Region:">
> <rdfs:subClassOf rdf:resource="&vin;ProductionArea"/>
> </owl:Class>
> <owl:Class rdf:ID="&vin;Vineyard:">
> <rdfs:subClassOf rdf:resource="&vin;ProductionArea"/>
> </owl:Class>
>
> Country: => Country
> Region: => Region
> Vineyard: => Vineyard
----[DONE]------------------------------------------------------------------
-----
> - Appendix C: An Alternate Region Ontology:
>
> Properties:
> ...
> <owl:ObjectProperty rdf:ID="&vin;hasVineyard">
> <rdfs:subPropertyOf rdf:resource="&vin;hasSubArea"/>
> <owl:allValuesFrom rdf:resource="&vin;Vinyard"/>
> </owl:ObjectProperty>
> ...
>
> Vinyard => Vineyard
>
============================================================================
=
> From: Jeff Heflin [heflin@cse.lehigh.edu]
> Sent: Thursday, January 02, 2003 4:31 PM
> To: WebOnt
> Subject: Re: Review of Guide
----[TODO]------------------------------------------------------------------
----------
> One more thing: I really like the Term Index and Cross Reference, but it
> looks kinds of silly and useless to someone who has printed out the
> document. I'd like to make it more useful in print form. Ideally, if
> every document had numbered sections, we could give the appropriate
> section number for each document (instead of just repeating the name of
> the element). Then people who only had hard copies could look things up
> almost as easily as those people who were online.
>
> Jeff
Received on Friday, 3 January 2003 18:32:51 UTC