Namespace handling in XML Processors

David Brownell david-b at pacbell.net
Tue Aug 31 18:10:57 BST 1999


schen at falconwing.com wrote:
>
> Hi David, everyone,
>
> Thanks for clearing up all the different issues.
>
> So if I'm to understand this correctly, for processing to occur in the
> right way involves the following steps:

It'd normally happen in the other order ... namespace processing after
XML processing, but I think the implied order wasn't intentional!


> Namespace processor:
> apply scoping, defaulting, and URI comparison to all elements so that each
> element and attribute has a namespace prefix, normalizing all elements and
> attributes in the same URI namespace to have the same prefix.

That'd be one kind of namespace processor; there are others.  This
can all be done dynamically.  And of course, prefixes aren't supposed
to matter except to be mnemonic to folk writing XML by hand -- many
"namespace processors" will ignore prefixes except for output concerns.
Applications doing "semantic" processing should use the namespace URI
and the local part of the name, ignoring everything else.


> DTD:
> using external/internal subsets, define DTD using normalized namespace
> prefixes.  This would require somehow combining the DTD's of each
> namespace being used.  An example would be in XSLT, validating stylesheets
> using the XSLT DTD fragment.
>
> XML Processor:
> process as usual, all element and attribute names having been
> "fully-qualified", is treated just like any other XML document.

DTD processing is done by the XML processor, and doesn't know
a thing about XML namespaces.  They're orthogonal.


> Do I have this right?

No, DTD processing is part of XML processing and doesn't know
anything at all about namespaces.  "Normalizing" prefixes isn't
required (if it were done, a namespace processor could do it),
and if you can use DTD mechanisms to combine your vocabularies
you didn't really need to use namespaces.


>       So currently the tricky part is merging the DTDs,
> and without standardization on schemas and namespace semantics mapping,
> many people feel that namespaces are confusing at best and useless at
> worst as it is today.

The most effective way to think about XML namespaces is without
letting DTDs enter the discussion.  There's a set of documents
that can use them together, but the conflicts are more evident.

The XML Namespace spec was pretty much rushed to REC status a bit
on the early side ... without a good general understanding of its
place in the suite of XML standards.  Hence that confusion.


> But at least I can recognize the utility of namespaces in XSLT, which
> would be more difficult to handle without this facility.  Less clear to me
> is the raging XHTML debate in the parallel thread(s).
>
> Sorry for stirring up anything that was rehashed before, I've only just
> subscribed to the list.  Thanks again.

 There seem to be no flames on this thread!  (Knock on wood ... ;-)

- Dave

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