Undeclared elements error
Richard L. Goerwitz III
richard at goon.stg.brown.edu
Thu Sep 17 14:45:21 BST 1998
> Liam R. E. Quin wrote:
>
> > Should the following produce a warning?
> >
> > <!ELEMENT CHAPTER (LOCATION,DESCRIPTION)>
> > <!--* error: LOCATION has not been declared *-->
> > <!--* error: DESCRIPTION has not been declared *-->
> >
> > <!ELEMENT LOCATION (#PCDATA)>
> > <!ELEMENT DESCRIPTION (#PCDATA)>
>
> Absolutely not.
In an attempt to flesh out James Clark's somewhat abrupt note, let
me just give you a quick example illustrating why your intuitions
were right about it being okay to use element names in content models
before they are declared:
<!ELEMENT text (#PCDATA | italic | bold)*>
<!ELEMENT italic (#PCDATA | bold)*>
<!ELEMENT bold (#PCDATA | italic)*>
Other questions you might wonder about include:
1) What if I use an element in a content model and I don't
declare it?
2) What if I declare an element in a content model that I
don't use in any content model (and the element isn't the
root element)?
By my reading of the XML spec, these are not clearly stated to be
errors. So they aren't errors (unless you try to use the elements
in a document - in which case, other constraints exclude them).
I may have missed something, of course.
In such situations, it's tempting to cheat and just use your know-
ledge of SGML. One would hope that future standards will answer
such questions definitively, removing this temptation (confusion).
Richard Goerwitz
STG
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/
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