Re: HTTP URIs and authority

Pat Hayes wrote:
>> noah_mendelsohn@us.ibm.com wrote:
>>> Xiaoshu Wang writes:
>>>
>>>
>>>> - The URI identifies the city.
>>>>
>>>> - The *representation* that people gets back by dereferencing the 
>>>> URI with HTTP protocol is your *impression*.
>>>
>>> I don't think the word impression is really appropriate here.  Let's 
>>> say that I assign resource http://example.org/nonRhymingPoem to the 
>>> poem that is popular with American school children:
>>>
>>>         Roses are red,
>>>         Violets are blue,
>>>         Some poems rhyme,
>>>         Some don't.
>>>
>>> If you do an HTTP GET to that URI I send you back an HTML page.  The 
>>> text of the poem is more or less centered.  It's set out in some 
>>> font of my choosing, in 25 point italic.  The background is purple.  
>>> I don't think the most appropriate way to describe that in English 
>>> is to say that it's my impression of the poem. It's the way I choose 
>>> to render the poem for your perusal.  In fact, it's quite 
>>> appropriate to say that the HTML page is the way that I choose to 
>>> represent the program.
>>> Furthermore, I don't think we need to insist that this particular 
>>> URI is only for the poem rendered in those fonts, unless that's what 
>>> I say the URI is for.  If I say that it's for the poem, and in a 
>>> year or so someone comes up with a font I like better, I see no 
>>> problem with my changing the page to use that.  The URI still 
>>> identifies the poem, since I say it does (presuming I've registered 
>>> example.com).  The HTML pages are still representations of the poem, 
>>> they are not my impressions of it.
>>>
>> Yes, I agree with all that.  I am perfectly clear about that.
>>
>> The problem is that at least someone does not think that 
>> http://www.ihmc.us/users/phayes/PatHayes can be used to refer Pat 
>> Hayes? They will say httpRange-14 dictates that 
>> "http://example.org/nonRhymingPoem" can emit 200 but 
>> http://www.ihmc.us/users/phayes/PatHayes must emit 303?
>
> Yes. That page violates httpRange-14 (deliberately, I might add :-)
>
>> I cannot see there is anything, at least anything objective, to judge 
>> that position. 
>> The reason people think that Pat's URI is wrong because when they 
>> dereference the URI with HTTP they gets back an HTML page.  They say, 
>> nah, Pat cannot be an HTML page, so that URI is wrong. But the truth 
>> is: it is not that Pat becomes a HTML page, it is a representation of 
>> Pat becomes page. What I want to say in the past few days is let's 
>> clarify the difference between *a resource* identified by a URI and 
>> *a representation* of that resource once dereferenced via the HTTP 
>> protocol.  You can know something about the resource from its 
>> representation but how much depends on the content of the 
>> representation and your ability to handle the representation.
>>
>> If we understand URI dereference from this point of view, there is no 
>> ground for httpRange-14 anymore. And there is no point to distinguish 
>> what is information resource and what is not.
>
> There is a real issue, however. You or I can read what that page says 
> and understand it. But programs can't. The Semantic Web needs a way 
> for a program to reliably infer whether the URI denotes me or some 
> HTML. If there were some universally agreed way to do this (say, a 
> world-standard, universally accepted, OWL person ontology) then the 
> page could use this. But there is no such way for it to say this in a 
> machine-readable fashion, and so we are left with an ambiguity.
If the RDF representation of "http://www.ihmc.us/users/phayes/PatHayes" 
says:
<http://www.ihmc.us/users/phayes/PatHayes> a foaf:Person.  Why a program 
would confuse that?  How?
> One view on this, which I have espoused elsewhere, is to simply accept 
> that URI denotations are ambiguous and learn to live with it, by using 
> the context to disambiguate the meaning. 
If we cleanly separate the meaning of URI from its *dereference* 
protocol, how can the identity of URI ambiguous?  HTTP is just a 
communication protocol, established for agents to communicate.   It does 
not establish a context for the meaning.  If we do, we put this as a 
poker game, where we try to infer someone's hand from its behavior.  Is 
this what the web wants?

Regards,

Xiaoshu

Received on Tuesday, 23 October 2007 23:40:08 UTC