Hi Raul, here's an attempt to help you further:
from the spec: Namespace Nodes- A namespace node N is ignored if the nearest ancestor element of the node's parent element that is in the node-set has a namespace node in the node-set with the same local name and value as N. Otherwise, process the namespace node N in the same way as an attribute node, except assign the local name xmlns to the default namespace node if it exists (in XPath, the default namespace node has an empty URI and local name). Now, if I apply that to the xmlns:bar="http://example.org/bar" namespace node (N) belonging to the element in the third line: N's parent element that is in the node-set: bar:Something bar:Something's nearest ancestor: <foo:Something xmlns:foo="http://example.org/foo"> this node doesn't have a namespace node xmlns:bar="http://example.org/bar", so you cannot delete N. if somebody on the list could double-check this, I would feel more comfortable :) Karel. ------------------------------------------------------------------------ Katholieke Universiteit Leuven tel. +32 16 32 96 17 Dept. Electrical Engineering-ESAT / COSIC Kasteelpark Arenberg 10, B-3001 Leuven-Heverlee, BELGIUM http://www.esat.kuleuven.ac.be/cosic ------------------------------------------------------------------------ On Sun, 25 Apr 2004, [EMAIL PROTECTED] wrote: > I'm rewriting the inclusive canonicalization and i see same weirds thing > in the test vector: > > /data/interop/c14n/Y4/c14n-1.txt: > > <bar:Something xmlns:bar="http://example.org/bar" xml:lang="en-ie"> > <foo:Something xmlns:foo="http://example.org/foo"> > <bar:Something xmlns:bar="http://example.org/bar"> > <foo:Something xmlns:foo="http://example.org/foo"> > <baz:Something xmlns:baz="http://example.org/baz"></baz:Something> > </foo:Something> > </bar:Something> > </foo:Something> > </bar:Something> > > > > Is valid and this one not: > > <bar:Something xmlns:bar="http://example.org/bar" xml:lang="en-ie"> > <foo:Something xmlns:foo="http://example.org/foo"> > <bar:Something> > <foo:Something> > <baz:Something xmlns:baz="http://example.org/baz"></baz:Something> > </foo:Something> > </bar:Something> > </foo:Something> > </bar:Something> > > Why is needed to redeclare the xmlns:foo & xmlns:bar in the same prefixes? > I have readed the spec and doesn't see why, I'm getting mad about it. > > Thanks in advance. >