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

RE: Invalid XML (rant)


invalid xml
It turned out, based on some private e-mail with Daniel that what confused him was the spec's wording in describing how well-formedness works: that each element must be inside one other element, and (I believe) he thought he had a problem with the name element being inside both the chapters and subsection elements.
 
He was confused by a sloppiness in XML terminology that has been around since SGML days but was unfortunately made official in the W3C Schema spec[1]: while XML 1.0 [2] (and SGML) carefully distinguished between element types and elements (with the object-oriented analogies being classes and instances), XSD replaced the term "element type" with "element" and "element" with "element item." "Element item," however, is just more of the abstruse vocabulary of the XSD Part 1 spec, and no one actually uses the phrase. (Try a Google search on "element item" and see what comes up.)
 
Now people refer to both a particular class of elements and a specific element instance as an "element," e.g. "DocBook's para element is similar to XHTML's p element" and "<p>this</p> is a p element." This won't confuse anyone who's been using XML long enough, but it's still sloppy terminology, and makes explanations to beginners and precise discussions among experts difficult. I asked about this in comments on an early draft of the XSD spec five years ago [3] and never heard a good explanation for why it was done. I just looked in the Infoset spec to see if that clarified at all; it never uses the term "element item," but it does say [4] that  "There is an element information item for each element appearing in the XML document." AAAAHHHHHH! (This calls for my old sig...)
 
Bob DuCharme          http://www.snee.com/bob           <bob@ 
snee.com>  "The elements be kind to thee, and make thy
spirits all of comfort!" Anthony and Cleopatra, III ii
[1] http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/#cElement_Declarations
[2] http://www.w3.org/TR/2004/REC-xml-20040204/#elemdecls
[3] http://lists.w3.org/Archives/Public/www-xml-schema-comments/1999OctDec/0000.html
[4] http://www.w3.org/TR/2004/REC-xml-infoset-20040204/#infoitem.element


From: Chiusano Joseph [mailto:chiusano_joseph@b...]
Sent: Tuesday, October 19, 2004 9:03 PM
To: Daniel Zingaro; xml-dev@l...
Subject: RE: Invalid XML

Adding to the point that Bob DuCharme made earlier: In XML Schema, it is not illegal to reference or declare (as a local declaration) an element within multiple "content models" (an example of a content model would be your <chapters> element and its subelements and any attributes). One approach within XML Schema would be to declare a global element <name> and reference it in the multiple content models (IMHO, this is the best approach versus re-declaring the element multiple times as a local declaration).
 
If, for some reason, the format of a global element <name> is different within the <subsection> content model than it is within the <chapters> content model (for example, a subsection name may be max 30 characters while a chapter name may be max 20 characters), one would could reference the global element <name> within the <chapters> content model, and declare a local element <name> within the <subsection> content model - or vice versa.
 
Kind Regards,
Joe Chiusano
Booz Allen Hamilton
Strategy and Technology Consultants to the World
 


From: Daniel Zingaro [mailto:daniel_zingaro@c...]
Sent: Tuesday, October 19, 2004 3:50 PM
To: xml-dev@l...
Subject: Invalid XML

Hi all,
 
According to the XML specification, I believe the following nesting structure to be invalid in XML. However, rxp on my Windows machine issues no warnings to me when parsed. Is this in fact invalid?
 
 <?xml version="1.1"?>
<library>
<book>
<title>Book Name</title>
<chapters>
<name>first chapter</name>
<name>second</name>
...
<name>last</name>
<subsection>
<name>I expect this to be illegal, since name is defined in chapters,
and also somewhere else in its content, namely subsection.</name>
</subsection>
</chapters>
</book>
</library>
 
Thanks very much,
Dan
 

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.