- From: Fabien Gandon <Fabien.Gandon@sophia.inria.fr>
- Date: Fri, 24 Mar 2006 16:30:53 +0100
- To: Guus Schreiber <schreiber@cs.vu.nl>, SWBPD list <public-swbp-wg@w3.org>, chris.menzel@gmail.com, michael.f.uschold@boeing.com
Hello, Here is my review of the draft "Achieving Semantic Interoperability & Integration Using RDF and OWL - W3C Editor's Draft - 01/23/2006" as found here: http://cmenzel.org/w3c/SemanticInterop.html The document is interesting, useful and will make a valuable note, but at this stage it is still under construction. Cheers, Fabien *General remarks* - First of all, I found the note both useful and interesting and I appreciate the effort of the editors; - IMHO W3C notes and recommendation often suffer from their length. For a note to be efficient I believe it should always be "as short as possible and not shorter". Thus I disagree with the idea of repeating things several times as explicitly defended in this note. I would keep this note short and simple. The less redundancies there are the shorter the note is and the shorter the note is the higher the probability of being read is. I would also tend to lighten the writing removing remarks such as " We leave it as an exercise for the reader to come up with real-world examples where such expressions might be useful" - I would refrain from using / mentioning other KR languages than the ones of the W3C semantic web initiative; I would focus on generic problems or generic principles and avoid specific examples of other formalisms. - I would distinguish between on one hand ontologies and their namespaces (ontA:Car, ontA:Truck, ..., ontB:Auto, ontB:Plane, ...) and on the other hand instances and their namespaces (inst1:FordQX1965, inst1:NissanMV78, ..., inst2:Airplane45, inst2:Airplane89, ...); I am always reluctant to put instances in ontologies except for very special cases (e.g. punning) and I would use different namespaces for the QNames of Classes and the QNames of instances. - not much is said on functional and inverse functional properties while they do play a role in integration; - IMHO, examples should be given in plain English and in XML syntax; - idiomatic or complex words should be avoided as often as possible to ease reading for non native speakers ex: fungus, jarring, etc.; - the note is very promising but right now it is still at a draft stage. *Focused remarks* Introduction: "Semantic Web languages, such as RDF and OWL facilitate interoperability in significant ways. They provide the social structure and technical framework to reuse existing ontologies" I wouldn't say that formalisms provide a "social structure". The W3C and its SW activity provide some social structures, not RDF and OWL. What do we mean by Semantic Interoperability & Integration?: "Systems are semantically interoperable when agents within them are able to exchange information, rather than mere data." I found this sentence dangerous: one might argue that systems are semantically interoperable when agents within them are able to exchange knowledge, rather than mere information i.e. communication at the knowledge level. In fact interoperability and mediation needs are found at the levels of syntax, semantics, pragmatics, social/protocols, etc. Semantic I&I and the Semantic Web: Some Basic Guidelines " he Semantic Web and the Semantic Web languages provide both the social structure and the technical means to facilitate semantic I&I." Again, I wouldn't say that formalisms provide a "social structure". "several standard XML-based ontology languages, notably, RDF, RDF Schema (RDFS) and OWL." I wouldn't count the RDF model as an ontology language; IMHO should be replaced by the couple RDF & RDFS sometime noted RDF/S For issues such as moving from a KR language where n-ary relations are allowed to RDF I think the note should point to the OEP design patterns. "When building an ontology for a specific purpose, you definitely would not want to add lots of axioms that would likely never get used in any application. (...). The tradeoff is understandabilty vs. performance. The same might apply in ontology development." I think that modularity should be mentioned here: you may break down your ontology in several pieces using different namespaces in order to control how much axioms you feed to your applications while still being able to expose the full axiomatization when needed e.g. to build a mapping. In the philosophy of the semantic web, principle 4 is one of the most important in my opinion:" To facilitate semantic I&I, reuse terms from existing ontologies." Personally I would put it first. " extending an existing ontology, it comes 'tagged' with its original namespace." Rather than "tagged" I would say "prefixed" OWL-Based Mappings: Overview "(...) one might declare that OntA:plant is disjoint with the class OntB:fungus (...) These kinds of statements are not as obviously useful as a basis for translating data from one ontology to another,(...)" A point could be made here that as soon as you map to another ontology you begin to import instances that you did not create i.e. you don't know what the "quality" of these instances is. Therefore making explicit such constraints as disjointness helps detecting errors / inconsistencies introduced by imported instances. " Note that although in principle, any OWL constructs that can be used to describe or refer to properties can be used in conjunction with equivalentProperty and subProperty to create mappings between properties in different ontologies, in practice there aren’t an OWL constructs for this." I don't understand this sentence. " How would you say that the sibling property is in some sense the union of brother and sister (thinking of the sets of tuples)?" Reading this question made me think that a lot of time the examples of integration use subsumption to define new sub classes inheriting properties of existing classes. Less obvious (IMHO) is the fact that your can declare new super classes or super properties. For instance say that an ontology A contains the properties "surname" and "firstname" and an ontology B contains a property "fullname" one could declare a super-property "designation" to integrate them: ontA:firstname rdfs:subPropertyOf map:designation ontA:surname rdfs:subPropertyOf map:designation ontB:fullname rdfs:subPropertyOf map:designation Then by querying using map:designation you tap in the instances of both ontologies, A and B. " The core mapping constructs (...) depending on the context" I think the notion of anonymous class should be introduced and used to simplify explanations of the constructs used for the mapping. OWL-Based Mappings: Detailed Example This section is still under construction so I have only partial comments: - Use contrasted colors for the tables and align cell content to top; - Again, personally, I don't like to mix ontologies and instances unless really necessary. Property Value to a Class Instance Mappings In your example "hasAirportCode" seems to be a data property and inverseOf only applies to object properties. *Typos* Status: "there is a narratIve for the different OWL mapping constructs." Uses cases: "Extending a single ontology:" should be in bold. Also all 4 uses cases should be numbered bullets. What do we mean by Semantic Interoperability & Integration?: " potentially so misleading and open to misinterpretation, that iT can be viewed" Semantic I&I and the Semantic Web: Some Basic Guidelines "syntax and semantics . One impediment" You should do a <BR /> before "Unfortunately, of course, many existing ontologies are not written in OWL, this gives rise to the second principle." OWL-Based Mappings: Overview " relationships state fundamenatal similarities between" " in practice there aren’t an OWL construcsts for" Property Mappings " the uniquie namespaces distinguish them" " Ther eare no analogous" Instances / Individuals " yo ucant for individuals." -- "To see the world in a grain of sand And heaven in a wild flower, Hold infinity in the palm of your hand And eternity in an hour." -- William Blake. ____________ |__ _ |_ http://www-sop.inria.fr/acacia/personnel/Fabien.Gandon/ | (_||_) INRIA Sophia Antipolis - ph# (33)(0)4 92 38 77 88
Received on Friday, 24 March 2006 15:31:40 UTC