Digital Talking Book Expanded Document Type Definition Documentation for Version V110

Date: 2002-02-27

Author: Harvey Bingham

Introduction

This informative document expands upon the Digital Talking Book XML Document Type Definition Implementing the ANSI/NISO Digital Talking Book V1.1.0 Document. See [DTBOOKV110DTD]



1. Purpose

The Digital Talking Book Document Type Definition (DTD) provides the means to mark up the text of a document to permit support for the combination of professional narration and navigation into that narration. It also facilitates the output of a document's content in a variety of accessible formats. The markup tags in the book convey its content in structure, and contain some metadata about the book content and its structure.

The Document Type Definition names and defines the allowable element types, their allowable content, and their attributes. Correct markup of the text of the book permits the textual material to be synchronized using SMIL [SMIL2.0] files with the professionally narrated version of that book. The synchronization can permit concurrent display of the text being narrated. The textual content can be searched in context to locate material desired for narration.

The source DTD from which this document has been generated is dtbook110.dtd. See [DTBOOKV110DTD].

Go to the Table of Contents.


1.1. Prior Related Work

The DAISY (Digital Audio-based Information SYstem) Consortium contributed substantially to the development of this DTD. This application of XML is the next generation after several DAISY versions of 2.X specifications, see [DAISY202].

The DAISY Statement of Principles for the Creation and Production of Accessible Books and Materials [DAISY-2-GUIDELINES] represents the minimum standard to be met by Libraries of the Blind and producers of alternative format materials.

Its Navigation Control Center (NCC) provided for synchronizing document structure with narration.

The NCC evolved into an XML application called the "Navigation Control File for XML applications" (NCX). Its content is derived from the markup of documents tagged using the dtbook DTD. Richer structuring capability is one of the objectives of that DTD. The Synchronized Multimedia Integration Language [SMIL2.0] is used to provide synchronized narrations and text. The NCX provides navigation using the identified elements of documents tagged to this DTD.

The dtbook DTD includes many, but not all, of the element types found in both the [HTML401STRICT] and [XHTML11STRICT] strict DTDs. HTML authoring tools permit those additional element tags, and may ignore the additional tags that are dtbook-specific. The lowercase names from XHTML are used, rather than the uppercase names from HTML.

Go to the Table of Contents.


1.2. Evolution from HTML

Dtbook110 has 79 element types. It shares 47 element types with the HTML4.0 Strict DTD [HTML401STRICT] (as adjusted to use the lower-case names consonant with the XHTML Strict DTD [XHTML11STRICT]). It omits 30 element types from them, and has 32 unique element types.

Endtag markup is sometimes optional in HTML. It is required for use with xhtml and dtbook. Any XML application [XML12] requires endtags, or their abbreviated form for empty elements, such as "<br />". The benefit of including endtags is that the tagged document has dependable structure that can be validated against the dtbook dtd.

Some tools available for browsing HTML may be used with dtbook material, at the expense of their discarding or ignoring some specific tagging and attributes that are not part of HTML 4.0. A CSS-based stylesheet [CSS1] or [CSS2] that identifies the presentation expectations for the HTML and non-HTML tags, or a filter to map those tags onto suitable HTML tags can provide appropriate visual presentation.

Go to the Table of Contents.


2. Document Tagging Content

A Digital Talking Book document is an XML application. Therefore, it must begin with the XML processing instruction, followed by the DOCTYPE declaration.


2.1. XML Processing Instruction Content

The XML Processing Instruction identifies the version of XML, and the optional character set encoding for the document:

<?xml version="1.0" encoding="UTF-8" ?>

Go to the Table of Contents.


2.2. Character Set Encodings

The character set in which the document is encoded is identified by one of a number of strings. All XML applications are expected to be able to recognize the UNICODE/ISO/IEC 10646 encodings "UTF-8" and "UTF-16" [ISO10646].

Some alternative encodings to "UTF-8" (or "ISO-10646-UCS-2") or "UTF-16" (or "ISO-10646-UCS-4") may be used. These include "ISO-8859-1", "ISO-8859-2", ... "ISO-8859-9" for parts of ISO 8859. See [ISO8859]. Note that US-ASCII (i.e. encoding all characters over decimal 127, e.g. from 128 to 255, as &#nnn;) is conformant with UTF-8 (and ISO-8859-1, HTTP's default header encoding.)

Also, the values "ISO-2022-JP", "Shift_JIS", or "EUC-JP" can be used for various Japanese encoded forms of JIS X-0208-1997. See [JIS].

The Unicode characters may be represented as their code points, using the form &#hHHHH; where HHHH is a hexadecimal value formed from the digits 0-9 and letters A-F. Any initial H with value "0" may be elided.

Go to the Table of Contents.


2.3. DOCTYPE Declaration

The document type declaration, the DOCTYPE, follows. It has several forms. The simpler form assumes that the proper version of the dtbook DTD is in the same directory as the dtbook file itself.

<!DOCTYPE dtbook SYSTEM
"dtbook110.dtd">

A more general form provides the PUBLIC URI from which the SYSTEM filename can be substituted, should that system copy be missing:

<!DOCTYPE dtbook PUBLIC
"http://www.loc.gov/nls/z3986/v100/dtbook110.dtd"
"dtbook110.dtd">

That assumes the URI can be reached, which may not be true for portable dtbook players.

The still more general form recommended for xml applications [XML12] is:

<!DOCTYPE dtbook PUBLIC
"-//NISO//DTD dtbook v1.1.0//EN"
"dtbook110.dtd">

where the Formal Public Identifier (FPI) on the second line is converted to the URI where it may be publicly found:

http://www.loc.gov/nls/z3986/v100/dtbook110.dtd

The [OASIS-TR9401] Entity Management Catalog provides an indirect means to provide that mapping from FPI to the dtd.

That catalog is more generally useful to provide the mapping from any external entity names (such as modules) to URIs where they may be found.

Note that the reference above is to a particular version of the DTD, distinguished by the "v110".

Go to the Table of Contents.


2.4. Digital Talking Book File MIME Type

A Digital Talking Book document is tagged to the dtbook XML application. Its MIME media-type is "text/xml". The tagged book filename should have suffix ".xml". See [RFC2045].

Go to the Table of Contents.


3. Element Types

The element types comprising the dtbook DTD provide the syntactic elements from which the logical structure and content of the book is identified. In this section are the following subsections:

3.1. Element Structural Groupings
3.2. Element Usage Descriptions in Alphabetic Order
3.3. Element Declaration Form
3.4. Attribute List Declaration Form
3.5. Parameter, General, and Character Entity Declaration Forms
3.6. Links to Details
3.7. Element Types and Their Attributes
3.8. Element Type Use in Other Content Models
3.9. Parameter, General, and Character Entity Declaration Forms

3.2. Element Usage Descriptions in Alphabetic Order

The element types in the dtbook DTD provide the means to distinguish among the semantic uses of the various kinds of book content.

The element names are hyperlinked to their corresponding detailed descriptions.

Further information about the element types that come from the [HTML401STRICT] application (possibly qualified) is available from that resource.

The other element types are added for dtbook.

ElementDescription
a contains an anchor, which is used to reference another location, within the same or another <dtbook>. [XHTML11STRICT]
abbr designates an abbreviation, a shortened form of a word. For examples: Mr., approx., lbs., rec'd. Contrast with <acronym>. [XHTML11STRICT]
acronym marks a word formed from key letters (usually initials) of a group of words. For examples: UNESCO, NATO, XML, US. Contrast with <abbr>. [XHTML11STRICT]
address contains a location at which a person or agency may be contacted. By use of <line> to contain content of the individual lines, the class attribute can be used to identify the content of that <line>. For example, class values might include: name, address, region (state. province, etc.), country, location code (such as zipcode, provincial code), phone, fax, email, etc. [XHTML11STRICT]
annoref marks a text segment that references an <annotation>. Each <annoref> is usually a word, phrase, or whole line that is part of the surrounding text (identified in the original print book by bolding, italics, etc.). It should not normally be allowed to be turned off in a DTB application.
annotation is a comment on or explanation of a portion of a printed book. It differs from <note> in that an <annotation> is usually set in the margin or on a facing page, often with no explicit reference to it inserted in the text. Any local reference to <annotation id="xxx"> is by <annoref idref="#xxx">.
author identifies the writer of a work other than this one. Contrast with <docauthor>, which identifies the author of this work. <author> typically occurs within <blockquote> or <cite>.
bdo is used in special cases where the automatic actions of the bi-directional algorithm would result in incorrect display. [XHTML11STRICT]
blockquote indicates a block of quoted content that is set off from the surrounding text by paragraph breaks. Compare with <q>, which marks short, inline quotations. [XHTML11STRICT]
bodymatter consists of the text proper of a book, as contrasted with preliminary material <frontmatter> or supplementary information in <rearmatter>.
book surrounds the actual content of the document, which is divided into <frontmatter>, <bodymatter>, and <rearmatter>. <head>, which contains metadata, precedes <book>.
br marks a forced line break. [XHTML11STRICT]
caption describes a <table> or <img>. If used with <table> it must follow immediately after the <table> start tag. If used with <img> or <imggroup> it is not so constrained. [XHTML11STRICT]
cite marks a reference (or citation) to another document. [XHTML11STRICT]
code designates a fragment of computer code. [XHTML11STRICT]
col elements define the alignment properties for cells in one or more columns. [XHTML11STRICT]
colgroup groups adjacent columns <col> that are semantically related. [XHTML11STRICT]
dd marks a definition of the preceding term <dt> within a definition list <dl>. A definition without a preceding <dt> has no semantic interpretation, but is visually presented aligned with other <dd>. [XHTML11STRICT]
dfn marks the first occurrence of a word or term that is defined or explained there or elsewhere in <book>. Often <dfn> is rendered in italics, sometimes in parentheses. [XHTML11STRICT]
div is a generic container for subdivisions of a book. The <level1> ... <level6> hierarchy, or the <level> tag used recursively, should mark the major hierarchical structures of a book, while <div> is used in less formal circumstances or when for production purposes it is desired that a structure should be treated differently. Compare with <span>, which is used in inline settings. [XHTML11STRICT]
dl contains a definition list, usually consisting of pairs of terms <dt> and definitions <dd>. Any definition can contain another definition list. [XHTML11STRICT]
docauthor marks each author or editor of this work. Compare with <author>, used to mark the author of another work, within <blockquote> or <cite>.
doctitle marks the title of the book within <frontmatter>. By convention <doctitle> should appear only once. Contrast with <title>, which occurs as metadata in <head> and whose content is generally the same.
dt marks a term in a definition list <dl> for which a definition <dd> follows. [XHTML11STRICT]
dtbook is the root element in the Digital Talking Book DTD. <dtbook> contains metadata in <head> and the contents itself in <book>.
em indicates emphasis. Usually <em> is rendered in italics. Compare with <strong>. [XHTML11STRICT]
frontmatter usually contains <doctitle> and <docauthor>, as well as preliminary material that is often enclosed in appropriate <level> or <level1>. Content may include copyright notice, foreword, acknowledgments, table of contents, etc. <frontmatter> serves as a guide to the content and nature of a <book>.
h1 contains the text of the heading for a <level1> structure. [XHTML11STRICT] but nested
h2 contains the text of the heading for a <level2> structure. [XHTML11STRICT] but nested
h3 contains the text of the heading for a <level3> structure. [XHTML11STRICT] but nested
h4 contains the text of the heading for a <level4> structure. [XHTML11STRICT] but nested
h5 contains the text of the heading for a <level5> structure. [XHTML11STRICT] but nested
h6 contains the text of the heading for a <level6> structure. [XHTML11STRICT] but nested
hd marks the text of a heading in a <list> or <sidebar>.
head contains metainformation about the book but no actual content of the book itself, which is placed in <book>. This information is consonant with the <head> information in xhtml, see [XHTML11STRICT]. Other miscellaneous elements can occur before and after the required <title>. By convention <title> should occur first. [XHTML11STRICT]
hr is an empty element, minimally <hr />, indicating a horizontal rule. It may be used to indicate a break in the text where only blank lines, a row of asterisks, a horizontal line, etc. are used in the print book. [XHTML11STRICT]
img marks a visual image. An <img> will always contain an alt and generally contain a longdesc, a pointer to a related <prodnote>. The <img> may be referenced by a <caption> or <prodnote>, using, for example, the form <caption imgref="#yyy">the Caption</caption> for the <img id="yyy">. [XHTML11STRICT]
imggroup provides a container for one or more <img> and associated <caption>(s) and <prodnote>(s). A <prodnote> may contain a description of the image. The content model allows: 1) multiple <img> if they share a caption, with the ids of each <img> in the <caption imgref="id1 id2 ...">, 2) multiple <caption> if several captions refer to a single <img id="xxx"> where each caption has the same <caption imgref="xxx">, 3) multiple <prodnote> if different versions are needed for different media (e.g., large print, braille, or print). If several <prodnote> refer to a single <img id="xxx">, each prodnote has the same <prodnote imgref="xxx">.
kbd designates information that the reader is to input directly into a computer using the keyboard. [XHTML11STRICT]
level is an alternative tag for marking the major structures in a book. It may be used recursively, i.e., repeated indefinitely with each successive occurrence nesting within the previous. It may also be included in a subsequent higher level. Subordinate levels have greater depth. Contrast with the explicit <level1>...<level6> elements, which may not be intermixed with <level>.
level1 is the highest-level container of major divisions of a book. Used in <frontmatter>, <bodymatter>, and <rearmatter> to mark the largest divisions of the book (usually parts or chapters), inside which level2 subdivisions (often sections) may nest. The class attribute identifies the actual name (e.g., part, chapter) of the structure it marks. Contrast with <level>.
level2 contains subdivisions that nest within <level1> divisions. The class attribute identifies the actual name (e.g., subpart, chapter, subsection) of the structure it marks.
level3 contains sub-subdivisions that nest within <level2> subdivisions (e.g., sub-subsections within subsections). The class attribute identifies the actual name (e.g., section, subpart, subsubsection) of the subordinate structure it marks.
level4 contains further subdivisions that nest within <level3> subdivisions. The class attribute identifies the actual name of the subordinate structure it marks.
level5 contains further subdivisions that nest within <level4> subdivisions. The class attribute identifies the actual name of the subordinate structure it marks.
level6 contains further subdivisions that nest within <level5> subdivisions. The class attribute identifies the actual name of the subordinate structure it marks.
levelhd contains the text of a heading within <level>. Corresponds to <h1> through <h6> used in <level1> through <level6>.
li marks each list item in a <list>. <li> content may be either inline or block and may include other nested lists. Alternatively it may contain a sequence of list item components, <lic>, that identify regularly occurring content, such as the heading and page number of each entry in a table of contents. [XHTML11STRICT]
lic ("list item component") allows ordered substructure within a list item <li>. Used when a list item is made up of two or more components, as in a table of contents entry. The same number of <lic> should occur in each <li>. If not, correspondence of <lic> in different <li> is in order of occurrence for the current writing direction of the <li>.
line marks a single logical line of text. Often used in conjunction with <linenum> in documents with numbered lines.
linenum contains a line number, for example in legal text.
link is an empty element appearing in the <head> section of a document that establishes a connection between the current document and another document. The <link> element conveys relationship information (for example, "next" and "previous") that may be rendered by user agents in a variety of ways. [XHTML11STRICT]
list contains some form of list, ordered or unordered. The list may have intermixed heading <hd> (generally only one, possibly with <prodnote>) and an intermixture of list items <li> and <pagenum>. If bullets and outline enumerations are part of the print content, they are expected to prefix those list items in content, rather than be implicitly generated. Note: XHTML has explicitly distinguished list element types: ol for ordered, and ul for unordered.
meta indicates metadata about the book. It is an empty element that may appear repeatedly only in <head>. [XHTML11STRICT]
note marks a footnote, endnote, etc. Any local reference to <note id="yyy"> is by <noteref idref="#yyy">.
noteref marks one or more characters that reference a footnote or endnote <note>. Contrast with <annoref>. <noteref> and <note> are independently skippable.
notice contains a warning, caution, or other type of admonition normally found in the margin of a book. In contrast with <sidebar> a <notice> must be presented at a specific location within the text. Its presentation is not optional.
p contains a paragraph, which may contain subsidiary <list> or <dl>. [XHTML11STRICT]
pagenum contains one page number as it appears from the print document, usually inserted at the point within the file immediately preceding the first item of content on a new page.
prodnote contains language added to the alternative-format version by the producer; commonly used to: 1) provide descriptions of one or more visual elements such as charts, graphs, etc. 2) supply operating instructions 3) describe differences between the print book and the audio version.
q contains a short, inline quotation. Compare with <blockquote>, which marks a longer quotation set off from the surrounding text. [XHTML11STRICT]
rearmatter contains supplementary material such as appendices, glossaries, bibliographies, and indices. It follows the <bodymatter> of the book.
samp contains a sample of work created by the author for use as an example or template. For example, a sample business letter, resume, computer program output, or form. [XHTML11STRICT]
sent marks a sentence.
sidebar contains information supplementary to the main text and/or narrative flow and is often boxed and printed apart from the main text block on a page. It may have a heading <hd>.
span is a generic container for use in inline settings when no specific tag exists for a given situation. The class attribute may describe the nature of the text it marks (e.g., a typographical error). May be used to mark a class of items to which styles are to be applied. Compare with <div>, which is used in a block settings. [XHTML11STRICT]
strong marks stronger emphasis than <em>. Visually <strong> is usually rendered bold. [XHTML11STRICT]
style provides the means to include styling information that applies to the book. It may appear only in <head>. It may include CDATA sections. [XHTML11STRICT]
sub indicates a subscript character (printed below a character's normal baseline). Can be used recursively and/or intermixed with <sup>. [XHTML11STRICT]
sup marks a superscript character (printed above a character's normal baseline). Can be used recursively and/or intermixed with <sub>. [XHTML11STRICT]
table contains cells of tabular data arranged in rows and columns. A <table> may have a <caption>. It may have descriptions of the columns in <col>s or groupings of several <col> in <colgroup>. A simple <table> may be made up of just rows <tr>. A long table crossing several pages of the print book should have separate <pagenum> values for each of the pages containing that <table> indicated on the page where it starts. Note the logical order of optional <thead>, optional <tfoot>, then one or more of either <tbody> or just rows <tr>. This order accommodates simple or large, complex tables. The <thead> and <tfoot> information usually helps identify content of the <tbody> rows, For a multiple-page print <table> the <thead> and <tfoot> are repeated on each page, but not redundantly tagged. [XHTML11STRICT]
tbody marks a group of rows in the main body of a <table>. If the <table> is divided into several sections, each consisting of a number of rows, each section would be separately tagged with <tbody>. The same <thead> and <tfoot> apply to every <tbody> section. Use multiple <tbody> sections when rules are needed between groups of table rows. [XHTML11STRICT]
td indicates a table cell containing data. [XHTML11STRICT]
tfoot marks footer information in a <table>, consisting of one or more rows <tr>, usually of <th> cells. Use <tfoot> to duplicate footers when breaking table across page boundaries, or for static footers when <tbody> sections are rendered in scrolling panel. [XHTML11STRICT]
th indicates a table cell containing header information. [XHTML11STRICT]
thead marks header information in a <table>, consisting of one or more rows <tr> of <th> cells. Use <thead> to duplicate headers when breaking table across page boundaries, or for static headers when <tbody> sections are rendered in scrolling panel. [XHTML11STRICT]
title contains the title of the book but is used only as metainformation in <head>. Use <doctitle> within <book> for the actual book title, which will usually be the same. [XHTML11STRICT]
tr marks one row of a <table> containing <th> or <td> cells. [XHTML11STRICT]
w marks a word.

Go to the Table of Contents.


3.3. Element Declaration Form

For each of the element declarations the following information is supplied:

  1. <!ELEMENT elementname>
  2. Description. Repeats the description shown in Section 3.2. If the element is from HTML 4.0 strict, the suffix appears: [XHTML 4.0]
  3. Contains: original element content model.
  4. Expanded: only if the original has any parameter entity references in its content model, they are fully-expanded.
  5. Occurs within: list of element names in which this element may (or must) occur directly, in their content models.
  6. Attributes: Original: attribute list
  7. Expanded: only if the original has any parameter entities.
  8. Explanation of any unique attributes.

Element Declarations are shown as:

<!ELEMENT elementname
Contains:
EMPTY or original content model:
Expanded:
content model with parameter entities expanded
>

EMPTY declared content denotes that the element has no explicit content. Instead, its purpose is to mark a position, and to associate attribute values to that position. The XML-approved way to indicate the end-tag of such an element is by the special tag close ' />'. Some browsers presume that leading space (after the end of the final quoted value for an attribute).

For example, the XML-preferred way using the EMPTY horizontal rule tag:
<hr title="horizontal rule purpose" />
or for backward compatibility the explicit end tag form may be used:
<hr title="horizontal rule purpose"></hr>

Element content models are formed from a parenthesized list of names of other elements or parameter entities of the form %name; or #PCDATA, separated by connectors:

Connector Use Example
, sequence (x,y) is x followed by y
| alternative (x|y) is either x or y
(...) grouping (x,(y|z)) is x followed by either y or z

Individual names or groupings of them may have a following replicator. If there is no replicator, that means just one of what precedes it, possibly a parenthesized expression.

ReplicatorUse Example
? optional x? means zero or one of x
* optional and repeatable x* means zero or more of x
+ Repeatable x+ means one or more of x
none One only x means just one x

#PCDATA stands for parsed character data. The name suggests that the content may include other inline element tags intermixed as allowed in the content model.

#PCDATA can occur as an entire content model. Or, it can occur first among alternatives. For examples:

Content ModelMeaning
(x | y)+ Either x or y, repeatable, in any order
(x,y?) x, optionally followed by y
(x?,(y|z)*) Optional x, followed by optional and repeatable choice of x or y
(#PCDATA) Any text or character entities
(#PCDATA | x | y)+ #PCDATA, intermixed and repeatable, with x or y

The final example above with #PCDATA allows choice among 0 or more of x or y intermixed with text. Note that because the #PCDATA is present, even an empty string matches this model.

#PCDATA may also contain character entities that permit representing non-ASCII characters, intermixed with characters from the document character set. If this set is "ISO-8879-1" or the ASCII characters, a form for referencing such non-ASCII entities is:

&xHHHH;

where the HHHH denotes a Unicode hexadecimal code position.

Go to the Table of Contents.


3.4. Attribute List Declaration Form

An Attribute list has the form:

<!ATTLIST associatedElementName attributeList>

The associatedElementName identifies the corresponding element type.

The attributeList has one or more attributes. Each attribute has three parts:

1. Name of attribute as it may appear in a document tag; there quoted in one of the forms:

name="value"
name='value'.

Note that the value may include character entities such as the quoting entities themselves: quote &quot; (") and apostrophe: &apos; (').

2. Declared value of attribute, of various types:

Attribute KindExplanation
ID identifier, formed from letters (case sensitive), digits, dash, underscore, and period.
IDREF Value is one ID value
IDREFS Values are one or more space-separated ID values
CDATA character string, with the semantic meaning suggested by the parameter entity name.
(name1|name2|...) Select at most one among the alternatives

3. Default value of attribute, of various kinds:

Default ValueExplanation
#IMPLIED attribute and its value may be omitted, and if so, the meaning is up to the system.
#REQUIRED attribute and its value must be included.
quoted value One of the explicit names in the Declared value alternatives, using either quoting form: "value", or 'value'.
#FIXEDUnchanging explicit value shown.

The use of each unique attribute is explained.

Go to the Table of Contents.


3.5. Parameter, General, and Character Entity Declaration Forms

Three kinds of entity declarations may appear:

Parameter entities
appear in the DTD and possibly in the document internal subset.
General entities
may appear in the DTD or internal subset or within a document.
Character entities
may appear in the DTD or internal subset or within a document. Each content identifies a corresponding single character.

3.5.1. Parameter Entities

Parameter entities are used to define content in one place for reuse. The parameter entity form is:

<!ENTITY % pename "...">

The effect is to define pename to have the value "...".

Reference to that parameter entity is by:

%pename;

A parameter entity definition may contain other parameter entity references. See Section 3.9 Parameter Entity Declarations. for the parameter entities defined in this dtbook110 DTD.


3.5.2. General Entities

A general entity declaration has the form:
<!ENTITY gename "...">
A general entity is referenced using the prefix:
"&"
and suffix
";".
For example,
"&gename;"

Examples in the DTD (and every XML application DTD) are the special character entities.


3.5.3. Character Entities

The five following characters may have special markup meaning, so are expressed as character entities in text. They arerecognizable since they are preceded by "&" and followed by ";".

The notation below, #xHHHH (or #xHH) where H is a hexadecimal-number(formed from 0-9 and A-F), indicates the character code position in Unicode/ISO-10646 [ISO10646i].

Entity Declaration Hex Value ASCII Value Description
<!ENTITY lt "&#x0026;#x003C;"> "&#38;#60;" < Less than, normally starts a tag.
<!ENTITY gt "&#x003E;" > "&#62;" > Greater than, normally ends a tag.
<!ENTITY amp "&#x0026;#x0026;"> "&#38;#38;"& Ampersand, normally begins a character entity reference.
<!ENTITY apos "&#x0027;"> "&#39;" ' Neutral Quote, Apostrophe, if needed within an attribute string so quoted.
<!ENTITY quot "&#x0022;" > "&#34;" " Quotation mark, if needed within an attribute string so quoted.

Note that the "<" and "&" characters in the declarations of "lt" and "amp" above are doubly escaped to meet the requirement that entity replacement be well-formed.

As these character entities occur in the first plane of Unicode, with encodings the same as ASCII, the "00" prefix can be implied, so may be omitted.

Three larger character sets included in [HTML 4.0] are omitted here:

HTMLlat1.ent
HTMLsymbol.ent
HTMLspecial.ent

Unicode [ISO10646] is available to XML applications, so these characters are available, without the need for them.

The initial processing instruction that identifies dtbook as an XML application should use a more inclusive encoding, as described at the start of section 2.

Go to the Table of Contents.


3.6. Links to Details

Links are provided to the detailed descriptions for each elementname and parameter entity name in the detailed descriptions of the elements, their attlists, and the parameter entities that follow. When any parameter entity occurs in a declaration, a fully-expanded version of that declaration also appears.

The links to parameter entities in section 3.9 Parameter Entities Sorted are principally useful to get more detailed information about them.

Go to the Table of Contents.


3.7. Element Types and Their Attributes

Hereafter appear ordered top-down where sequential, or in the approximate document structural level the details for each of the 79 elements:

  • name
  • usage
  • original (and parameter entity expanded) content models
  • original (and expanded) attribute list
  • usage for the special attributes in the attribute list
  • other element content models that can be direct parent elements, sorted and listed.

Document Structure


dtbook

dtbook is the root element in the Digital Talking Book DTD. <dtbook> contains metadata in <head> and the contents itself in <book>.
<!ELEMENT dtbook
Contains:
(%dtbookcontent;)
Expanded:
(head,book)
>

May not occur in other element content models, as dtbook is the root element.

<!ATTLIST dtbook
Attribute Declared Value Default Value
Original:
version CDATA #FIXED '1.1.0'
%i18n;
Expanded:
version CDATA #FIXED '1.1.0'
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED


"version" is required, and contains the specific version of the dtd, so that the dtd version for any dtbook can be recognized.

"%i18n;" internationalization attributes characterize the <book>. Those values may be adjusted for language changes within it.
>

Go to the Element Structural Groupings.


Document Head Metadata


head

head contains metainformation about the book but no actual content of the book itself, which is placed in <book>. This information is consonant with the <head> information in xhtml, see [XHTML11STRICT]. Other miscellaneous elements can occur before and after the required <title>. By convention <title> should occur first. [XHTML11]
<!ELEMENT head
Contains:
((%headmisc;)*, title, (%headmisc;)*)
Expanded:
((style | meta | link)*,title,(style | meta | link)*)
>

May occur within the element content model:

dtbook
<!ATTLIST head
Attribute Declared Value Default Value
Original:
%i18n;
profile %URI; #IMPLIED
Expanded:
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
profile CDATA #IMPLIED


"profile" gives one or more whitespace-separated profile URI targets that may provide additional information about the current document.
>

title

title contains the title of the book but is used only as metainformation in <head>. Use <doctitle> within <book> for the actual book title, which will usually be the same. [XHTML11]
<!ELEMENT title
Contains:
(#PCDATA)
>

May occur within the element content model:

head
<!ATTLIST title
Attribute Declared Value Default Value
Original:
%i18n;
Expanded:
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
>


meta

meta indicates metadata about the book. It is an empty element that may appear repeatedly only in <head>. [XHTML11]
<!ELEMENT meta
Contains:
EMPTY
>

May occur within the element content model:

head
<!ATTLIST meta
Attribute Declared Value Default Value
Original:
%i18n;
http-equiv NMTOKEN #IMPLIED
name NMTOKEN #IMPLIED
content CDATA #REQUIRED
scheme CDATA #IMPLIED
Expanded:
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
http-equiv NMTOKEN #IMPLIED
name NMTOKEN #IMPLIED
content CDATA #REQUIRED
scheme CDATA #IMPLIED


"http-equiv" connects the content attribute value to an http header field.

"name" value identifies the specific kind of content value.

"content" indicates the value for that "name", possibly constrained by the semantics for the individual names.

"scheme" indicates a predetermined format for interpreting the content value, such as the Dublin Core.
>

style

style provides the means to include styling information that applies to the book. It may appear only in <head>. It may include CDATA sections. [XHTML11]
<!ELEMENT style
Contains:
(#PCDATA)
>

May occur within the element content model:

head
<!ATTLIST style
Attribute Declared Value Default Value
Original:
%i18n;
type %ContentType; #REQUIRED
media %MediaDesc; #IMPLIED
title %Text; #IMPLIED
xml:space (default | preserve) 'preserve'
Expanded:
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
type CDATA #REQUIRED
media CDATA #IMPLIED
title CDATA #IMPLIED
xml:space (default | preserve) 'preserve'


"type" indicates the MIME-Type [RFC2045]. Type value should be 'text/css', rather than 'text/javascript'.

"media" value indicates the media for stylesheet definition(s); if multiple, separated by commas.

"title" can provide menu choice among alternative stylesheets.

"xml:space" value='preserve' indicates that whitespace in the <style> content is preserved without need to include its value in each <style>. (xml:space='default' accepts system style adjustment, such as adding its own indenting.)
>

Go to the Element Structural Groupings.


Book Content


book

book surrounds the actual content of the document, which is divided into <frontmatter>, <bodymatter>, and <rearmatter>. <head>, which contains metadata, precedes <book>.
<!ELEMENT book
Contains:
(frontmatter?, bodymatter?, rearmatter?)
>

May occur within the element content model:

dtbook
<!ATTLIST book
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

Go to the Element Structural Groupings.


Book Major Structures


frontmatter

frontmatter usually contains <doctitle> and <docauthor>, as well as preliminary material that is often enclosed in appropriate <level> or <level1>. Content may include copyright notice, foreword, acknowledgments, table of contents, etc. <frontmatter> serves as a guide to the content and nature of a <book>.
<!ELEMENT frontmatter
Contains:
(doctitle | docauthor | level | level1 | %block;)+
Expanded:
(doctitle | docauthor | level | level1 | p | list | dl | div | blockquote | hr | img | imggroup | table | address | line | author | notice | prodnote | sidebar | note | annotation)+
>

May occur within the element content model:

book
<!ATTLIST frontmatter
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

bodymatter

bodymatter consists of the text proper of a book, as contrasted with preliminary material <frontmatter> or supplementary information in <rearmatter>.
<!ELEMENT bodymatter
Contains:
(level | level1 | %block;)+
Expanded:
(level | level1 | p | list | dl | div | blockquote | hr | img | imggroup | table | address | line | author | notice | prodnote | sidebar | note | annotation)+
>

May occur within the element content model:

book
<!ATTLIST bodymatter
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

rearmatter

rearmatter contains supplementary material such as appendices, glossaries, bibliographies, and indices. It follows the <bodymatter> of the book.
<!ELEMENT rearmatter
Contains:
(level | level1 | %block;)+
Expanded:
(level | level1 | p | list | dl | div | blockquote | hr | img | imggroup | table | address | line | author | notice | prodnote | sidebar | note | annotation)+
>

May occur within the element content model:

book
<!ATTLIST rearmatter
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

Go to the Element Structural Groupings.


dtbook Recursive Structure level


level

level is an alternative tag for marking the major structures in a book. It may be used recursively, i.e., repeated indefinitely with each successive occurrence nesting within the previous. It may also be included in a subsequent higher level. Subordinate levels have greater depth. Contrast with the explicit <level1>...<level6> elements, which may not be intermixed with <level>.
<!ELEMENT level
Contains:
(levelhd | %block; | %inlineinblock; | level | doctitle | docauthor)+
Expanded:
(levelhd | p | list | dl | div | blockquote | hr | img | imggroup | table | address | line | author | notice | prodnote | sidebar | note | annotation | a | cite | caption | samp | kbd | pagenum | level | doctitle | docauthor)+
>

May occur within the element content models:

frontmatter bodymatter rearmatter level
<!ATTLIST level
Attribute Declared Value Default Value
Original:
%attrs;
depth CDATA #IMPLIED
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
depth CDATA #IMPLIED


"class" identifies the actual name (e.g., part, chapter, section, subsection) of the structure it marks.

"depth" indicates the nesting depth, starting at 1.
>

Go to the Element Structural Groupings.


dtbook Hierarchic Structure level1 ... level6


level1

level1 is the highest-level container of major divisions of a book. Used in <frontmatter>, <bodymatter>, and <rearmatter> to mark the largest divisions of the book (usually parts or chapters), inside which level2 subdivisions (often sections) may nest. The class attribute identifies the actual name (e.g., part, chapter) of the structure it marks. Contrast with <level>.
<!ELEMENT level1
Contains:
(h1 | level2 | %block; | %inlineinblock; | doctitle | docauthor)+
Expanded:
(h1 | level2 | p | list | dl | div | blockquote | hr | img | imggroup | table | address | line | author | notice | prodnote | sidebar | note | annotation | a | cite | caption | samp | kbd | pagenum | doctitle | docauthor)+
>

May occur within the element content models:

frontmatter bodymatter rearmatter
<!ATTLIST level1
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

level2

level2 contains subdivisions that nest within <level1> divisions. The class attribute identifies the actual name (e.g., subpart, chapter, subsection) of the structure it marks.
<!ELEMENT level2
Contains:
(h2 | level3 | %block; | %inlineinblock;)+
Expanded:
(h2 | level3 | p | list | dl | div | blockquote | hr | img | imggroup | table | address | line | author | notice | prodnote | sidebar | note | annotation | a | cite | caption | samp | kbd | pagenum)+
>

May occur within the element content model:

level1
<!ATTLIST level2
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

level3

level3 contains sub-subdivisions that nest within <level2> subdivisions (e.g., sub-subsections within subsections). The class attribute identifies the actual name (e.g., section, subpart, subsubsection) of the subordinate structure it marks.
<!ELEMENT level3
Contains:
(h3 | level4 | %block; | %inlineinblock;)+
Expanded:
(h3 | level4 | p | list | dl | div | blockquote | hr | img | imggroup | table | address | line | author | notice | prodnote | sidebar | note | annotation | a | cite | caption | samp | kbd | pagenum)+
>

May occur within the element content model:

level2
<!ATTLIST level3
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

level4

level4 contains further subdivisions that nest within <level3> subdivisions. The class attribute identifies the actual name of the subordinate structure it marks.
<!ELEMENT level4
Contains:
(h4 | level5 | %block; | %inlineinblock;)+
Expanded:
(h4 | level5 | p | list | dl | div | blockquote | hr | img | imggroup | table | address | line | author | notice | prodnote | sidebar | note | annotation | a | cite | caption | samp | kbd | pagenum)+
>

May occur within the element content model:

level3
<!ATTLIST level4
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

level5

level5 contains further subdivisions that nest within <level4> subdivisions. The class attribute identifies the actual name of the subordinate structure it marks.
<!ELEMENT level5
Contains:
(h5 | level6 | %block; | %inlineinblock;)+
Expanded:
(h5 | level6 | p | list | dl | div | blockquote | hr | img | imggroup | table | address | line | author | notice | prodnote | sidebar | note | annotation | a | cite | caption | samp | kbd | pagenum)+
>

May occur within the element content model:

level4
<!ATTLIST level5
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

level6

level6 contains further subdivisions that nest within <level5> subdivisions. The class attribute identifies the actual name of the subordinate structure it marks.
<!ELEMENT level6
Contains:
(h6 | %block; | %inlineinblock;)+
Expanded:
(h6 | p | list | dl | div | blockquote | hr | img | imggroup | table | address | line | author | notice | prodnote | sidebar | note | annotation | a | cite | caption | samp | kbd | pagenum)+
>

May occur within the element content model:

level5
<!ATTLIST level6
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

Go to the Element Structural Groupings.


Br, Linenum, Address, and Div Content Models


br

br marks a forced line break. [XHTML11]
<!ELEMENT br
Contains:
EMPTY
>

May occur within the element content models:

address author notice prodnote sidebar line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
<!ATTLIST br
Attribute Declared Value Default Value
Original:
%coreattrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED


The %coreattrs; only appear, as there is no content to which the more general %attrs; apply.
>

linenum

linenum contains a line number, for example in legal text.
<!ELEMENT linenum
Contains:
(#PCDATA)
>

May occur within the element content models:

address author notice prodnote sidebar line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
<!ATTLIST linenum
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

address

address contains a location at which a person or agency may be contacted. By use of <line> to contain content of the individual lines, the class attribute can be used to identify the content of that <line>. For example, class values might include: name, address, region (state. province, etc.), country, location code (such as zipcode, provincial code), phone, fax, email, etc. [XHTML11]
<!ELEMENT address
Contains:
(%inline; | line)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref | line)*
>

May occur within the element content models:

frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 div prodnote sidebar note annotation blockquote dd li th td
<!ATTLIST address
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

div

div is a generic container for subdivisions of a book. The <level1> ... <level6> hierarchy, or the <level> tag used recursively, should mark the major hierarchical structures of a book, while <div> is used in less formal circumstances or when for production purposes it is desired that a structure should be treated differently. Compare with <span>, which is used in inline settings. [XHTML11]
<!ELEMENT div
Contains:
(%block; | %inlineinblock; | doctitle | docauthor)+
Expanded:
(p | list | dl | div | blockquote | hr | img | imggroup | table | address | line | author | notice | prodnote | sidebar | note | annotation | a | cite | caption | samp | kbd | pagenum | doctitle | docauthor)+
>

May occur within the element content models:

frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 div prodnote sidebar note annotation blockquote dd li th td
<!ATTLIST div
Attribute Declared Value Default Value
Original:
%attrs;
level CDATA #IMPLIED
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
level CDATA #IMPLIED


"level" may extend or augment explicit levels, to indicate nesting level, with values the positive integers, with '1' corresponding to <level1>, and value generally one larger than the enclosing level.

"class" value can identify the actual name (e.g., part, chapter, letter) of the structure it marks.
>

Go to the Element Structural Groupings.


dtbook Block Elements Author, Notice, Prodnote, Sidebar


author

author identifies the writer of a work other than this one. Contrast with <docauthor>, which identifies the author of this work. <author> typically occurs within <blockquote> or <cite>.
<!ELEMENT author
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content models:

frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 div prodnote sidebar note annotation blockquote dd li th td
<!ATTLIST author
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

notice

notice contains a warning, caution, or other type of admonition normally found in the margin of a book. In contrast with <sidebar> a <notice> must be presented at a specific location within the text. Its presentation is not optional.
<!ELEMENT notice
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content models:

frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 div prodnote sidebar note annotation blockquote dd li th td
<!ATTLIST notice
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

prodnote

prodnote contains language added to the alternative-format version by the producer; commonly used to: 1) provide descriptions of one or more visual elements such as charts, graphs, etc. 2) supply operating instructions 3) describe differences between the print book and the audio version.
<!ELEMENT prodnote
Contains:
(%flow;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | annoref | noteref | p | list | dl | div | blockquote | hr | table | address | line | author | notice | prodnote | sidebar | note | annotation)*
>

May occur within the element content models:

frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 address div author notice prodnote sidebar note annotation line em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent q imggroup p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd blockquote dt dd list li lic caption th td
<!ATTLIST prodnote
Attribute Declared Value Default Value
Original:
%attrs;
imgref IDREFS #IMPLIED
render (required | optional) #IMPLIED
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
imgref IDREFS #IMPLIED
render (required | optional) #IMPLIED


"imgref" identifies the space-separated id value(s) on pertinent images <img>.

"render" indicates that the content is 'required or 'optional' for the user. If optional, some user preference may allow skipping over the content. But <prodnote render='required'> is essential content for the user. An audible cue could announce the presence of the <prodnote>.
>


note

note marks a footnote, endnote, etc. Any local reference to <note id="yyy"> is by <noteref idref="#yyy">.
<!ELEMENT note
Contains:
(%block; | %inlineinblock;)+
Expanded:
(p | list | dl | div | blockquote | hr | img | imggroup | table | address | line | author | notice | prodnote | sidebar | note | annotation | a | cite | caption | samp | kbd | pagenum)+
>

May occur within the element content models:

frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 div prodnote sidebar note annotation blockquote dd li th td
<!ATTLIST note
Attribute Declared Value Default Value
Original:
%attrsrqd;
Expanded:
id ID #REQUIRED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
smilref CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

annotation

annotation is a comment on or explanation of a portion of a printed book. It differs from <note> in that an <annotation> is usually set in the margin or on a facing page, often with no explicit reference to it inserted in the text. Any local reference to <annotation id="xxx"> is by <annoref idref="#xxx">.
<!ELEMENT annotation
Contains:
(%block; | %inlineinblock;)+
Expanded:
(p | list | dl | div | blockquote | hr | img | imggroup | table | address | line | author | notice | prodnote | sidebar | note | annotation | a | cite | caption | samp | kbd | pagenum)+
>

May occur within the element content models:

frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 div prodnote sidebar note annotation blockquote dd li th td
<!ATTLIST annotation
Attribute Declared Value Default Value
Original:
%attrsrqd;
Expanded:
id ID #REQUIRED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
smilref CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

line

line marks a single logical line of text. Often used in conjunction with <linenum> in documents with numbered lines.
<!ELEMENT line
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content models:

frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 address div prodnote sidebar note annotation blockquote dd li th td
<!ATTLIST line
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

Go to the Element Structural Groupings.


The Anchor Element


a

a contains an anchor, which is used to reference another location, within the same or another <dtbook>. [XHTML11]
<!ELEMENT a
Contains:
(%inlinenoa;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | img | imggroup | br | q | sub | sup | span | bdo | linenum)*
>

May occur within the element content models:

level level1 level2 level3 level4 level5 level6 address div author notice prodnote sidebar note annotation line em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
<!ATTLIST a
Attribute Declared Value Default Value
Original:
%attrs;
type %ContentType; #IMPLIED
href %URI; #IMPLIED
hreflang %LanguageCode; #IMPLIED
rel %LinkTypes; #IMPLIED
rev %LinkTypes; #IMPLIED
accesskey %Character; #IMPLIED
tabindex %Number; #IMPLIED
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
type CDATA #IMPLIED
href CDATA #IMPLIED
hreflang NMTOKEN #IMPLIED
rel CDATA #IMPLIED
rev CDATA #IMPLIED
accesskey CDATA #IMPLIED
tabindex CDATA #IMPLIED


"href" value may have three forms:

1) '#idref', in the <dtbook>, to the element type having the referenced id value;

2) 'uri', a uniform resource identifier to a resource, typically a document, see [RFC2396], possibly restricted to work with only the <dtbook> document content, as referenced content is expected to be available on the same media, and off-media references may not be available;

3) 'uri#xxx', in the resource uri, the element with id='xxx'.

Uses of the remaining attributes other than %attrs; are:

"type" is advisory content MIME type of the target, see [RFC1556];

"hreflang" is the language code of the href target, see [RFC1766];

"rel" is a list of forward link type(s), the relationship(s) expressed by the href value to the target, space-separated if multiple;

"rev" is a list of reverse link types, the relationship(s) to this location from the href target, space-separated if multiple;

"accesskey"=accessibility key character shortcut;

"tabindex"=tabbing order.
>

Go to the Element Structural Groupings.


Inline Elements


em

em indicates emphasis. Usually <em> is rendered in italics. Compare with <strong>. [XHTML11]
<!ELEMENT em
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content models:

address author notice prodnote sidebar line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
<!ATTLIST em
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

strong

strong marks stronger emphasis than <em>. Visually <strong> is usually rendered bold. [XHTML11]
<!ELEMENT strong
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content models:

address author notice prodnote sidebar line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
<!ATTLIST strong
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

dfn

dfn marks the first occurrence of a word or term that is defined or explained there or elsewhere in <book>. Often <dfn> is rendered in italics, sometimes in parentheses. [XHTML11]
<!ELEMENT dfn
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content models:

address author notice prodnote sidebar line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
<!ATTLIST dfn
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

kbd

kbd designates information that the reader is to input directly into a computer using the keyboard. [XHTML11]
<!ELEMENT kbd
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content models:

level level1 level2 level3 level4 level5 level6 address div author notice prodnote sidebar note annotation line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
<!ATTLIST kbd
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

code

code designates a fragment of computer code. [XHTML11]
<!ELEMENT code
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content models:

address author notice prodnote sidebar line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
<!ATTLIST code
Attribute Declared Value Default Value
Original:
%attrs;
xml:space (default | preserve) 'preserve'
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
xml:space (default | preserve) 'preserve'


"xml:space" value='preserve' preserves whitespace therein (except that an XML parser strips leading and trailing whitespace before passing the internal content including its original whitespace to the application.) The value 'default' leaves the whitespace handling to the application.
>

samp

samp contains a sample of work created by the author for use as an example or template. For example, a sample business letter, resume, computer program output, or form. [XHTML11]
<!ELEMENT samp
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content models:

level level1 level2 level3 level4 level5 level6 address div author notice prodnote sidebar note annotation line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
<!ATTLIST samp
Attribute Declared Value Default Value
Original:
%attrs;
xml:space (default | preserve) 'preserve'
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
xml:space (default | preserve) 'preserve'


"xml:space" value 'preserve' preserves whitespace therein (except that an XML parser strips leading and trailing whitespace before passing the internal content including its original whitespace to the application.) The value 'default' leaves the whitespace handling to the application.
>

cite

cite marks a reference (or citation) to another document. [XHTML11]
<!ELEMENT cite
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content models:

level level1 level2 level3 level4 level5 level6 address div author notice prodnote sidebar note annotation line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
<!ATTLIST cite
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

abbr

abbr designates an abbreviation, a shortened form of a word. For examples: Mr., approx., lbs., rec'd. Contrast with <acronym>. [XHTML11]
<!ELEMENT abbr
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content models:

address author notice prodnote sidebar line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
<!ATTLIST abbr
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED


"title" value may expand that abbreviation.
>

acronym

acronym marks a word formed from key letters (usually initials) of a group of words. For examples: UNESCO, NATO, XML, US. Contrast with <abbr>. [XHTML11]
<!ELEMENT acronym
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content models:

address author notice prodnote sidebar line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
<!ATTLIST acronym
Attribute Declared Value Default Value
Original:
%attrs;
pronounce (yes | no) #IMPLIED
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
pronounce (yes | no) #IMPLIED


"title" value may expand that acronym. "pronounce" value 'yes' indicates that the acronym is pronounceable as a word (for example, NATO); 'no' that the acronym is best presented as a sequence of letters (for examples, "XML" or "US").
>

sub

sub indicates a subscript character (printed below a character's normal baseline). Can be used recursively and/or intermixed with <sup>. [XHTML11]
<!ELEMENT sub
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content models:

address author notice prodnote sidebar line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
<!ATTLIST sub
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

sup

sup marks a superscript character (printed above a character's normal baseline). Can be used recursively and/or intermixed with <sub>. [XHTML11]
<!ELEMENT sup
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content models:

address author notice prodnote sidebar line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
<!ATTLIST sup
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

span

span is a generic container for use in inline settings when no specific tag exists for a given situation. The class attribute may describe the nature of the text it marks (e.g., a typographical error). May be used to mark a class of items to which styles are to be applied. Compare with <div>, which is used in a block settings. [XHTML11]
<!ELEMENT span
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content models:

address author notice prodnote sidebar line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
<!ATTLIST span
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

bdo

bdo is used in special cases where the automatic actions of the bi-directional algorithm would result in incorrect display. [XHTML11]
<!ELEMENT bdo
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content models:

address author notice prodnote sidebar line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
<!ATTLIST bdo
Attribute Declared Value Default Value
Original:
%coreattrs;
lang %LanguageCode; #IMPLIED
dir (ltr | rtl) #REQUIRED
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
dir (ltr | rtl) #REQUIRED


"lang" indicates the language of the content.

"dir" indicates the writing direction: 'ltr' is left-to-right, 'rtl' is right-to-left.
>

Go to the Element Structural Groupings.


dtbook Inline Sentence and Word


sent

sent marks a sentence.
<!ELEMENT sent
Contains:
(%inlines;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | pagenum | w | prodnote | annoref | noteref)*
>

May occur within the element content models:

address author notice prodnote sidebar line em strong dfn kbd code samp cite abbr acronym sub sup span bdo q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
<!ATTLIST sent
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

w

w marks a word.
<!ELEMENT w
Contains:
(%inlinew;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum)*
>

May occur within the element content models:

address author notice prodnote sidebar line em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
<!ATTLIST w
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

Go to the Element Structural Groupings.


Inline Page Number, Footnote and Annotation Reference


pagenum

pagenum contains one page number as it appears from the print document, usually inserted at the point within the file immediately preceding the first item of content on a new page.
<!ELEMENT pagenum
Contains:
(#PCDATA)
>

May occur within the element content models:

level level1 level2 level3 level4 level5 level6 address div author notice prodnote sidebar note annotation line em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dl dt dd list li lic caption
<!ATTLIST pagenum
Attribute Declared Value Default Value
Original:
%attrsrqd;
page (front | normal | special) 'normal'
Expanded:
id ID #REQUIRED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
smilref CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
page (front | normal | special) 'normal'


"page" allows three kinds of page numbering schemes to be identified: 'normal' Arabic numbering in the body of the book is the default, 'front' pages (from the <frontmatter>, often roman numbering), 'special' pagination schemes such as letter prefix hyphen Arabic number in appendices. Each pagenum needs a unique id value, by convention it is derived from the actual pagenumber. For multi-page continuous content, such as large <img> or <table>, put the sequence of <pagenum> on the page where that content starts.
>

noteref

noteref marks one or more characters that reference a footnote or endnote <note>. Contrast with <annoref>. <noteref> and <note> are independently skippable.
<!ELEMENT noteref
Contains:
(#PCDATA)
>

May occur within the element content models:

address author notice prodnote sidebar line em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
<!ATTLIST noteref
Attribute Declared Value Default Value
Original:
%attrs;
idref CDATA #REQUIRED
type %ContentType; #IMPLIED
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
idref CDATA #REQUIRED
type CDATA #IMPLIED


"idref" relates to the note, for example: <noteref idref='yyy'> refers to <note id='yyy'>.

"type" provides advisory content MIME type of the target, see [RFC1556].
>

annoref

annoref marks a text segment that references an <annotation>. Each <annoref> is usually a word, phrase, or whole line that is part of the surrounding text (identified in the original print book by bolding, italics, etc.). It should not normally be allowed to be turned off in a DTB application.
<!ELEMENT annoref
Contains:
(#PCDATA)
>

May occur within the element content models:

address author notice prodnote sidebar line em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
<!ATTLIST annoref
Attribute Declared Value Default Value
Original:
%attrs;
idref CDATA #REQUIRED
type %ContentType; #IMPLIED
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
idref CDATA #REQUIRED
type CDATA #IMPLIED


"idref" refers to the target id of an <annotation>.

"type" provides advisory content MIME type of the targeted id, see [RFC1556].
>

Go to the Element Structural Groupings.


Inline Quotes


q

q contains a short, inline quotation. Compare with <blockquote>, which marks a longer quotation set off from the surrounding text. [XHTML11]
<!ELEMENT q
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content models:

address author notice prodnote sidebar line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
<!ATTLIST q
Attribute Declared Value Default Value
Original:
%attrs;
cite %URI; #IMPLIED
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
cite CDATA #IMPLIED


"cite" may provide a URI reference.
>

Go to the Element Structural Groupings.


Images


img

img marks a visual image. An <img> will always contain an alt and generally contain a longdesc, a pointer to a related <prodnote>. The <img> may be referenced by a <caption> or <prodnote>, using, for example, the form <caption imgref="#yyy">the Caption</caption> for the <img id="yyy">. [XHTML11]
<!ELEMENT img
Contains:
EMPTY
>

May occur within the element content models:

frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 address div author notice prodnote sidebar note annotation line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q imggroup p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd blockquote dt dd li lic caption th td
<!ATTLIST img
Attribute Declared Value Default Value
Original:
%attrs;
src %URI; #REQUIRED
alt %Text; #REQUIRED
longdesc %URI; #IMPLIED
height %Length; #IMPLIED
width %Length; #IMPLIED
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
src CDATA #REQUIRED
alt CDATA #REQUIRED
longdesc CDATA #IMPLIED
height CDATA #IMPLIED
width CDATA #IMPLIED


"src" specifies by URI the location of the image file.

"alt" is used to supply a short description of the <img>.

"longdesc" generally contains a pointer to a related <prodnote> that contains a detailed description of the <img>.

The attributes "height" and "width" provide visual sizing information, measured in pixels.
>

imggroup

imggroup provides a container for one or more <img> and associated <caption>(s) and <prodnote>(s). A <prodnote> may contain a description of the image. The content model allows: 1) multiple <img> if they share a caption, with the ids of each <img> in the <caption imgref="id1 id2 ...">, 2) multiple <caption> if several captions refer to a single <img id="xxx"> where each caption has the same <caption imgref="xxx">, 3) multiple <prodnote> if different versions are needed for different media (e.g., large print, braille, or print). If several <prodnote> refer to a single <img id="xxx">, each prodnote has the same <prodnote imgref="xxx">.
<!ELEMENT imggroup
Contains:
(prodnote | img | caption)+
>

May occur within the element content models:

frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 address div author notice prodnote sidebar note annotation line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd blockquote dt dd li lic caption th td
<!ATTLIST imggroup
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

Go to the Element Structural Groupings.


Horizontal Rule


hr

hr is an empty element, minimally <hr />, indicating a horizontal rule. It may be used to indicate a break in the text where only blank lines, a row of asterisks, a horizontal line, etc. are used in the print book. [XHTML11]
<!ELEMENT hr
Contains:
EMPTY
>

May occur within the element content models:

frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 div prodnote sidebar note annotation blockquote dd li th td
<!ATTLIST hr
Attribute Declared Value Default Value
Original:
%coreattrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED


"title" may be used to suggest the reason for the break.
>

Go to the Element Structural Groupings.


Paragraphs


p

p contains a paragraph, which may contain subsidiary <list> or <dl>. [XHTML11]
<!ELEMENT p
Contains:
(%inline; | %list; | dl)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref | list | dl)*
>

May occur within the element content models:

frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 div prodnote sidebar note annotation blockquote dd li th td
<!ATTLIST p
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

Go to the Element Structural Groupings.


Doctitle, Docauthor, and Headings


doctitle

doctitle marks the title of the book within <frontmatter>. By convention <doctitle> should appear only once. Contrast with <title>, which occurs as metadata in <head> and whose content is generally the same.
<!ELEMENT doctitle
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content models:

frontmatter level level1 div
<!ATTLIST doctitle
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

docauthor

docauthor marks each author or editor of this work. Compare with <author>, used to mark the author of another work, within <blockquote> or <cite>.
<!ELEMENT docauthor
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content models:

frontmatter level level1 div
<!ATTLIST docauthor
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

levelhd

levelhd contains the text of a heading within <level>. Corresponds to <h1> through <h6> used in <level1> through <level6>.
<!ELEMENT levelhd
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content model:

level
<!ATTLIST levelhd
Attribute Declared Value Default Value
Original:
%attrs;
depth CDATA #IMPLIED
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
depth CDATA #IMPLIED


"depth" is a positive integer, corresponding to the <h1>...<h6> levelN, though not limited to just six levels. Any depth value, "n", should match that on the enclosing <level depth="n">.
>

h1

h1 contains the text of the heading for a <level1> structure. [XHTML11] but nested
<!ELEMENT h1
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content model:

level1
<!ATTLIST h1
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

h2

h2 contains the text of the heading for a <level2> structure. [XHTML11] but nested
<!ELEMENT h2
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content model:

level2
<!ATTLIST h2
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

h3

h3 contains the text of the heading for a <level3> structure. [XHTML11] but nested
<!ELEMENT h3
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content model:

level3
<!ATTLIST h3
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

h4

h4 contains the text of the heading for a <level4> structure. [XHTML11] but nested
<!ELEMENT h4
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content model:

level4
<!ATTLIST h4
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

h5

h5 contains the text of the heading for a <level5> structure. [XHTML11] but nested
<!ELEMENT h5
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content model:

level5
<!ATTLIST h5
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

h6

h6 contains the text of the heading for a <level6> structure. [XHTML11] but nested
<!ELEMENT h6
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content model:

level6
<!ATTLIST h6
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

hd

hd marks the text of a heading in a <list> or <sidebar>.
<!ELEMENT hd
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content models:

sidebar list
<!ATTLIST hd
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

Go to the Element Structural Groupings.


Blocklike Quotes


blockquote

blockquote indicates a block of quoted content that is set off from the surrounding text by paragraph breaks. Compare with <q>, which marks short, inline quotations. [XHTML11]
<!ELEMENT blockquote
Contains:
(%block;)*
Expanded:
(p | list | dl | div | blockquote | hr | img | imggroup | table | address | line | author | notice | prodnote | sidebar | note | annotation)*
>

May occur within the element content models:

frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 div prodnote sidebar note annotation blockquote dd li th td
<!ATTLIST blockquote
Attribute Declared Value Default Value
Original:
%attrs;
cite %URI; #IMPLIED
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
cite CDATA #IMPLIED


"cite" permits inclusion of the URI from which the <blockquote> came.
>

Go to the Element Structural Groupings.


Definition List, and Other Lists


dl

dl contains a definition list, usually consisting of pairs of terms <dt> and definitions <dd>. Any definition can contain another definition list. [XHTML11]
<!ELEMENT dl
Contains:
(dt | dd | pagenum)+
>

May occur within the element content models:

frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 div prodnote sidebar note annotation p blockquote dd li th td
<!ATTLIST dl
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

dt

dt marks a term in a definition list <dl> for which a definition <dd> follows. [XHTML11]
<!ELEMENT dt
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content model:

dl
<!ATTLIST dt
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

dd

dd marks a definition of the preceding term <dt> within a definition list <dl>. A definition without a preceding <dt> has no semantic interpretation, but is visually presented aligned with other <dd>. [XHTML11]
<!ELEMENT dd
Contains:
(%flow;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | annoref | noteref | p | list | dl | div | blockquote | hr | table | address | line | author | notice | prodnote | sidebar | note | annotation)*
>

May occur within the element content model:

dl
<!ATTLIST dd
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

list

list contains some form of list, ordered or unordered. The list may have intermixed heading <hd> (generally only one, possibly with <prodnote>) and an intermixture of list items <li> and <pagenum>. If bullets and outline enumerations are part of the print content, they are expected to prefix those list items in content, rather than be implicitly generated. Note: XHTML has explicitly distinguished list element types: ol for ordered, and ul for unordered.
<!ELEMENT list
Contains:
(hd | prodnote | li | pagenum)+
>

May occur within the element content models:

frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 div prodnote sidebar note annotation p blockquote dd li th td
<!ATTLIST list
Attribute Declared Value Default Value
Original:
%attrs;
type (ol | ul) #IMPLIED
depth CDATA #IMPLIED
enum (1 | a | U | i | X) #IMPLIED
bullet CDATA #IMPLIED
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
type (ol | ul) #IMPLIED
depth CDATA #IMPLIED
enum (1 | a | U | i | X) #IMPLIED
bullet CDATA #IMPLIED


"type" indicates whether the list items <li> are ordered 'ol' or unordered 'ul'.

"depth" indicates nesting depth of lists within list items <li> of ancestor lists, starting at 1.

"enum" indicates the kind of enumeration: '1'=integer, 'a'=lowercase, 'U'=uppercase, 'i'=lowercase Roman, or X'=uppercase Roman.

"bullet" can come from Unicode, using the entity reference form '&xdddd;'.
>

li

li marks each list item in a <list>. <li> content may be either inline or block and may include other nested lists. Alternatively it may contain a sequence of list item components, <lic>, that identify regularly occurring content, such as the heading and page number of each entry in a table of contents. [XHTML11]
<!ELEMENT li
Contains:
(%flow; | lic)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | annoref | noteref | p | list | dl | div | blockquote | hr | table | address | line | author | notice | prodnote | sidebar | note | annotation | lic)*
>

May occur within the element content model:

list
<!ATTLIST li
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
>

lic

lic ("list item component") allows ordered substructure within a list item <li>. Used when a list item is made up of two or more components, as in a table of contents entry. The same number of <lic> should occur in each <li>. If not, correspondence of <lic> in different <li> is in order of occurrence for the current writing direction of the <li>.
<!ELEMENT lic
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content model:

li
<!ATTLIST lic
Attribute Declared Value Default Value
Original:
%attrs;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED


class attribute may be used to identify the particular component of a list item <li>. For example, in a table of contents class values might include "section", and "pagenumber".
>

Go to the Element Structural Groupings.


Tables


table

table contains cells of tabular data arranged in rows and columns. A <table> may have a <caption>. It may have descriptions of the columns in <col>s or groupings of several <col> in <colgroup>. A simple <table> may be made up of just rows <tr>. A long table crossing several pages of the print book should have separate <pagenum> values for each of the pages containing that <table> indicated on the page where it starts. Note the logical order of optional <thead>, optional <tfoot>, then one or more of either <tbody> or just rows <tr>. This order accommodates simple or large, complex tables. The <thead> and <tfoot> information usually helps identify content of the <tbody> rows, For a multiple-page print <table> the <thead> and <tfoot> are repeated on each page, but not redundantly tagged. [XHTML11]
<!ELEMENT table
Contains:
(caption?, (col* | colgroup*), thead?, tfoot?, (tbody+| tr+))
>

May occur within the element content models:

frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 div prodnote sidebar note annotation blockquote dd li th td
<!ATTLIST table
Attribute Declared Value Default Value
Original:
%attrs;
summary %Text; #IMPLIED
width %Length; #IMPLIED
border %Pixels; #IMPLIED
frame %TFrame; #IMPLIED
rules %TRules; #IMPLIED
cellspacing %Length; #IMPLIED
cellpadding %Length; #IMPLIED
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
summary CDATA #IMPLIED
width CDATA #IMPLIED
border CDATA #IMPLIED
frame (void | above | below | hsides | lhs | rhs | vsides | box | border) #IMPLIED
rules (none | groups | rows | cols | all) #IMPLIED
cellspacing CDATA #IMPLIED
cellpadding CDATA #IMPLIED


"summary" value provides a textual summary.

The attributes: "width", "border", "frame", "rules", "cellspacing", and "cellpadding" provide visual presentation guidance. See their explanation in the comment following those parameter entity declarations.
>

caption

caption describes a <table> or <img>. If used with <table> it must follow immediately after the <table> start tag. If used with <img> or <imggroup> it is not so constrained. [XHTML11]
<!ELEMENT caption
Contains:
(%inline;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref)*
>

May occur within the element content models:

level level1 level2 level3 level4 level5 level6 div note annotation imggroup table
<!ATTLIST caption
Attribute Declared Value Default Value
Original:
%attrs;
imgref IDREFS #IMPLIED
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
imgref IDREFS #IMPLIED


"imgref" value (or space-separated id values) identifies the id values of the <img>(s) to which the caption applies. Any internal id reference is preceded by '#id'. Note: imgref is an extension for dtbook.
>

thead

thead marks header information in a <table>, consisting of one or more rows <tr> of <th> cells. Use <thead> to duplicate headers when breaking table across page boundaries, or for static headers when <tbody> sections are rendered in scrolling panel. [XHTML11]
<!ELEMENT thead
Contains:
(tr)+
>

May occur within the element content model:

table
<!ATTLIST thead
Attribute Declared Value Default Value
Original:
%attrs;
%cellhalign;
%cellvalign;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
align (left|center|right|justify|char) #IMPLIED
char CDATA #IMPLIED
charoff CDATA #IMPLIED
valign (top|middle|bottom|baseline) #IMPLIED
>

tfoot

tfoot marks footer information in a <table>, consisting of one or more rows <tr>, usually of <th> cells. Use <tfoot> to duplicate footers when breaking table across page boundaries, or for static footers when <tbody> sections are rendered in scrolling panel. [XHTML11]
<!ELEMENT tfoot
Contains:
(tr)+
>

May occur within the element content model:

table
<!ATTLIST tfoot
Attribute Declared Value Default Value
Original:
%attrs;
%cellhalign;
%cellvalign;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
align (left|center|right|justify|char) #IMPLIED
char CDATA #IMPLIED
charoff CDATA #IMPLIED
valign (top|middle|bottom|baseline) #IMPLIED
>

tbody

tbody marks a group of rows in the main body of a <table>. If the <table> is divided into several sections, each consisting of a number of rows, each section would be separately tagged with <tbody>. The same <thead> and <tfoot> apply to every <tbody> section. Use multiple <tbody> sections when rules are needed between groups of table rows. [XHTML11]
<!ELEMENT tbody
Contains:
(tr)+
>

May occur within the element content model:

table
<!ATTLIST tbody
Attribute Declared Value Default Value
Original:
%attrs;
%cellhalign;
%cellvalign;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
align (left|center|right|justify|char) #IMPLIED
char CDATA #IMPLIED
charoff CDATA #IMPLIED
valign (top|middle|bottom|baseline) #IMPLIED
>

colgroup

colgroup groups adjacent columns <col> that are semantically related. [XHTML11]
<!ELEMENT colgroup
Contains:
(col)*
>

May occur within the element content model:

table
<!ATTLIST colgroup
Attribute Declared Value Default Value
Original:
%attrs;
span NMTOKEN '1'
width %MultiLength; #IMPLIED
%cellhalign;
%cellvalign;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
span NMTOKEN '1'
width CDATA #IMPLIED
align (left|center|right|justify|char) #IMPLIED
char CDATA #IMPLIED
charoff CDATA #IMPLIED
valign (top|middle|bottom|baseline) #IMPLIED


"span" causes the attributes of one col element to apply to more than one column, extending in the writing direction for the language. Span is ignored if any <col> are present.

"width" specifies the width of the columns, e.g.

width='64' width in screen pixels width='0.5*' relative width of 0.5

"width" may contain a space- or comma-separated list of widths for each <col>, or percentages if values end in '%', or relative 'nn*' to indicate a fractional portion of the remaining widths after more explicit forms have been specified for other columns in the colgroup (presumably the sum encompasses all the columns). '0*' indicates minimal acceptable width based on column content.

The <col> in a <colgroup> may inherit attribute values from it, or the closest enclosing ancestor element: <thead>|<tfoot>|<tbody>. If none, then the values are up to the user agent, possibly by user preference.
>

col

col elements define the alignment properties for cells in one or more columns. [XHTML11]
<!ELEMENT col
Contains:
EMPTY
>

May occur within the element content models:

table colgroup
<!ATTLIST col
Attribute Declared Value Default Value
Original:
%attrs;
span NMTOKEN '1'
width %MultiLength; #IMPLIED
%cellhalign;
%cellvalign;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
span NMTOKEN '1'
width CDATA #IMPLIED
align (left|center|right|justify|char) #IMPLIED
char CDATA #IMPLIED
charoff CDATA #IMPLIED
valign (top|middle|bottom|baseline) #IMPLIED


"span" indicates how many columns the <col> extends, in the writing direction of the <table>. The attribute values apply to <th> and <td> that start in the column, even if they extend into the next column(s), by span value more than 1, and that next <col> may have different attribute values.

"width" may contain a space- or comma-separated list of widths for each <col> of the span, or percentages if values end in '%', or relative 'nn*' to indicate a fractional portion of the remaining widths after more explicit forms have been specified for other columns in the span (presumably the sum encompasses all the columns of this span, and of other <colgroup>s). '0*' indicates minimal acceptable width based on individual <col> content.

<col> may inherit attribute values from the most immediate enclosing ancestor element: <colgroup>, <thead>|<tbody>|<tfoot>. If none, it is up to the user agent, possibly by user preference.
>

tr

tr marks one row of a <table> containing <th> or <td> cells. [XHTML11]
<!ELEMENT tr
Contains:
(th | td)+
>

May occur within the element content models:

table thead tfoot tbody
<!ATTLIST tr
Attribute Declared Value Default Value
Original:
%attrs;
%cellhalign;
%cellvalign;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
align (left|center|right|justify|char) #IMPLIED
char CDATA #IMPLIED
charoff CDATA #IMPLIED
valign (top|middle|bottom|baseline) #IMPLIED


%cellvalign; values provide default vertical alignment values for <th> and <td> in the row, overriding any from <thead>|<tbody>|<tfoot>, <col>, <colgroup> If none, it is up to the user agent, possibly by user preference.

%cellhalign; values provide default horizontal alignment from <thead>|<tbody>|<tfoot> If none, it is up to the user agent, possibly by user preference.

>

th

th indicates a table cell containing header information. [XHTML11]
<!ELEMENT th
Contains:
(%flownopagenum;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | annoref | noteref | p | list | dl | div | blockquote | hr | table | address | line | author | notice | prodnote | sidebar | note | annotation)*
>

May occur within the element content model:

tr
<!ATTLIST th
Attribute Declared Value Default Value
Original:
%attrs;
abbr %Text; #IMPLIED
axis CDATA #IMPLIED
headers IDREFS #IMPLIED
scope %Scope; #IMPLIED
rowspan NMTOKEN '1'
colspan NMTOKEN '1'
%cellhalign;
%cellvalign;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
abbr CDATA #IMPLIED
axis CDATA #IMPLIED
headers IDREFS #IMPLIED
scope (row | col | rowgroup | colgroup) #IMPLIED
rowspan NMTOKEN '1'
colspan NMTOKEN '1'
align (left|center|right|justify|char) #IMPLIED
char CDATA #IMPLIED
charoff CDATA #IMPLIED
valign (top|middle|bottom|baseline) #IMPLIED


The uses of attributes other than %attrs; %cellvalign; and %cellhalign; are shown below. See [HTML401STRICT] for details and examples.

"abbr" provides an abbreviated name for a <th> cell that can be used when referring to that <th> cell. Its default value is the cell content.

"axis" is used to place cells into conceptual categories in order to provide improved access to information.

"headers" provides the id value(s), used with <td> cells, to reference one or more cells with <th id="xxx"> that contain headings that collectively describe or qualify the content of the cell, for example <td headers="id1 id2">.

"scope" identifies one of (row | rowgroup | column | colgroup) to which the header information applies.

"rowspan" indicates the total number of rows that the cell extends, by default 1. All spanned cells share these attributes.

"colspan" indicates the total number of columns the cell extends, by default 1, in the writing direction of the table. All spanned cells share these attributes.
>

td

td indicates a table cell containing data. [XHTML11]
<!ELEMENT td
Contains:
(%flownopagenum;)*
Expanded:
(#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | annoref | noteref | p | list | dl | div | blockquote | hr | table | address | line | author | notice | prodnote | sidebar | note | annotation)*
>

May occur within the element content model:

tr
<!ATTLIST td
Attribute Declared Value Default Value
Original:
%attrs;
abbr %Text; #IMPLIED
axis CDATA #IMPLIED
headers IDREFS #IMPLIED
scope %Scope; #IMPLIED
rowspan NMTOKEN '1'
colspan NMTOKEN '1'
%cellhalign;
%cellvalign;
Expanded:
id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED
abbr CDATA #IMPLIED
axis CDATA #IMPLIED
headers IDREFS #IMPLIED
scope (row | col | rowgroup | colgroup) #IMPLIED
rowspan NMTOKEN '1'
colspan NMTOKEN '1'
align (left|center|right|justify|char) #IMPLIED
char CDATA #IMPLIED
charoff CDATA #IMPLIED
valign (top|middle|bottom|baseline) #IMPLIED


The uses of attributes other than %attrs; %cellhalign; and %cellvalign; are shown below. See [HTML401STRICT] for details and examples.

"abbr" provides an abbreviated name for a <th> cell that can be used when referring to that <th> cell. Its default value is the cell content.

"axis" is used to place cells into conceptual categories in order to provide improved access to information.

"headers" provides the id value(s), used with <td> cells, to reference one or more cells with <th id="xxx"> that contain headings that collectively describe or qualify the content of the cell, for example <td headers="id1 id2">.

"scope" identifies one of (row | rowgroup | column | colgroup) to which the header information applies.

"rowspan" indicates the total number of rows that the cell extends, by default 1. All spanned cells share these attributes.

"colspan" indicates the total number of columns the cell extends, by default 1, in the writing direction of the table. All spanned cells share these attributes.
>

Go to the Element Structural Groupings.

Go to the Table of Contents.


3.8. Element Type Use in Other Content Models

All element types except <dtbook> appear in the content models of one or more other parent element types. The following shows that direct parentage, after parameter entity expansion.

Element TypeOccurs in Parent Content Models
a level level1 level2 level3 level4 level5 level6 address div author notice prodnote sidebar note annotation line em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
abbr address author notice prodnote sidebar line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
acronym address author notice prodnote sidebar line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
address frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 div prodnote sidebar note annotation blockquote dd li th td
annoref address author notice prodnote sidebar line em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
annotation frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 div prodnote sidebar note annotation blockquote dd li th td
author frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 div prodnote sidebar note annotation blockquote dd li th td
bdo address author notice prodnote sidebar line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
blockquote frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 div prodnote sidebar note annotation blockquote dd li th td
bodymatter book
book dtbook
br address author notice prodnote sidebar line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
caption level level1 level2 level3 level4 level5 level6 div note annotation imggroup table
cite level level1 level2 level3 level4 level5 level6 address div author notice prodnote sidebar note annotation line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
code address author notice prodnote sidebar line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
col table colgroup
colgroup table
dd dl
dfn address author notice prodnote sidebar line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
div frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 div prodnote sidebar note annotation blockquote dd li th td
dl frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 div prodnote sidebar note annotation p blockquote dd li th td
docauthor frontmatter level level1 div
doctitle frontmatter level level1 div
dt dl
dtbook Root Element, no parent
em address author notice prodnote sidebar line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
frontmatter book
h1 level1
h2 level2
h3 level3
h4 level4
h5 level5
h6 level6
hd sidebar list
head dtbook
hr frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 div prodnote sidebar note annotation blockquote dd li th td
img frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 address div author notice prodnote sidebar note annotation line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q imggroup p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd blockquote dt dd li lic caption th td
imggroup frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 address div author notice prodnote sidebar note annotation line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd blockquote dt dd li lic caption th td
kbd level level1 level2 level3 level4 level5 level6 address div author notice prodnote sidebar note annotation line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
level frontmatter bodymatter rearmatter level
level1 frontmatter bodymatter rearmatter
level2 level1
level3 level2
level4 level3
level5 level4
level6 level5
levelhd level
li list
lic li
line frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 address div prodnote sidebar note annotation blockquote dd li th td
linenum address author notice prodnote sidebar line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
link head
list frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 div prodnote sidebar note annotation p blockquote dd li th td
meta head
note frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 div prodnote sidebar note annotation blockquote dd li th td
noteref address author notice prodnote sidebar line em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
notice frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 div prodnote sidebar note annotation blockquote dd li th td
p frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 div prodnote sidebar note annotation blockquote dd li th td
pagenum level level1 level2 level3 level4 level5 level6 address div author notice prodnote sidebar note annotation line em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dl dt dd list li lic caption
prodnote frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 address div author notice prodnote sidebar note annotation line em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent q imggroup p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd blockquote dt dd list li lic caption th td
q address author notice prodnote sidebar line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
rearmatter book
samp level level1 level2 level3 level4 level5 level6 address div author notice prodnote sidebar note annotation line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
sent address author notice prodnote sidebar line em strong dfn kbd code samp cite abbr acronym sub sup span bdo q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
sidebar frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 div prodnote sidebar note annotation blockquote dd li th td
span address author notice prodnote sidebar line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
strong address author notice prodnote sidebar line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
style head
sub address author notice prodnote sidebar line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
sup address author notice prodnote sidebar line a em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent w q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td
table frontmatter bodymatter rearmatter level level1 level2 level3 level4 level5 level6 div prodnote sidebar note annotation blockquote dd li th td
tbody table
td tr
tfoot table
th tr
thead table
title head
tr table thead tfoot tbody
w address author notice prodnote sidebar line em strong dfn kbd code samp cite abbr acronym sub sup span bdo sent q p doctitle docauthor levelhd h1 h2 h3 h4 h5 h6 hd dt dd li lic caption th td

Go to the Element Structural Groupings.

Go to the Table of Contents.


3.9. Parameter Entity Declarations

The parameter entities defined in the dtbook DTD appear below in alphabetic order. The original content is shown. If the content of the original contains other parameter entity references, both the original and (fully) expanded form are shown. Finally the explanatory comment appears. (There are no circular definitions.) For more details, follow the [links] within the explanations,to their explanations in Appendix A. References.

<!ENTITY % attrs
Original: "%coreattrs;
%i18n;
smilref CDATA #IMPLIED
%showin;"
Expanded: "id ID #IMPLIED class CDATA #IMPLIED style CDATA #IMPLIED title CDATA #IMPLIED
lang NMTOKEN #IMPLIED xml:lang NMTOKEN #IMPLIED dir (ltr|rtl) #IMPLIED
smilref CDATA #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED"
Explanation: %attrs; is part of most attribute lists. It includes
%coreattrs; from which come the four #IMPLIED attributes:
id, class, style, and title.
%i18n; from which come the implied attributes: lang, xml:lang, and dir
smilref is a pointer to a [SMIL2.0] file, normally to the time container
(SMIL <par> or <seq>) containing the media object that references this
element. However, in a text-only DTB consisting of a sequence of
text media objects, <smilref> points to the media object that
references this element. <smilref> allows resumption of SMIL
presentation at the proper location after navigation via dtbook file.
All <smilref> values are expected to be added to an augmented
version of the <dtbook> during production.
%showin; (See entity declaration.)
showin
value
BrailleLarge
Print
PrintEffect
'xxx'hide
'xxp'pprint only
'xlx'llarge print only
'xlp'lplarge print and print
'bxx'bbraille only
'bxp'bpbraille and print
'blx'blbraille and largeprint
'blp'blpbraille, largeprint, and print
If the showin attribute value is 'blp', the attribute may be omitted.

>

<!ENTITY % attrsrqd
Original: "id ID #REQUIRED
class CDATA #IMPLIED
style %StyleSheet; #IMPLIED
title %Text; #IMPLIED
smilref CDATA #IMPLIED
%i18n;
%showin; "
Expanded: "id ID #REQUIRED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED
smilref CDATA #IMPLIED
lang NMTOKEN #IMPLIED xml:lang NMTOKEN #IMPLIED dir (ltr|rtl) #IMPLIED
showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED"
Explanation: %attrsrqd; includes required id and implied class, style, and
title.
%i18n; from which come the implied attributes: lang, xml:lang, and dir
smilref is a pointer to a [SMIL2.0] file, normally to the time container
(SMIL <par> or <seq>) containing the media object that references this
element. However, in a text-only DTB consisting of a sequence of
text media objects, <smilref> points to the media object that
references this element. <smilref> allows resumption of SMIL
presentation at the proper location after navigation via dtbook file.
All <smilref> values are expected to be added to an augmented
version of the <dtbook> during production.
%showin; (See entity declaration.)
showin
value
BrailleLarge
Print
PrintEffect
'xxx'hide
'xxp'pprint only
'xlx'llarge print only
'xlp'lplarge print and print
'bxx'bbraille only
'bxp'bpbraille and print
'blx'blbraille and largeprint
'blp'blpbraille, largeprint, and print
If the showin attribute value is 'blp', the attribute may be omitted.

>

<!ENTITY % block
Original: "p | %list; | dl | div | blockquote | hr | img | imggroup |
table | address | line | %dtbookblocknoimggroup;"
Expanded: "p | list | dl | div | blockquote | hr | img | imggroup |
table | address | line | author | notice | prodnote | sidebar | note | annotation"
Explanation: block elements from [HTML401STRICT] dtd augmented by dtbook-unique
elements (%list; differs.).

>

<!ENTITY % blocknoimggroup
Original: "p | %list; | dl | div | blockquote | hr |
table | address | line | %dtbookblocknoimggroup;"
Expanded: "p | list | dl | div | blockquote | hr |
table | address | line | author | notice | prodnote | sidebar | note | annotation"
Explanation: block elements from [HTML401STRICT] dtd augmented by dtbook-unique
elements.

>

<!ENTITY % cellhalign
Original: "align (left|center|right|justify|char) #IMPLIED
char %Character; #IMPLIED
charoff %Length; #IMPLIED"
Expanded: "align (left|center|right|justify|char) #IMPLIED
char CDATA #IMPLIED
charoff CDATA #IMPLIED"
Explanation: % cellhalign
cellhalign sets horizontal alignment of content in
a table cell.
char indicates a character expected in each table
cell of a column that text should align on. The default is
the decimal point for the current language.
charoff sets the alignment offset of the first character
to align on, as specified with char.
Inheritance order for horizontal alignment is <th>|<td>,
<tr>, <thead>|<tfoot>|<tbody>, <col>, <colgroup>, default. The
default value is from the user agent, and may be affected
by user preference. The recommended default alignment for
<th> is center, and for <td> is left.

>

<!ENTITY % cellvalign
Original: "valign (top|middle|bottom|baseline) #IMPLIED"
Explanation: % cellvalign
valign sets vertical alignment of content in a table cell.
Inheritance order for vertical alignment is <th>|<td>, <col>,
<colgroup>, <tr>, <thead>|<tfoot>|<tbody>, default. The
default value is from the user agent, and may be affected
by user preference. The recommended default is middle.

>

<!ENTITY % Character
Original: "CDATA"
Explanation: a single character from [ISO10646].

>

<!ENTITY % Charset
Original: "CDATA"
Explanation: a character encoding, as per [RFC2045].

>

<!ENTITY % ContentType
Original: "CDATA"
Explanation: media type, as per [RFC2046].

>

<!ENTITY % coreattrs
Original: "id ID #IMPLIED
class CDATA #IMPLIED
style %StyleSheet; #IMPLIED
title %Text; #IMPLIED"
Expanded: "id ID #IMPLIED
class CDATA #IMPLIED
style CDATA #IMPLIED
title CDATA #IMPLIED"
Explanation: coreattrs are attributes permissible for most elements
id document-wide unique id
class space separated list of classes used for rendering
style associated style info
title advisory title/amplification

>

<!ENTITY % dtbookblock
Original: "author | notice | prodnote | sidebar | note | imggroup |
annotation %externalblock;"
Expanded: "author | notice | prodnote | sidebar | note | imggroup |
annotation"
Explanation: block elements unique to dtbook.

>

<!ENTITY % dtbookblocknoimggroup
Original: "author | notice | prodnote | sidebar | note |
annotation %externalblock;"
Expanded: "author | notice | prodnote | sidebar | note |
annotation"
Explanation: block elements unique to dtbook without imggroup.

>

<!ENTITY % dtbookcontent
Original: "head, book"
Explanation: dtbookContent designates that each dtbook has a <head> of
metainformation preceding the <book> content.

>

<!ENTITY % dtbookinline
Original: "sent | w | pagenum | prodnote | annoref | noteref %externalinline;"
Expanded: "sent | w | pagenum | prodnote | annoref | noteref"
Explanation: dtbook added inline text elements

>

<!ENTITY % externalblock
Original: ""
Explanation: placeholder for block element expansion from external modules;
if changed, string in external subset begins " | blockelementname".

>

<!ENTITY % externalinline
Original: ""
Explanation: placeholder for inline element expansion from external modules;
if changed, string in external subset begins " | inlineelementname".

>

<!ENTITY % flow
Original: "%inlinenoprodnote; | %blocknoimggroup;"
Expanded: "#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | annoref | noteref | p | list | dl | div | blockquote | hr | table | address | line | author | notice | prodnote | sidebar | note | annotation"
Explanation: flow elements add inlinenoprodnote to block

>

<!ENTITY % flownopagenum
Original: "%inlinenopagenum; | %blocknoimggroup;"
Expanded: "#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | annoref | noteref | p | list | dl | div | blockquote | hr | table | address | line | author | notice | prodnote | sidebar | note | annotation"
Explanation: flownopagenum ideally excludes pagenum though can get in
indirectly through elements of %blocknoimggroup;

>

<!ENTITY % headmisc
Original: "style | meta | link"
Explanation: optional head elements

>

<!ENTITY % i18n
Original: "lang %LanguageCode; #IMPLIED
xml:lang %LanguageCode; #IMPLIED
dir (ltr|rtl) #IMPLIED"
Expanded: "lang NMTOKEN #IMPLIED
xml:lang NMTOKEN #IMPLIED
dir (ltr|rtl) #IMPLIED"
Explanation: i18n internationalization attributes
lang language code (backwards compatible)
xml:lang language code (as per XML 1.0 spec)
dir direction for weak/neutral text
ltr=left to right
rtl=right to left
xhtml recommendation: use both lang and xml:lang, with same value,
such as "en-US", on the major containing block, to provide source for
the #IMPLIED values of its descendent elements. See [RFC1556].
should the values differ, the xml:lang takes precedence.
See [RFC1556] for handling bi-directional text in MIME.

>

<!ENTITY % inline
Original: "#PCDATA | %phrase; | %special; | %dtbookinline;"
Expanded: "#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | sent | w | pagenum | prodnote | annoref | noteref"
Explanation: inline text elements

>

<!ENTITY % inlineinblock
Original: "a | cite | caption | samp | kbd | pagenum"
Explanation: inlines that may alternatively be in block elements.

>

<!ENTITY % inlinenoa
Original: "#PCDATA | %phrase; | %specialnoa; %externalinline;"
Expanded: "#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | img | imggroup | br | q | sub | sup | span | bdo | linenum"
Explanation: inlinenoa excludes nested <a>

>

<!ENTITY % inlinenopagenum
Original: "#PCDATA | %phrase; | %special; |
sent | w | annoref | noteref %externalinline;"
Expanded: "#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum |
sent | w | annoref | noteref"
Explanation: inlinenopagenum excludes direct <pagenum> in <table> <th> and <td>

>

<!ENTITY % inlinenoprodnote
Original: "#PCDATA | %phrase; | %special; |
sent | w | pagenum | annoref | noteref %externalinline;"
Expanded: "#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum |
sent | w | pagenum | annoref | noteref"
Explanation: inlinenoprodnote excludes direct <prodnote>, as they shouldn't nest

>

<!ENTITY % inlines
Original: "#PCDATA | %phrase; | %special; | pagenum | w | prodnote | annoref |
noteref %externalinline;"
Expanded: "#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum | pagenum | w | prodnote | annoref |
noteref"
Explanation: inlines excludes direct nesting of sentences <sent>

>

<!ENTITY % inlinew
Original: "#PCDATA | %phrase; | %special; %externalinline;"
Expanded: "#PCDATA | em | strong | dfn | code | samp | kbd | cite | abbr | acronym | a | img | imggroup | br | q | sub | sup | span | bdo | linenum"
Explanation: inlinew for word <w> excludes any of the %dtbookinline;

>

<!ENTITY % LanguageCode
Original: "NMTOKEN"
Explanation: a language code, per [RFC1766].

>

<!ENTITY % Length
Original: "CDATA"
Explanation: measured in pixels, percent (nn%)

>

<!ENTITY % LinkTypes
Original: "CDATA"
Explanation: space-separated list of link types.

>

<!ENTITY % list
Original: "list"
Explanation: list container for ordered or unordered lists (distinguished
by attribute value, not element types ol or ul).

>

<!ENTITY % MediaDesc
Original: "CDATA"
Explanation: single or comma-separated list of media descriptors;
possible values include BRAILLE, PRINT, PROJECTION, SPEECH, ALL,
or the default SCREEN.

>

<!ENTITY % MultiLength
Original: "CDATA"
Explanation: measured in integer pixels "n", percent "nn%" of display width,
"0*" indicating minimum appropriate width based on column
content, or "nn*" the relative proportional width (".5*" is
half the available width after any explicit widths have been
consumed). The lengths are separated by commas or whitespace.

>

<!ENTITY % Number
Original: "CDATA"
Explanation: one or more digits.

>

<!ENTITY % phrase
Original: "em | strong | dfn | code | samp | kbd | cite | abbr | acronym"
Explanation: inline text elements

>

<!ENTITY % Pixels
Original: "CDATA"
Explanation: 0 for no <table> border, positive integer for <table> border width
in pixels.

>

<!ENTITY % Scope
Original: "(row | col | rowgroup | colgroup)"
Explanation: Scope specifies a set of data cells for which the <th> provides
header information.

>

<!ENTITY % showin
Original: "showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED"
Explanation: <!--showin attribute applies for text elements to permit identification
of the kinds of display appropriate for the element, so presentation
choice by the reader among alternative readings can be provided, when
appropriate. Values of showin are coded with three letters in order:
"b"=Braille, "l"=Largeprint, and "p"=Print; or "x"=inappropriate:
Value Braille Largeprint Print Interpretation
"xxx" hide
"xxp" p print only
"xlx" l largeprint only
"xlp" l p largeprint and print
"bxx" b braille only
"bxp" b p braille and print
"blx" b l braille and largeprint
"blp" b l p braille, largeprint, and print
There is no default value; this attribute value is implied
from the most immediate ancestor that specifies a value.
The usual default for showin is 'blp'. If only one showin
value is needed it should be included with <book>.
Different content for the same element (usually <prodnote! >) meeting
different needs is possible, with showin serving as a switch to
differentiate among them. Both largeprint and print are appropriate
for screen rendering as well as printing. Different corresponding
styles may be appropriate.
It is possible to include equivalent content from any major structure
below <book> to provide the different content suitable for different
media. These would be independent, sharing no direct content, possibly
having common references to images, with different accompanying text
descriptions.

>

<!ENTITY % special
Original: "a | img | imggroup | br | q | sub | sup | span | bdo | linenum"
Explanation: special inline text elements

>

<!ENTITY % specialnoa
Original: "img | imggroup | br | q | sub | sup | span | bdo | linenum"
Explanation: specialnoa inline text elements for anchor <a>

>

<!ENTITY % StyleSheet
Original: "CDATA"
Explanation: style sheet data.

>

<!ENTITY % Text
Original: "CDATA"
Explanation: used for titles etc.

>

<!ENTITY % TFrame
Original: "(void | above | below | hsides | lhs | rhs | vsides | box | border)"
Explanation: TFrame identifies the sides that are visually framed.

>

<!ENTITY % TRules
Original: "(none | groups | rows | cols | all)"
Explanation: %TRules identifies where visual rulings appear.
If no Trules is present then assume:
'none' if border is absent or border='0' otherwise 'all'.

>

<!ENTITY % URI
Original: "CDATA"
Explanation: a Uniform Resource Identifier, see [RFC2396].

>

Go to the Element Structural Groupings.

Go to the Table of Contents.


Appendix A. References

These references are informative. The bracketed names here are targets for indirect reference from the corresponding bracketed names in other parts of this document or in descriptions within this section.

[CSS1] Cascading Style Sheets, Level 1. Rec-CSS1-1999011 Revised 11 Jan 1999

http://www.w3.org/TR/REC-CSS1

[CSS2] Cascading Style Sheets, Level 2 CSS2 Specification REC-CSS2-19980512

http://www.w3.org/TR/REC-CSS2

[DAISY202] The DAISY 2.02 Specification for the DAISY Digital Talking Book (DTB) format, which enables navigation within a sequential and hierarchical structure consisting of (marked-up) text synchronized with audio.

http://www.daisy.org/dtbook/spec/2/final/d202/daisy_202.html

[DAISY-2-GUIDELINES] The DAISY 2.02 Specification for the Creation and Production of Accessible Books and Materials, Version 0.99 1999-09-23 represents minimum standard to be met by Libraries for the Blind and producers of alternative format materials:

http://www.daisy.org/dtbook/guidelines/draft/principles.htm

[DTBOOKV110DTD] The dtbook DTD v1.1.0 (this DTD) is available at:

http://www.loc.gov/nls/z3986/v100/dtbook110.dtd

Note that some browsers do not permit downloading a file with suffix dtd.

[DTBOOKV110DOC] Digital Talking Book Expanded Document Type Definition Documentation for Version V110 of this DTD is available as an HTML 4.0 document:

http://www.loc.gov/nls/z3986/v100/dtbook110doc.htm

Should revisions occur, a new directory with node named "vxxx" (rather than v110) that indicates the revision level will contain the revisions. Any prior specific version of the dtbook dtd and its documentation will persist.

[DTBOOK3] The last public beta version was dtbook3-07.dtd (2001-01-31).

http://www.loc.gov/nls/z3986/background/dtbk3_old_dtds/dtbk3-07.dtd

and its expanded documentation:

http://www.loc.gov/nls/z3986/background/dtbk3_old_dtds/dtbk3-07doc.htm

Those and prior versions are available at:

http://www.loc.gov/nls/z3986/background/dtbk3_old_dtds/index.html

The history of changes prior to this version, including those in internal drafts through dtbk3-12.dtd and before is in:

http://www.loc.gov/nls/z3986/background/dtbk3-dtd-changes.txt
"http://www.loc.gov/nls/z3986/background/dtbk3-dtd-changes.txt"

In that directory also are the old dtdbk3 dtds, some of which have been used for test markup, and their documentation. See its index.html for the list. (Caution: some browsers may not permit downloading DTDs.)

http://www.loc.gov/nls/z3986/background/index.html

[HTML401STRICT] "HTML 4.0 Strict DTD," 1999-12-24, Dave Raggett, Arnaud Le hors, and Ian Jacobs. Dtbook110 was originally based on the HTML 4.0 Strict DTD with design adaptation for dtbook110. A principal adaptation is to use lower-case names for element types and attribute names. For expanded discussion, see [HTML401].

http://www.w3.org/TR/1999/REC-html401-19991224/strict.dtd

[HTML401] "HTML 4.01 Specification" W3C Recommendation 24 December 1999 Documentation of the element types that come from the HTML 4.0 Strict DTD [HTML401STRICT] is available at:

http://www.w3.org/TR/1999/REC-html401-19991224/

Dtbook110 is partially harmonized with the [XHTML11STRICT] DTD. The XHTML camelCase parameter entity names are retained, and comments and references following those parameter entities explain them. The lower-case element and attribute names are used. The simplified table content model of just table rows is included.

[ISO10646] "Information Technology - Universal Multiple-Octet Coded Character Set (UCS) - Part 1: Architecture and Basic Multilingual Plane", ISO/IEC 10646-1:1993. The current specification also takes into consideration the first five amendments to ISO/IEC 10646-1:1993.

[ISO8859] "Information Processing - 8-bit single-byte coded graphic character sets - Part 1: Latin alphabet No. 1," ISO 8859-1:1987. Other suffixes "-2 through -9" correspond to other character sets in the family.

[JIS] "JIS Character Sets" describes the history of JIS, and the several character sets for KANJI, KANA and other characters.

http://www.io.com/~kazushi/encoding/jis.html

[ANSINISOZ39-86-2002] Specifications for the Digital Talking Book.

http://www.niso.org

[NLS-Z3986] Development of ANSI/NISO Z39.86-2002 Contains links to the DTDs developed for Z39.86-2002, Specifications for the Digital Talking Book

http://www.loc.gov/nls/z3986/v100/index.html

[OASIS-TR9401] Entity Management, OASIS Technical Resolution 9401:1997 (Amendment 2 to TR 9401). Paul Grosso, 1997 September 10.

http://www.oasis-open.org/specs/tr9401.html

[RFC1556] "Handling of Bi-directional Texts in MIME," H. Nussbacher, December 1993.

http://www.cis.ohio-state.edu/cgi-bin/rfc/rfc1556.html

[RFC1766] "Tags for the Identification of Languages", H. Alvestrand, March 1995.

http://www.cis.ohio-state.edu/cgi-bin/rfc/rfc1766.html

[RFC1942] "HTML Tables", D. Raggett, May 1996

http://www.ietf.org/rfc/rfc1942.txt

Contains detailed descriptions of table elements and their inheritance of attribute values. Adjustment for XML application is required: end-tags are necessary, not optional, attribute values must be quoted.

[RFC2045] "Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies", N. Freed and N. Borenstein, November 1996. Note that this RFC obsoletes RFC1521, RFC1522, and RFC1590. The %ContentType; and %ContentTypes; media types and the %Charset; and %Charsets; character encoding values are from [RFC2045].

http://www.cis.ohio-state.edu/cgi-bin/rfc/rfc2045.html

[RFC2046] "Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types," N. Freed, November 1996. Source for %ContentType; and %ContentTypes; permitted values:

http://www.cis.ohio-state.edu/cgi-bin/rfc/rfc2046.html

[RFC2396] "Uniform Resource Identifiers (URI): Generic Syntax," T. Berners-Lee, R. Fielding, L. Masinter, August 1998. Note that this RFC revises and replaces the generic definitions in RFC 1738 and RFC 1808.

http://www.cis.ohio-state.edu/cgi-bin/rfc/rfc2396.html

[SMIL2.0] The Synchronized Multimedia Integration Language SMIL 2.0 W3C Recommendation 07 August 2001 is available at:

http://www.w3.org/TR/2001/REC-smil20-20010807/smil20.html

[XHTML11] "XHTML (tm) 1.0: The Extensible HyperText Markup Language," W3C Recommendation 26 January 2000, A reformulation of HTML4 in XML 1.0 includes case-sensitive names, lower-case for elements and their attributes (but not parameter entity names) and in some cases equivalent content models that do not require SGML inclusions and exclusion exceptions (as occurred in the HTML4.0 strict DTD [HTML401STRICT]) is available at:

http://www.w3.org/TR/xhtml/

[XML-NAMES] "Namespaces in XML" World Wide Web Consortium 14-January-1999, REC-xml-names-19990114.

http://www.w3.org/TR/REC-xml-names/

[XHTML11STRICT] Expanded documentation of the element types that come from the XHTML11 strict.dtd and its other DTDs is available within the zip file:

http://www.w3.org/TR/xhtml1/DTD/xhtml1/xhtml1.zip

Note: some browsers cannot download a dtd directly.

[XML12] This dtbook110.dtd is an application of the Extensible Markup Language XML 1.0 (Second Edition) W3C Recommendation 6 October 2000. It is available at:

http://www.w3.org/TR/REC-xml

Go to the Table of Contents.


Appendix B. Contributors to the Digital Talking Book DTD Design

The Digital Talking Book DTD has evolved since the first release 1998-10-08 of dtbook3.dtd, with contributions from many. The primary authors are:

Harvey Bingham <hbingham@acm.org>
George Kerscher <kerscher@montana.com>
Michael Moodie <mmoo@loc.gov>
David Pawson <dpawson@rnib.org.uk>

They were assisted by DAISY Consortium and NISO DTB Committee work teams.

Go to the Table of Contents.


Appendix C. Modular Extension to the DTD

The dtbook DTD has two parameter entities defined that provide means to allow an individual book to modularly extend the content models for its block and inline parameter entities:

<!ENTITY % externalblock "">
<!ENTITY % externalinline "">

These parameter entities appear in corresponding block and inline content models. With this "" content they have no effect on books tagged to the dtbook DTD. In a book that needs a modular extension, values are given by redefinition in the internal subset of that book. This extends the dtbook DTD without having to change it.

A book can augment the dtbook DTD by including other declarations or parameter entity references in the internal subset of declarations. The internal subset may occur in square brackets following the ExternalID and before the concluding ">" of the initial DOCTYPE declaration that identifies the dtbook DTD.

Those additional markup declarations in the internal subset take preference over any in the dtbook DTD itself. The effective DTD is thereby augmented by the parameter entity values and any other declarations of the book's internal subset. When a given parameter entity declaration appears more than once in the external modules and the dtbook DTD, the first occurrence of that declaration is the one that takes effect, with modules in the internal subset being processed in order, before the DTD itself.

For example:

<!DOCTYPE dtbook SYSTEM
"dtbook.dtd"
[
<!ENTITY % dramaModule SYSTEM "drama.dtd">
%dramaModule;
<!ENTITY % externalblock "| drama">
<!ENTITY % externalinline "| stagedir">
]>

The "%dramaModule;" invocation causes all declarations made within dramaModule to become the initial part of the dtbook DTD. Within the book, the empty entity declarations for both % externalblock and for % externalinline are replaced by these new definitions. Thus the block element drama can appear wherever block elements may occur in dtbook. Similarly any actual content needed for %externalinline; (" | stagedir" is shown above) can appear in that extension to wherever %inline; appears in the DTD.

More than one module may be needed and included in a book, for example both poem and drama can appear in the internal subset of the book. For example, the internal subset of the book could contain:

<!DOCTYPE dtbook SYSTEM
"dtbook.dtd"
[
<!ENTITY % poemModule SYSTEM "poem.dtd">
%poemModule;
<!ENTITY % dramaModule SYSTEM "drama.dtd">
%dramaModule;
<!ENTITY % externalblock "| poem | stanza | verse | drama">
<!ENTITY % externalinline "| stagedir">
]>

Such external modules need to include the definitions of any parameter entities that are used in the modules since their definitions are needed before they can be expanded in their references. They cannot depend on parameter entities in the SystemLiteral or PubidLiteral.

Note that arbitrary external modules from other sources may not have all the needed attributes. XML allows augmentation of ATTLISTs in the internal subset. Additional attribute names can be added to an associated element type. Any redefinitions of a particular named attribute resulting from presence in the internal subset have precedence.

Also note that element name collisions may be possible, with names in those modules and associated content models overriding those in dtbook. For modules under control of dtbook design, such collisions can be avoided. A more general solution uses namespace prefixes to element and attribute names to clearly indicate the module source.

Following the document type declaration, the fully marked-up document appears, including tags from the external modules found in the internal subset. Declarations in the internal subset or in external entity references (such as %dramaModule;) referenced therein take precedence over like-named ones from the external entity containing the base DTD (that is, dtbook110.dtd). Thus the declarations from the module containing the drama and poem tags are included along with the tags in the base DTD (that is dtbook110.dtd) that are not duplicated or redefined in the drama module. So if a <p> tag is defined in the drama module, its definition overrides that of the <p> tag in dtbook. There is an exception: an ATTLIST for elementname that adds attributes from the internal subset augments the ATTLIST attributes with different attribute names in the ATTLIST of the same elementname in the dtbook110.dtd.

Note that tools and players processing any extended markup that affects navigation structure will need to know of those modular extensions.

The form above for augmenting the dtbook dtd through the document's internal subset does not require the XML namespace mechanism, with its namespace-specific prefix on element and attribute names to disambiguate any potential name collisions. However, use of XML namespaces [XML-NAMES] is not precluded.

Go to the Table of Contents.