- From: David Carlisle <david@dcarlisle.demon.co.uk>
- Date: Sun, 25 Jun 2000 23:07:20 +0100 (BST)
- To: connolly@w3.org
- CC: xml-uri@w3.org
> To elaborate a bit: > > So regarding a doc at http://example.com/dir1/dir2/ > <aDoc xmlns="../foo"/> > > Q: does it conform to XML 1.0? > A: of course; noone has suggested otherwise. > It's well-formed. OK > Q: does it conform to the namespaces spec? > A: indeed, it does. > But if you look at the errata page, you'll > notice a big warning that you're asking > for trouble by using relative URI references > in namespace declarations. OK > Q: OK, then, what's the namespace name of the root element? > A: ../foo , per the namespaces spec as written. OK > But be careful about calling it anything else, > like "namespace URI" -- that terminology suggests > that you're talking about the absolute form > of ../foo w.r.t. the relevant base. I don't see why you think it suggest the absolute URI against any particular base. "namepsace URI" is a natural shortening of "URI reference used as namespace name". > Q: In the infoset, what's the value of the in-scope-namespaces property > of the root element? > > A: unspecified; out of scope for this version of the infoset spec > > The infoset spec not only doesn't cover documents > that are well-formed but not namespace-spec-conformant, > this version doesn't cover documents that > are namespace-spec-conformant but use relative URI > references in namespace declarations. > > (as Paul G put it: > 2. say that a document containing an nsattrib whose value is a > relative URI has no defined infoset.) > I am not sure being allowed but undefined really helps. Why not just forbid, if that's what you want? In any case if such a document doesn't have an infoset then it shouldn't have an xpath data model either, as these are supposed to be compatible (and presumably the timing of the two specs is the main reason why xpath does not more explictly depend on infoset) > Q: what does the DOM spec return for the namespaceURI attribute? > > A: unspecified; > (see elaboration by Joe K above) > Q: what's the value of the XPath namespace-uri() function > with <aDoc> as the current node?? > > A: http://example.com/dir1/foo per the XPath and URI specs, > but beware: we've seen implementations that don't > give that answer. As noted above, the consistent thing would not be to allow this case in xpath. If xpath is allowed, then namespace names occur in two places: in testing whether two elements match, and in returning the string value of the namespace-uri() function. Since elements match if their namespace name and local name are the same, in view of your third answer above, I take it that you want matching to use the namespace name but still have the function return the absolute URI? Or perhaps you want both to use the absolute URI? (I wasn't sure). In either case this would just be confirming the current incompatibility between xpath and the namespace spec, which was the main cause of the current confusion. "forbid" is a possibility, and then documents that use relative URI as namespace names don't have an infoset or an xpath data model, but allowing relative URI in xpath but not infoset just seems to be making things even more confused than they are now. David
Received on Sunday, 25 June 2000 18:01:48 UTC