- From: Patrick Stickler <patrick.stickler@nokia.com>
- Date: Wed, 06 Feb 2002 20:39:46 +0200
- To: Pat Hayes <phayes@ai.uwf.edu>
- CC: RDF Core <w3c-rdfcore-wg@w3.org>
On 2002-02-06 19:53, "ext Pat Hayes" <phayes@ai.uwf.edu> wrote: > I think I can summarize a way to have all the above with a minimal > imposition of particular idioms. I think what you propose is 99% what we need, with only one glitch, but one which we can overcome easily enough by simple omission. > _:s xsd:realnumber "10.3" . > _:s ex:germannumber "10,3" . Idioms of this form still will not work in conjunction with global range constraints. How do you reconcile the above two triples with age rdfs:range xsd:realnumber . Even if we know that the value space of ex:germannumber intersects with that of xsd:realnumber, the lexical spaces and mappings are not the same. Also, what is xsd:realnumber? Is it a datatype or a property? Both? And how does the agreed treatment of multiple range constraints as an intersection apply to multiple subclassed rdf:value properties? How do we exclude age rdfs:range xsd:realnumber . age rdfs:range ex:germannumber . because the lexical spaces of these types are disjunct, but not exclude _:s xsd:realnumber "10.3" . _:s ex:germannumber "10,3" . ??? Do we restrict range constraints to only apply to literals bound by rdf:type alone? How then do we actually define constraints/expectations on local typing? Finally, I think we will be losing alot of "brownie points" with the RDF community by offering two local idioms, one of which requires all kinds of subclassing mechanisms, etc. rather than just one, which is clearly and intuitively synonymous with the global idiom. So, I humbly but sincerely ask that we drop the S-A idiom. Please. Is it really so useful and special to be worth all the extra effort and machinery to make it work? > Oh, I forgot; it also follows that (Dan C., are you reading this?) > > VIII. The in-line use of literals, as in > <mary> <age> "10" . > has a fixed meaning which is absolutely unchangeable, which is that > Mary's age is the *actual literal*, ie the character string '10'. So > if you want to write things like that and have them mean Mary is ten, > then either <age> has to have an odd extension, or else, tough. This > is where Sergey's idea about XML styles might be a point worth > making, however, to keep out the noisy townfolk; and as Patrick says, > you can always interpret <age> to *mean* > (lambda (x y) > x aged _:s > _:s rdf:value y ) > and then put range constraints on <aged>. Cool. And for the sake of backwards compatability as well as for those who want to pretend that literals always mean the same thing, we can simply leave off any default transformation from 'inline' to bNode idiom, requiring folks that want datatyping to use the bNode idiom from the start, or do the convertion themselves. RDF remains neutral on the subject. The serialized forms for the bNode global idiom aren't all that cumbersome really: Bob age [ rdf:value "30" ] . <rdf:Description rdf:ID="Bob"> <age rdf:value="30"/> </rdf:Description> and since N3 has so much more freedom to change than RDF/XML, one could concieve of some syntactic sugar such as Bob age !"30" . or whatever floats folks boats. Cheers, Patrick -- Patrick Stickler Phone: +358 50 483 9453 Senior Research Scientist Fax: +358 7180 35409 Nokia Research Center Email: patrick.stickler@nokia.com
Received on Wednesday, 6 February 2002 13:38:38 UTC