- From: Graham Klyne <Graham.Klyne@MIMEsweeper.com>
- Date: Tue, 09 Oct 2001 15:24:47 +0100
- To: Pat Hayes <phayes@ai.uwf.edu>
- Cc: Martyn Horner <martyn.horner@profium.com>, w3c-rdfcore-wg@w3.org
At 07:45 PM 10/8/01 -0500, Pat Hayes wrote: >... However, if literals really are just character strings, then I don't >really see any coherent way of allowing a single bare character string to >have a number of different literal values. If "20001225" really could mean >either a bit more than 20 million or Xmas day, surely *something* has to >be able to decide which one is meant, when one comes across that string in >a graph somewhere? I think the treatment of a literal as "just a character string" would be supportable if the original RDF spec hadn't let the genie out of the bottle by requiring that language somehow be part of the literal. Then I think it would be possible to use RDF structures to describe the richer set of values (integers, dates, etc.). Hmmm... let me try: integervalue:10 rdf:type xsd:integer ; rdf:value "10" . The interpretation of integervalue:10 could then be the integer known as 10; Then: <I(integervalue:10),I(xsd:integer)> would be in IEXT(rdf:type) <I(integervalue:10),I("10")> would be in IEXT(rdf:value) or <10,I(xsd:integer)> would be in IEXT(rdf:type) <10,I("10")> would be in IEXT(rdf:value) Thus the integer 10 would be nailed down by its appearance in two property extensions. (I suppose a model theorist's question would be: is there any other interpretation in which I(integervalue:10) is not the integer 10, but which still satisfies all the RDF graphs satisfied by the intended interpretation.) I think this is similar to what DanC suggests in http://www.w3.org/2001/01/ct24, where he also uses the "unambiguousOver" constraint to state, e.g., that the integer 10 is unique in having these properties. ... But as soon as we admit language as part of a literal value, then it seems we are forced into a different and complex scenario, which might be generalized as saying a literal is a composition of a string and something that identifies how the string is meant to be interpreted (which I think of as type information). Which, as I think you are saying, introduces the requirement to be able to syntactically distinguish the type information. I'll note that Ora has been saying elsewhere that the original intent was that a processor should be able to do (at least basic) RDF processing without referring to an external schema. In that spirit, appealing to a separate type definition doesn't seem to be an option. ... At this point, my feeling is that it would be great to stuff that language genie back into its bottle... #g -- At 07:45 PM 10/8/01 -0500, Pat Hayes wrote: >>Pat Hayes wrote: >> >>>a literal is a name whose denotation can be computed from the name alone >> >> >>Maybe I missed something in the argument but does `denotation' >>distinguish between numerals (literals) denoting numbers and numerals >>(literals) denoting, say, dates. So the literal "20001225" has, at least, >>two denotations? Does this invalidate this definition? Do you mean >>`unique denotation'? If you don't, how does this definition stay valid? > >Ye, I do mean unique. See below for the consequences. > >> >>As I suggest, I think I may be completely off-track in asking this. > >No, dead on track, I think. My answer would be (I'm coming to realize how >much of a minority view this is, though) that the whole notion of being a >literal (in fact, of being a denoting name of any kind) is that there is >enough structure in the 'logical syntax' - the syntax that the model >theory is attached to - to determine a unique referent in any >interpretation. Without that assumption, semantics just doesn't work: >there is no way to know that the same token used twice has the same >meaning. (Exceptions to this are much discussed in 'real' linguistics, >like indexicals ('here', 'now') and demonstratives ('that', said while >pointing at something), but in order to give a coherent semantics to >things like these one has to restore uniqueness of reference by >introducing things like explicit contexts, communication situations, >possible worlds and other exotic paraphinalia.) Now, taking the above idea >of a literal seriously, this in turn would require that the 'logical >syntax' has to provide enough information to distinguish literal numerals >from literal dates from literal house-numbers, etc. , if you want these >all to be literals, anyway; that is, if there are two senses of "20001225" >under which it has different literal values, then that quoted thing isn't >a literal: it's only part of a literal. The complete literal is that >string together with *something* that tells us which sense of it is >intended (as an integer, as a street number, as a date, whatever). Exactly >what the 'something' is, I would claim total agnosticism about, only that >it is somehow syntactically specified: it has to be something that could >be determined by a parser; ideally, by a lexicalizer. Hypertext provides a >brave new world of ways of specifying such things; maybe it is hidden in >some piece of metadata markup, or a DTD someplace; or maybe it is written >right there next to the string of characters. Whatever; that's to do with >the concrete syntax in some lexicalization. In the graph syntax, I would >suggest, we treat it more abstractly, and just say that the literal label >in the graph is *something* that has the >can-compute-unique-referent-from-label property. Which is what I tried to >do (without getting into the issue of it being computable, which seemed >too controversial for the MT document) by having LV be a *globally* fixed >mapping, ie one that is not dependent on the particular interpretation. > >Which, by the way, is exactly what Peter Patel-Schneider is currently >roasting my feet over the fire about, for exactly the reason you raise: he >doesn't want literals to be forced to have a single global meaning in >DAML. If I thought that 'literal' meant simply 'character string'. I would >agree with him (and I suspect, you), but I have never thought that it did >mean that. Maybe I was wrong, though, in this community; and if so, then I >should probably change the model theory, or at least the way it is worded. >However, if literals really are just character strings, then I don't >really see any coherent way of allowing a single bare character string to >have a number of different literal values. If "20001225" really could mean >either a bit more than 20 million or Xmas day, surely *something* has to >be able to decide which one is meant, when one comes across that string in >a graph somewhere? > >Pat >-- >--------------------------------------------------------------------- >IHMC (850)434 8903 home >40 South Alcaniz St. (850)202 4416 office >Pensacola, FL 32501 (850)202 4440 fax >phayes@ai.uwf.edu http://www.coginst.uwf.edu/~phayes ------------------------------------------------------------ Graham Klyne MIMEsweeper Group Strategic Research <http://www.mimesweeper.com> <Graham.Klyne@MIMEsweeper.com> ------------------------------------------------------------
Received on Tuesday, 9 October 2001 10:44:46 UTC