Re: Last call announcement for Namespaces 1.1

On Wednesday 11 September 2002 01:16 pm, Richard Whitcomb wrote:
> I don't agree that changes would be required to exc-c14n, but would like
> to hear more about why this would be the case.

I don't think this is the case either, but I'm not sure. My present 
understanding is all the specs would have to change anyway to normatively 
reference NS 1.1, and while I think I know what would have to be done, I'm 
content to have the denizens of the future be sure of the details! <smile/>

The example I'm thinking is:

<a xmlns="http://example.com/default"
    xmlns:foo="http://example.com/foo" foo:value="f">
    <b xmlns:foo="">
        <c/>
    </b>
</a>

Where the subset "c" is selected for canonicalization. Now of course, you 
couldn't use c14n or exc-c14n presently because xmlns:foo="" is an illegal 
NS 1.0 . But let's assume were making new versions for NS 1.1.

At first I was thinking the Canonical Form (without any other changes to the 
spec) would be:
        <c xmlns="http://example.com/default" xmlns:foo=""/>
At least that's what would happen in the python implementation, but if we're 
using a NS1.1 compliant parser the xmlns:foo won't be in the namespace axis 
anyway so the actual result would be:
        <c xmlns="http://example.com/default"/>
(I'd have to tweak the implementation to do this since we don't have axis to 
a real namespace axis but pull them out of the attribute axis...)

The Exclusive Canonical Form (without any other changes to the spec other 
than to permit xmlns:foo="") would also be:
        <c xmlns="http://example.com/default"/>
and I know I wouldn't have to make any changes to my code even because 
"unutilized" namespace/prefix declarations are never emitted, and there's 
no way a valid XML document would have a prefix in use for which there was 
not a declaration.

Received on Wednesday, 11 September 2002 14:49:47 UTC