- From: Graham Klyne <gk@ninebynine.org>
- Date: Wed, 02 Apr 2003 19:59:28 +0100
- To: Brian McBride <bwm@hplb.hpl.hp.com>, Pat Hayes <phayes@ai.uwf.edu>, w3c-rdfcore-wg@w3.org
At 18:05 02/04/2003 +0100, Brian McBride wrote: >Graham, > >Thanks for this. The intention of this action was to review the changes >to semantics Pat has made in response to pfps-04 -05 -06 -07 -08 -10 for >whether they were ok from an RDF point of view. The intent being to >ensure that the WG were comfortable that these changes accurately >reflected the WG's intent. Er, yes, but I have to read through to remind myself about the details I'm checking. I thought I was checking for possible errors introduced by the changes. >There's a lot of comment here. Is this basically a thumbs up or thumbs >down? If down, what are the substative issues we need to discuss before >disposing of these? It's a mixture. There are some points that I think need to be considered, but I would be prepared to defer to Pat's judgement on the outcome. Nits, of course, can be passed over. #g -- >At 17:26 02/04/2003 +0100, Graham Klyne wrote: > >>Per ACTION 2003-03-14#6, reviewing: >> http://www.coginst.uwf.edu/~phayes/RDF_Semantics_Editors.html >> >>I've done a general read-through, with particular attention to the red text. >> >>... >> >>Section 0.3 [Nit] >> >>Defines "isomorphic" graphs, but elsewhere [1] we agreed to talk of >>"equivalent" graphs. >> >>[1] http://www.w3.org/2001/sw/RDFCore/20030123-issues/#danc-01 >> >>http://lists.w3.org/Archives/Public/www-rdf-comments/2003JanMar/0602.html >> >>... >> >>Section 1.3 [Nit] >> >>[[ >>2. A distinguished subset IP of IR., called the set of properties. >>]] >> >>might be more consistent (cf. item 1 in same list) to say: >> >>[[ >>2. A distinguished subset IP of IR, called the set of properties of I. >>]] >> >>... >> >>Section 1.3 >> >>I mentioned the other day that it had been proposed in another place >>(IETF URI BOF) to define resource as something identified by a URI -- no >>URI then no resource. This would be at odds with: >> >>[[ >>However, this does not imply that literals should be identified with urirefs. >>]] >> >>I don't suggest any change at this time, since that's only a suggestion >>for a revised version of RFC 2396, but mention it as it could become a >>future point of confusion or dissent. >> >>... >> >>Section 1.5 [Nit] >> >>Isn't Skolemization named after one Thoralf Skolem? As such should it >>not be capitalized, like Boolean? >> >>... >> >>Section 2, inference rules for instance lemma >> >>Short form: I don't think you have, as claimed, an *inference rule* for >>the instance lemma. >> >>Discussion: When you talk of inference rules, I am expecting to see a >>complete syntactically based chain that gets from some premiss to a valid >>conclusion. >> >>As given, the closure rules show how one can create new graphs that are >>entailed by some initial graph by addition of triples, but I don't see >>how to use them to create an conclusion of which the premiss is an >>instance (i.e. *replacement* of a triple by its instance). >> >>Also, you say there is no inference rule corresponding to the subgraph >>lemma. I would have thought that: >> >> G1 union G2 |- G1 >> >>would be such an inference rule. I guess you mean there is no closure >>rule corresponding to the subgraph lemma? >> >>... >> >>Section 3.1 >> >>Notes about canonical form terminology; I would ask Jeremy to confirm >>the appropriate form of words for this. Current wording in Concepts suggests: >> >>[[ >>if x is a *Canonical XML* document then >><x, I(rdf:XMLLiteral)> is in IEXT(I(rdf:type)) and x is in LV >>]] >> >>and >> >>[[ >>IL("xxx"^^rdf:XMLLiteral) is the *canonical form* of the XML document xxx. >>]] >> >>... >> >>Section 3.1, defining IP? >> >>[[ >>The first condition could be regarded as defining IP to be the set of >>resources in the universe of the interpretation which have the value >>I(rdf:Property) of the property I(rdf:type). The second condition forces >>every rdf interpretation to interpret rdf:type as a property, which will >>be used to associate 'type' values with resources. >>]] >> >>The first condition is: >> IP contains I(rdf:type) >> >>The second condition is: >> x is in IP if and only if <x, I(rdf:Property)> is in IEXT(I(rdf:type)) >> >>I think the text has the first and second conditions switched around. >> >>... >> >>Section 3.1, rdf:first, rdf:rest >> >>Would it not be appropriate to specify semantic conditions that IP >>contains I(rdf:first), etc? >> >>Also, rdf:subject, rdf:predicate, rdf:object, rdf:_1, rdf:_2, ... , >>rdf:value ? >> >>... >> >>Section 3.2.2 [Nit] >> >>[[ >>In general, this amounts to knowing the type of a container, and having a >>partial 'list' of the items in the container. >>]] >> >>The use of the term 'list' here may be unfortunate (cf. RDF collections), >>so maybe say?: >> >>[[ >>In general, this amounts to knowing the type of a container, and having a >>partial enumeration of the items in the container. >>]] >> >>Also?: >> >>[[ >>RDF does not support any entailments which could arise from *enumerating* >>the elements of an rdf:Bag in a different order. For example, >>]] >> >>... >> >>Section 3.3, [Nits] >> >>I am wondering if the discussion of semantic extensions that strengthen >>the domain and range semantic conditions might usefully be offset from >>the main text in some way, as an explanatory NOTE or suchlike, since it's >>not central to understanding RDF as is. Also, for the corresponding >>closure rules noted in section 4.2. >> >>Also, the comment about not including a picture seems somewhat redundant. >> >>... >> >>Section 3.4: [Nit] >> >>[[ >>Formally, a datatype d is assumed to be defined by four items: >>]] >> >>I'm not sure if this means something different from: >>[[ >>Formally, a datatype d is defined by four items: >>]] >> >>... >> >>Section 3.4 [Nit] >> >>[[ >>The set of recognized datatypes always includes the built-in datatype >>rdf:XMLLiteral and may include the XML Schema, part 2 built-in datatypes >>defined in [XML-SCHEMA2], referred to here as XSD. >>]] >> >>I think that some of these built-in datatypes are not really suitable for >>use with RDF, such as IDREF and QName. Suggest: >> >>[[ >>The set of recognized datatypes always includes the built-in datatype >>rdf:XMLLiteral and may include some of the XML Schema, part 2 built-in >>datatypes defined in [XML-SCHEMA2], referred to here as XSD. >>]] >> >>... >> >>Section 3.4, datatypes: >> >>[[ >>ICEXT(I(rdfs:Datatype)) is a subset of D >>]] >> >>I can't see, from the descriptions given, how a datatype may be in D but >>not a member of ICEXT(I(rdfs:Datatype)). >> >>... >> >>Section 3.4, datatypes and consistency with Concepts >> >>I think we currently have an inconsistency: >>[[ >>For any typed literal "sss"^^ddd in G and string ttt, I("sss"^^ddd) = >>I("sss"@ttt^^ddd) >>]] >> >>where Concepts says that literals of types other than rdf:XMLLiteral have >>lexical spaces that consisting of just strings, so the case quoted above >>just should not arise. >>http://www.w3.org/2001/sw/RDFCore/TR/WD-rdf-concepts-20030117/#section-Datatypes >> (4th para) >> >>Hmmm... but see also: >>http://www.w3.org/2001/sw/RDFCore/TR/WD-rdf-concepts-20030117/#section-Graph-Literal >>http://www.w3.org/2001/sw/RDFCore/TR/WD-rdf-concepts-20030117/#section-Literal-Equality >>http://www.w3.org/2001/sw/RDFCore/TR/WD-rdf-concepts-20030117/#section-Literal-Value >> >>The last of these suggests that a typed literal with a language tag is >>syntactically OK, but ill-formed, in which case (according to my reading >>of the semantics) it should have a value which is not in LV; i.e. not >>the same as I("sss"^^ddd) >> >>[[ >>For any typed literal "sss"^^ddd in G, if I(ddd) is in D and sss is not >>in the lexical space of I(ddd) then IL("sss"^^ddd) is not in LV >>]] >>In voew of the above, there seems to be a gap in the formal >>conditions. What about "sss"@ttt^^ddd, where "sss"@ttt is not in the >>lexical space of ddd? >> >>Before putting this topic to bed, I think we need an agreed resolution >>for danc02: >> http://www.w3.org/2001/sw/RDFCore/20030123-issues/#danc-02 >>slightly expanded to address language tags as well as datatypes. >> >>Then this might be fixed in Concepts or semantics or both. >> >>The outcome might also impact section 4.3 >> >>... >> >>Section 3.4, confused by wording >> >>I had some trouble figuring how this: >>[[ >>The sixth condition says that the meaning of any typed literal which uses >>a recognized datatype is the value of the literal character string under >>that datatype. >>]] >>was saying the same thing as: >>[[ >>For any typed literal "sss"^^ddd in G, if I(ddd) is in D and sss is in >>the lexical space of I(ddd) then IL("sss"^^ddd) = L2V(I(ddd))(sss) >>]] >> >>Maybe say something like this?: >>[[ >>The sixth condition says that the meaning of any typed literal which uses >>a recognized datatype is the value of the datatype's lexical-to-value >>mapping applied to the literal character string. >>]] >> >>... >> >>Section 3.4, XML datatypes >> >>[[ >>These semantic conditions are exactly similar to the above if one defines >>the lexical space of rdf:XMLLiteral as the set of all XML documents and >>all pairs of XML documents and language tags, and @@add link to concepts >>here@@ L2V(I(rdf:XMLLiteral)) as defined in [RDF Concepts]. >>]] >> >>Currently, I think the link you want would be to: >>http://www.w3.org/2001/sw/RDFCore/TR/WD-rdf-concepts-20030117/#dfn-rdf-XMLLiteral >> >>... >> >>Section 4.1, XML literal closure rule >> >>[[ >>xxx aaa mmm . >> >>where mmm is a well-formed XML typed literal with the same @@canonical >>form as lll. >>]] >> >>Based on the current Concepts document, I think you want something like: >> >>[[[ >>where mmm is a well-formed XML typed literal, whose language tag is the >>same as lll, and whose string component is the canonical form of the >>string component of lll. >>]]] >> >>(but please check with Jeremy) >> >>... >> >>Section 4.1, Nit >> >>[[ >>Note, the rules rdf2 and rdf3, and the semantic conditions to which they >>correspond, apply only to typed literals which contain the exact RDF >>identifier of the built-in datatype. >>]] >> >>Might be clearer as: >> >>[[ >>Note, the rules rdf2 and rdf3, and the semantic conditions to which they >>correspond, apply only to typed literals that contain the exact URI of >>the built-in XML datatype. >>]] >> >>... >> >>Section 4.2 >> >>[[ >>xxx aaa "sss"[@ttt] . >>]] >> >>I note that there's a new bit of notation slipped in here. I think the >>intent is reasonably clear, but it might be more correct to list rules for >> >> xxx aaa "sss" . >>and >> xxx aaa "sss"@ttt . >> >>... >> >>Section 4.2, *the* types? >> >>[[ >>For example, the range and domain assertions in the RDFS axiomatic >>triples, together with the rules rdfs2 and 3, establish the rdf:type >>values of much of the RDFS vocabulary. >>]] >> >>A resource may have multiple types. I would suggest dropping *the*, as in: >> >>[[ >>For example, the range and domain assertions in the RDFS axiomatic >>triples, together with the rules rdfs2 and 3, establish rdf:type values >>for much of the RDFS vocabulary. >>]] >> >>... >> >>Section 4.2, *every* xxx in v? >> >>[[ >>The rules will generate all assertions of the form >> >>xxx rdf:type rdfs:Resource . >> >>for every xxx in V, and of the form >>]] >> >>Surely, the closure rules generate these assertions for all xxx used >>(directly or indirectly) in the graph whose closure is computed? >> >>(Taking V as the vocabulary of the interpretation used, which by my >>understanding may be larger than that used by a graph to which it is applied.) >> >>Similarly, for every class name? >> >>... >> >>Section 4.3, a "small semantic extension"? >> >>[[ >>It may be useful to incorporate the assumption that any uriref appearing >>in a typed literal is presumed to be a datatype, which would be captured >>by the following rule. Note however that this is not strictly valid, so >>represents a (small) semantic extension. >>rdfD -1 >> >>aaa ppp "sss"[@ttt]^^ddd . >> >>ddd rdf:type rdfs:Datatype . >> >>Datatype clashes and violations may be considered to be error conditions. >>However, such graphs are not strictly ill-formed, and can be used to >>support valid RDFS entailments which might be meaningful in certain contexts. >>]] >> >>I'm not sure what it means to be a "small semantic extension", but the >>above seems quite significant to me. According to section 3.4 and the >>first semantic rule in that section, all members of I(rdfs:Datatype) must >>be recognized datatypes. (I'm still not usre if I(rdfs:Datatype) *is* >>the set of recognized datatypes; see comment above). Thus, I think the >>"small semantic extension" noted above would require *all* datatypes used >>in a graph to be recognized datatypes, which I suppose would mean that >>any graph that used an unrecognized datatype would automatically be false >>under such interpreation. >> >>... >> >>Appendices only given cursory skim... no comments noted. >> >>... >> >>#g >> >> >> >>------------------- >>Graham Klyne >><GK@NineByNine.org> >>PGP: 0FAA 69FF C083 000B A2E9 A131 01B9 1C7A DBCA CB5E > >------------------- >Graham Klyne ><GK@NineByNine.org> >PGP: 0FAA 69FF C083 000B A2E9 A131 01B9 1C7A DBCA CB5E
Received on Wednesday, 2 April 2003 15:56:32 UTC