| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773 | 
							- <?xml version="1.0" encoding="UTF-8"?>
 
- <!--
 
-   This file is part of DocBook V5.0
 
-   
 
-   Copyright 1992-2008 HaL Computer Systems, Inc.,
 
-   O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
 
-   Corporation, Norman Walsh, Sun Microsystems, Inc., and the
 
-   Organization for the Advancement of Structured Information
 
-   Standards (OASIS).
 
-   
 
-   Release: $Id: index.rnc 8931 2010-10-20 13:29:20Z nwalsh $
 
-   
 
-   Permission to use, copy, modify and distribute the DocBook schema
 
-   and its accompanying documentation for any purpose and without fee
 
-   is hereby granted in perpetuity, provided that the above copyright
 
-   notice and this paragraph appear in all copies. The copyright
 
-   holders make no representation about the suitability of the schema
 
-   for any purpose. It is provided "as is" without expressed or implied
 
-   warranty.
 
-   
 
-   If you modify the DocBook schema in any way, label your schema as a
 
-   variant of DocBook. See the reference documentation
 
-   (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
 
-   for more information.
 
-   
 
-   Please direct all questions, bug reports, or suggestions for changes
 
-   to the docbook@lists.oasis-open.org mailing list. For more
 
-   information, see http://www.oasis-open.org/docbook/.
 
-   
 
-   ======================================================================
 
- -->
 
- <grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
 
-   <start combine="choice">
 
-     <choice>
 
-       <ref name="db.setindex"/>
 
-       <ref name="db.index"/>
 
-       <ref name="db.indexdiv"/>
 
-     </choice>
 
-   </start>
 
-   <define name="db.ubiq.inlines" combine="choice">
 
-     <ref name="db.indexterm"/>
 
-   </define>
 
-   <define name="db.indexing.inlines" combine="choice">
 
-     <ref name="db.indexterm"/>
 
-   </define>
 
-   <define name="db.nopara.blocks" combine="choice">
 
-     <ref name="db.indexterm"/>
 
-   </define>
 
-   <define name="db.navigation.components" combine="choice">
 
-     <ref name="db.index"/>
 
-   </define>
 
-   <define name="db.setindex.components" combine="choice">
 
-     <ref name="db.setindex"/>
 
-   </define>
 
-   <define name="db.info.elements" combine="choice">
 
-     <ref name="db.itermset"/>
 
-   </define>
 
-   <!-- ====================================================================== -->
 
-   <define name="db.significance.enumeration">
 
-     <choice>
 
-       <value>normal</value>
 
-       <a:documentation>Normal</a:documentation>
 
-       <value>preferred</value>
 
-       <a:documentation>Preferred</a:documentation>
 
-     </choice>
 
-   </define>
 
-   <define name="db.significance.attribute">
 
-     <attribute name="significance">
 
-       <db:refpurpose>Specifies the significance of the term</db:refpurpose>
 
-       <ref name="db.significance.enumeration"/>
 
-     </attribute>
 
-   </define>
 
-   <define name="db.zone.attribute">
 
-     <attribute name="zone">
 
-       <db:refpurpose>Specifies the IDs of the elements to which this term applies</db:refpurpose>
 
-       <data type="IDREFS"/>
 
-     </attribute>
 
-   </define>
 
-   <define name="db.indexterm.pagenum.attribute">
 
-     <attribute name="pagenum">
 
-       <db:refpurpose>Indicates the page on which this index term occurs in some version of the printed document</db:refpurpose>
 
-     </attribute>
 
-   </define>
 
-   <define name="db.scope.enumeration">
 
-     <choice>
 
-       <value>all</value>
 
-       <a:documentation>All indexes</a:documentation>
 
-       <value>global</value>
 
-       <a:documentation>The global index (as for a combined index of a set of books)</a:documentation>
 
-       <value>local</value>
 
-       <a:documentation>The local index (the index for this document only)</a:documentation>
 
-     </choice>
 
-   </define>
 
-   <define name="db.scope.attribute">
 
-     <attribute name="scope">
 
-       <db:refpurpose>Specifies the scope of the index term</db:refpurpose>
 
-       <ref name="db.scope.enumeration"/>
 
-     </attribute>
 
-   </define>
 
-   <define name="db.sortas.attribute">
 
-     <attribute name="sortas">
 
-       <db:refpurpose>Specifies the string by which the term is to be sorted; if unspecified, the term content is used</db:refpurpose>
 
-     </attribute>
 
-   </define>
 
-   <define name="db.index.type.attribute">
 
-     <attribute name="type">
 
-       <db:refpurpose>Specifies the target index for this term</db:refpurpose>
 
-     </attribute>
 
-   </define>
 
-   <!-- ====================================================================== -->
 
-   <div>
 
-     <db:refname>itermset</db:refname>
 
-     <db:refpurpose>A set of index terms in the meta-information of a document</db:refpurpose>
 
-     <define name="db.itermset.role.attribute">
 
-       <attribute name="role"/>
 
-     </define>
 
-     <define name="db.itermset.attlist">
 
-       <interleave>
 
-         <optional>
 
-           <ref name="db.itermset.role.attribute"/>
 
-         </optional>
 
-         <ref name="db.common.attributes"/>
 
-         <ref name="db.common.linking.attributes"/>
 
-       </interleave>
 
-     </define>
 
-     <define name="db.itermset">
 
-       <element name="itermset">
 
-         <ref name="db.itermset.attlist"/>
 
-         <oneOrMore>
 
-           <ref name="db.indexterm.singular"/>
 
-         </oneOrMore>
 
-       </element>
 
-     </define>
 
-   </div>
 
-   <!-- ====================================================================== -->
 
-   <define name="db.indexterm.contentmodel">
 
-     <optional>
 
-       <ref name="db.primary"/>
 
-     </optional>
 
-     <optional>
 
-       <choice>
 
-         <group>
 
-           <ref name="db.secondary"/>
 
-           <optional>
 
-             <choice>
 
-               <group>
 
-                 <ref name="db.tertiary"/>
 
-                 <optional>
 
-                   <choice>
 
-                     <ref name="db.see"/>
 
-                     <oneOrMore>
 
-                       <ref name="db.seealso"/>
 
-                     </oneOrMore>
 
-                   </choice>
 
-                 </optional>
 
-               </group>
 
-               <ref name="db.see"/>
 
-               <oneOrMore>
 
-                 <ref name="db.seealso"/>
 
-               </oneOrMore>
 
-             </choice>
 
-           </optional>
 
-         </group>
 
-         <ref name="db.see"/>
 
-         <oneOrMore>
 
-           <ref name="db.seealso"/>
 
-         </oneOrMore>
 
-       </choice>
 
-     </optional>
 
-   </define>
 
-   <!-- ====================================================================== -->
 
-   <div>
 
-     <db:refname>indexterm</db:refname>
 
-     <db:refpurpose>A wrapper for an indexed term</db:refpurpose>
 
-     <define name="db.indexterm.singular.role.attribute">
 
-       <attribute name="role"/>
 
-     </define>
 
-     <define name="db.indexterm.singular.class.attribute">
 
-       <attribute name="class">
 
-         <db:refpurpose>Identifies the class of index term</db:refpurpose>
 
-         <value>singular</value>
 
-         <a:documentation>A singular index term</a:documentation>
 
-       </attribute>
 
-     </define>
 
-     <define name="db.indexterm.singular.attlist">
 
-       <interleave>
 
-         <optional>
 
-           <ref name="db.indexterm.singular.role.attribute"/>
 
-         </optional>
 
-         <ref name="db.common.attributes"/>
 
-         <ref name="db.common.linking.attributes"/>
 
-         <optional>
 
-           <ref name="db.significance.attribute"/>
 
-         </optional>
 
-         <optional>
 
-           <ref name="db.zone.attribute"/>
 
-         </optional>
 
-         <optional>
 
-           <ref name="db.indexterm.pagenum.attribute"/>
 
-         </optional>
 
-         <optional>
 
-           <ref name="db.scope.attribute"/>
 
-         </optional>
 
-         <optional>
 
-           <ref name="db.index.type.attribute"/>
 
-         </optional>
 
-         <optional>
 
-           <ref name="db.indexterm.singular.class.attribute"/>
 
-         </optional>
 
-       </interleave>
 
-     </define>
 
-     <define name="db.indexterm.singular">
 
-       <element name="indexterm">
 
-         <ref name="db.indexterm.singular.attlist"/>
 
-         <ref name="db.indexterm.contentmodel"/>
 
-       </element>
 
-     </define>
 
-   </div>
 
-   <!-- ====================================================================== -->
 
-   <div>
 
-     <db:refname>indexterm</db:refname>
 
-     <db:refpurpose>A wrapper for an indexed term that covers a range</db:refpurpose>
 
-     <define name="db.indexterm.startofrange.role.attribute">
 
-       <attribute name="role"/>
 
-     </define>
 
-     <define name="db.indexterm.startofrange.class.attribute">
 
-       <attribute name="class">
 
-         <db:refpurpose>Identifies the class of index term</db:refpurpose>
 
-         <value>startofrange</value>
 
-         <a:documentation>The start of a range</a:documentation>
 
-       </attribute>
 
-     </define>
 
-     <define name="db.indexterm.startofrange.attlist">
 
-       <interleave>
 
-         <optional>
 
-           <ref name="db.indexterm.startofrange.role.attribute"/>
 
-         </optional>
 
-         <ref name="db.common.attributes"/>
 
-         <ref name="db.common.linking.attributes"/>
 
-         <optional>
 
-           <ref name="db.significance.attribute"/>
 
-         </optional>
 
-         <optional>
 
-           <ref name="db.zone.attribute"/>
 
-         </optional>
 
-         <optional>
 
-           <ref name="db.indexterm.pagenum.attribute"/>
 
-         </optional>
 
-         <optional>
 
-           <ref name="db.scope.attribute"/>
 
-         </optional>
 
-         <optional>
 
-           <ref name="db.index.type.attribute"/>
 
-         </optional>
 
-         <ref name="db.indexterm.startofrange.class.attribute"/>
 
-       </interleave>
 
-     </define>
 
-     <define name="db.indexterm.startofrange">
 
-       <element name="indexterm">
 
-         <ref name="db.indexterm.startofrange.attlist"/>
 
-         <ref name="db.indexterm.contentmodel"/>
 
-       </element>
 
-     </define>
 
-   </div>
 
-   <!-- ====================================================================== -->
 
-   <div>
 
-     <db:refname>indexterm</db:refname>
 
-     <db:refpurpose>Identifies the end of a range associated with an indexed term</db:refpurpose>
 
-     <define name="db.indexterm.endofrange.role.attribute">
 
-       <attribute name="role"/>
 
-     </define>
 
-     <define name="db.indexterm.endofrange.class.attribute">
 
-       <attribute name="class">
 
-         <db:refpurpose>Identifies the class of index term</db:refpurpose>
 
-         <value>endofrange</value>
 
-         <a:documentation>The end of a range</a:documentation>
 
-       </attribute>
 
-     </define>
 
-     <define name="db.indexterm.endofrange.startref.attribute">
 
-       <attribute name="startref">
 
-         <db:refpurpose>Points to the start of the range</db:refpurpose>
 
-         <data type="IDREF"/>
 
-       </attribute>
 
-     </define>
 
-     <define name="db.indexterm.endofrange.attlist">
 
-       <interleave>
 
-         <optional>
 
-           <ref name="db.indexterm.endofrange.role.attribute"/>
 
-         </optional>
 
-         <ref name="db.common.attributes"/>
 
-         <ref name="db.common.linking.attributes"/>
 
-         <ref name="db.indexterm.endofrange.class.attribute"/>
 
-         <ref name="db.indexterm.endofrange.startref.attribute"/>
 
-       </interleave>
 
-     </define>
 
-     <define name="db.indexterm.endofrange">
 
-       <element name="indexterm">
 
-         <ref name="db.indexterm.endofrange.attlist"/>
 
-         <empty/>
 
-       </element>
 
-     </define>
 
-   </div>
 
-   <!-- ====================================================================== -->
 
-   <div>
 
-     <db:refname>indexterm</db:refname>
 
-     <db:refpurpose>A wrapper for terms to be indexed</db:refpurpose>
 
-     <define name="db.indexterm">
 
-       <choice>
 
-         <ref name="db.indexterm.singular"/>
 
-         <ref name="db.indexterm.startofrange"/>
 
-         <ref name="db.indexterm.endofrange"/>
 
-       </choice>
 
-     </define>
 
-   </div>
 
-   <!-- ====================================================================== -->
 
-   <div>
 
-     <db:refname>primary</db:refname>
 
-     <db:refpurpose>The primary word or phrase under which an index term should be sorted</db:refpurpose>
 
-     <define name="db.primary.role.attribute">
 
-       <attribute name="role"/>
 
-     </define>
 
-     <define name="db.primary.attlist">
 
-       <interleave>
 
-         <optional>
 
-           <ref name="db.primary.role.attribute"/>
 
-         </optional>
 
-         <ref name="db.common.attributes"/>
 
-         <ref name="db.common.linking.attributes"/>
 
-         <optional>
 
-           <ref name="db.sortas.attribute"/>
 
-         </optional>
 
-       </interleave>
 
-     </define>
 
-     <define name="db.primary">
 
-       <element name="primary">
 
-         <ref name="db.primary.attlist"/>
 
-         <zeroOrMore>
 
-           <ref name="db.all.inlines"/>
 
-         </zeroOrMore>
 
-       </element>
 
-     </define>
 
-   </div>
 
-   <!-- ====================================================================== -->
 
-   <div>
 
-     <db:refname>secondary</db:refname>
 
-     <db:refpurpose>A secondary word or phrase in an index term</db:refpurpose>
 
-     <define name="db.secondary.role.attribute">
 
-       <attribute name="role"/>
 
-     </define>
 
-     <define name="db.secondary.attlist">
 
-       <interleave>
 
-         <optional>
 
-           <ref name="db.secondary.role.attribute"/>
 
-         </optional>
 
-         <ref name="db.common.attributes"/>
 
-         <ref name="db.common.linking.attributes"/>
 
-         <optional>
 
-           <ref name="db.sortas.attribute"/>
 
-         </optional>
 
-       </interleave>
 
-     </define>
 
-     <define name="db.secondary">
 
-       <element name="secondary">
 
-         <ref name="db.secondary.attlist"/>
 
-         <zeroOrMore>
 
-           <ref name="db.all.inlines"/>
 
-         </zeroOrMore>
 
-       </element>
 
-     </define>
 
-   </div>
 
-   <!-- ====================================================================== -->
 
-   <div>
 
-     <db:refname>tertiary</db:refname>
 
-     <db:refpurpose>A tertiary word or phrase in an index term</db:refpurpose>
 
-     <define name="db.tertiary.role.attribute">
 
-       <attribute name="role"/>
 
-     </define>
 
-     <define name="db.tertiary.attlist">
 
-       <interleave>
 
-         <optional>
 
-           <ref name="db.tertiary.role.attribute"/>
 
-         </optional>
 
-         <ref name="db.common.attributes"/>
 
-         <ref name="db.common.linking.attributes"/>
 
-         <optional>
 
-           <ref name="db.sortas.attribute"/>
 
-         </optional>
 
-       </interleave>
 
-     </define>
 
-     <define name="db.tertiary">
 
-       <element name="tertiary">
 
-         <ref name="db.tertiary.attlist"/>
 
-         <zeroOrMore>
 
-           <ref name="db.all.inlines"/>
 
-         </zeroOrMore>
 
-       </element>
 
-     </define>
 
-   </div>
 
-   <!-- ====================================================================== -->
 
-   <div>
 
-     <db:refname>see</db:refname>
 
-     <db:refpurpose>Part of an index term directing the reader instead to another entry in the index</db:refpurpose>
 
-     <define name="db.see.role.attribute">
 
-       <attribute name="role"/>
 
-     </define>
 
-     <define name="db.see.attlist">
 
-       <interleave>
 
-         <optional>
 
-           <ref name="db.see.role.attribute"/>
 
-         </optional>
 
-         <ref name="db.common.attributes"/>
 
-         <ref name="db.common.linking.attributes"/>
 
-       </interleave>
 
-     </define>
 
-     <define name="db.see">
 
-       <element name="see">
 
-         <ref name="db.see.attlist"/>
 
-         <zeroOrMore>
 
-           <ref name="db.all.inlines"/>
 
-         </zeroOrMore>
 
-       </element>
 
-     </define>
 
-   </div>
 
-   <!-- ====================================================================== -->
 
-   <div>
 
-     <db:refname>seealso</db:refname>
 
-     <db:refpurpose>Part of an index term directing the reader also to another entry in the index</db:refpurpose>
 
-     <define name="db.seealso.role.attribute">
 
-       <attribute name="role"/>
 
-     </define>
 
-     <define name="db.seealso.attlist">
 
-       <interleave>
 
-         <optional>
 
-           <ref name="db.seealso.role.attribute"/>
 
-         </optional>
 
-         <ref name="db.common.attributes"/>
 
-         <ref name="db.common.linking.attributes"/>
 
-       </interleave>
 
-     </define>
 
-     <define name="db.seealso">
 
-       <element name="seealso">
 
-         <ref name="db.seealso.attlist"/>
 
-         <zeroOrMore>
 
-           <ref name="db.all.inlines"/>
 
-         </zeroOrMore>
 
-       </element>
 
-     </define>
 
-   </div>
 
-   <!-- ====================================================================== -->
 
-   <div>
 
-     <db:refname>index</db:refname>
 
-     <db:refpurpose>An index to a book or part of a book</db:refpurpose>
 
-     <define name="db.index.status.attribute">
 
-       <ref name="db.status.attribute"/>
 
-     </define>
 
-     <define name="db.index.role.attribute">
 
-       <attribute name="role"/>
 
-     </define>
 
-     <define name="db.index.attlist">
 
-       <interleave>
 
-         <optional>
 
-           <ref name="db.index.role.attribute"/>
 
-         </optional>
 
-         <ref name="db.common.attributes"/>
 
-         <ref name="db.common.linking.attributes"/>
 
-         <optional>
 
-           <ref name="db.label.attribute"/>
 
-         </optional>
 
-         <optional>
 
-           <ref name="db.index.status.attribute"/>
 
-         </optional>
 
-         <optional>
 
-           <ref name="db.index.type.attribute"/>
 
-         </optional>
 
-       </interleave>
 
-     </define>
 
-     <define name="db.index.info">
 
-       <ref name="db._info"/>
 
-     </define>
 
-     <!--
 
-       Yes, db.indexdiv* and db.indexentry*; that way an <index/> is valid.
 
-       Authors can use an empty index to indicate where a generated index should
 
-       appear.
 
-     -->
 
-     <define name="db.index">
 
-       <element name="index">
 
-         <ref name="db.index.attlist"/>
 
-         <ref name="db.index.info"/>
 
-         <zeroOrMore>
 
-           <ref name="db.all.blocks"/>
 
-         </zeroOrMore>
 
-         <choice>
 
-           <zeroOrMore>
 
-             <ref name="db.indexdiv"/>
 
-           </zeroOrMore>
 
-           <zeroOrMore>
 
-             <ref name="db.indexentry"/>
 
-           </zeroOrMore>
 
-           <ref name="db.segmentedlist"/>
 
-         </choice>
 
-       </element>
 
-     </define>
 
-   </div>
 
-   <!--  ====================================================================== -->
 
-   <div>
 
-     <db:refname>setindex</db:refname>
 
-     <db:refpurpose>An index to a set of books</db:refpurpose>
 
-     <define name="db.setindex.status.attribute">
 
-       <ref name="db.status.attribute"/>
 
-     </define>
 
-     <define name="db.setindex.role.attribute">
 
-       <attribute name="role"/>
 
-     </define>
 
-     <define name="db.setindex.attlist">
 
-       <interleave>
 
-         <optional>
 
-           <ref name="db.setindex.role.attribute"/>
 
-         </optional>
 
-         <ref name="db.common.attributes"/>
 
-         <ref name="db.common.linking.attributes"/>
 
-         <optional>
 
-           <ref name="db.label.attribute"/>
 
-         </optional>
 
-         <optional>
 
-           <ref name="db.setindex.status.attribute"/>
 
-         </optional>
 
-         <optional>
 
-           <ref name="db.index.type.attribute"/>
 
-         </optional>
 
-       </interleave>
 
-     </define>
 
-     <define name="db.setindex.info">
 
-       <ref name="db._info"/>
 
-     </define>
 
-     <define name="db.setindex">
 
-       <element name="setindex">
 
-         <ref name="db.setindex.attlist"/>
 
-         <ref name="db.setindex.info"/>
 
-         <zeroOrMore>
 
-           <ref name="db.all.blocks"/>
 
-         </zeroOrMore>
 
-         <choice>
 
-           <zeroOrMore>
 
-             <ref name="db.indexdiv"/>
 
-           </zeroOrMore>
 
-           <zeroOrMore>
 
-             <ref name="db.indexentry"/>
 
-           </zeroOrMore>
 
-         </choice>
 
-       </element>
 
-     </define>
 
-   </div>
 
-   <!-- ====================================================================== -->
 
-   <div>
 
-     <db:refname>indexdiv</db:refname>
 
-     <db:refpurpose>A division in an index</db:refpurpose>
 
-     <define name="db.indexdiv.status.attribute">
 
-       <ref name="db.status.attribute"/>
 
-     </define>
 
-     <define name="db.indexdiv.role.attribute">
 
-       <attribute name="role"/>
 
-     </define>
 
-     <define name="db.indexdiv.attlist">
 
-       <interleave>
 
-         <optional>
 
-           <ref name="db.indexdiv.role.attribute"/>
 
-         </optional>
 
-         <ref name="db.common.attributes"/>
 
-         <ref name="db.common.linking.attributes"/>
 
-         <optional>
 
-           <ref name="db.label.attribute"/>
 
-         </optional>
 
-         <optional>
 
-           <ref name="db.indexdiv.status.attribute"/>
 
-         </optional>
 
-       </interleave>
 
-     </define>
 
-     <define name="db.indexdiv.info">
 
-       <ref name="db._info.title.req"/>
 
-     </define>
 
-     <define name="db.indexdiv">
 
-       <element name="indexdiv">
 
-         <ref name="db.indexdiv.attlist"/>
 
-         <ref name="db.indexdiv.info"/>
 
-         <zeroOrMore>
 
-           <ref name="db.all.blocks"/>
 
-         </zeroOrMore>
 
-         <choice>
 
-           <oneOrMore>
 
-             <ref name="db.indexentry"/>
 
-           </oneOrMore>
 
-           <ref name="db.segmentedlist"/>
 
-         </choice>
 
-       </element>
 
-     </define>
 
-   </div>
 
-   <!-- ====================================================================== -->
 
-   <div>
 
-     <db:refname>indexentry</db:refname>
 
-     <db:refpurpose>An entry in an index</db:refpurpose>
 
-     <define name="db.indexentry.role.attribute">
 
-       <attribute name="role"/>
 
-     </define>
 
-     <define name="db.indexentry.attlist">
 
-       <interleave>
 
-         <optional>
 
-           <ref name="db.indexentry.role.attribute"/>
 
-         </optional>
 
-         <ref name="db.common.attributes"/>
 
-         <ref name="db.common.linking.attributes"/>
 
-       </interleave>
 
-     </define>
 
-     <define name="db.indexentry">
 
-       <element name="indexentry">
 
-         <ref name="db.indexentry.attlist"/>
 
-         <ref name="db.primaryie"/>
 
-         <zeroOrMore>
 
-           <choice>
 
-             <ref name="db.seeie"/>
 
-             <ref name="db.seealsoie"/>
 
-           </choice>
 
-         </zeroOrMore>
 
-         <zeroOrMore>
 
-           <ref name="db.secondaryie"/>
 
-           <zeroOrMore>
 
-             <choice>
 
-               <ref name="db.seeie"/>
 
-               <ref name="db.seealsoie"/>
 
-               <ref name="db.tertiaryie"/>
 
-             </choice>
 
-           </zeroOrMore>
 
-         </zeroOrMore>
 
-       </element>
 
-     </define>
 
-   </div>
 
-   <!-- ====================================================================== -->
 
-   <div>
 
-     <db:refname>primaryie</db:refname>
 
-     <db:refpurpose>A primary term in an index entry, not in the text</db:refpurpose>
 
-     <define name="db.primaryie.role.attribute">
 
-       <attribute name="role"/>
 
-     </define>
 
-     <define name="db.primaryie.attlist">
 
-       <interleave>
 
-         <optional>
 
-           <ref name="db.primaryie.role.attribute"/>
 
-         </optional>
 
-         <ref name="db.common.attributes"/>
 
-         <optional>
 
-           <ref name="db.linkends.attribute"/>
 
-         </optional>
 
-       </interleave>
 
-     </define>
 
-     <define name="db.primaryie">
 
-       <element name="primaryie">
 
-         <ref name="db.primaryie.attlist"/>
 
-         <zeroOrMore>
 
-           <ref name="db.all.inlines"/>
 
-         </zeroOrMore>
 
-       </element>
 
-     </define>
 
-   </div>
 
-   <!-- ====================================================================== -->
 
-   <div>
 
-     <db:refname>secondaryie</db:refname>
 
-     <db:refpurpose>A secondary term in an index entry, rather than in the text</db:refpurpose>
 
-     <define name="db.secondaryie.role.attribute">
 
-       <attribute name="role"/>
 
-     </define>
 
-     <define name="db.secondaryie.attlist">
 
-       <interleave>
 
-         <optional>
 
-           <ref name="db.secondaryie.role.attribute"/>
 
-         </optional>
 
-         <ref name="db.common.attributes"/>
 
-         <optional>
 
-           <ref name="db.linkends.attribute"/>
 
-         </optional>
 
-       </interleave>
 
-     </define>
 
-     <define name="db.secondaryie">
 
-       <element name="secondaryie">
 
-         <ref name="db.secondaryie.attlist"/>
 
-         <zeroOrMore>
 
-           <ref name="db.all.inlines"/>
 
-         </zeroOrMore>
 
-       </element>
 
-     </define>
 
-   </div>
 
-   <!-- ====================================================================== -->
 
-   <div>
 
-     <db:refname>tertiaryie</db:refname>
 
-     <db:refpurpose>A tertiary term in an index entry, rather than in the text</db:refpurpose>
 
-     <define name="db.tertiaryie.role.attribute">
 
-       <attribute name="role"/>
 
-     </define>
 
-     <define name="db.tertiaryie.attlist">
 
-       <interleave>
 
-         <optional>
 
-           <ref name="db.tertiaryie.role.attribute"/>
 
-         </optional>
 
-         <ref name="db.common.attributes"/>
 
-         <optional>
 
-           <ref name="db.linkends.attribute"/>
 
-         </optional>
 
-       </interleave>
 
-     </define>
 
-     <define name="db.tertiaryie">
 
-       <element name="tertiaryie">
 
-         <ref name="db.tertiaryie.attlist"/>
 
-         <zeroOrMore>
 
-           <ref name="db.all.inlines"/>
 
-         </zeroOrMore>
 
-       </element>
 
-     </define>
 
-   </div>
 
-   <!-- ====================================================================== -->
 
-   <div>
 
-     <db:refname>seeie</db:refname>
 
-     <db:refpurpose>A <db:quote>See</db:quote>
 
- entry in an index, rather than in the text</db:refpurpose>
 
-     <define name="db.seeie.role.attribute">
 
-       <attribute name="role"/>
 
-     </define>
 
-     <define name="db.seeie.attlist">
 
-       <interleave>
 
-         <optional>
 
-           <ref name="db.seeie.role.attribute"/>
 
-         </optional>
 
-         <ref name="db.common.attributes"/>
 
-         <optional>
 
-           <ref name="db.linkend.attribute"/>
 
-         </optional>
 
-       </interleave>
 
-     </define>
 
-     <define name="db.seeie">
 
-       <element name="seeie">
 
-         <ref name="db.seeie.attlist"/>
 
-         <zeroOrMore>
 
-           <ref name="db.all.inlines"/>
 
-         </zeroOrMore>
 
-       </element>
 
-     </define>
 
-   </div>
 
-   <!-- ====================================================================== -->
 
-   <div>
 
-     <db:refname>seealsoie</db:refname>
 
-     <db:refpurpose>A <db:quote>See also</db:quote>
 
-  entry in an index, rather than in the text</db:refpurpose>
 
-     <define name="db.seealsoie.role.attribute">
 
-       <attribute name="role"/>
 
-     </define>
 
-     <define name="db.seealsoie.attlist">
 
-       <interleave>
 
-         <optional>
 
-           <ref name="db.seealsoie.role.attribute"/>
 
-         </optional>
 
-         <ref name="db.common.attributes"/>
 
-         <optional>
 
-           <ref name="db.linkends.attribute"/>
 
-         </optional>
 
-       </interleave>
 
-     </define>
 
-     <define name="db.seealsoie">
 
-       <element name="seealsoie">
 
-         <ref name="db.seealsoie.attlist"/>
 
-         <zeroOrMore>
 
-           <ref name="db.all.inlines"/>
 
-         </zeroOrMore>
 
-       </element>
 
-     </define>
 
-   </div>
 
- </grammar>
 
 
  |