Re: Empty URIs

At 10:28 AM 2000-05-18 -0400, Eve L. Maler wrote:
>At 08:01 PM 5/17/00 -0400, Tim Berners-Lee wrote:
>> >If I understand correctly, you're suggesting that the namespace URI is
>> >self-referencing (assuming you actually plan to dereference something) by
>> >virtue of being empty.  However, note that such a value is an empty URI
>> >reference [1], not a relative URI reference; normal base resolution does
>> >not apply because the referent is always the current document.
>>
>>
>>Well, actually it wasn't empty there exactly because as you point out the
spec
>>[brokenly IMHO]  assigns a special meaning (of which I don't understand the
>>purpose) to
>>an empty URI. An empty URI is defined by the URI RFC to refer to
>>the current document.  

Broken or otherwise, it was clear that users wanted a way to refer to point
in the current document and that they would not check or could not control
the existence or value of a BASE parameter for the open image of their
document.  So the trivial null URI was hardwired to "right here" in a way
that is not changed by BASE value fluctuations.  If you want the other
semantics, what is the syntax?  Is it "./#"?

This is to make the system usable by people, and the result of hard knocks
in the school of experience.

Al


Chris had to use "#" to refer to the current document
>>for this reason. But I wasn't going to get into that discussion then... but
>>I suppose a thread for it would be appropriate.
>>
>> >We've been focusing on only one case (relative URIs) to the exclusion of
>> >another important one (empty URIs), and there may be tricky corners to the
>> >latter because the Namespaces spec defines special features for empty
>> >strings as namespace declaration values.  (I think the presence of the
bare
>> >"#" in your example above negates its use as an "unsetting"
declaration...)
>>
>>That is indeed why it was there.
>>Tim BL
>
>My main point, though, was that RFC 2396 defines "empty URI" differently 
>from "relative URI", and also defines its "absolutization" differently.  If 
>you have xmlns="#", then the URI portion of this URI reference is still 
>empty, and if you intend to use it for any retrieval, or if the ultimate 
>decision is to compare after absolutization, then it needs to be 
>absolutized too.  Any solution needs to take into account the use cases of 
>"" (with its special Namespaces meaning), "#", and "#foo".
>
>Since a base URI isn't used in this case, it seems to me there is no 
>canonical absolute form provided by the document itself, which could easily 
>lead to false positives in absolutized comparison.
>
>         Eve
>--
>Eve Maler                                    +1 781 442 3190
>Sun Microsystems XML Technology Center    elm @ east.sun.com
> 

Received on Thursday, 18 May 2000 12:36:48 UTC