- From: Tim Berners-Lee <timbl@w3.org>
- Date: Wed, 17 May 2000 19:28:53 -0400
- To: <xml-uri@w3.org>, "Jonathan Robie" <Jonathan.Robie@SoftwareAG-USA.com>
-----Original Message----- From: Jonathan Robie <Jonathan.Robie@SoftwareAG-USA.com> To: xml-uri@w3.org <xml-uri@w3.org> Date: Wednesday, May 17, 2000 10:38 AM Subject: Re: Are *relative* URIs as namespace nemes considered harmful? >At 03:14 AM 5/17/00 -0400, Tim Berners-Lee wrote: > >>On the contrary, there is a serious one: you get things which were >>(identical, not identical) when compared as strings turning out to >>generate (not identical, identical) objects when >>considered as URIs. This seems to me to be untenable. > >I want to make sure that I understand what you want. Are you saying that >two namespaces should be considered the same if and only if their URIs >resolve to the same resource? In my book, a Resource is that abstract thing identified by a URI. Two namespaces must be considered the same if they are the same resource. When you say "resolve to the same resource" you could mean a number of things. 1. When HTTP is used to resolve an http: URI, the server forwards a lookup response ("found") indicating that a representation of each bresource may be obtained using the same forwarded URI. In this case, then it would be reasonable for an agent to conclude that the two rsources were equivalent. But I would not require general XML agents to check for this. 2. There is some metadata somewhere (in a persistent cache catalog, maybe in the schema, maybe on the back of some digital envelope) which informs the agent that two resources are equivalent. Some response. I think it is reasonable for an XML processor to be equired to absolutize the URI and then check equality, but not require it do do any more. In hte case of the catalog file indicating the equivalence of a local copy and the definitive HTTP or UUID: (or fpi?) URI, I would expect the translatoin to be done ithout the user worrying about anything than the definitive URI. I can imaging a fute schema langauge containing a statement allowing one to declare that two languages are the same, in which case xxx-schema compliance would probably add a requirement to take such declarations into account. 3. There are some offline cannonicalization operations you can do. For example, if you know about HTTP and DNS you can dedcue that URIs which differ only in the case of their DNS name part are in fact equivalent. But I would NOT require XML processors to be aware of that. > If so, must a physical resource be created in >order to create a namespace? Certainly not. You can create an HTTP URI and not even run a server - you must just own the DNS domain. You can allocate a uuid: URI to a namespace and never create a physical resource. And so on. That said, we have what I think is a good policy at W3C that any tech. report which uses a w3.org namespace must provide some document for the server to return in response to a query for a representatoin of the namespace. An HTML document is a minimum, a schema is prefered. (The schema validator XSV will for example follwo namespace links, and if it gets back schemas, use them to schma-validate a document. Henry Thompson today demonstarted at WWW9 the recursiv schema validation on the schema for schemas, including the reference to XML schema which it imports). All such URIs must be in dated (www.w3.org/YYYY/...) space where we have a firm policy of persistence and no reuse. >Also, let me make sure I have my facts straight. I assume that when string >comparison says two URIs are equal, they identify the same resource (if >such a resource exists). Yes. The resource is abstract and so its existnce is not in doubt strictly - but I know what you mean - there may be no known digital representation of the namespace resource. > If string comparison says two URIs are unequal, >they may still be aliases for the same resource. To me, this does not seem >inconsistent for the purpose of names. Two pointers may have different >names, but identify the same object. Yes. You can't from looking at a name prove that two resources are not equivalent. You can only hope to prove they are equivalent. We just set a low bar of things for XML software to check for for well-formedness testing. But that doesn't matter in the end. You could go though life with two support classs, one for htp://example.com/xhtlm4 an one for http://example.net/xHTML-4.0 and never realize that you needn't have bothered because in fact they are the same language. There are things in hte world which are equivalent though not a living soul knows it. That is life. > If the identity is not in the name >itself, where is it? Suppose two different domain names are registered for >the same web site, but the company owning those domains splits and creates >two different web sites, one for each domain. If I have a document >containing URIs defined with each domain, did the names used in that >document all change when the domains were mapped to different resources? Or, more simply, if someone changes the file served up for a namespace URI, does the namespace change? No, certianly not. One could for example add more comments to a schema defining a namespace. The namespaces does not change. Just the amount the srever can tell you about it does. >>And remember there are many operations you can do on URIs which do not >>involve getting on the net. For example, you can look up what you know >>about them >>from other sources. You can check your local broker for a Java implementation. >>And so on. > >Are you implying that XML implementations should do this kind of research >for such simple operations as determining the name of an element or an >attribute? Absolutely not. Tim >Jonathan >
Received on Thursday, 18 May 2000 02:33:39 UTC