Re: Question on canonicalization and namespaces

On Monday 30 September 2002 11:05 am, Spielman, Terence wrote:
> Sorry to revive a dead topic, but it's been pointed out to me
> that the answer I received on this list might be erroneous.

To reswap in the context, I went back and had a look at this thread:
  http://lists.w3.org/Archives/Public/w3c-ietf-xmldsig/2002AprJun/0293.html
and the answers still seem reasonable, but let's have a look! <smile/>

> > > 1) Is it required that the Signature element have a namespace
> > >    node with a value of "http://www.w3.org/2000/09/xmldsig#"?
> > >    [No if the XML need only be well-formed and Yes otherwise]
...
> I understand both of these example, in which the namespace is
> eitehr explicitly declared in the Signature element or inherited,
> but the XML DSIG DTD states the following:
>
>    <!ATTLIST Signature
>     xmlns   CDATA   #FIXED 'http://www.w3.org/2000/09/xmldsig#'
>     Id      ID  #IMPLIED >
>
> And #FIXED means that if the xmlns is omitted, it will take the value of
> specified above.  This would lead me to believe that the xmlns attribute
> does NOT explicitly need to be included or inherited.  Although this does
> disturb me.  Can anyone set me straight?

I agree with Christian that (1) the abstract representation 
(XPath/Information Set) item will always be associated with the namespace, 
and (2) that it isn't good to rely upon implicit defaults. However, one 
qualification on the XML Schema point. While we started out using a DTD, we 
did migrate to using schema's (because of these and related problems with 
DTDs) and, as the REC says, the schema is  normative, not the DTD. 

We wanted to clearly place these element types in a namespace, but we didn't 
want to dicate exactly *where* those declarations have to appear. (For 
example, to accomodate your example in which the declaration appears in a 
ancestor). The best way we could represent this in the DTD was to use 
#FIXED.

Received on Monday, 30 September 2002 12:48:23 UTC