5.1 Generated Lists and Indexes

A project can include any number of generated lists (items listed in document order) or indexes (items listed in sorted order and collated). The reference tag <doclists> is used in maps for this purpose:

 <doclist src="stdlists.mxl" idref="doclistdef">
  <title>List of Something</title>
 </doclist>

The <title> element is for use in the TOC. The <doclist> element references a definition in a library for the kind of list wanted, like this one for a simple LOF:

 <listdef id="loflist" sort="doc" class="lofitem">
  <item level="1" elpath="title/fig/*" itemclass="figtitle" />
 </listdef>

Several specialized <doclist> elements are predefined in stdelems.mxl, and reference <listdefs> provided in stdlists.mxl. They include: <contents>, <figures>, <tables>, <index>, and <glossary>. All have default @idrefs that point to the appropriate <listdefs>, so they can be used in <map>s as simply as: <contents />.

In the <listdef> above, the @sort specifies how the items are to be sorted: doc (the default), alpha, or numeric. The overall list specifies @class="lofitem"; the classes for each level are derived from it.

In the <item> elements, the @level specifies the subclass to use for the items; and the level 1 items are @class="lofitem1". The required @elpath specifies what elements to include, here any <title> element inside any <fig> element, in any context. The optional @itemclass further restricts selection to those elements with @class="figtitle". To select multiple elements or classes, use multiple <item> elements (which may have the same level).

For indexes, you might have:

 <listdef id="subjectidx" sort="alpha" class="idxitem">
  <item elpath="idx/*" itemclass="subject" />
 </listdef>
 <listdef id="htmlidx" sort="alpha" class="idxitem">
  <item elpath="idx/*" itemclass="htmlkey" />
 </listdef>

Then an index entry like:

 <idx class="subject htmlkey">*\[HtmlOptions\]* section</idx>

would appear in both indexes; if it had only one @class, it would appear in only one of them.

Previous Topic:  Chapter 5. uDoc File Generation

Next Topic:  5.2 Indexing

Parent Topic:  Chapter 5. uDoc File Generation

Sibling Topics:

5.2 Indexing

5.3 Glossary

5.4 Abbreviations