Re: Proposal to incorporate datatyping into the model theory (was Re: datatyping discussion)

>At 06:14 PM 10/22/01 -0500, Pat Hayes wrote:
>>Notice that the 'intended' reading is semantically anomalous since 
>>it requires us to take the literal, er, literally, rather than 
>>interpreting it in any way; it has a kind of use/mention glitch 
>>built into it. (Admittedly this is kind of harmless for strings, 
>>since they do denote themselves; that is why we are able to 
>>reinterpret rdf:value in the above way as meaning equality, and get 
>>away with it.) Notice also that it makes rdf:value seem kind of 
>>silly; if it means equality, and can only be used with literals, 
>>why not just substitute the literal for the blank node and get rid 
>>of the blank node? (Current answer: Because that would require us 
>>to allow literals as subjects if we want to write the equivalent of 
>>_:1 rdf:type xsd:integer . Response: So, lets have literals as 
>>subjects, why not? Or at any rate, let us face up to the fact that 
>>this prohibition is purely an ad-hoc syntactic restriction imposed 
>>for no semantic reason.)
>
>[...]
>
>>I will work up a draft extension to the MT document  which covers 
>>it and explains the alternatives, and then people can discuss it, 
>>how's that?
>
>It sounds reasonable to me.  But there's one thing that still 
>niggles me, and while I *think* it's covered in this proposal, I'm 
>not totally sure.  It is the idea that the truth of a statement 
>cannot be known without knowing the datatype of the literal it uses; 
>e.g., DanC's example:
>
>    ex:shoe shoe:size "10" .
>
>I recall from the introduction to the current MT document the 
>observation that the theory is concerned not so much with 
>establishing truth or falsity for any given statement(s), but 
>defining the conditions under which truth is preserved:
>
>[[[
>The chief utility of such a semantic theory is not to suggest
>any particular processing model, or to provide any deep analysis of
>the nature of the things being described by the language (in our
>case, the nature of resources), but rather to provide a technical
>tool to analyze the semantic properties of proposed operations on
>the language; in particular, the extent to which they preserve
>meaning.
>]]]
>
>Now, if I have knowledge (ex-RDF) that
>     _:a shoe:size "10" .
>and
>     _:a shoe:size "10.0" .
>are equivalent statements, then I can infer from the truth of the 
>above example that
>    ex:shoe shoe:size "10.0" .
>is also true, without knowing that the literals used have a numeric data type.

If you really do know that equivalence holds for *any* _:a, but 
that's a universal quantification. How you gonna say that in RDF?

But let me provide a tweak. Suppose that the equivalence between 10 
and 10.0 is provided only in the datatype mapping itself. A datatype 
is defined semantically by a mapping from lexical space to value 
space, so it is quite possible for that mapping to make this kind of 
identification. In the model theory we currently have, the inference 
you want (from   ex:shoe shoe:size "10" .  to   ex:shoe shoe:size 
"10.0" .) would be valid only if something provided enough typing 
information to enable to reasoner to know that both these literal 
occurrences were numbers, say. BUt even then, a *reasoner* would have 
to somehow be able to make the inference by accessing information 
about the datatype mapping, and the MT doesn't say anything about HOW 
to do that. It just says the inference is 'datatype-entailed'.

>
>You mentioned in another message the idea of a "default" datatype, 
>in which literal strings denote themselves;  maybe the above issue 
>is resolved by requiring that this default datatype be present in 
>every interpretation?  Or:  any RDF that is true in some datatyped 
>interpretation is also true in a corresponding interpretation with 
>default datatyping.

Thats not true, but what IS true is that any datatyping can be 
'added' to the default in a certain sense. In the string-default (it 
only works for strings) the datatyping of a character string is the 
character string, ie the datatyping is the identity mapping. So eg
ex:shoe shoe:size "10" .
says that the size of the shoe is the character string '10'. Which 
isn't actually right, presumably; but what is right is what we would 
get by reinterpreting I(shoe:size) to mean 'the size of the shoe is 
something denoted by the string', (ie rather than the string itself) 
which is really the bNode version of the literal (Sergey's S3). So 
what is true is that if a graph has a satisfying interpretation I 
under some datatyping T , then it has a closely related satisfying 
interpetation I' under the default datatyping, such that if you kind 
of semantically compose T  with I' on these literal-anonymous nodes, 
then you get the original I+T back again. So one can think of S3 as 
this kind of 'interim' datatyping where you insist on interpreting 
literals as themselves, and treat the places where they occur as 
saying that something exists with that name. It provides a kind of 
general-purpose put-the-typing-decision-off strategy.

I realize this is incoherent, but will try to write it up coherently 
before Friday.

Pat


>#g
>
>
>------------------------------------------------------------
>Graham Klyne                    MIMEsweeper Group
>Strategic Research              <http://www.mimesweeper.com>
><Graham.Klyne@MIMEsweeper.com>
>------------------------------------------------------------


-- 
---------------------------------------------------------------------
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

Received on Tuesday, 23 October 2001 22:10:40 UTC