Suppose you have a document with references to MODS records in several
external files, each of which refers to one or more MADS records in yet
other external files. You want to flatten the document: embed all the
MODS and MADS records so that there are no external dependencies. This
instance document might never even reside on storage; it may be an
intermediate stage, say, on the way to formatted output.

Also, MODS instances already use up to three namespaces (not counting for the schemaLocation
attribute): (MODS elements), (the href attribute), and (the lang attribute). Plus the
non-namespace, where unqualified attributes go. How will another
namespace add much complexity?


>>> [log in to unmask] 01/25/05 2:27 PM >>>
I'm looking for concrete examples.  Why should I want to create
instances with mixed MODS and MADS namespaces?

This is critical issue.  For anyone who's ever worked with instance
data across multiple namespaces, every time you add a namespace -- in
the context of XSLT processing, or query, or whatever -- the level of
complexity goes up significantly.

I spent ages and ages utterly frustrated trying to work out multiple
namespace issues in some XSLT stylesheets I was working on awhile ago.
In that case, I had the following namespaces:

        document (docbook)
        bib metadata (mods)
        styling config language (my own schema)

[I've since added a fourth which is internal to the processing; and
then of course there's the output namespace]

So, in this fairly complex context, I had three namespaces, and it was
a PITA.  It was made somewhat easier, however, because each document
had its own namespace.

Now, if I understand you right, you're telling me it's feasible I may
need to deal with one or two more namespaces just to be able to handle
MODS data?  If I have that right, why I should I want to make my life
more difficult (having to constantly be aware of which element is
associated with which namespace) to get what practical benefit?

If one doesn't get the namespaces precisely right in XML processing,
it's as if the data isn't even there.