W3C home > Mailing lists > Public > w3c-rdfcore-wg@w3.org > October 2001

Re: Comments on ioctl (was: Re: big issue (2001-09-28#13))

From: Graham Klyne <Graham.Klyne@MIMEsweeper.com>
Date: Tue, 09 Oct 2001 15:24:47 +0100
Message-Id: <5.1.0.14.2.20011009145319.03a85420@joy.songbird.com>
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 EDT

This archive was generated by hypermail pre-2.1.9 : Wednesday, 3 September 2003 09:40:58 EDT