[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
the need for document type name (was: Define a root in a DTD)
- From: "K. Ari Krupnikov" <ari@cogsci.ed.ac.uk>
- To: xml-dev@lists.xml.org
- Date: Sun, 01 Jul 2001 15:01:21 +0100
> > I have few elements in a DTD and I want to explicity declare one as
> > the root to be used in XML, not the others, is there a way for that ?
>
> No. This is done in the document's document type declaration, not in the
> DTD. In a document type declaration like this,
>
> <!DOCTYPE chapter SYSTEM "docbook.dtd">
>
> the whole point of the "chapter" part is to identify which of the element
> types declared in the specified DTD should be used as the root element (also
> known as the "document element"--the element to be used to enclose the whole
> document).
What is the need for specifying the document element in an XML document
declaration? It is my understanding that in SGML elements may be
omitted, so if the outermost element might be <BODY> but
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
tells the processor that HTML is the document element, and that <HTML>,
<HEAD>, <TITLE>, etc. are implicitly present.
In XML, elements cannot be omitted, so looking at the document element
should be sufficient. So is the requirement for a document declaration
name simply for compatibility with SGML, or is there another reason?
Ari.