Re: Interop and c14n(x) != c14n(c14n(x))

Hi Merlin,


>> That would be VERY nice. In all other test vectors I use for unit
>> testing  and interop, I don't have such esoteric node sets.
>
> Sure, I'll try sending along something.

Cool, thanks in advance.

>> It's not that important, just an idea. If you take this fragment and you
>> take all nodes but the notIncluded element into the node set:
>>
>> <included xml:foo="bar" xml:lang="de">
>> <notIncluded>
>> <included>
>> </included>
>> </notIncluded>
>> </included>
>>
>> Then Canonical XML produces the following octet stream:
>>
>> <included xml:foo="bar" xml:lang="de">
>>
>> <included xml:foo="bar" xml:lang="de">
>> </included>
>>
>> </included>
>>
>> If you canonicalize this octet stream again, you get
>>
>> <included xml:foo="bar" xml:lang="de">
>>
>> <included>
>> </included>
>>
>> </included>
>
> That's not correct; repeated xml:* attributes are not suppressed,
> they are emitted at every element that defines them.

Sorry, even for (inclusive) c14n? I mean, the first c14n step takes a node 
set input and therefore must emit the xml:* attributes each time it the 
parent is not in the node set. But if the resulting octet stream from the 
1st c14n is c14nized again, it is parsed into a node set, and this time, 
all nodes are in the document subset, so as far as I understood the 
processing, the 2nd xml:* attributes are omitted.

Kind regards,
Christian

Received on Tuesday, 28 May 2002 09:48:24 UTC