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

RE: Shocking News: Namespaces and Non-Validation

  • From: Peter Jones <peterj@w...>
  • To: 'Mark Tucker' <mct@f...>, "'xml-dev@i...'" <xml-dev@i...>
  • Date: Wed, 9 Sep 1998 14:50:52 +0100

shocking models
Here's how I see it (but I'm no expert).
Namespaces and DTDs do get along, but only if the declarations of
element types in the DTD contain qualified names (prefix:elementname)
that match the names of namespaced elements in the doc entity.
e.g. (and I'm not sure of the syntax here...)

<!ELEMENT     qual:name (content | model | #PCDATA) >

<qual:name> blah blah </qual:name>

But if you use two versions of qual:name in the doc then, even if you
define the namespace prefix to refer to a different URI in each case,
the process of validation will force both versions of qual:name to
conform to the same content model.
So basically, avoid duplicate prefixes for validation.

[For consideration of XML-DEV
I don't see why the URI for the namespace prefix could not refer to the
address of the DTD for the element concerned, for validation.]








> -----Original Message-----
> From:	Mark Tucker [SMTP:mct@f...]
> Sent:	Wednesday, September 09, 1998 2:13 PM
> To:	xml-dev@i...
> Subject:	Shocking News: Namespaces and Non-Validation
> 
> 
> I was shocked to hear that namespaces invalidate validation.
> 
> The problem seems to be that DTD validation does not expand 
> prefixes, nor does it apply namespace defaulting.
> 
> Can you all set me straight?
> 
> 
> 
> (Apologies in advance to two knowledgable people who gave me advice on
> this subject in private.  They unfortunately disagreed with each
> other, and now I am at a loss.
> 
> I hope you'll tell me that namespaces (esp. namespace defaulting) can
> live peacefully with DTD validation.
> )
> 
> The problem arises if a document uses <DATE>, with two different
> content models.  Suppose that in the "alpha" namespace, DATE contains
> DAY and MONTH, while in the "beta" namespace, DATE has an attribute v.
> Without namespaces, <DATE> would be ambiguous. It would need to
> satisfy two different content models.
> 
> ====================: Validation works with consistent PREFIXES
> 
> With prefixes, you could say (with appropriate definitions of the
> ALPHA
> and BETA prefixes)
> 
> <TOP>
> <SITE1>
>     <ALPHA:DATE>	-- This 
> 	<DAY>10</DAY>
> 	<MONTH>Sept</MONTH>
>     </ALPHA:DATE>
> </SITE1>
> <ELT2>
>   <BETA:DATE v="tuesday"/>    
> </ELT2>
> </TOP>
> 
> The above would be valid, if only because a DTD processor could just
> ignore the namespace, and treat the element name's as ALPHA:DATE and
> BETA:DATE.
> 
> ================: Validation fails with locally chosen prefixes
> Now, suppose the DTD defines
> 
> 	xmlns:KAPPA="uri:alpha"
> <!ELEMENT KAPPA:DATE (KAPPA:DAY KAPPA:MONTH) >
> ...
> 
> and the document that uses the "uri:alpha" dtd uses the prefix ALPHA
> 
> In this case the document would mention
> 
> 	<ALPHA:DATE>
> 
> MY QUESTION: Would a DTD processor figure out that KAPPA:DATE
> and ALPHA:DATE are the same element, (since the expansions of KAPPA
> and ALPHA are the same?
> 
> ================:  Validation dies when namespace defaults are used
> 
> And finally, DTD's seem to die completely if a document uses
> namespace defaulting.  The DTD validator will not even attempt
> to think that the first <DATE> refers to "uri:alpha"+DATE.
> 
> 
> But with namespace defaulting
> <TOP>
> <SITE1 xmlns="uri:alpha">
>     <DATE>	-- This is just DATE
> 	<DAY>10</DAY>
> 	<MONTH>Sept</MONTH>
>     </DATE>
> </SITE1>
> <ELT2 xmlns="uri:beta">
>   <DATE v="tuesday"/>     -- This is also just DATE
> </ELT2>
> </TOP>
> 
> a DTD processor would not figure out that 
> 	<DATE v="tuesday"/>    should be from the "beta" DTD,
> and 
>     <DATE>	-- This 
> 	<DAY>10</DAY>
> 	<MONTH>Sept</MONTH>
>     </DATE>
> should be checked against the "alpha" DTD.
> 
> 
> MY QUESTION: Is there any hope that namespaces and DTD's
> can get along?
> 
> 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/
> 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...)

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/
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.