>> Christian Geuer-Pollmann wrote:
>>
>> Right. What I suggest is to include ALL namespace nodes (not the ones
>> from the DOM model but the ones from the XPath model). Every namespace
>> node in an ancestor should effect the current node, not only the
>> namespaces nodes whose owner element is in the document subset.
>>
>
> On Mittwoch, 5. Juni 2002 01:42 -0700 Aleksey Sanin <aleksey@aleksey.com>
wrote:
> Yes, I agree with this. But I do not like the case
> when we have following document
>
> <foo:Something xmlns:foo="http://example.org/foo">
> <bar:Something xmlns:bar="http://example.org/bar" />
> </foo:Something>
>
> the XPath expression looks like
>
> self::bar:Something
>
> and the canonicalized output looks like
>
> xmlns:foo="http://example.org/foo"
> <bar:Something xmlns:bar="http://example.org/bar"
> xmlns:foo="http://example.org/foo" /> From my point of view it should
> look have *only* <bar:Somehting />
>
> <bar:Something xmlns:bar="http://example.org/bar" />
>
> So the suggestion is to include all visibly utilized namespace nodes and
> simply do not check namespace nodes for presence in the input nodes set.
>
> Aleksey.
Uuh, it becomes complicated ;-)) I agree on what you say:
If we do 'enforce' that all (relevant) changes in namespace-space become
visible in the elements where (1) the namespace is utilized or (2) the
namespace is in the IncusiveNamespaces.PrefixList and 'changes' it's value,
there's no need to output a namespace attribute if the owner element is
omitted from the document subset.
I would say: If the owner element (parent?) of a namespace node is not in
the document subset, the namespace node is not output.
Regards,
Christian
PS: Yesterday, I asked Merlin (not via list) the following:
--On Dienstag, 4. Juni 2002 15:52 +0100 merlin <merlin@baltimore.ie> wrote:
>
> Hi Christian,
>
> Namespace nodes are not output if their parent element
> is not in the node set, unless their prefix is in
> IncusiveNamespaces.PrefixList.
>
> http://www.w3.org/Signature/Drafts/xml-exc-c14n.html
> Section 3, item 3
> [A namespace node not in IncusiveNamespaces.PrefixList is ignored if]
> 1. Its parent element is not in the node set
>
> Merlin
>
> r/geuer-pollmann@nue.et-inf.uni-siegen.de/2002.06.04/16:19:56
>> Hi Merlin, just a short question about exclusive c14n:
>>
>> In your (inclusive) c14n samples, you outputted attribute nodes and
>> namespaces if they are in the document subset while their owner element
>> is not.
>>
>> Q: Does the same apply for exclusive c14n? For example, the 'A' element
>> is not in the subset but it's namespace and attribute axis: ([] denotes
>> "in the document subset):
>>
>> input:
>>
>> <A [d:a="foo"] [xmlns:a="http://a"] />
>>
>> output:
>>
>> xmlns:a="http://a" d:a="foo"
>>
>>
>> Is this correct?
>>
>> Regards,
>> Christian