- From: Peter F. Patel-Schneider <pfps@research.bell-labs.com>
- Date: Mon, 06 Apr 2009 17:53:39 -0400 (EDT)
- To: schneid@fzi.de
- Cc: public-owl-wg@w3.org
> Hi! > > This is my review of the RDF Mapping. Well, not quite, there is one > issue that I consider significant enough to have a separate mail on > it. This mail also contains medium problems (marked by "!") and even > somewhat serious issues (marked by "!!!"), everything else is > non-critical. Besides these points, the document is in LC-shape. > > Note: I did not look into Evren's review, so there may be overlap. > > * §2.1, 1st par: The explanation there ("recursive definition") is hard > to understand. I admit that I did not get it even after reading it a > second time. Perhaps explain by example, or reword the text. I'm not sure how to reword and keep both brevity and correctness. I've made a slight change, which might help. > * Table 1, property restrictions: The triple order in cardinality > restrictions is first *cardinality, second onProperty. For value > restrictions it's the other way around. Let's have a common order: That > of cardinality restrictions, because there the "characteristic" triple > comes before the "boring" onProperty. Same for §3. This will also ease > the comparison with the RDF-Based Semantics, which also uses a coherent > ordering (I hope :)). I've put the onProperty first, as it is common to everything, and doesn't bury the characteristic triple in the middle. > * §2.2, second example: > > AnnotationAssertion( a:Peter > Annotation( ... ) > rdfs:label "Peter Griffin" > ) > > I think the order of the arguments is wrong: Shouldn't it be: > > AnnotationAssertion( > Annotation( ... ) > rdfs:label a:Peter "Peter Griffin" > ) > > ? Yes, fixed. > * §2.2, both examples: Why is the string "Peter Griffin" mapped to > /"Peter Griffin"^^xsd:string/? Why not to a plain literal? Yes, and should be so written. Fixed in several places. > * §2.3.1, 2nd par: "This is the case for the following axioms:" > Actually, some of these axioms can also be built with complex > class/property expressions on their LHS and RHS, and will then be mapped > to a multi-triple RDF encoding. Thus, I suggest to say something like: > "This [may be] the case for the following axioms:" No. If there a complex sub-constructs, then these triples don't count. I've upgraded the discussion to make this clear. > * §2.3.1, par after 1st example: duplicate "such". Fixed. > * §3, 1st and 2nd par: Both paragraphs speak about "ontology documents > that can be parsed into RDF graphs". There seems to be some redundancy, > maybe rephrasing the two paragraphs is helpful. Further, I don't know > whether "ontology documents" should be mentioned at all, since the RDF > mapping entirely deals with (abstract) RDF graphs. I believe that any redundancy here is benign, and maybe useful. The talk about documents is to allow later talk about importing. > * (!) §3, 3rd par: "If a triple pattern contains a variable number of > triples, the maximal possible subset of G MUST be matched." I consider > this statement a very important rule. Currently, it is surrounded by > rather informal statements, so people will easily overlook it. It should > probably be separated from the rest of the text, similar to the > restrictions to punning in 3.2.1. I've half-separated it, by putting the notation stuff into a separate paragraph. I've also added a "Note that". > * §3.1, 1st par: The sentences misses a "." at its end. Fixed. > * §3.1.1, item list: > ** Shouldn't this be an ordered list (1,2,3)? OK. Changed. > ** I would say that in the 2nd item, the phrase "using an appropriate > RDF syntax" is redundant (at least it doesn't seem to provide any > relevant information for the rest of the document). Agreed. Fixed. > * Table 4, both entries, LHS: I think there should be another constraint > "{ k >= 0 }" to make clear that there do not need to be any import > directives. OK. Added. > * (!) Table 5, entry on "owl:Ontology": I think these triples are > already removed in Table 4, so the entry seems redundant to me. These are for other "ontologies", e.g., the target of imports triples. > * (!) Table 8, and preceding text: I don't think that talking about > "anonymous individuals" is a good idea here. This term is defined in > Section 5 of the Structural Spec and means something different. None of > these blank nodes are anonymous individuals, but are rather "syntactic" > "root nodes" for connecting multi-triple encodings of language > constructs. I currently call them "root node" in the RDF-Based > Semantics, but I'm open for a better name. Changed to "Reification Nodes". > * (!) Table 10, both entries, LHS: According to the texts, "z" may be an > IRI or a blank node. But what is with literals? Oops. Added literal to this mix. > * Table 16, owl:hasKey: Is it deliberate that the sets "y1,...", > "z1,..." and "w1,..." are not enclosed in "{ }"? Looks like a typo. You mean in T(SEQ y1 ... yn) etc. Yes, this is very deliberate. These are not sets. > * Table 16, deprecation vocabulary: I guess that it is deliberate that > there are no constraints such as "CE(*:x) or DR(*:x) (for > DeprecatedClass)? Just for the case that this has been overlooked. Hmm. This is semi-deliberate, I guess. It could be added, I supposed, but the given translation picks up some RDF graphs that would otherwise not be captured. > * Table 16, annotation axioms (subproperty, domain, range): as for > deprecation: There are no constraints, but I again guess that this is > deliberate? Annotation subproperty has the constraints. The other two don't, as there is no requirement that domains and ranges of annotation properties be classes - they could be datatypes, for example, or just about anything. > * Table 17: The LHS of the table entry refers to "Table 17". But this > table *is* Table 17. Table 16! > * (!) Table 17: The table contains the triple "s *:p o .". According to > the conventions in §1, "o" denotes either an IRI or a blank > node. However, literals should also be possible. I suggest to explicitly > state this in the table, instead of introducing yet another convention > symbol. Fixed. > * Text preceding Table 18: "Finally, the patterns from Table 18 are > matched in G, the resulting axioms are added to OG." Replace the second > "," by an "and"? Yes, fixed. > * Table 18: For the singleton "unionOf" and "intersectionOf" axioms, the > LHS contains "y1", while the RHS contains "y". Fixed. > * (!!!) Table 18: I think that the OWL 1 RDF Mapping allows for > AllDifferent axioms with empty and singleton sets, just as for the > booleans and enumerations. However, Table 16 only covers cases for n >= > 2. So there probably should be two additional mappings for these > scenarios in Table 18 as well. Not so. The syntax in OWL 1 is: fact ::= 'SameIndividual(' individualID individualID {individualID} ')' | 'DifferentIndividuals(' individualID individualID {individualID} ')' > Best, > Michael Diffs are: http://www.w3.org/2007/OWL/wiki/index.php?title=Mapping_to_RDF_Graphs&diff=21349&oldid=21227 peter
Received on Monday, 6 April 2009 21:51:51 UTC