Different element references in same namespace

Paul W. Abrahams abrahams at valinet.com
Fri Jun 18 01:16:17 BST 1999

I've found what appears to be a problem with the way that the namespace
spec treats different references to a single element within a
namespace.  Consider the following document:

          <elt xmlns:foo = "file:///bar" xmlns:goo = "file:///bar" xmlns
= "file:///bar >
             <goo:gertie> Faugh! </goo:gertie>
             <gertie> <bibble/> </gertie>

According to Appendix A.3 of the spec, `foo:gertie', `goo:gertie', and
`gertie' all have the same expanded element type, namely:

   <ExpEType type="gertie" ns="file:///bar">

They therefore all belong to the same namespace.

The question then arises: do the three elements have the same type in
the XML 1.0 sense, and if so, how ought they be declared in the DTD?
Should there be one declaration for all three or three declarations, one

for each?  Note that the ``natural'' declarations for the three elements

are all different:

<!ELEMENT foo:gertie EMPTY>
<!ELEMENT goo:gertie (#PCDATA)>
<!ELEMENT gertie (bibble?)>

Furthermore, if interoperability is a consideration, the EMPTY
declaration should be used if and only if the elements are empty.

Paul Abrahams
abrahams at acm.org

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

More information about the Xml-dev mailing list