RE: Thoughts on namespaces--Several active within one element, No DTD changes.

At 04:30 PM 5/22/97 GMT, Christopher R. Maden wrote:

>First, I believe the primary goal of namespaces is to allow borrowing
>of established semantics - I want to use TEI's <xref>, HTML's <a>, and
>the FAQ DTD's <q> and <a>.  

This is true, but does not completely explain the requirement. Let me
elaborate on it.  What my customers are telling me is that they want to
be able to take an element that exists already, defined in some
namespace, then add sub-elements from other namespaces. Using the
proposed namespace qualification operator, I can illustrate this as: 

<CAR>
	<SEATS>6</SEATS>
	<ENGINE>
		<CYLINDERS>6</CYLINDERS><DISPLACEMENT>4</DISPLACEMENT>
	</ENGINE>
	<a:COLOR>LIGHT CORAL<a:COLOR>
	<b:DSIG><SUM>123456</SUM><WHO>Andrew</WHO></b:DSIG>
	<BUYER>
		<ssa:SSN>123456789</ssa:SSN>
		<tei:XREF>http://ssa.gov</tei:XREF>
	</BUYER>
</CAR>

This has five namespaces running within CAR: The one from which CAR
comes, and also "a", "b", "ssa" and "tei".

They want to do this without requiring that any DTD's are modified.
(Frankly, they want to do this without any DTDs at all.)

Why? Because these people are in one way or another annotating
documents, or accumulating various bits of information together, where
some of the information comes from one domain and some from another. The
digital signature, for example, comes from the world of security
information, and will be read by some selected applications (such as
firewalls). Naturally, finding every document that might ever need to
have a digital signature and updating its DTD would be an impossibly
expensive task. In many case, it would be completely impractical,
because an author of a document might not have write privileges on the
DTD.  Different users, from different applications, will want to
annotate elements with subelements from differing namespaces.

So, it is not enough to be able to say at the beginning of my document
that there are such things as COLOR, DSIG, SSN and XREF, all from
different namespaces. I also need to make each of these usable within
CAR, without modifying any DTD.

Received on Thursday, 22 May 1997 17:02:24 UTC