[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

RE: Namespace clashes?

  • From: Ronald Bourret <rbourret@i...>
  • To: "XML Developers' List" <xml-dev@i...>
  • Date: Wed, 3 Feb 1999 12:47:35 +0100

RE: Namespace clashes?
> Imagine A, B, C, D and E and all users of some XML data. A and B exchange 
> data and agree to use A's namespace and that "<an:t>title</an:t>" is a
> book title (among other things).
>
> Elsewhere, C and D also exchange data and agree to use D's namespace and
> that "<dn:t>title</dn:t>" is a book title.
>
> 1. E comes along and wants to create data and exchange data with A, B, C
>    and D. What does E use? If E creates a new NS "<en:t>title</en:t>" 
then
>    A, B, C and D have to update there procedures to cater for this?

E should use <an:t> to exchange data with A and B and <dn:t> to exchange 
data with C and D. If E creates their own DTD, then everybody who wants to 
exchange data with E needs to update their software, which is unlikely to 
make E very popular.  A much better solution is to get everybody (A-E) to 
agree on a single set of tags in the first place.

> 2. Is there going to be (or is there) a registry for URI and tags so that 
>    this can be avoided?

There are some DTD (tag) registries already -- for example, see 
www.schema.net.

> 3. Is there some way to "alias" names so that you can say that "an:t",
>    "dn:t" and "en:t" are all the same (or is this up to the application)?

I believe that architectural forms allow you to do this, but I'm not sure.

> 4. How do you validate a document that may contain tag's and attributes 
that
>    are a mixture of different DTD's? It's easy when they have the same 
content
>    model but what if "an:t" and  "dn:t" are containers and have 
completely
>    different content models?

With current parsers, you need to make sure that the same prefixes are used 
in both the DTD and the document.  That "an:t" and "dn:t" have different 
content models is not a problem for validation -- they are different 
elements and have different names.  Differentiating between two different 
elements with the same name (whether they represent the same real-world 
information or not) is exactly the problem that namespaces were designed to 
solve.

Note that an application needs to treat "an:t" and "dn:t" differently, just 
as it would treat "an:t" and "an:xxx" differently.  The fact that both 
represent a title is the application's problem and must be solved in the 
application.  As mentioned above, a simple (but not always easy) way to do 
this is to get A-E to agree on a single DTD.

In general, namespaces will more likely be used to differentiate between 
elements from two different DTDs that cover different subject areas but use 
the same names, such as when <Title> means book title in one DTD and job 
title in another DTD.  This becomes a problem when somebody creates a new 
DTD that reuses both of these DTDs.

-- Ron Bourret


xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@i...
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@i... the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo@i... the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa@i...)


PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
 

Stylus Studio has published XML-DEV in RSS and ATOM formats, enabling users to easily subcribe to the list from their preferred news reader application.


Stylus Studio Sponsored Links are added links designed to provide related and additional information to the visitors of this website. they were not included by the author in the initial post. To view the content without the Sponsor Links please click here.

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.