|
[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: Shocking News: Namespaces and Non-Validation
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! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|
|||||||||

Cart








