Blob Blame History Raw
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta name="generator" content="HTML Tidy for Mac OS X (vers 31 October 2006 - Apple Inc. build 13), see www.w3.org" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>The DocBook Schema</title>
<link rel="stylesheet" href="http://www.oasis-open.org/spectools/css/oasis-cd.css" type="text/css" />
<meta name="generator" content="DocBook XSL Stylesheets V1.74.0-pre" />
<meta name="description" content=
"DocBook is a general purpose schema particularly well suited to books and papers about computer hardware and software (though it is by no means limited to these applications). The Version 5.0 release is a complete rewrite of DocBook in RELAX NG. The intent of this rewrite is to produce a schema that is true to the spirit of DocBook while simultaneously removing inconsistencies that have arisen as a natural consequence of DocBook's long, slow evolution. The Technical Committee has taken this opportunity to simplify a number of content models and tighten constraints where RELAX NG makes that possible. The Technical Committee provides the DocBook 5.0 schema in other schema languages, including W3C XML Schema and an XML DTD, but the RELAX NG Schema is now the normative schema." />
<meta name="tcProduct" content="docbook" />
<meta name="tcProductVersion" content="5.0" />
<meta name="tcArtifactType" content="spec" />
<meta name="tcStage" content="cd" />
<meta name="tcRevision" content="01" />
<meta name="tcLanguage" content="" />
<meta name="tcForm" content="html" />
<style type="text/css">
/*<![CDATA[*/
    span.paranum { color: #7F7F7F;
                   font-style: italic;
                   font-family: monospace;
                 }
    span.filename { font-weight: bold; }                 
/*]]>*/
</style>
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<div class="article" lang="en" xml:lang="en">
<div class="titlepage">
<p class="logo"><a href="http://www.oasis-open.org/"><img src="http://www.oasis-open.org/spectools/images/oasis.gif" alt="OASIS" border="0" /></a></p>
<h2 class="title"><a name="d4e1" id="d4e1"></a>The DocBook Schema</h2>
<h2>Committee Draft,&#160;06&#160;February&#160;2008</h2>
<dl>
<dt><span class="docid-heading">Document identifier:</span></dt>
<dd>
<p>docbook-5.0-spec-cd-01 (<a href="docbook-5.0-spec-cd-01.xml">.xml</a>, <a href="docbook-5.0-spec-cd-01.html">.html</a>, <a href="docbook-5.0-spec-cd-01.pdf">.pdf</a>)</p>
</dd>
<dt><span class="loc-heading">Location:</span></dt>
<dd>
<p><a href="http://www.oasis-open.org/docbook/specs">http://www.oasis-open.org/docbook/specs</a></p>
</dd>
<dt><span class="editor-heading">Editor:</span></dt>
<dd>
<p><span class="firstname">Norman</span> <span class="surname">Walsh</span>, Sun Microsystems, Inc.&#160;<code class="email">&lt;<a class="email" href="mailto:Norman.Walsh@Sun.COM">Norman.Walsh@Sun.COM</a>&gt;</code></p>
</dd>
<dt><span class="abstract-heading">Abstract:</span></dt>
<dd>
<p>DocBook is a general purpose <a class="xref" href="#xml-rec" title="???TITLE???">[xml-rec]</a> schema particularly well suited to books and papers about computer hardware and software (though it is by no means limited to these applications).</p>
<p>The Version 5.0 release is a complete rewrite of DocBook in RELAX NG. The intent of this rewrite is to produce a schema that is true to the spirit of DocBook while simultaneously removing inconsistencies that have arisen as a natural consequence of DocBook's long, slow evolution. The Technical Committee has taken this opportunity to simplify a number of content models and tighten constraints where RELAX NG makes that possible.</p>
<p>The Technical Committee provides the DocBook 5.0 schema in other schema languages, including W3C XML Schema and an XML DTD, but the RELAX NG Schema is now the normative schema.</p>
</dd>
<dt><span class="status-heading">Status:</span></dt>
<dd>
<p>This is a Committee Draft. It does not necessarily represent the consensus of the committee.</p>
<p>Please send comments on this specification to the <code class="email">&lt;<a class="email" href="mailto:docbook@lists.oasis-open.org">docbook@lists.oasis-open.org</a>&gt;</code> list. To subscribe, please use the <a class="link" href="http://lists.oasis-open.org/ob/adm.pl" target="_top">OASIS Subscription Manager</a>.</p>
<p>The errata page for this specification is at <a class="link" href="http://www.oasis-open.org/docbook/specs/docbook5-errata.html" target="_top">http://www.oasis-open.org/docbook/specs/docbook5-errata.html</a>.</p>
</dd>
</dl>
<p class="copyright">Copyright © 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 The Organization for the Advancement of Structured Information Standards [OASIS]. All Rights Reserved.</p>
</div>
<hr />
<div class="toc">
<h2>Table of Contents</h2>
<dl>
<dt><span class="section"><a href="#s.intro">1. Introduction</a></span></dt>
<dt><span class="section"><a href="#s.terminology">2. Terminology</a></span></dt>
<dt><span class="section"><a href="#s.docbook">3. The DocBook RELAX NG Schema V5.0</a></span></dt>
<dd>
<dl>
<dt><span class="section"><a href="#s.50">3.1. Changes in DocBook V5.0</a></span></dt>
<dt><span class="section"><a href="#s.50CR7">3.2. Changes in DocBook V5.0CR7</a></span></dt>
<dt><span class="section"><a href="#s.50CR6">3.3. Changes in DocBook V5.0CR6</a></span></dt>
<dt><span class="section"><a href="#s.50CR5">3.4. Changes in DocBook V5.0CR5</a></span></dt>
<dt><span class="section"><a href="#s.50CR4">3.5. Changes in DocBook V5.0CR4</a></span></dt>
<dt><span class="section"><a href="#s.50CR3">3.6. Changes in DocBook V5.0CR3</a></span></dt>
<dt><span class="section"><a href="#s.50CR2">3.7. Changes in DocBook V5.0CR2</a></span></dt>
<dt><span class="section"><a href="#s.50CR1">3.8. Changes in DocBook V5.0CR1</a></span></dt>
<dt><span class="section"><a href="#s.50b9">3.9. Changes in DocBook V5.0b9</a></span></dt>
<dt><span class="section"><a href="#s.50b8">3.10. Changes in DocBook V5.0b8</a></span></dt>
<dt><span class="section"><a href="#s.50b7">3.11. Changes in DocBook V5.0b7</a></span></dt>
<dt><span class="section"><a href="#s.50b6">3.12. Changes in DocBook V5.0b6</a></span></dt>
<dt><span class="section"><a href="#s.50b5">3.13. Changes in DocBook V5.0b5</a></span></dt>
<dt><span class="section"><a href="#s.50b4">3.14. Changes in DocBook V5.0b4</a></span></dt>
<dt><span class="section"><a href="#s.50b3">3.15. Changes in DocBook V5.0b3</a></span></dt>
<dt><span class="section"><a href="#s.50b2">3.16. Changes in DocBook V5.0b2</a></span></dt>
<dt><span class="section"><a href="#s.50b1">3.17. Changes in DocBook V5.0</a></span></dt>
</dl>
</dd>
<dt><span class="section"><a href="#s.relnotes">4. Release Notes</a></span></dt>
</dl>
<h3>Appendixes</h3>
<dl>
<dt><span class="appendix"><a href="#a.mimetype">A. The DocBook Media Type</a></span></dt>
<dd>
<dl>
<dt><span class="section"><a href="#media-type-registration">1. Registration of MIME media type application/docbook+xml</a></span></dt>
<dt><span class="section"><a href="#fragid">2. Fragment Identifiers</a></span></dt>
</dl>
</dd>
<dt><span class="appendix"><a href="#a.committee">B. OASIS DocBook Technical Committee (Non-Normative)</a></span></dt>
<dt><span class="appendix"><a href="#a.notices">C. Notices</a></span></dt>
<dt><span class="appendix"><a href="#a.ipr">D. Intellectual Property Rights</a></span></dt>
<dt><span class="appendix"><a href="#a.revhistory">E. Revision History</a></span></dt>
<dt><span class="bibliography"><a href="#references">References</a></span></dt>
</dl>
</div>
<hr />
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h2 class="title" style="clear: both"><a name="s.intro" id="s.intro"></a>1.&#160;Introduction</h2>
</div>
</div>
<p>DocBook is general purpose XML schema particularly well suited to books and papers about computer hardware and software (though it is by no means limited to these applications).</p>
<p>The <a class="link" href="mailto:docbook-tc@oasis-open.org" target="_top">DocBook Technical Committee</a> maintains the DocBook schema. Starting with V5.0, DocBook is normatively available as a <a class="xref" href="#relaxng" title="???TITLE???">[relaxng]</a> Schema (with some additional Schematron assertions). W3C XML Schema and Document Type Definition (DTD) versions are also available.</p>
<p>The Version 5.0 release is a complete rewrite. In programming-language terms, think of it as a code refactoring.</p>
<p>This rewrite introduces a large number of backwards-incompatible changes. Essentially all DocBook V4.x documents will have to be modified to validate against DocBook V5.0. An XSLT 1.0 stylesheet is provided to ease this transition.</p>
<p>The DocBook Technical Committee welcomes bug reports and requests for enhancement (RFEs) from the user community. The current list of outstanding requests is available through the <a class="link" href="http://sourceforge.net/" target="_top">SourceForge</a> <a class="link" href="http://sourceforge.net/tracker/?atid=384107&amp;group_id=21935&amp;func=browse" target="_top">tracker</a> interface. This is also the preferred mechanism for submitting new requests. Old RFEs, from a previous legacy tracking
system, are <a class="link" href="http://www.oasis-open.org/docbook/old-rfes.html" target="_top">archived</a> for reference.</p>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h2 class="title" style="clear: both"><a name="s.terminology" id="s.terminology"></a>2.&#160;Terminology</h2>
</div>
</div>
<p>The key words <em class="glossterm">must</em>, <em class="glossterm">must not</em>, <em class="glossterm">required</em>, <em class="glossterm">shall</em>, <em class="glossterm">shall not</em>, <em class="glossterm">should</em>, <em class="glossterm">should not</em>, <em class="glossterm">recommended</em>, <em class="glossterm">may</em>, and <em class="glossterm">optional</em> in this Committee Draft are to be interpreted as described in <a class="xref" href="#rfc2119" title="???TITLE???">[rfc2119]</a>.
Note that for reasons of style, these words are not capitalized in this document.</p>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h2 class="title" style="clear: both"><a name="s.docbook" id="s.docbook"></a>3.&#160;The DocBook RELAX NG Schema V5.0</h2>
</div>
</div>
<p>The DocBook <a class="link" href="http://www.oasis-open.org/docbook/rng/" target="_top">RELAX NG Schema</a> is distributed from the <a class="link" href="http://www.oasis-open.org/docbook/" target="_top">DocBook site</a> at <a class="link" href="http://www.oasis-open.org/" target="_top">OASIS</a>. DocBook is also available from the mirror on <a class="link" href="http://docbook.org/" target="_top">http://docbook.org/</a>.</p>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h3 class="title"><a name="s.50" id="s.50"></a>3.1.&#160;Changes in DocBook V5.0</h3>
</div>
</div>
<p>There are no user-visible changes in 5.0 (Public Review Draft 1).</p>
<p>This version of DocBook V5.0 will become the official Committee Specification version of DocBook V5.0 as soon as the Technical Committee balloting process is finished.</p>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h3 class="title"><a name="s.50CR7" id="s.50CR7"></a>3.2.&#160;Changes in DocBook V5.0CR7</h3>
</div>
</div>
<p>There are no user-visible changes in 5.0CR7. Some of the sources we reorganized to make future customization easier.</p>
<p>If no bug reports are received before the November 7, 2007 DocBook TC meeting, this version will become the official DocBook V5.0 release.</p>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h3 class="title"><a name="s.50CR6" id="s.50CR6"></a>3.3.&#160;Changes in DocBook V5.0CR6</h3>
</div>
</div>
<p>This release contains a few bug fixes and improvements over V5.0CR5.</p>
<div class="orderedlist">
<ol type="1">
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1759782" target="_top">RFE 1759782</a>: Allow <code class="sgmltag-element">uri</code> anywhere <code class="sgmltag-element">email</code> occurs.</p>
</li>
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1784312" target="_top">RFE 1784312</a>: Allow <code class="sgmltag-element">book</code> to be completely empty; allow <code class="sgmltag-element">personblurb</code> and <code class="sgmltag-element">titleabbrev</code> in bibliographic contexts.</p>
</li>
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1795884" target="_top">RFE 1795884</a>: Allow MathML in <code class="sgmltag-element">inlineequation</code>.</p>
</li>
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1800916" target="_top">RFE 1800916</a>: Allow <code class="sgmltag-element">keycap</code> (and friends) in <code class="sgmltag-element">userinput</code>.</p>
</li>
</ol>
</div>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h3 class="title"><a name="s.50CR5" id="s.50CR5"></a>3.4.&#160;Changes in DocBook V5.0CR5</h3>
</div>
</div>
<p>There are no user-visible changes in DocBook V5.0CR5.</p>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h3 class="title"><a name="s.50CR4" id="s.50CR4"></a>3.5.&#160;Changes in DocBook V5.0CR4</h3>
</div>
</div>
<p>This release contains a few improvements over V5.0CR3.</p>
<div class="orderedlist">
<ol type="1">
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1708032" target="_top">RFE 1708032</a>: Fixed pattern naming inconsistency; changed <code class="literal">db.href.attribute</code> to <code class="literal">db.href.attributes</code>.</p>
</li>
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1700154" target="_top">RFE 1700154</a>: Added <code class="sgmltag-attribute">sortas</code> to <code class="sgmltag-element">termdef</code>.</p>
</li>
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1686919" target="_top">RFE 1686919</a>: Added an <a class="link" href="http://www.nvdl.org/" target="_top">NVDL</a> rules file.</p>
</li>
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1705596" target="_top">RFE 1705596</a>: Aded <code class="literal">db.programming.inlines</code> (<code class="sgmltag-element">classname</code>, <code class="sgmltag-element">exceptionname</code>, <code class="sgmltag-element">function</code>, <code class="sgmltag-element">initializer</code>, <code class="sgmltag-element">interfacename</code>, <code class=
"sgmltag-element">methodname</code>, <code class="sgmltag-element">modifier</code>, <code class="sgmltag-element">ooclass</code>, <code class="sgmltag-element">ooexception</code>, <code class="sgmltag-element">oointerface</code>, <code class="sgmltag-element">parameter</code>, <code class="sgmltag-element">returnvalue</code>, <code class="sgmltag-element">type</code>, and <code class="sgmltag-element">varname</code>) to the content model of <code class="sgmltag-element">code</code>.</p>
</li>
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1689228" target="_top">RFE 1689228</a>: Fixed typo in Schematron assertion.</p>
</li>
</ol>
</div>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h3 class="title"><a name="s.50CR3" id="s.50CR3"></a>3.6.&#160;Changes in DocBook V5.0CR3</h3>
</div>
</div>
<p>This release contains a few improvements over V5.0CR2.</p>
<div class="orderedlist">
<ol type="1">
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1679775" target="_top">RFE 1679775</a>: Changed semantics of <code class="sgmltag-element">termdef</code>. A <code class="sgmltag-element">firstterm</code> is now required (instead of a <code class="sgmltag-element">glossterm</code> as in previous releases).</p>
</li>
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1673820" target="_top">RFE 1673820</a>: Adopted “<code class="uri">http://docbook.org/xlink/role/olink</code>” as an XLink role value (<code class="sgmltag-attribute">xlink:role</code>) to identify OLinks expressed using XLink attributes.</p>
</li>
<li>
<p>Allow <code class="sgmltag-element">info</code> in HTML tables.</p>
</li>
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1682917" target="_top">RFE 1682917</a>: Added <code class="sgmltag-attribute">pgwide</code> attribute to <code class="sgmltag-element">example</code>.</p>
</li>
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1644553" target="_top">RFE 1644553</a>: Added <code class="sgmltag-attribute">label</code> attribute to CALS and HTML tables.</p>
</li>
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1588693" target="_top">RFE 1588693</a>: Added an <code class="sgmltag-element">acknowledgements</code> element, peer to <code class="sgmltag-element">dedication</code>, replacing <code class="sgmltag-element">ackno</code> which had only been available at the end of <code class="sgmltag-element">article</code>.</p>
</li>
</ol>
</div>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h3 class="title"><a name="s.50CR2" id="s.50CR2"></a>3.7.&#160;Changes in DocBook V5.0CR2</h3>
</div>
</div>
<p>This release contains a few improvements over V5.0CR1 and a few bug fixes.</p>
<div class="orderedlist">
<ol type="1">
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1630203" target="_top">RFE 1630203</a>: Allow empty <code class="sgmltag-element">glossary</code>.</p>
</li>
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1627845" target="_top">RFE 1627845</a>: Allow optional <code class="sgmltag-element">caption</code> on CALS <code class="sgmltag-element">table</code> and <code class="sgmltag-element">informaltable</code>.</p>
</li>
<li>
<p>Related to <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1627845" target="_top">RFE 1627845</a>: Allow inlines in HTML <code class="sgmltag-element">table</code> <code class="sgmltag-element">caption</code>.</p>
</li>
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1589139" target="_top">RFE 1589139</a> (and <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1621178" target="_top">RFE 1621178</a>): Allow <code class="sgmltag-element">title</code> and <code class="sgmltag-element">titleabbrev</code> on <code class="sgmltag-element">qandaentry</code>.</p>
</li>
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1675932" target="_top">RFE 1675932</a>: Restore <code class="sgmltag-attvalue">localname</code>, <code class="sgmltag-attvalue">prefix</code> and <code class="sgmltag-attvalue">namespace</code> as <code class="sgmltag-attribute">class</code> attribute values on <code class="sgmltag-element">tag</code>.</p>
</li>
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1669465" target="_top">RFE 1669465</a>: Schematron rules should refer to <code class="literal">@xml:id</code>, not <code class="literal">@id</code>.</p>
</li>
</ol>
</div>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h3 class="title"><a name="s.50CR1" id="s.50CR1"></a>3.8.&#160;Changes in DocBook V5.0CR1</h3>
</div>
</div>
<p>This release contains a few improvements over V5.0b9 and a few bug fixes.</p>
<div class="orderedlist">
<ol type="1">
<li>
<p>Made the content model of <code class="sgmltag-element">blockquote</code> broader. It was restricted too far in the transition to 5.0.</p>
</li>
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1575537" target="_top">RFE 1575537</a>: Allow markup from other namespaces in <code class="sgmltag-element">info</code>.</p>
</li>
<li>
<p>Fix the content model of <code class="sgmltag-element">ackno</code> so that it's the same as DocBook 4.x.</p>
</li>
<li>
<p>Fix bug where <code class="sgmltag-element">caption</code> was accidentally allowed in CALS tables.</p>
</li>
</ol>
</div>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h3 class="title"><a name="s.50b9" id="s.50b9"></a>3.9.&#160;Changes in DocBook V5.0b9</h3>
</div>
</div>
<p>This release contains several improvements over V5.0b8.</p>
<div class="orderedlist">
<ol type="1">
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1537424" target="_top">RFE 1537424</a>: Allow <code class="sgmltag-element">jobtitle</code> inline.</p>
</li>
<li>
<p>Fixed typo; <code class="sgmltag-element">title</code>s are now required on <code class="sgmltag-element">task</code>, consistent with DocBook V4.x.</p>
</li>
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1554914" target="_top">RFE 1554914</a>: Make <code class="sgmltag-attribute">targetdoc</code> attribute on <code class="sgmltag-element">olink</code> optional.</p>
</li>
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1568417" target="_top">RFE 1568417</a>: Don't generate duplicate Schematron rules.</p>
</li>
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1568419" target="_top">RFE 1568419</a>: Inverted Schematron assertion for <code class="sgmltag-element">termdef</code>.</p>
</li>
</ol>
</div>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h3 class="title"><a name="s.50b8" id="s.50b8"></a>3.10.&#160;Changes in DocBook V5.0b8</h3>
</div>
</div>
<p>This release contains several improvements over V5.0b7.</p>
<div class="orderedlist">
<ol type="1">
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1535166" target="_top">RFE 1535166</a>: Improve the data types of attributes in DocBook.</p>
</li>
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1549632" target="_top">RFE 1549632</a>: The <code class="sgmltag-element">inlineequation</code> element should use <code class="sgmltag-element">inlinemediaobject</code> not <code class="sgmltag-element">mediaobject</code>.</p>
</li>
<li>
<p>A number of small documentation improvements in the area of attribute and attribute enumerations.</p>
</li>
</ol>
</div>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h3 class="title"><a name="s.50b7" id="s.50b7"></a>3.11.&#160;Changes in DocBook V5.0b7</h3>
</div>
</div>
<p>This release contains several improvements over V5.0b6.</p>
<div class="orderedlist">
<ol type="1">
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1520074" target="_top">RFE 1520074</a>: Define separate patterns for all the effectivity attributes to make customization easier.</p>
</li>
<li>
<p>Attempted to address <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1512505" target="_top">RFE 1512505</a>: Added an <code class="sgmltag-attribute">audience</code> effectivity attribute.</p>
</li>
<li>
<p>Rename <code class="sgmltag-attribute">audience</code>, <code class="sgmltag-attribute">origin</code>, and <code class="sgmltag-attribute">level</code> on <code class="sgmltag-element">simplemsgentry</code> to <code class="sgmltag-attribute">msgaud</code>, <code class="sgmltag-attribute">msgorig</code>, and <code class="sgmltag-attribute">msglevel</code>, respectively. This is a better parallel with the descendent elements of <code class="sgmltag-element">msgentry</code> and avoids a conflict with the
newly introduced <code class="sgmltag-attribute">audience</code> effectivity attribute.</p>
</li>
<li>
<p>Added <code class="sgmltag-attribute">startinglinenumber</code> attribute to <code class="sgmltag-element">orderedlist</code>.</p>
</li>
<li>
<p>Fixed bug where one of <code class="sgmltag-attribute">fileref</code> or <code class="sgmltag-attribute">entityref</code> was required on <code class="sgmltag-element">imagedata</code> even when the content was inline MathML or SVG.</p>
</li>
</ol>
</div>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h3 class="title"><a name="s.50b6" id="s.50b6"></a>3.12.&#160;Changes in DocBook V5.0b6</h3>
</div>
</div>
<p>This release contains several improvements over V5.0b5.</p>
<div class="orderedlist">
<ol type="1">
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1434294" target="_top">RFE 1434294</a>: Allow MathML and SVG in <code class="sgmltag-element">imagedata</code>. Note: SVG is no longer allowed as an <span class="emphasis"><em>alternative</em></span> to <code class="sgmltag-element">imagedata</code>. The alignment, scaling, and other presentational attributes are on <code class="sgmltag-element">imagedata</code> so it seems more
reasonable to allow SVG and MathML inside it.</p>
</li>
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1468921" target="_top">RFE 1468921</a>: Add <code class="sgmltag-element">person</code> element. Added <code class="sgmltag-element">person</code> and <code class="sgmltag-element">org</code>.</p>
</li>
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1306027" target="_top">RFE 1306027</a>: Support for aspect-oriented programming. Allow <code class="sgmltag-element">modifier</code> to appear in more places, and allow <code class="sgmltag-attribute">xml:space</code> on <code class="sgmltag-element">modifier</code>.</p>
</li>
<li>
<p>Added <code class="literal">db.publishing.inlines</code> to <code class="literal">db.bibliographic.elements</code> so that, for example, <code class="sgmltag-element">foreignphrase</code> can be used in <code class="sgmltag-element">bibliomixed</code>.</p>
</li>
</ol>
</div>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h3 class="title"><a name="s.50b5" id="s.50b5"></a>3.13.&#160;Changes in DocBook V5.0b5</h3>
</div>
</div>
<p>This release contains several improvements over V5.0b4.</p>
<div class="orderedlist">
<ol type="1">
<li>
<p>Restored the <code class="sgmltag-attribute">class</code> attribute on <code class="sgmltag-element">refmiscinfo</code> (removing the <code class="sgmltag-attribute">type</code> attribute <a class="link" href="#refmiscinfo">introduced</a> in <a class="link" href="#s.50b4" title="3.14.&#160;Changes in DocBook V5.0b4">V5.0b4</a>). The <code class="sgmltag-attribute">class</code> attribute is now an enumerated list with the standard <code class="sgmltag-attribute">otherclass</code> extension point.</p>
</li>
<li>
<p>Added <code class="sgmltag-element">parameter</code> to <code class="literal">db.technical.inlines</code>. This allows <code class="sgmltag-element">parameter</code> to occur in places like <code class="sgmltag-element">userinput</code> and <code class="sgmltag-element">computeroutput</code>.</p>
</li>
<li>
<p>Allow XInclude elements in <code class="sgmltag-element">info</code> elements (in the <span class="filename">docbookxi</span> schemas).</p>
</li>
<li>
<p>Fixed bugs in the build process that resulted in broken DTD versions of beta 4 and earlier betas.</p>
</li>
</ol>
</div>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h3 class="title"><a name="s.50b4" id="s.50b4"></a>3.14.&#160;Changes in DocBook V5.0b4</h3>
</div>
</div>
<p>This release contains several improvements over V5.0b3.</p>
<div class="orderedlist">
<ol type="1">
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1416903" target="_top">RFE 1416903</a>: Added a <code class="sgmltag-element">cover</code> element to hold additional material for document covers. Updated reference documentation.</p>
</li>
<li>
<p>Corrected a typo in the list of values allowed on the <code class="sgmltag-attribute">class</code> attribute of <code class="sgmltag-element">biblioid</code>: changed “pubnumber” to “pubsnumber” (note the “s”). This is consistent with its use as a replacement for the <code class="sgmltag-element">pubsnumber</code> tag that has been removed in DocBook V5.0.</p>
</li>
<li>
<p>Fixed a bug in the content model of the various “<code class="sgmltag-element">info</code>” elements. In previous beta releases, the title-related elements (<code class="sgmltag-element">title</code>, <code class="sgmltag-element">titleabbrev</code>, and <code class="sgmltag-element">subtitle</code>) were erroneously required to appear first. The requirement is only that they appear exactly or at most once, depending on the context.</p>
</li>
<li>
<p>Renamed the “<code class="sgmltag-attvalue">sgmlcomment</code>” attribute value of the <code class="sgmltag-attribute">class</code> attribute of <code class="sgmltag-element">tag</code>. There's no significant difference between XML and SGML comments and the “SGML” name implies that there ought to be an “<code class="sgmltag-attvalue">xmlcomment</code>” value, which there is not. The new value is simply “<code class="sgmltag-attvalue">comment</code>”.</p>
</li>
<li>
<p>Renamed the “<code class="sgmltag-attribute">class</code>” attribute of <code class="sgmltag-element">refmiscinfo</code>. The DocBook semantics of class attributes is that they have enumerated values. This attribute should always have been called “<code class="sgmltag-attribute">type</code>” as it is now.</p>
</li>
<li>
<p>Updated <code class="sgmltag-attribute">renderas</code> on <code class="sgmltag-element">bridgehead</code> and <code class="sgmltag-attribute">class</code> on <code class="sgmltag-element">othercredit</code> to have “attribute/otherattribute” co-constraints. (In other words, if you select “other” for <code class="sgmltag-attribute">renderas</code> on <code class="sgmltag-element">bridgehead</code> or <code class="sgmltag-attribute">class</code> on <code class="sgmltag-element">othercredit</code>, you
have to also provide a value for <code class="sgmltag-attribute">otherrenderas</code> or <code class="sgmltag-attribute">othercredit</code>, respectively.</p>
</li>
<li>
<p>Changed <code class="sgmltag-attribute">width</code> attribute in media objects to be “text” instead of “<code class="code">xs:integer</code>”.</p>
</li>
<li>
<p>Fixed bug in the build process that resulted in unusable XML Schema versions of beta&#160;2 and beta&#160;3.</p>
</li>
<li>
<p>Improved reference documentation for attributes on many elements.</p>
</li>
</ol>
</div>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h3 class="title"><a name="s.50b3" id="s.50b3"></a>3.15.&#160;Changes in DocBook V5.0b3</h3>
</div>
</div>
<p>This release contains several small improvements over V5.0b2.</p>
<div class="orderedlist">
<ol type="1">
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1358844" target="_top">RFE 1358844</a>: allow multiple <code class="sgmltag-element">imageobject</code>s inside an <code class="sgmltag-element">imageobjectco</code>. Updated reference documentation.</p>
</li>
<li>
<p>Restored default values to the <code class="sgmltag-attribute">type</code> attribute on <code class="sgmltag-element">simplelist</code> and the <code class="sgmltag-attribute">choice</code> and <code class="sgmltag-attribute">rep</code> attributes on <code class="sgmltag-element">methodparam</code>, <code class="sgmltag-element">arg</code>, and <code class="sgmltag-element">group</code>. Fixed a bug in <code class="sgmltag-element">paramdef</code> where <code class="sgmltag-attvalue">plain</code> was
accidentally allowed as a <code class="sgmltag-attribute">choice</code>. These defaults are reflected in the generated XML DTD as well.</p>
</li>
<li>
<p>Reduced the content model of <code class="sgmltag-element">blockquote</code> which seemed way too broad.</p>
</li>
<li>
<p>Improved reference documentation for attributes on many elements.</p>
</li>
</ol>
</div>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h3 class="title"><a name="s.50b2" id="s.50b2"></a>3.16.&#160;Changes in DocBook V5.0b2</h3>
</div>
</div>
<p>This release addresses several bugs identified in V5.0b1.</p>
<div class="orderedlist">
<ol type="1">
<li>
<p>When SVG or MathML are used, allow more than one element from the respective namespace to be used in the appropriate location.</p>
</li>
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1356238" target="_top">RFE 1356238</a>: the <code class="sgmltag-attribute">xrefstyle</code> attribute on <code class="sgmltag-element">olink</code> is now “<code class="literal">text</code>” rather than “<code class="literal">xsd:IDREF</code>”.</p>
</li>
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1380477" target="_top">RFE 1380477</a>: Make <code class="sgmltag-attribute">xml:id</code> optional on <code class="sgmltag-element">area</code>s within <code class="sgmltag-element">areaset</code>; allow linking attributes on <code class="sgmltag-element">areaset</code>; establish the semantics that an <code class="sgmltag-element">area</code> inside an <code class=
"sgmltag-element">areaset</code> inherits its linking attributes from the <code class="sgmltag-element">areaset</code> if it doesn't have linking attributes of its own.</p>
</li>
<li>
<p>Allow <code class="sgmltag-element">alt</code> inside <code class="sgmltag-element">equation</code>, <code class="sgmltag-element">informalequation</code>, and <code class="sgmltag-element">inlineequation</code>.</p>
</li>
<li>
<p>Fixed <a class="link" href="http://sourceforge.net/tracker/index.php?func=detail&amp;group_id=21935&amp;atid=384107&amp;aid=1356254" target="_top">RFE 1356254</a>: <code class="uri">dbforms.rnc</code> schema now supports the HTML form elements.</p>
</li>
</ol>
</div>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h3 class="title"><a name="s.50b1" id="s.50b1"></a>3.17.&#160;Changes in DocBook V5.0</h3>
</div>
</div>
<p>In V5.0, DocBook has been rewritten as a native RELAX NG grammar. The goals of this redesign were to produce a schema that:</p>
<div class="orderedlist">
<ol type="1">
<li>
<p>“feels like” DocBook. Most existing documents should still be valid or it should be possible to transform them in simple, mechanical ways into valid documents.</p>
</li>
<li>
<p>enforces as many constraints as possible in the schema. Some additional constraints are expressed with Schematron rules.</p>
</li>
<li>
<p>cleans up the content models.</p>
</li>
<li>
<p>gives users the flexibility to extend or subset the schema in an easy and straightforward way.</p>
</li>
<li>
<p>can be used to generate XML DTD and W3C XML Schema versions of DocBook.</p>
</li>
</ol>
</div>
<p>Under the ordinary operating rules of DocBook evolution, the only backwards incompatible changes that could be made in DocBook V5.0 were those announced in DocBook V4.0. In light of the fact that this is a complete rewrite, the Technical Committee gave itself the freedom to make "<span class="quote">unannounced</span>" backwards-incompatible changes for this one release.</p>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h4 class="title"><a name="s.remvlegacy" id="s.remvlegacy"></a>3.17.1.&#160;Removing Legacy Elements</h4>
</div>
</div>
<p>A number of elements have been removed from DocBook. Many of these have been replaced by simpler, more versatile alternatives. Others have simply been removed because they are not believed to be widely used.</p>
<div class="table"><a name="elem.rmv" id="elem.rmv"></a>
<p class="title"><b>Table&#160;1.&#160;DocBook Element Changes</b></p>
<div class="table-contents">
<table summary="DocBook Element Changes" style="border-collapse: collapse;border-top: 0.5pt solid ; border-bottom: 0.5pt solid ; border-left: 0.5pt solid ; border-right: 0.5pt solid ;">
<colgroup>
<col width="50%" />
<col width="50%" /></colgroup>
<thead>
<tr>
<th style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ;">Element(s)</th>
<th style="border-bottom: 0.5pt solid ;">Explanation</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ;" valign="top">
<p><span class="simplelist"><code class="sgmltag-element">articleinfo</code>, <code class="sgmltag-element">bookinfoinfo</code>, …, <code class="sgmltag-element"><em class="replaceable"><code>*</code></em>info</code></span></p>
</td>
<td style="border-bottom: 0.5pt solid ;" valign="top">
<p>Replaced by <code class="sgmltag-element">info</code>, see <a class="xref" href="#s.unif.info" title="3.17.3.&#160;Uniform Info Elements">Section&#160;3.17.3, “Uniform Info Elements”</a>.</p>
</td>
</tr>
<tr>
<td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ;" valign="top">
<p><span class="simplelist"><code class="sgmltag-element">authorblurb</code></span></p>
</td>
<td style="border-bottom: 0.5pt solid ;" valign="top">
<p>Replaced by <code class="sgmltag-element">personblurb</code>. This more general name better reflects the fact that it is available in elements other than <code class="sgmltag-element">author</code> (e.g., <code class="sgmltag-element">editor</code>).</p>
</td>
</tr>
<tr>
<td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ;" valign="top">
<p><span class="simplelist"><code class="sgmltag-element">collabname</code>, <code class="sgmltag-element">corpauthor</code>, <code class="sgmltag-element">corpcredit</code>, <code class="sgmltag-element">corpname</code></span></p>
</td>
<td style="border-bottom: 0.5pt solid ;" valign="top">
<p>Replaced by <code class="sgmltag-element">orgname</code> and the updated content models of <code class="sgmltag-element">author</code>, <code class="sgmltag-element">editor</code>, and <code class="sgmltag-element">othercredit</code>.</p>
</td>
</tr>
<tr>
<td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ;" valign="top">
<p><span class="simplelist"><code class="sgmltag-element">graphic</code>, <code class="sgmltag-element">graphicco</code>, <code class="sgmltag-element">inlinegraphic</code>, <code class="sgmltag-element">mediaobjectco</code></span></p>
</td>
<td style="border-bottom: 0.5pt solid ;" valign="top">
<p>Removed in favor of <code class="sgmltag-element">mediaobject</code> and <code class="sgmltag-element">inlinemediaobject</code>.</p>
</td>
</tr>
<tr>
<td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ;" valign="top">
<p><span class="simplelist"><code class="sgmltag-element">isbn</code>, <code class="sgmltag-element">issn</code>, <code class="sgmltag-element">pubsnumber</code></span></p>
</td>
<td style="border-bottom: 0.5pt solid ;" valign="top">
<p>Replaced by <code class="sgmltag-element">biblioid</code>.</p>
</td>
</tr>
<tr>
<td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ;" valign="top">
<p><span class="simplelist"><code class="sgmltag-element">lot</code>, <code class="sgmltag-element">lotentry</code>, <code class="sgmltag-element">tocback</code>, <code class="sgmltag-element">tocchap</code>, <code class="sgmltag-element">tocfront</code>, <code class="sgmltag-element">toclevel1</code>, <code class="sgmltag-element">toclevel2</code>, <code class="sgmltag-element">toclevel3</code>, <code class="sgmltag-element">toclevel4</code>, <code class="sgmltag-element">toclevel5</code>, <code class=
"sgmltag-element">tocpart</code></span></p>
</td>
<td style="border-bottom: 0.5pt solid ;" valign="top">
<p>Replaced by simpler <code class="sgmltag-element">tocdiv</code> element.</p>
</td>
</tr>
<tr>
<td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ;" valign="top">
<p><span class="simplelist"><code class="sgmltag-element">ulink</code></span></p>
</td>
<td style="border-bottom: 0.5pt solid ;" valign="top">
<p>Replaced by ubiquitous linking, see <a class="xref" href="#s.ubiq.link" title="3.17.9.&#160;Universal Linking">Section&#160;3.17.9, “Universal Linking”</a>.</p>
</td>
</tr>
<tr>
<td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ;" valign="top">
<p><span class="simplelist"><code class="sgmltag-element">sgmltag</code></span></p>
</td>
<td style="border-bottom: 0.5pt solid ;" valign="top">
<p>Replaced by <code class="sgmltag-element">tag</code>.</p>
</td>
</tr>
<tr>
<td style="border-right: 0.5pt solid ;" valign="top">
<p><span class="simplelist"><code class="sgmltag-element">action</code>, <code class="sgmltag-element">beginpage</code>, <code class="sgmltag-element">highlights</code>, <code class="sgmltag-element">interface</code>, <code class="sgmltag-element">invpartnumber</code>, <code class="sgmltag-element">medialabel</code>, <code class="sgmltag-element">modespec</code>, <code class="sgmltag-element">structfield</code>, <code class="sgmltag-element">structname</code></span></p>
</td>
<td style="" valign="top">
<p>Removed.</p>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<br class="table-break" /></div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h4 class="title"><a name="s.smaller.cm" id="s.smaller.cm"></a>3.17.2.&#160;Smaller Content Models</h4>
</div>
</div>
<p>The content models of many inlines have been reduced, sometimes drastically. The parameter entity customization of DocBook V4.x and previous versions resulted in very broad content models for some inlines.</p>
<p>Consider, for example, <code class="sgmltag-element">command</code> in DocBook V4.4:</p>
<pre class="programlisting">
command ::=
   (#PCDATA|link|olink|ulink|action|application|classname|methodname|
   interfacename|exceptionname|ooclass|oointerface|ooexception|
   command|computeroutput|database|email|envar|errorcode|errorname|
   errortype|errortext|filename|function|guibutton|guiicon|guilabel|
   guimenu|guimenuitem|guisubmenu|hardware|interface|keycap|keycode|
   keycombo|keysym|literal|code|constant|markup|medialabel|
   menuchoice|mousebutton|option|optional|parameter|prompt|property|
   replaceable|returnvalue|sgmltag|structfield|structname|symbol|
   systemitem|uri|token|type|userinput|varname|nonterminal|anchor|
   remark|subscript|superscript|inlinegraphic|inlinemediaobject|
   indexterm|beginpage)*
</pre>
<p>In DocBook V5.0, <code class="sgmltag-element">command</code> has a much smaller, more rational content model:</p>
<pre class="programlisting">
command ::=

  * Zero or more of:
      o <span class="emphasis"><em>text</em></span>
      o alt
      o anchor
      o annotation
      o biblioref
      o indexterm
      o inlinemediaobject
      o link
      o phrase
      o remark
      o replaceable
      o subscript
      o superscript
      o xref
</pre>
<p>DocBook V5.0 may be overzealous in its simplification of content models. The Technical Committee expects to adjust these simplifications during user testing. Users are encouraged to report places where formally valid documents can no longer be made valid because content models have been reduced.</p>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h4 class="title"><a name="s.unif.info" id="s.unif.info"></a>3.17.3.&#160;Uniform Info Elements</h4>
</div>
</div>
<p>DocBook V4.x has <code class="sgmltag-element">setinfo</code>, <code class="sgmltag-element">bookinfo</code>, <code class="sgmltag-element">chapterinfo</code>, <code class="sgmltag-element">appendixinfo</code>, <code class="sgmltag-element">sectioninfo</code>, etc. DocBook would be smaller and simpler if it had a single <code class="sgmltag-element">info</code> element in all these places.</p>
<p>There’s an historical reason for the large number of unique names: customizers might very well want to adjust the content models of info elements at different levels. For example, a copyright statement might be required at the book level, or an author forbidden at the sub-section level. In DTDs, there’s only one content model allowed per element name, so in order to support independent customization, each info element must have a different name.</p>
<p>In RELAX NG, no such limitation exists. We can use patterns to achieve both a single <code class="sgmltag-element">info</code> element while still allowing customizers to change its content model in different contexts. In light of this functionality, we've replaced all the various flavors of info with a single element name.</p>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h4 class="title"><a name="s.req.titles" id="s.req.titles"></a>3.17.4.&#160;Required Titles</h4>
</div>
</div>
<p>DocBook V5.0 enforces the constraint that titles are required on <code class="sgmltag-element">article</code>s and other large structures where they are effectively optional in DocBook V4.x. (They are optional only in the sense that DTDs are unable to enforce the constraint that they be present, the documentation has always made it clear that titles were required.)</p>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h4 class="title"><a name="s.req.version" id="s.req.version"></a>3.17.5.&#160;Required Version</h4>
</div>
</div>
<p>In DocBook V4.x and earlier, the presence of a document type declaration served as a mechanism for identifying the DocBook version of a document. Although the declaration was not actually required, it was present in the vast majority of DocBook documents.</p>
<p>In RELAX NG, no similar declaration exists. Although a document type declaration might still be present, it seems likely that this will not usually be the case.</p>
<p>Nevertheless, downstream processors may benefit from some indication of the version of DocBook being used. As a result DocBook V5.0 adds a new <code class="sgmltag-attribute">version</code> attribute which <em class="glossterm">must</em> be present on the document element of a DocBook document.</p>
<p>Mixing versions is explicitly allowed and the version attribute may be used on other elements as well. This might be the case, for example, in a compound document constructed from multiple documents each with its own version.</p>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h4 class="title"><a name="s.co-constraints" id="s.co-constraints"></a>3.17.6.&#160;Co-Constraints</h4>
</div>
</div>
<p>DocBook V5.0 enforces attribute co-constraints such as the <code class="sgmltag-attribute">class</code>/<code class="sgmltag-attribute">otherclass</code> attributes on <code class="sgmltag-element">biblioid</code>.</p>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h4 class="title"><a name="s.tables" id="s.tables"></a>3.17.7.&#160;Improved HTML and CALS Table Support</h4>
</div>
</div>
<p>In DocBook V5.0, HTML tables and CALS tables are independently specified. Where the DTD of DocBook V4.x allows for incoherent mixing of the two models, DocBook V5.0 forbids such mixtures.</p>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h4 class="title"><a name="s.datatypes" id="s.datatypes"></a>3.17.8.&#160;Data Types</h4>
</div>
</div>
<p>DocBook V5.0 adds a few simple data types. For example, the <code class="sgmltag-attribute">cols</code> attribute on <code class="sgmltag-element">tgroup</code> must be a positive integer.</p>
<p>Some of these constraints, such as the requirement that elements like <code class="sgmltag-element">pubdate</code> include a proper date-time type, may prove controversial. Users are encouraged to report places where formally valid documents can no longer be made valid because data types have been introduced.</p>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h4 class="title"><a name="s.ubiq.link" id="s.ubiq.link"></a>3.17.9.&#160;Universal Linking</h4>
</div>
</div>
<p>Starting with DocBook V5.0, the <code class="sgmltag-attribute">linkend</code> and <code class="sgmltag-attribute">xlink:href</code> attributes are available on almost all elements.</p>
<p>The <code class="sgmltag-attribute">linkend</code> attribute provides an ID/IDREF link within the document. The <code class="sgmltag-attribute">xlink:href</code> attribute provides a URI-based link.</p>
<p>The <code class="sgmltag-element">ulink</code> element has been removed from DocBook as URI-based links can now be achieved directly from the appropriate inline (such as <code class="sgmltag-element">productname</code> or <code class="sgmltag-element">command</code>). For instances where no specific semantic inline is needed, <code class="sgmltag-element">link</code> is still available. Where <code class="sgmltag-element">link</code> used to be limited to ID/IDREF linking, it now sports an <code class=
"sgmltag-attribute">xlink:href</code> attribute as well.</p>
<p>Support for <a class="link" href="http://www.w3.org/TR/xlink11/#extended-link" target="_top">extended links</a> are provided through the <code class="sgmltag-element">extendedlink</code>, <code class="sgmltag-element">arc</code>, and <code class="sgmltag-element">locator</code> elements.</p>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h4 class="title"><a name="s.annot" id="s.annot"></a>3.17.10.&#160;Improved Accessibility</h4>
</div>
</div>
<p>Accessibility is improved by allowing both inline and block annotations in most context. The <code class="sgmltag-element">alt</code> element is now allowed in most places for inline annotations, the new element <code class="sgmltag-element">annotation</code> supports block annotations.</p>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h4 class="title"><a name="s.toc" id="s.toc"></a>3.17.11.&#160;Simplified Table of Contents Markup</h4>
</div>
</div>
<p>The DocBook V4.x markup for Tables of Contents, or more generally for Lists of Titles, was complex and had not evolved quite in step with the rest of DocBook. In DocBook V5.0, it has all been replaced by a quite simple, recursive <code class="sgmltag-element">toc</code>/<code class="sgmltag-element">tocdiv</code>/<code class="sgmltag-element">tocentry</code> structure.</p>
<p>While most Tables of Contents and Lists of Titles are generated automatically and authors never have to produce markup for them by hand, this simplified content model should make it easier for authors to generate them when necessary. One possible application of hand-authored <code class="sgmltag-element">toc</code> markup is to generate custom hierarchies which can be assembled on-the-fly from a library of topics marked up in DocBook.</p>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h4 class="title"><a name="s.schematron" id="s.schematron"></a>3.17.12.&#160;Extra-Grammatical Constraints</h4>
</div>
</div>
<p>Grammar based validation technologies (like RELAX NG) and rule based validation technologies (like Schematron) are naturally complementary. Mixing them allows us to play to the strengths of each without stretching either to enforce constraints that they aren’t readily designed to enforce.</p>
<p>For example, DocBook NG requires that the root element of a document have an explicit version attribute. Because there are a great many elements that can be root elements in DocBook, and because they can almost all appear as descendants of a root element as well, it would be tedious to express this constraint in RELAX NG. But it is easy in a rule-based schema language.</p>
<p>DocBook V5.0 uses Schematron where appropriate.</p>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h4 class="title"><a name="s.custom" id="s.custom"></a>3.17.13.&#160;Customization</h4>
</div>
</div>
<p>From the very beginning, one of the goals of DocBook has been that users should be able to produce customizations that are either subsets of extensions of DocBook.</p>
<p>Customization is possible in DocBook V4.x, but because of the intricacies of XML DTD syntax and the complex and highly stylized patterns of parameter entitiy usage in DocBook, it's not as easy as we would like it to be.</p>
<p>In DocBook V5.0, we hope to take advantage of RELAX NGs more robust design (and it's lack of pernicious determinism rules) to make customization easier.</p>
<p>Three schema design patterns get us most of the way there.</p>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h5 class="title"><a name="s.patnames" id="s.patnames"></a>3.17.13.1.&#160;Logical Groupings</h5>
</div>
</div>
<p>DocBook elements, particularly the inlines, can be divided into broad classes: general purpose, technical, error-related, operating-system related, bibliographic, publishing, etc. In DocBook V5.0, these are collected together in named patterns.</p>
<p>To add a new inline, <code class="literal">endpoint</code> for example, to the list of technical inlines, one need only extend the appropriate pattern. If an element should appear in several classes, they can all be extended in the same way:</p>
<pre class="programlisting">
db.technical.inlines |= endpoint
db.programming.inlines |= endpoint
db.os.inlines |= endpoint
</pre>
<p>Much the same concept was used in DocBook V4.x, where instead of patterns we had parameter entities. However, the constraints of DTD validation severely limit the circumstances under which an element can appear twice in a content model. That meant that adding an element to one parameter entity might make it an error to add it to another. Such constraints do not exist in RELAX NG which greatly simplifies the customization.</p>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h5 class="title"><a name="s.elemdefs" id="s.elemdefs"></a>3.17.13.2.&#160;Element Definitions</h5>
</div>
</div>
<p>Each element in DocBook V5.0 is defined by its own pattern. To change the content model of an element, only that pattern need be redefined. To remove an element from DocBook, that pattern can be redefined as "<span class="quote"><code class="literal">notAllowed</code></span>".</p>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h5 class="title"><a name="s.attrdefs" id="s.attrdefs"></a>3.17.13.3.&#160;Attribute Definitions</h5>
</div>
</div>
<p>Each attribute list in DocBook V5.0 is defined by its own pattern. To change the list of attributes available on an element, only that pattern need be redefined. To remove all the attributes, that pattern can be redefined as "<span class="quote"><code class="literal">empty</code></span>".</p>
</div>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h4 class="title"><a name="s.conversion" id="s.conversion"></a>3.17.14.&#160;Conversion</h4>
</div>
</div>
<p>There’s an XSLT 1.0 stylesheet for performing conversion from DocBook V4.x to DocBook V5.0. Presented with a valid DocBook V4.x document, it attempts to produce a valid DocBook V5.0 document.</p>
<p>It succeeds entirely automatically for the most part, though human intervention is suggested for constructs that might have multiple interpretations (and therefore multiple possible transformations).</p>
<p>Users are encouraged to report documents that are not successfully transformed by the stylesheet, especially those which do have valid DocBook V5.0 representations.</p>
</div>
</div>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h2 class="title" style="clear: both"><a name="s.relnotes" id="s.relnotes"></a>4.&#160;Release Notes</h2>
</div>
</div>
<p>See <a class="link" href="http://www.relaxng.org/" target="_top">http://www.relaxng.org/</a> for a list of tools that can validate an XML document using RELAX NG. Note that not all products are capable of evaluating the Schematron assertions in the schema.</p>
</div>
<div class="appendix" lang="en" xml:lang="en">
<h2 class="title" style="clear: both"><a name="a.mimetype" id="a.mimetype"></a>A.&#160;The DocBook Media Type</h2>
<p>This appendix registers a new MIME media type, "<span class="quote"><code class="code">application/docbook+xml</code></span>".</p>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h3 class="title"><a name="media-type-registration" id="media-type-registration"></a>1.&#160;Registration of MIME media type application/docbook+xml</h3>
</div>
</div>
<div class="variablelist">
<dl>
<dt><span class="term">MIME media type name:</span></dt>
<dd>
<p><code class="code">application</code></p>
</dd>
<dt><span class="term">MIME subtype name:</span></dt>
<dd>
<p><code class="code">docbook+xml</code></p>
</dd>
<dt><span class="term">Required parameters:</span></dt>
<dd>
<p>None.</p>
</dd>
<dt><span class="term">Optional parameters:</span></dt>
<dd>
<div class="variablelist">
<dl>
<dt><span class="term"><code class="code">charset</code></span></dt>
<dd>
<p>This parameter has identical semantics to the <code class="code">charset</code> parameter of the <code class="code">application/xml</code> media type as specified in <a class="xref" href="#rfc3023" title="???TITLE???">[rfc3023]</a> or its successors.</p>
</dd>
</dl>
</div>
</dd>
<dt><span class="term">Encoding considerations:</span></dt>
<dd>
<p>By virtue of DocBook XML content being XML, it has the same considerations when sent as "<span class="quote"><code class="code">application/docbook+xml</code></span>" as does XML. See <a class="xref" href="#rfc3023" title="???TITLE???">[rfc3023]</a>, Section 3.2.</p>
</dd>
<dt><span class="term">Security considerations:</span></dt>
<dd>
<p>Several DocBook elements may refer to arbitrary URIs. In this case, the security issues of RFC 2396, section 7, should be considered.</p>
</dd>
<dt><span class="term">Interoperability considerations:</span></dt>
<dd>
<p>None.</p>
</dd>
<dt><span class="term">Published specification:</span></dt>
<dd>
<p>This media type registration is for DocBook documents as described by <a class="xref" href="#bib.docbooktdg5" title="???TITLE???">[bib.docbooktdg5]</a>.</p>
</dd>
<dt><span class="term">Applications which use this media type:</span></dt>
<dd>
<p>There is no experimental, vendor specific, or personal tree predecessor to "<span class="quote"><code class="code">application/docbook+xml</code></span>", reflecting the fact that no applications currently recognize it. This new type is being registered in order to allow for the deployment of DocBook on the World Wide Web, as a first class XML application.</p>
</dd>
<dt><span class="term">Additional information:</span></dt>
<dd>
<div class="variablelist">
<dl>
<dt><span class="term">Magic number(s):</span></dt>
<dd>
<p>There is no single initial octet sequence that is always present in DocBook documents.</p>
</dd>
<dt><span class="term">File extension(s):</span></dt>
<dd>
<p>DocBook documents are most often identified with the extension "<span class="quote"><span class="filename">.xml</span></span>".</p>
</dd>
<dt><span class="term">Macintosh File Type Code(s):</span></dt>
<dd>
<p>TEXT</p>
</dd>
</dl>
</div>
</dd>
<dt><span class="term">Person &amp; email address to contact for further information:</span></dt>
<dd>
<p>Norman Walsh, <code class="email">&lt;<a class="email" href="mailto:ndw@nwalsh.com">ndw@nwalsh.com</a>&gt;</code>.</p>
</dd>
<dt><span class="term">Intended usage:</span></dt>
<dd>
<p>COMMON</p>
</dd>
<dt><span class="term">Author/Change controller:</span></dt>
<dd>
<p>The DocBook specification is a work product of the DocBook Technical Committee at OASIS.</p>
</dd>
</dl>
</div>
</div>
<div class="section" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<h3 class="title"><a name="fragid" id="fragid"></a>2.&#160;Fragment Identifiers</h3>
</div>
</div>
<p>For documents labeled as "<span class="quote"><code class="code">application/docbook+xml</code></span>", the fragment identifier notation is exactly that for "<span class="quote"><code class="code">application/xml</code></span>", as specified in <a class="xref" href="#rfc3023" title="???TITLE???">[rfc3023]</a> or its successors.</p>
</div>
</div>
<div class="appendix" lang="en" xml:lang="en">
<h2 class="title" style="clear: both"><a name="a.committee" id="a.committee"></a>B.&#160;OASIS DocBook Technical Committee (Non-Normative)</h2>
<p>The following individuals were members of the committee during the formulation of this Committee Draft:</p>
<div class="itemizedlist">
<ul type="disc" compact="compact">
<li>
<p>Steve Cogorno, Sun Microsystems</p>
</li>
<li>
<p>Gary Cornelius, Individual</p>
</li>
<li>
<p>Adam Di Carlo, Debian</p>
</li>
<li>
<p>Paul Grosso, Arbortext</p>
</li>
<li>
<p>Dick Hamilton, Individual</p>
</li>
<li>
<p>Nancy Harrison, IBM</p>
</li>
<li>
<p>Scott Hudson, Individual</p>
</li>
<li>
<p>Mark Johnson, Debian</p>
</li>
<li>
<p>Gershon Joseph, Tech-Tav Documentation Ltd.</p>
</li>
<li>
<p>Jirka Kosek, Individual</p>
</li>
<li>
<p>Larry Rowland, Hewlett-Packard</p>
</li>
<li>
<p>Michael Smith, Individual</p>
</li>
<li>
<p>Robert Stayton, Individual (Secretary)</p>
</li>
<li>
<p>Norman Walsh, Sun Microsystems (Chair, Editor)</p>
</li>
</ul>
</div>
</div>
<div class="appendix" lang="en" xml:lang="en">
<h2 class="title" style="clear: both"><a name="a.notices" id="a.notices"></a>C.&#160;Notices</h2>
<p>Copyright © The Organization for the Advancement of Structured Information Standards [OASIS] 2001, 2002, 2003, 2004, 2005. All Rights Reserved.</p>
<p>OASIS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on OASIS's procedures with respect to rights in OASIS specifications can be found at the OASIS website. Copies of
claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementors or users of this specification, can be obtained from the OASIS Executive Director.</p>
<p>OASIS invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to implement this specification. Please address the information to the OASIS Executive Director.</p>
<p>This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to
OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document must be followed, or as required to translate it into languages other than English.</p>
<p>The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.</p>
<p>This document and the information contained herein is provided on an "<span class="quote">AS IS</span>" basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.</p>
<p>OASIS has been notified of intellectual property rights claimed in regard to some or all of the contents of this specification. For more information consult the online list of claimed rights.</p>
</div>
<div class="appendix" lang="en" xml:lang="en">
<h2 class="title" style="clear: both"><a name="a.ipr" id="a.ipr"></a>D.&#160;Intellectual Property Rights</h2>
<p>For information on whether any patents have been disclosed that may be essential to implementing this specification, and any offers of patent licensing terms, please refer to the Intellectual Property Rights section of the DocBook web page (<a class="link" href="http://www.oasis-open.org/committees/docbook/" target="_top">http://www.oasis-open.org/committees/docbook/</a>)</p>
</div>
<div class="appendix" lang="en" xml:lang="en">
<h2 class="title" style="clear: both"><a name="a.revhistory" id="a.revhistory"></a>E.&#160;Revision History</h2>
<div class="revhistory">
<table border="1" width="100%" summary="Revision history">
<tr>
<td align="left">Revision Committee Draft “Public Review Draft 1”</td>
<td align="left">6 February 2008</td>
</tr>
<tr>
<td align="left">Revision Working Draft “Candidate Release 7”</td>
<td align="left">28 September 2007</td>
</tr>
<tr>
<td align="left">Revision Working Draft “Candidate Release 6”</td>
<td align="left">27 September 2007</td>
</tr>
<tr>
<td align="left">Revision Working Draft “Candidate Release 1”</td>
<td align="left">21 December 2006</td>
</tr>
<tr>
<td align="left">Revision Working Draft “Beta 9”</td>
<td align="left">26 October 2006</td>
</tr>
<tr>
<td align="left">Revision Working Draft “Beta 8”</td>
<td align="left">26 September 2006</td>
</tr>
<tr>
<td align="left">Revision Working Draft “Beta 7”</td>
<td align="left">21 July 2006</td>
</tr>
<tr>
<td align="left">Revision Working Draft “Beta 6”</td>
<td align="left">2 June 2006</td>
</tr>
<tr>
<td align="left">Revision Working Draft “Beta 5”</td>
<td align="left">16 April 2006</td>
</tr>
<tr>
<td align="left">Revision Working Draft “Beta 4”</td>
<td align="left">9 March 2006</td>
</tr>
<tr>
<td align="left">Revision Working Draft “Beta 3”</td>
<td align="left">1 February 2006</td>
</tr>
<tr>
<td align="left">Revision Working Draft “Beta 2”</td>
<td align="left">12 January 2006</td>
</tr>
<tr>
<td align="left">Revision Working Draft “Beta 1”</td>
<td align="left">27 October 2005</td>
</tr>
<tr>
<td align="left">Revision Working Draft “Alpha 1”</td>
<td align="left">26 June 2005</td>
</tr>
</table>
</div>
</div>
<div class="bibliography">
<div class="titlepage">
<div>
<h2 class="title"><a name="references" id="references"></a>References</h2>
</div>
</div>
<div class="bibliodiv">
<h3 class="title"><a name="normative.refs" id="normative.refs"></a>Normative</h3>
<div class="bibliomixed"><a name="relaxng" id="relaxng"></a>
<p>[relaxng] Error: no bibliography entry: relaxng found in http://docbook.sourceforge.net/release/bibliography/bibliography.xml</p>
</div>
<div class="bibliomixed"><a name="xml-rec" id="xml-rec"></a>
<p>[xml-rec] Error: no bibliography entry: xml-rec found in http://docbook.sourceforge.net/release/bibliography/bibliography.xml</p>
</div>
<div class="bibliomixed"><a name="xlink11" id="xlink11"></a>
<p>[xlink11] Error: no bibliography entry: xlink11 found in http://docbook.sourceforge.net/release/bibliography/bibliography.xml</p>
</div>
<div class="bibliomixed"><a name="rfc2119" id="rfc2119"></a>
<p>[rfc2119] Error: no bibliography entry: rfc2119 found in http://docbook.sourceforge.net/release/bibliography/bibliography.xml</p>
</div>
<div class="bibliomixed"><a name="rfc3023" id="rfc3023"></a>
<p>[rfc3023] Error: no bibliography entry: rfc3023 found in http://docbook.sourceforge.net/release/bibliography/bibliography.xml</p>
</div>
<div class="bibliomixed"><a name="bib.docbooktdg5" id="bib.docbooktdg5"></a>
<p>[bib.docbooktdg5] Error: no bibliography entry: bib.docbooktdg5 found in http://docbook.sourceforge.net/release/bibliography/bibliography.xml</p>
</div>
</div>
<div class="bibliodiv">
<h3 class="title"><a name="non-normative.refs" id="non-normative.refs"></a>Non-Normative</h3>
<div class="bibliomixed"><a name="iso8879" id="iso8879"></a>
<p>[iso8879] Error: no bibliography entry: iso8879 found in http://docbook.sourceforge.net/release/bibliography/bibliography.xml</p>
</div>
<div class="bibliomixed"><a name="xmlschema-1" id="xmlschema-1"></a>
<p>[xmlschema-1] Error: no bibliography entry: xmlschema-1 found in http://docbook.sourceforge.net/release/bibliography/bibliography.xml</p>
</div>
<div class="bibliomixed"><a name="xmlschema-2" id="xmlschema-2"></a>
<p>[xmlschema-2] Error: no bibliography entry: xmlschema-2 found in http://docbook.sourceforge.net/release/bibliography/bibliography.xml</p>
</div>
<div class="bibliomixed"><a name="schematron2000" id="schematron2000"></a>
<p>[schematron2000] Error: no bibliography entry: schematron2000 found in http://docbook.sourceforge.net/release/bibliography/bibliography.xml</p>
</div>
</div>
</div>
</div>
</body>
</html>