Re: [rq23 edits] Re: better names for r:IRI and r:Literal

On Sep 10, 2005, at 12:09 AM, Eric Prud'hommeaux wrote:

> On Mon, Aug 22, 2005 at 01:18:58PM -0500, Dan Connolly wrote:
>>
>> On Aug 22, 2005, at 8:20 AM, Eric Prud'hommeaux wrote:
>>> SPARQL Query Operand Data Types refers to some mythic datatypes r:IRI
>>> and r:Literal. I would like to change them to rdfs:Resource
>>>  <http://www.w3.org/TR/2004/REC-rdf-schema-20040210/#ch_resource>
>>
>> er... changing IRI to Resource is a use/mention switch, no?
>>
>> an IRI is a Term, right?
>>
>> I suggest xsd:anyURI .
>>
>> http://www.w3.org/2001/XMLSchema#anyURI
>>
>> documented in http://www.w3.org/TR/xmlschema-2/#anyURI
>
> done in 1.487
>
> I think you convinced me of this at some point, but I can't remember
> it. In order to show this off to the WG, I've followed your suggestion
> and used xsd:anyURI, however, I'm not convinced that the term provides
> sufficient distinction from run of the mill xsd types. For instance, I
> would like the following test to not be a cognitive stretch:
>
>   _:a  foaf:name       "Alice".
>   _:a  foaf:mbox       <mailto:alice@work.example> .
>   _:a  x:mboxStr       "mailto:alice@work.example" .
>
>  WHERE { ?x x:mboxStr  ?mstr ;
>             foaf:mbox  ?mbox .
>          FILTER (?mbox = xsd:anyURI(?mboxStr)) }

That's another use/mention confusion.

xsd:anyURI changes a string into a URI, but doesn't change a URI into
what the URI refers to. i.e. it changes "mailto:alice@work.example" into
"mailto:alice@work.example"^^xsd:anyURI. But <mailto:alice@work.example>
is a different term; it's a term that refers to a mailbox.
The input and output of xsd:anyURI are both literals; i.e. terms that 
denote
themselves. It doesn't output a mailbox, or even a term that refers to 
a mailbox.
It's like scheme's symbol->string procedure, not like eval.

http://www.cs.indiana.edu/scheme-repository/R4RS/r4rs_8.html#SEC49


As a special case, we decided that str(<uri>) works like log:uri and 
changes
levels of denotation going the other way. But we don't have an operator
that does what log:uri does in the direction from string to what that
URI denotes.

-- 
Dan Connolly, W3C http://www.w3.org/People/Connolly/

Received on Saturday, 10 September 2005 13:44:26 UTC