Namespace handling in XML Processors

W. Eliot Kimber eliot at isogen.com
Sun Aug 29 19:22:39 BST 1999


schen at falconwing.com wrote:
> 
> Speaking of namespaces,
> 
> It's very confusing as to what is regarded as correct behavior by XML
> processors when encountering a document with namespaces.
> All the standard seems to do is to allow use of the same element names
> without conflict.

No--it allows you to construct long, guaranteed unique element type
names where part of the name (the base bit) is obviously syntactically
separated from the first bit that guarantees uniqueness. But the element
type name is the full-qualified name.  Therefore, there is no general
sense in which to names that happen to have the same base part are the
"same", any more than two machines named "spock" from different IP
domains are the "same". They are just different names.
 
> So two questions:
> 
> 1) If an XML processor was semantically interpreting an XML document but
> encounters an unknown namespace, is it mandated to ignore all elements and
> attributes in that namespace?  I thought this was the case, but after
> re-reading the standard I see it's not defined.  If this is not
> standardized, can anyone say what is currently the common practice?

No processing can or should be mandidated by any 
 
> 2) How should a validating XML parser deal with namespaces?  This doesn't
> seem to be defined very clearly.  I can see that we can include namespace
> declarations in the DTD external and internal subsets, so I guess that if
> I have a document mixing two namespaces I would have the external DTD
> point to the one for the "primary" namespace and then use the internal
> subset to override the external DTD to provide for insertion of elements
> and attributes using the second namespace.  But this can rapidly get out
> of hand with mixing of even more namespaces.  Is there any better
> mechanism for this, or are any planned?

You create a set of declarations where the namespace *prefixes* are part
of the element type declarations.  That's the only way to do it because
XML 1.0 validation is defined purely in terms of names as declared in
element type and attribute list declarations.

Cheers,

E.

xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ and on CD-ROM/ISBN 981-02-3594-1
To (un)subscribe, mailto:majordomo at ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)





More information about the Xml-dev mailing list