summaryrefslogtreecommitdiff
path: root/doc/editor_configs
diff options
context:
space:
mode:
authorLuca Falavigna <dktrkranz@debian.org>2014-04-26 15:11:58 +0200
committerLuca Falavigna <dktrkranz@debian.org>2014-04-26 15:11:58 +0200
commita3a0ab66f0da855e75e3a0e2acfb8aa106b46510 (patch)
tree5352edff1387c3d7e5a8b49ec56524f085c22782 /doc/editor_configs
parent51fa4e4acb6fc8fc7a2af0fbdc21fd1e8feddb3a (diff)
parent140d836e9cd54fb67b969fd82ef7ed19ba574d40 (diff)
Merge tag 'upstream/2.3.1'
Upstream version 2.3.1
Diffstat (limited to 'doc/editor_configs')
-rw-r--r--doc/editor_configs/serna/scons/catalog.xml12
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/NW-COPYING49
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/biblio.xsl1043
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/blocks.xsl781
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/common-table.xsl444
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/common.xsl451
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/compounds.xsl126
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/divisions.xsl88
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/docbook.xsl54
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/formal.xsl216
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/gentext.xsl500
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/glossary.xsl423
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/graphics.xsl269
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/inlines.xsl939
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n.xsl438
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/af.xml454
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/bg.xml456
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/ca.xml457
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/cs.xml455
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/da.xml457
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/de.xml457
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/el.xml454
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/en.xml481
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/es.xml459
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/et.xml454
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/eu.xml455
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/fi.xml454
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/fr.xml458
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/he.xml455
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/hu.xml454
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/id.xml454
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/it.xml455
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/ja.xml456
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/ko.xml452
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/l10n.dtd45
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/l10n.xml83
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/lt.xml454
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/nl.xml454
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/nn.xml460
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/no.xml454
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/pl.xml454
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/pt.xml456
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/pt_br.xml451
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/ro.xml454
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/ru.xml484
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/sk.xml454
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/sl.xml451
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/sr.xml450
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/sv.xml451
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/th.xml463
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/tr.xml458
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/uk.xml484
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/vi.xml453
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/xh.xml456
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/zh_cn.xml447
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/zh_tw.xml448
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/lists.xsl803
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/parameters.xsl435
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/qandaset.xsl216
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/refentry.xsl189
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/serna-table.xsl641
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/synopsis.xsl998
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/table.xsl1103
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/titlepage.generator.xsl1218
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/titlepage.templates.xml412
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/titlepage.templates.xsl1969
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/titlepage.xsl772
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/titles.xsl511
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/toc.labels.xsl553
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/toc.titles.xsl525
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/toc.xsl304
-rw-r--r--doc/editor_configs/serna/scons/docbook-xsl-serna/xref.xsl624
-rw-r--r--doc/editor_configs/serna/scons/dtd/README8
-rw-r--r--doc/editor_configs/serna/scons/dtd/calstblx.dtd215
-rw-r--r--doc/editor_configs/serna/scons/dtd/calstblx.rng477
-rw-r--r--doc/editor_configs/serna/scons/dtd/dbcentx.mod384
-rw-r--r--doc/editor_configs/serna/scons/dtd/dbgenent.mod41
-rw-r--r--doc/editor_configs/serna/scons/dtd/dbhierx.mod2193
-rw-r--r--doc/editor_configs/serna/scons/dtd/dbnotnx.mod101
-rw-r--r--doc/editor_configs/serna/scons/dtd/dbpoolx.mod8870
-rw-r--r--doc/editor_configs/serna/scons/dtd/docbook.cat113
-rw-r--r--doc/editor_configs/serna/scons/dtd/ent/README14
-rw-r--r--doc/editor_configs/serna/scons/dtd/ent/isoamsa.ent97
-rw-r--r--doc/editor_configs/serna/scons/dtd/ent/isoamsb.ent83
-rw-r--r--doc/editor_configs/serna/scons/dtd/ent/isoamsc.ent51
-rw-r--r--doc/editor_configs/serna/scons/dtd/ent/isoamsn.ent103
-rw-r--r--doc/editor_configs/serna/scons/dtd/ent/isoamso.ent59
-rw-r--r--doc/editor_configs/serna/scons/dtd/ent/isoamsr.ent125
-rw-r--r--doc/editor_configs/serna/scons/dtd/ent/isobox.ent81
-rw-r--r--doc/editor_configs/serna/scons/dtd/ent/isocyr1.ent108
-rw-r--r--doc/editor_configs/serna/scons/dtd/ent/isocyr2.ent67
-rw-r--r--doc/editor_configs/serna/scons/dtd/ent/isodia.ent55
-rw-r--r--doc/editor_configs/serna/scons/dtd/ent/isogrk1.ent90
-rw-r--r--doc/editor_configs/serna/scons/dtd/ent/isogrk2.ent61
-rw-r--r--doc/editor_configs/serna/scons/dtd/ent/isogrk3.ent84
-rw-r--r--doc/editor_configs/serna/scons/dtd/ent/isogrk4.ent85
-rw-r--r--doc/editor_configs/serna/scons/dtd/ent/isolat1.ent103
-rw-r--r--doc/editor_configs/serna/scons/dtd/ent/isolat2.ent162
-rw-r--r--doc/editor_configs/serna/scons/dtd/ent/isonum.ent117
-rw-r--r--doc/editor_configs/serna/scons/dtd/ent/isopub.ent125
-rw-r--r--doc/editor_configs/serna/scons/dtd/ent/isotech.ent103
-rw-r--r--doc/editor_configs/serna/scons/dtd/htmltblx.mod245
-rw-r--r--doc/editor_configs/serna/scons/dtd/scons.dtd170
-rw-r--r--doc/editor_configs/serna/scons/dtd/soextblx.dtd321
-rw-r--r--doc/editor_configs/serna/scons/scons.csl199
-rw-r--r--doc/editor_configs/serna/scons/scons.sdt95
-rw-r--r--doc/editor_configs/serna/scons/xsd/calstblx.xsd390
-rw-r--r--doc/editor_configs/serna/scons/xsd/dbhierx.xsd2186
-rw-r--r--doc/editor_configs/serna/scons/xsd/dbnotnx.xsd102
-rw-r--r--doc/editor_configs/serna/scons/xsd/dbpoolx.xsd8682
-rw-r--r--doc/editor_configs/serna/scons/xsd/htmltblx.xsd431
-rw-r--r--doc/editor_configs/serna/scons/xsd/scons.xsd99
-rw-r--r--doc/editor_configs/serna/scons/xsd/xml.xsd15
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/common.incl654
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/css/cals_table.imp24
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/css/collapsible.imp135
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/css/docbook1.imp1157
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/css/docbook2.imp1292
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/css/example1.css20
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/css/html_cals_table.imp101
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/css/image.imp23
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/css/print.imp15
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/css/refentry.imp524
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/css/scons.css17
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/css/structure.css140
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/css/table.imp87
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/css/visible_inclusions.css9
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/htmlTable.incl195
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/scons.css11
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/scons.xxe37
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/scons2.xml7
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/scons_catalog.xml9
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/scons_templates/appendix.xml10
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/scons_templates/article.xml20
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/scons_templates/book.xml23
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/scons_templates/chapter.xml10
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/scons_templates/glossary.xml16
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/scons_templates/part.xml13
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/scons_templates/refentry.xml25
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/scons_templates/sconsdoc.xml15
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/scons_templates/section.xml7
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/scons_xsd/calstblx.xsd390
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/scons_xsd/dbhierx.xsd2186
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/scons_xsd/dbnotnx.xsd102
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/scons_xsd/dbpoolx.xsd8682
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/scons_xsd/htmltblx.xsd431
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/scons_xsd/scons.xsd99
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/scons_xsd/xml.xsd15
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/toolBar.incl189
-rw-r--r--doc/editor_configs/xmlmind/addon/config/scons/xslMenu.incl688
-rw-r--r--doc/editor_configs/xmlmind/custom/dummy.txt1
-rw-r--r--doc/editor_configs/xmlmind/preferences.properties108
-rw-r--r--doc/editor_configs/xmlmind/ser/dummy.txt1
-rw-r--r--doc/editor_configs/xmlmind/spell/dummy.txt1
154 files changed, 79646 insertions, 0 deletions
diff --git a/doc/editor_configs/serna/scons/catalog.xml b/doc/editor_configs/serna/scons/catalog.xml
new file mode 100644
index 0000000..bda2420
--- /dev/null
+++ b/doc/editor_configs/serna/scons/catalog.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" ?>
+<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog"
+ prefer="public">
+ <public publicId="-//SCONS//DTD DocBook V4.5-Based extension V1.0//EN"
+ uri="dtd/scons.dtd"/>
+ <system systemId="http://www.scons.org/dtd/scons.dtd"
+ uri="dtd/scons.dtd"/>
+ <uri name="http://www.scons.org/dbxsd/v1.0/scons.xsd"
+ uri="xsd/scons.xsd"/>
+ <uriSuffix uriSuffix="scons.xsd"
+ uri="xsd/scons.xsd"/>
+</catalog>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/NW-COPYING b/doc/editor_configs/serna/scons/docbook-xsl-serna/NW-COPYING
new file mode 100644
index 0000000..6cd267d
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/NW-COPYING
@@ -0,0 +1,49 @@
+Syntext Serna Stylesheet for DocBook is based on Norman Walsh
+stylesheet for Docbook, that was coming with the following
+copyright notice:
+
+Copyright
+---------
+
+Copyright (C) 1999, 2000, 2001, 2002 Norman Walsh
+
+Permission is hereby granted, free of charge, to any person
+obtaining a copy of this software and associated documentation
+files (the ``Software''), to deal in the Software without
+restriction, including without limitation the rights to use,
+copy, modify, merge, publish, distribute, sublicense, and/or
+sell copies of the Software, and to permit persons to whom the
+Software is furnished to do so, subject to the following
+conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+Except as contained in this notice, the names of individuals
+credited with contribution to this software shall not be used in
+advertising or otherwise to promote the sale, use or other
+dealings in this Software without prior written authorization
+from the individuals in question.
+
+Any stylesheet derived from this Software that is publically
+distributed will be identified with a different name and the
+version strings in any derived Software will be changed so that
+no possibility of confusion between the derived package and this
+Software will exist.
+
+Warranty
+--------
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL NORMAN WALSH OR ANY OTHER
+CONTRIBUTOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+OTHER DEALINGS IN THE SOFTWARE.
+
+Contacting the Author
+---------------------
+
+These stylesheets are maintained by Norman Walsh, <ndw@nwalsh.com>.
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/biblio.xsl b/doc/editor_configs/serna/scons/docbook-xsl-serna/biblio.xsl
new file mode 100644
index 0000000..d0bb9b2
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/biblio.xsl
@@ -0,0 +1,1043 @@
+<?xml version='1.0'?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ xmlns:dtm="http://syntext.com/Extensions/DocumentTypeMetadata-1.0"
+ extension-element-prefixes="dtm"
+ version='1.0'>
+
+<dtm:doc dtm:idref="bibliography"/>
+<xsl:template match="bibliography" dtm:id="bibliography">
+ <xsl:variable name="preamble"
+ select="bibliographyinfo|title|subtitle|titleabbrev"/>
+ <xsl:variable name="content" select="*[not(self::bibliographyinfo or
+ self::title or self::subtitle
+ or self::titleabbrev)]"/>
+ <fo:block padding-bottom="1.5em">
+ <xsl:call-template name="handle.empty">
+ <xsl:with-param name="titles">
+ <xsl:call-template name="bibliography.titlepage"/>
+ </xsl:with-param>
+ <xsl:with-param name="preamble" select="$preamble"/>
+ <xsl:with-param name="content" select="$content"/>
+ </xsl:call-template>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="bibliodiv"/>
+<xsl:template match="bibliodiv" dtm:id="bibliodiv">
+ <xsl:variable name="preamble"
+ select="title|subtitle|titleabbrev"/>
+ <xsl:variable name="content" select="*[not(self::title or self::subtitle
+ or self::titleabbrev)]"/>
+ <fo:block padding-bottom="1.5em">
+ <xsl:call-template name="handle.empty">
+ <xsl:with-param name="titles">
+ <xsl:call-template name="bibliodiv.titlepage"/>
+ </xsl:with-param>
+ <xsl:with-param name="preamble" select="$preamble"/>
+ <xsl:with-param name="content" select="$content"/>
+ </xsl:call-template>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="biblioentry"/>
+<xsl:template match="biblioentry" dtm:id="biblioentry">
+ <fo:block xsl:use-attribute-sets="normal.para.properties"
+ start-indent="0.5in">
+ <xsl:call-template name="biblioentry.label"/>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="bibliomixed"/>
+<xsl:template match="bibliomixed" dtm:id="bibliomixed">
+ <fo:block xsl:use-attribute-sets="normal.para.properties"
+ start-indent="0.5in">
+ <xsl:call-template name="biblioentry.label"/>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="biblioentry.label"/>
+<xsl:template name="biblioentry.label" dtm:id="biblioentry.label">
+ <xsl:param name="node" select="."/>
+
+ <xsl:choose>
+ <xsl:when test="$bibliography.numbered != 0">
+ <xsl:text>[</xsl:text>
+ <xsl:number from="bibliography" count="biblioentry|bibliomixed"
+ level="multiple" format="1."/>
+ <xsl:text>] </xsl:text>
+ </xsl:when>
+ <xsl:when test="local-name($node/child::*[1]) = 'abbrev'">
+ <xsl:text>[</xsl:text>
+ <xsl:apply-templates select="$node/abbrev[1]"/>
+ <xsl:text>] </xsl:text>
+ </xsl:when>
+ <xsl:when test="$node/@xreflabel">
+ <xsl:text>[</xsl:text>
+ <xsl:value-of select="$node/@xreflabel"/>
+ <xsl:text>] </xsl:text>
+ </xsl:when>
+ <xsl:when test="$node/@id">
+ <xsl:text>[</xsl:text>
+ <xsl:value-of select="$node/@id"/>
+ <xsl:text>] </xsl:text>
+ </xsl:when>
+ <xsl:otherwise><!-- nop --></xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<!-- ==================================================================== -->
+<dtm:doc dtm:idref="all.bibliography-mode"/>
+<xsl:template match="*" mode="bibliography.mode" dtm:id="all.bibliography-mode">
+ <xsl:apply-templates select="."/><!-- try the default mode -->
+</xsl:template>
+
+<dtm:doc dtm:elements="abbrev" dtm:idref="abbrev.bibliography-mode abbrev.bibliomixed-mode"/>
+<xsl:template match="abbrev" mode="bibliography.mode" dtm:id="abbrev.bibliography-mode">
+ <xsl:if test="preceding-sibling::*">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ </fo:inline>
+ </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:elements="abstract" dtm:idref="abstract.bibliography-mode abstract.bibliomixed-mode"/>
+<xsl:template match="abstract" mode="bibliography.mode" dtm:id="abstract.bibliography-mode">
+ <!-- suppressed -->
+</xsl:template>
+
+<dtm:doc dtm:elements="address" dtm:idref="address.bibliography-mode address.bibliomixed-mode"/>
+<xsl:template match="address" mode="bibliography.mode" dtm:id="address.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="affiliation" dtm:idref="affiliation.bibliography-mode affiliation.bibliomixed-mode"/>
+<xsl:template match="affiliation" mode="bibliography.mode" dtm:id="affiliation.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="shortaffil" dtm:idref="shortaffil.bibliography-mode shortaffil.bibliomixed-mode"/>
+<xsl:template match="shortaffil" mode="bibliography.mode" dtm:id="shortaffil.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="jobtitle" dtm:idref="jobtitle.bibliography-mode jobtitle.bibliomixed-mode"/>
+<xsl:template match="jobtitle" mode="bibliography.mode" dtm:id="jobtitle.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:idref="artchilds.bibliography-mode"/>
+<xsl:template match="artheader|articleinfo" mode="bibliography.mode" dtm:id="artchilds.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="artpagenums" dtm:idref="artpagenums.bibliography-mode author.bibliomixed-mode"/>
+<xsl:template match="artpagenums" mode="bibliography.mode" dtm:id="artpagenums.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="author" dtm:idref="author.bibliography-mode author.bibliomixed-mode"/>
+<xsl:template match="author" mode="bibliography.mode" dtm:id="author.bibliography-mode">
+ <fo:inline>
+ <xsl:call-template name="person.name"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="authorblurb" dtm:idref="authorblurb.bibliography-mode authorblurb.bibliomixed-mode"/>
+<xsl:template match="authorblurb" mode="bibliography.mode" dtm:id="authorblurb.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="authorgroup" dtm:idref="authorgroup.bibliography-mode authorgroup.bibliomixed-mode"/>
+<xsl:template match="authorgroup" mode="bibliography.mode" dtm:id="authorgroup.bibliography-mode">
+ <fo:inline>
+ <xsl:call-template name="person.name.list"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="authorinitials" dtm:idref="authorinitials.bibliography-mode authorinitials.bibliomixed-mode"/>
+<xsl:template match="authorinitials" mode="bibliography.mode" dtm:id="authorinitials.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="bibliomisc" dtm:idref="bibliomisc.bibliography-mode bibliomisc.bibliomixed-mode"/>
+<xsl:template match="bibliomisc" mode="bibliography.mode" dtm:id="bibliomisc.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:idref="bibliomset.bibliography-mode"/>
+<xsl:template match="bibliomset" mode="bibliography.mode" dtm:id="bibliomset.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<!-- ================================================== -->
+<dtm:doc dtm:elements="biblioset" dtm:idref="biblioset.bibliography-mode biblioset.bibliomixed-mode"/>
+<xsl:template match="biblioset" mode="bibliography.mode" dtm:id="biblioset.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:idref="bibliosettitles.bibliography-mode"/>
+<xsl:template match="biblioset/title|biblioset/citetitle"
+ mode="bibliography.mode" dtm:id="bibliosettitles.bibliography-mode">
+ <xsl:variable name="relation" select="../@relation"/>
+ <xsl:choose>
+ <xsl:when test="$relation='article' or @pubwork='article'">
+ <xsl:call-template name="gentext.startquote"/>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:call-template name="gentext.endquote"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <fo:inline font-style="italic">
+ <xsl:apply-templates/>
+ </fo:inline>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+</xsl:template>
+
+<!-- ================================================== -->
+<dtm:doc dtm:idref="bookbiblio.bibliography-mode"/>
+<xsl:template match="bookbiblio" mode="bibliography.mode" dtm:id="bookbiblio.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="citetitle" dtm:idref="citetitle.bibliography-mode citetitle.bibliomixed-mode"/>
+<xsl:template match="citetitle" mode="bibliography.mode" dtm:id="citetitle.bibliography-mode">
+ <fo:inline>
+ <xsl:choose>
+ <xsl:when test="@pubwork = 'article'">
+ <xsl:call-template name="gentext.startquote"/>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:call-template name="gentext.endquote"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <fo:inline font-style="italic">
+ <xsl:apply-templates mode="bibliography.mode"/>
+ </fo:inline>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="collab" dtm:idref="collab.bibliography-mode collab.bibliomixed-mode"/>
+<xsl:template match="collab" mode="bibliography.mode" dtm:id="collab.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="confgroup" dtm:idref="confgroup.bibliography-mode confgroup.bibliomixed-mode"/>
+<xsl:template match="confgroup" mode="bibliography.mode" dtm:id="confgroup.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="contractnum" dtm:idref="contractnum.bibliography-mode contractnum.bibliomixed-mode"/>
+<xsl:template match="contractnum" mode="bibliography.mode" dtm:id="contractnum.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="contractsponsor" dtm:idref="contractsponsor.bibliography-mode contractsponsor.bibliomixed-mode"/>
+<xsl:template match="contractsponsor" mode="bibliography.mode" dtm:id="contractsponsor.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="contrib" dtm:idref="contrib.bibliography-mode contrib.bibliomixed-mode"/>
+<xsl:template match="contrib" mode="bibliography.mode" dtm:id="contrib.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<!-- ================================================== -->
+<dtm:doc dtm:elements="copyright" dtm:idref="copyright.bibliography-mode copyright.bibliomixed-mode"/>
+<xsl:template match="copyright" mode="bibliography.mode" dtm:id="copyright.bibliography-mode">
+ <fo:inline>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'Copyright'"/>
+ </xsl:call-template>
+ <xsl:call-template name="gentext.space"/>
+ <xsl:call-template name="dingbat">
+ <xsl:with-param name="dingbat">copyright</xsl:with-param>
+ </xsl:call-template>
+ <xsl:call-template name="gentext.space"/>
+ <xsl:apply-templates select="year" mode="bibliography.mode"/>
+ <xsl:if test="holder">
+ <xsl:call-template name="gentext.space"/>
+ <xsl:apply-templates select="holder" mode="bibliography.mode"/>
+ </xsl:if>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="year" mode="bibliography.mode" dtm:id="year.bibliography-mode">
+ <xsl:apply-templates/><xsl:text>, </xsl:text>
+</xsl:template>
+
+<xsl:template match="year[position()=last()]" mode="bibliography.mode" dtm:id="lastyear.bibliography-mode">
+ <xsl:apply-templates/>
+</xsl:template>
+
+<dtm:doc dtm:idref="holder.bibliography-mode"/>
+<xsl:template match="holder" mode="bibliography.mode" dtm:id="holder.bibliography-mode">
+ <xsl:apply-templates/>
+</xsl:template>
+
+<!-- ================================================== -->
+<dtm:doc dtm:elements="corpauthor" dtm:idref="corpauthor.bibliography-mode corpauthor.bibliomixed-mode"/>
+<xsl:template match="corpauthor" mode="bibliography.mode" dtm:id="corpauthor.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="corpname" dtm:idref="corpname.bibliography-mode corpname.bibliomixed-mode"/>
+<xsl:template match="corpname" mode="bibliography.mode" dtm:id="corpname.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="date" dtm:idref="date.bibliography-mode date.bibliomixed-mode"/>
+<xsl:template match="date" mode="bibliography.mode" dtm:id="date.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="edition" dtm:idref="edition.bibliography-mode edition.bibliomixed-mode"/>
+<xsl:template match="edition" mode="bibliography.mode" dtm:id="edition.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="editor" dtm:idref="editor.bibliography-mode editor.bibliomixed-mode"/>
+<xsl:template match="editor" mode="bibliography.mode" dtm:id="editor.bibliography-mode">
+ <fo:inline>
+ <xsl:call-template name="person.name"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="firstname" dtm:idref="firstname.bibliography-mode firstname.bibliomixed-mode"/>
+<xsl:template match="firstname" mode="bibliography.mode" dtm:id="firstname.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="honorific" dtm:idref="honorific.bibliography-mode honorific.bibliomixed-mode"/>
+<xsl:template match="honorific" mode="bibliography.mode" dtm:id="honorific.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="indexterm" dtm:idref="indexterm.bibliography-mode indexterm.bibliomixed-mode"/>
+<xsl:template match="indexterm" mode="bibliography.mode" dtm:id="indexterm.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="invpartnumber" dtm:idref="invpartnumber.bibliography-mode invpartnumber.bibliomixed-mode"/>
+<xsl:template match="invpartnumber" mode="bibliography.mode" dtm:id="invpartnumber.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="isbn" dtm:idref="isbn.bibliography-mode isbn.bibliomixed-mode"/>
+<xsl:template match="isbn" mode="bibliography.mode" dtm:id="isbn.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="issn" dtm:idref="issn.bibliography-mode issn.bibliomixed-mode"/>
+<xsl:template match="issn" mode="bibliography.mode" dtm:id="issn.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="biblioid" dtm:idref="biblioid.bibliography-mode biblioid.bibliomixed-mode"/>
+<xsl:template match="biblioid" mode="bibliography.mode" dtm:id="biblioid.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="issuenum" dtm:idref="issuenum.bibliography-mode issuenum.bibliomixed-mode"/>
+<xsl:template match="issuenum" mode="bibliography.mode" dtm:id="issuenum.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="lineage" dtm:idref="lineage.bibliography-mode lineage.bibliomixed-mode"/>
+<xsl:template match="lineage" mode="bibliography.mode" dtm:id="lineage.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="orgname" dtm:idref="orgname.bibliography-mode orgname.bibliomixed-mode"/>
+<xsl:template match="orgname" mode="bibliography.mode" dtm:id="orgname.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="othercredit" dtm:idref="othercredit.bibliography-mode othercredit.bibliomixed-mode"/>
+<xsl:template match="othercredit" mode="bibliography.mode" dtm:id="othercredit.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="othername" dtm:idref="othername.bibliography-mode othername.bibliomixed-mode"/>
+<xsl:template match="othername" mode="bibliography.mode" dtm:id="othername.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="pagenums" dtm:idref="pagenums.bibliography-mode pagenums.bibliomixed-mode"/>
+<xsl:template match="pagenums" mode="bibliography.mode" dtm:id="pagenums.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="printhistory" dtm:idref="printhistory.bibliography-mode printhistory.bibliomixed-mode"/>
+<xsl:template match="printhistory" mode="bibliography.mode" dtm:id="printhistory.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="productname" dtm:idref="productname.bibliography-mode productname.bibliomixed-mode"/>
+<xsl:template match="productname" mode="bibliography.mode" dtm:id="productname.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="productnumber" dtm:idref="productnumber.bibliography-mode productnumber.bibliomixed-mode"/>
+<xsl:template match="productnumber" mode="bibliography.mode" dtm:id="productnumber.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="pubdate" dtm:idref="pubdate.bibliography-mode pubdate.bibliomixed-mode"/>
+<xsl:template match="pubdate" mode="bibliography.mode" dtm:id="pubdate.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="publisher" dtm:idref="pubdate.bibliography-mode pubdate.bibliomixed-mode"/>
+<xsl:template match="publisher" mode="bibliography.mode" dtm:id="pubdate.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="publishername" dtm:idref="publishername.bibliography-mode publishername.bibliomixed-mode"/>
+<xsl:template match="publishername" mode="bibliography.mode" dtm:id="publishername.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="pubsnumber" dtm:idref="pubsnumber.bibliography-mode pubsnumber.bibliomixed-mode"/>
+<xsl:template match="pubsnumber" mode="bibliography.mode" dtm:id="pubsnumber.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="releaseinfo" dtm:idref="releaseinfo.bibliography-mode releaseinfo.bibliomixed-mode"/>
+<xsl:template match="releaseinfo" mode="bibliography.mode" dtm:id="releaseinfo.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="revhistory" dtm:idref="revhistory.bibliography-mode revhistory.bibliomixed-mode"/>
+<xsl:template match="revhistory" mode="bibliography.mode" dtm:id="revhistory.bibliography-mode">
+ <fo:block>
+ <xsl:apply-templates select="."/> <!-- use normal mode -->
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="seriesinfo.bibliography-mode"/>
+<xsl:template match="seriesinfo" mode="bibliography.mode" dtm:id="seriesinfo.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="seriesvolnums" dtm:idref="seriesvolnums.bibliography-mode seriesvolnums.bibliomixed-mode"/>
+<xsl:template match="seriesvolnums" mode="bibliography.mode" dtm:id="seriesvolnums.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="subtitle" dtm:idref="subtitle.bibliography-mode subtitle.bibliomixed-mode"/>
+<xsl:template match="subtitle" mode="bibliography.mode" dtm:id="subtitle.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="surname" dtm:idref="surname.bibliography-mode surname.bibliomixed-mode"/>
+<xsl:template match="surname" mode="bibliography.mode" dtm:id="surname.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="title" dtm:idref="title.bibliography-mode title.bibliomixed-mode"/>
+<xsl:template match="title" mode="bibliography.mode" dtm:id="title.bibliography-mode">
+ <fo:inline>
+ <fo:inline font-style="italic">
+ <xsl:apply-templates mode="bibliography.mode"/>
+ </fo:inline>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="titleabbrev" dtm:idref="titleabbrev.bibliography-mode titleabbrev.bibliomixed-mode"/>
+<xsl:template match="titleabbrev" mode="bibliography.mode" dtm:id="titleabbrev.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="volumenum" dtm:idref="volumenum.bibliography-mode volumenum.bibliomixed-mode"/>
+<xsl:template match="volumenum" mode="bibliography.mode" dtm:id="volumenum.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:idref="orgdiv.bibliography-mode"/>
+<xsl:template match="orgdiv" mode="bibliography.mode" dtm:id="orgdiv.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:idref="collabname.bibliography-mode"/>
+<xsl:template match="collabname" mode="bibliography.mode" dtm:id="collabname.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:idref="confdates.bibliography-mode"/>
+<xsl:template match="confdates" mode="bibliography.mode" dtm:id="confdates.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:idref="conftitle.bibliography-mode"/>
+<xsl:template match="conftitle" mode="bibliography.mode" dtm:id="conftitle.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:idref="confnum.bibliography-mode"/>
+<xsl:template match="confnum" mode="bibliography.mode" dtm:id="confnum.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:idref="confsponsor.bibliography-mode"/>
+<xsl:template match="confsponsor" mode="bibliography.mode" dtm:id="confsponsor.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="bibliocoverage|biblioid|bibliorelation|bibliosource" dtm:idref="bibliochilds.bibliography-mode bibliochilds.bibliomixed-mode"/>
+<xsl:template match="bibliocoverage|biblioid|bibliorelation|bibliosource"
+ mode="bibliography.mode" dtm:id="bibliochilds.bibliography-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ <xsl:value-of select="$biblioentry.item.separator"/>
+ </fo:inline>
+</xsl:template>
+
+<!-- ==================================================================== -->
+<dtm:doc dtm:idref="all.bibliomixed-mode"/>
+<xsl:template match="*" mode="bibliomixed.mode" dtm:id="all.bibliomixed-mode">
+ <xsl:apply-templates select="."/><!-- try the default mode -->
+</xsl:template>
+
+<xsl:template match="abbrev" mode="bibliomixed.mode" dtm:id="abbrev.bibliomixed-mode">
+ <xsl:if test="preceding-sibling::*">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+ </xsl:if>
+</xsl:template>
+
+<xsl:template match="abstract" mode="bibliomixed.mode" dtm:id="abstract.bibliomixed-mode">
+ <fo:block start-indent="1in">
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="para.bibliomixed-mode"/>
+<xsl:template match="para" mode="bibliomixed.mode" dtm:id="para.bibliomixed-mode">
+ <fo:block>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:block>
+</xsl:template>
+
+<xsl:template match="address" mode="bibliomixed.mode" dtm:id="address.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="affiliation" mode="bibliomixed.mode" dtm:id="affiliation.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="shortaffil" mode="bibliomixed.mode" dtm:id="shortaffil.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="jobtitle" mode="bibliomixed.mode" dtm:id="jobtitle.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliography.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="artpagenums" mode="bibliomixed.mode" dtm:id="artpagenums.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="author" mode="bibliomixed.mode" dtm:id="author.bibliomixed-mode">
+ <fo:inline>
+ <xsl:call-template name="person.name"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="authorblurb" mode="bibliomixed.mode" dtm:id="authorblurb.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="authorgroup" mode="bibliomixed.mode" dtm:id="authorgroup.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="authorinitials" mode="bibliomixed.mode" dtm:id="authorinitials.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="bibliomisc" mode="bibliomixed.mode" dtm:id="bibliomisc.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<!-- ================================================== -->
+
+<xsl:template match="bibliomset" mode="bibliomixed.mode" dtm:id="bibliomset.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="bibliomset/title|bibliomset/citetitle"
+ mode="bibliomixed.mode" dtm:id="bibliotitles.bibliomixed-mode">
+ <xsl:variable name="relation" select="../@relation"/>
+ <xsl:choose>
+ <xsl:when test="$relation='article' or @pubwork='article'">
+ <xsl:call-template name="gentext.startquote"/>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ <xsl:call-template name="gentext.endquote"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <fo:inline font-style="italic">
+ <xsl:apply-templates/>
+ </fo:inline>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<!-- ================================================== -->
+
+<xsl:template match="biblioset" mode="bibliomixed.mode" dtm:id="biblioset.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="citetitle" mode="bibliomixed.mode" dtm:id="citetitle.bibliomixed-mode">
+ <xsl:choose>
+ <xsl:when test="@pubwork = 'article'">
+ <xsl:call-template name="gentext.startquote"/>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ <xsl:call-template name="gentext.endquote"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <fo:inline font-style="italic">
+ <xsl:apply-templates mode="bibliography.mode"/>
+ </fo:inline>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<xsl:template match="collab" mode="bibliomixed.mode" dtm:id="collab.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="confgroup" mode="bibliomixed.mode" dtm:id="confgroup.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="contractnum" mode="bibliomixed.mode" dtm:id="contractnum.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="contractsponsor" mode="bibliomixed.mode" dtm:id="contractsponsor.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="contrib" mode="bibliomixed.mode" dtm:id="contrib.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="copyright" mode="bibliomixed.mode" dtm:id="copyright.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="corpauthor" mode="bibliomixed.mode" dtm:id="corpauthor.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="corpname" mode="bibliomixed.mode" dtm:id="corpname.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="date" mode="bibliomixed.mode" dtm:id="date.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="edition" mode="bibliomixed.mode" dtm:id="edition.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="editor" mode="bibliomixed.mode" dtm:id="editor.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="firstname" mode="bibliomixed.mode" dtm:id="firstname.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="honorific" mode="bibliomixed.mode" dtm:id="honorific.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="indexterm" mode="bibliomixed.mode" dtm:id="indexterm.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="invpartnumber" mode="bibliomixed.mode" dtm:id="invpartnumber.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="isbn" mode="bibliomixed.mode" dtm:id="isbn.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="issn" mode="bibliomixed.mode" dtm:id="issn.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="biblioid" mode="bibliomixed.mode" dtm:id="biblioid.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="issuenum" mode="bibliomixed.mode" dtm:id="issuenum.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="lineage" mode="bibliomixed.mode" dtm:id="lineage.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="orgname" mode="bibliomixed.mode" dtm:id="orgname.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="othercredit" mode="bibliomixed.mode" dtm:id="othercredit.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="othername" mode="bibliomixed.mode" dtm:id="othername.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="pagenums" mode="bibliomixed.mode" dtm:id="pagenums.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="printhistory" mode="bibliomixed.mode" dtm:id="printhistory.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="productname" mode="bibliomixed.mode" dtm:id="productname.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="productnumber" mode="bibliomixed.mode" dtm:id="productnumber.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="pubdate" mode="bibliomixed.mode" dtm:id="pubdate.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="publisher" mode="bibliomixed.mode" dtm:id="publisher.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="publishername" mode="bibliomixed.mode" dtm:id="publishername.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="pubsnumber" mode="bibliomixed.mode" dtm:id="pubsnumber.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="releaseinfo" mode="bibliomixed.mode" dtm:id="releaseinfo.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="revhistory" mode="bibliomixed.mode" dtm:id="revhistory.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="seriesvolnums" mode="bibliomixed.mode" dtm:id="seriesvolnums.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="subtitle" mode="bibliomixed.mode" dtm:id="subtitle.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="surname" mode="bibliomixed.mode" dtm:id="surname.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="title" mode="bibliomixed.mode" dtm:id="title.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="titleabbrev" mode="bibliomixed.mode" dtm:id="titleabbrev.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="volumenum" mode="bibliomixed.mode" dtm:id="volumenum.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="bibliocoverage|biblioid|bibliorelation|bibliosource"
+ mode="bibliomixed.mode" dtm:id="bibliochilds.bibliomixed-mode">
+ <fo:inline>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </fo:inline>
+</xsl:template>
+
+<!-- ==================================================================== -->
+
+</xsl:stylesheet>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/blocks.xsl b/doc/editor_configs/serna/scons/docbook-xsl-serna/blocks.xsl
new file mode 100644
index 0000000..5c23e1b
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/blocks.xsl
@@ -0,0 +1,781 @@
+<?xml version='1.0'?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ xmlns:dtm="http://syntext.com/Extensions/DocumentTypeMetadata-1.0"
+ extension-element-prefixes="dtm"
+ version='1.0'>
+
+ <dtm:doc dtm:idref="block.object"/>
+ <xsl:template name="block.object" dtm:id="block.object">
+ <fo:block>
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="para"/>
+ <xsl:template match="para" dtm:id="para">
+ <fo:block xsl:use-attribute-sets="normal.para.properties">
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="sconsdoc"/>
+ <xsl:template match="sconsdoc" dtm:id="sconsdoc">
+ <fo:block xsl:use-attribute-sets="normal.para.properties">
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="simpara"/>
+ <xsl:template match="simpara" dtm:id="simpara">
+ <fo:block xsl:use-attribute-sets="normal.para.properties">
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="date-releaseinfo"/>
+ <xsl:template match="date|releaseinfo" dtm:id="date-releaseinfo">
+ <fo:block xsl:use-attribute-sets="normal.para.properties">
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="abstract"/>
+ <xsl:template match="abstract" dtm:id="abstract">
+ <fo:block>
+ <xsl:choose>
+ <xsl:when test="title">
+ <xsl:apply-templates select="title" mode="plain.formal.title.mode"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="formal.title.gentext">
+ <xsl:with-param name="key" select="'abstract'"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:apply-templates select="*[local-name(.) != 'title']"/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="blockquote"/>
+ <xsl:template match="blockquote" dtm:id="blockquote">
+ <fo:block xsl:use-attribute-sets="blockquote.properties">
+ <fo:block>
+ <xsl:if test="title">
+ <fo:block xsl:use-attribute-sets="formal.title.properties">
+ <xsl:apply-templates select="title" mode="plain.formal.title.mode"/>
+ </fo:block>
+ </xsl:if>
+ <xsl:apply-templates select="*[not(self::title or self::attribution)
+ or self::processing-instruction('se:choice')]"/>
+ </fo:block>
+ <xsl:if test="attribution">
+ <fo:block text-align="right">
+ <xsl:text>&#x2014;&#160;</xsl:text>
+ <xsl:apply-templates select="attribution"/>
+ </fo:block>
+ </xsl:if>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="formalpara"/>
+ <xsl:template match="formalpara" dtm:id="formalpara">
+ <fo:block xsl:use-attribute-sets="normal.para.properties">
+ <xsl:apply-templates mode="formalpara"/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="title.formalpara.formalpara"/>
+ <xsl:template match="formalpara/title" mode="formalpara" dtm:id="title.formalpara.formalpara">
+ <xsl:variable name="titleStr" select="."/>
+ <xsl:variable name="lastChar">
+ <xsl:if test="$titleStr != ''">
+ <xsl:value-of select="substring($titleStr,string-length($titleStr),1)"/>
+ </xsl:if>
+ </xsl:variable>
+
+ <fo:inline font-weight="bold"
+ keep-with-next.within-line="always"
+ padding-right="1em">
+ <xsl:apply-templates/>
+ <xsl:if test="$lastChar != ''
+ and not(contains($title.end.punct, $lastChar))">
+ <xsl:value-of select="$default.title.end.punct"/>
+ </xsl:if>
+ </fo:inline>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="para.formalpara.formalpara"/>
+ <xsl:template match="formalpara/para" mode="formalpara" dtm:id="para.formalpara.formalpara">
+ <xsl:choose>
+ <xsl:when test="itemizedlist|orderedlist|segmentedlist|variablelist">
+ <fo:block>
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:when>
+ <xsl:otherwise>
+ <fo:inline>
+ <xsl:apply-templates/>
+ </fo:inline>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="indexterm.formalpara"/>
+ <xsl:template match="indexterm" mode="formalpara" dtm:id="indexterm.formalpara">
+ <xsl:if test="$show.preamble.editing">
+ <fo:block xsl:use-attribute-sets="preamble.attributes">
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="name" select="'draftarea'"/>
+ <xsl:with-param name="context" select="'empty'"/>
+ </xsl:call-template>
+ <xsl:text> "</xsl:text>
+ <xsl:value-of select="local-name(.)"/>
+ <xsl:text>" </xsl:text>
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:if>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="niwct"/>
+ <xsl:template match="note|important|warning|caution|tip" dtm:id="niwct">
+ <fo:block xsl:use-attribute-sets="note.properties">
+ <fo:block xsl:use-attribute-sets="admonition.title.properties">
+ <xsl:choose>
+ <xsl:when test="title[not(self::processing-instruction('se:choice'))]">
+ <xsl:apply-templates select="title"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="local-name(.)"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+ </fo:block>
+
+ <fo:block>
+ <xsl:apply-templates select="*[not(self::title)
+ or self::processing-instruction('se:choice')]"/>
+ </fo:block>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="authorgroup"/>
+ <xsl:template match="authorgroup" dtm:id="authorgroup">
+ <fo:block>
+ <xsl:apply-templates mode="authorgroup.mode"/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="node.authorgroup-mode"/>
+ <xsl:template match="node()" mode="authorgroup.mode" dtm:id="node.authorgroup-mode">
+ <xsl:apply-templates select='.'/>
+ <xsl:choose>
+ <xsl:when test="position() != last()">
+ <xsl:text>, </xsl:text>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text>.</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="legalnotice"/>
+ <xsl:template match="legalnotice" dtm:id="legalnotice">
+ <xsl:choose>
+ <xsl:when test="title">
+ <xsl:apply-templates select="title" mode="plain.formal.title.mode"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="formal.title.gentext">
+ <xsl:with-param name="key" select="'legalnotice'"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:apply-templates select="*[not(self::title)
+ or self::processing-instruction('se:choice')]"/>
+ </xsl:template>
+
+ <!-- Allow revhistory in context -->
+
+ <dtm:doc dtm:idref="revhistory"/>
+ <xsl:template match="revhistory" dtm:id="revhistory">
+ <xsl:apply-templates select="." mode="rev.mode"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="revhistory.rev-mode"/>
+ <xsl:template match="revhistory" mode="rev.mode" dtm:id="revhistory.rev-mode">
+ <fo:block>
+ <xsl:call-template name="formal.title.gentext">
+ <xsl:with-param name="key" select="'revhistory'"/>
+ </xsl:call-template>
+ <xsl:apply-templates select="revision" mode="rev.mode"/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="revision.rev-mode"/>
+ <xsl:template match="revision" mode="rev.mode" dtm:id="revision.rev-mode">
+ <fo:block xsl:use-attribute-sets="normal.para.properties">
+ <xsl:apply-templates mode="rev.mode"/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="revnumber.rev-mode"/>
+ <xsl:template match="revnumber" mode="rev.mode" dtm:id="revnumber.rev-mode">
+ <fo:block>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'revision'"/>
+ </xsl:call-template>
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="authorinitials.rev-mode"/>
+ <xsl:template match="authorinitials" mode="rev.mode" dtm:id="authorinitials.rev-mode">
+ <fo:block>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'revisedby'"/>
+ </xsl:call-template>
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="all.rev-mode"/>
+ <xsl:template match="*" mode="rev.mode" dtm:id="all.rev-mode">
+ <fo:block>
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="address"/>
+ <xsl:template match="address" dtm:id="address">
+ <fo:block
+ white-space-collapse='false'
+ linefeed-treatment="preserve"
+ xsl:use-attribute-sets="verbatim.properties">
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="footnote"/>
+ <xsl:template match="footnote" dtm:id="footnote">
+ <fo:block font-size="{$footnote.font.size}">
+ <xsl:if test="@id">
+ <fo:inline font-style="italic">
+ <xsl:text>[</xsl:text>
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="'empty'"/>
+ <xsl:with-param name="name" select="'footnote'"/>
+ </xsl:call-template>
+ <xsl:text>: </xsl:text>
+ <xsl:value-of select="@id"/>
+ <xsl:text>]</xsl:text>
+ </fo:inline>
+ </xsl:if>
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="programlisting"/>
+ <xsl:template match="programlisting|screen|synopsis|literallayout" name="programlisting" dtm:id="programlisting">
+ <xsl:choose>
+ <xsl:when test="$shade.verbatim != 0">
+ <fo:block
+ white-space-treatment='preserve'
+ white-space-collapse='false'
+ linefeed-treatment="preserve"
+ xsl:use-attribute-sets="shade.verbatim.style verbatim.properties">
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:when>
+ <xsl:otherwise>
+ <fo:block
+ white-space-collapse='false'
+ linefeed-treatment="preserve"
+ xsl:use-attribute-sets="verbatim.properties">
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="summary"/>
+ <xsl:template match="summary" dtm:id="summary">
+ <fo:block xsl:use-attribute-sets="admonition.title.properties">
+ <xsl:text>Summary</xsl:text>
+ </fo:block>
+
+ <fo:block>
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="builder"/>
+ <xsl:template match="builder" dtm:id="builder">
+ <fo:block xsl:use-attribute-sets="admonition.title.properties">
+ <xsl:text>Builder '</xsl:text>
+ <xsl:value-of select="@name"/>
+ <xsl:text>'</xsl:text>
+ </fo:block>
+
+ <fo:block>
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="cvar"/>
+ <xsl:template match="cvar" dtm:id="cvar">
+ <fo:block xsl:use-attribute-sets="admonition.title.properties">
+ <xsl:text>CVar '</xsl:text>
+ <xsl:value-of select="@name"/>
+ <xsl:text>'</xsl:text>
+ </fo:block>
+
+ <fo:block>
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="function"/>
+ <xsl:template match="function" dtm:id="function">
+ <fo:block xsl:use-attribute-sets="admonition.title.properties">
+ <xsl:text>Function '</xsl:text>
+ <xsl:value-of select="@name"/>
+ <xsl:text>'</xsl:text>
+ </fo:block>
+
+ <fo:block>
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="tool"/>
+ <xsl:template match="tool" dtm:id="tool">
+ <fo:block xsl:use-attribute-sets="admonition.title.properties">
+ <xsl:text>Tool '</xsl:text>
+ <xsl:value-of select="@name"/>
+ <xsl:text>'</xsl:text>
+ </fo:block>
+
+ <fo:block>
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="scons_example"/>
+ <xsl:template match="scons_example" name="scons_example" dtm:id="scons_example">
+ <fo:block
+ white-space-treatment='preserve'
+ white-space-collapse='false'
+ linefeed-treatment="preserve"
+ xsl:use-attribute-sets="verbatim.properties"
+ background-color="#94caee">
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="example_commands"/>
+ <xsl:template match="example_commands" name="example_commands" dtm:id="example_commands">
+ <fo:block
+ white-space-treatment='preserve'
+ white-space-collapse='false'
+ linefeed-treatment="preserve"
+ xsl:use-attribute-sets="verbatim.properties"
+ background-color="#94caee">
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="scons_example_file"/>
+ <xsl:template match="scons_example_file" name="scons_example_file" dtm:id="scons_example_file">
+ <fo:block
+ white-space-treatment='preserve'
+ white-space-collapse='false'
+ linefeed-treatment="preserve"
+ xsl:use-attribute-sets="verbatim.properties"
+ background-color="#eed27b">
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:template>
+
+
+ <dtm:doc dtm:idref="scons_output"/>
+ <xsl:template match="scons_output" name="scons_output" dtm:id="scons_output">
+ <fo:block
+ white-space-treatment='preserve'
+ white-space-collapse='false'
+ linefeed-treatment="preserve"
+ xsl:use-attribute-sets="verbatim.properties"
+ background-color="#94caee">
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="scons_output_command"/>
+ <xsl:template match="scons_output_command" name="scons_output_command" dtm:id="scons_output_command">
+ <fo:block
+ white-space-treatment='preserve'
+ white-space-collapse='false'
+ linefeed-treatment="preserve"
+ xsl:use-attribute-sets="shade.verbatim.style verbatim.properties">
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="sconstruct"/>
+ <xsl:template match="sconstruct" name="sconstruct" dtm:id="sconstruct">
+ <fo:block
+ white-space-treatment='preserve'
+ white-space-collapse='false'
+ linefeed-treatment="preserve"
+ xsl:use-attribute-sets="verbatim.properties"
+ background-color="#94caee">
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="file"/>
+ <xsl:template match="file" name="file" dtm:id="file">
+ <fo:block
+ white-space-treatment='preserve'
+ white-space-collapse='false'
+ linefeed-treatment="preserve"
+ xsl:use-attribute-sets="verbatim.properties"
+ background-color="#eed27b">
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="directory"/>
+ <xsl:template match="directory" name="directory" dtm:id="directory">
+ <fo:block
+ white-space-treatment='preserve'
+ white-space-collapse='false'
+ linefeed-treatment="preserve"
+ xsl:use-attribute-sets="verbatim.properties"
+ background-color="#eed27b">
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:template>
+
+<dtm:doc dtm:idref="epigraph"/>
+<xsl:template match="epigraph" dtm:id="epigraph">
+ <fo:block>
+ <xsl:apply-templates select="para|simpara|formalpara|literallayout"/>
+ <fo:inline>
+ <xsl:text>&#x2014;&#160;</xsl:text>
+ <xsl:apply-templates select="attribution"/>
+ </fo:inline>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="sidebar"/>
+<xsl:template match="sidebar" dtm:id="sidebar">
+ <fo:block xsl:use-attribute-sets="sidebar.properties">
+ <xsl:if test="./title">
+ <fo:block font-weight="bold">
+ <xsl:apply-templates select="./title" mode="sidebar.title.mode"/>
+ </fo:block>
+ </xsl:if>
+
+ <xsl:apply-templates select="*[not(self::title)
+ or self::processing-instruction('se:choice')]"/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="title.sidebar.sidebar-title-mode"/>
+<xsl:template match="sidebar/title" mode="sidebar.title.mode" dtm:id="title.sidebar.sidebar-title-mode">
+ <xsl:apply-templates/>
+</xsl:template>
+
+<dtm:doc dtm:idref="msgset"/>
+<xsl:template match="msgset" dtm:id="msgset">
+ <xsl:apply-templates/>
+</xsl:template>
+
+<dtm:doc dtm:idref="msgentry"/>
+<xsl:template match="msgentry" dtm:id="msgentry">
+ <xsl:call-template name="block.object"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="simplemsgentry"/>
+<xsl:template match="simplemsgentry" dtm:id="simplemsgentry">
+ <xsl:call-template name="block.object"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="msg"/>
+<xsl:template match="msg" dtm:id="msg">
+ <xsl:call-template name="block.object"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="msgmain"/>
+<xsl:template match="msgmain" dtm:id="msgmain">
+ <xsl:apply-templates/>
+</xsl:template>
+
+<dtm:doc dtm:idref="msgsub"/>
+<xsl:template match="msgsub" dtm:id="msgsub">
+ <xsl:apply-templates/>
+</xsl:template>
+
+<dtm:doc dtm:idref="msgrel"/>
+<xsl:template match="msgrel" dtm:id="msgrel">
+ <xsl:apply-templates/>
+</xsl:template>
+
+<dtm:doc dtm:idref="msgtext"/>
+<xsl:template match="msgtext" dtm:id="msgtext">
+ <xsl:apply-templates/>
+</xsl:template>
+
+<dtm:doc dtm:idref="msginfo"/>
+<xsl:template match="msginfo" dtm:id="msginfo">
+ <xsl:call-template name="block.object"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="msglevel"/>
+<xsl:template match="msglevel" dtm:id="msglevel">
+ <fo:block>
+ <fo:inline font-weight="bold">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'msglevel'"/>
+ </xsl:call-template>
+ </fo:inline>
+ <xsl:apply-templates/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="msgorig"/>
+<xsl:template match="msgorig" dtm:id="msgorig">
+ <fo:block>
+ <fo:inline font-weight="bold">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'msgorig'"/>
+ </xsl:call-template>
+ </fo:inline>
+ <xsl:apply-templates/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="msgaud"/>
+<xsl:template match="msgaud" dtm:id="msgaud">
+ <fo:block>
+ <fo:inline font-weight="bold">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'msgaud'"/>
+ </xsl:call-template>
+ </fo:inline>
+ <xsl:apply-templates/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="msgexplan"/>
+<xsl:template match="msgexplan" dtm:id="msgexplan">
+ <xsl:call-template name="block.object"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="title.msgexplan"/>
+<xsl:template match="msgexplan/title" dtm:id="title.msgexplan">
+ <fo:block font-weight="bold">
+ <xsl:apply-templates/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="ackno"/>
+<xsl:template match="ackno" dtm:id="ackno">
+ <fo:block xsl:use-attribute-sets="normal.para.properties">
+ <xsl:apply-templates/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="highlights"/>
+<xsl:template match="highlights" dtm:id="highlights">
+ <xsl:call-template name="block.object"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="calclines"/>
+<xsl:template name="calclines" dtm:id="calclines">
+ <xsl:param name="marks"/>
+ <xsl:param name="text" select="text()"/>
+ <xsl:param name="curline" select="0"/>
+ <xsl:variable name="lfeed" select="'&#xA;'"/>
+ <xsl:variable name="num" select="concat(' ', $curline, ' ')"/>
+ <xsl:choose>
+ <xsl:when test="contains($marks, $num)">
+ <xsl:variable name="str" select="concat(substring-before($marks, $num), substring-after($marks, $num))"/>
+ <xsl:variable name="mark" select="substring-before(substring-after(substring-after($marks, $num), '('), ')')"/>
+ <xsl:value-of select="concat('(', $mark, ')')"/>
+ <xsl:call-template name="calclines">
+ <xsl:with-param name="marks" select="$str"/>
+ <xsl:with-param name="text" select="$text"/>
+ <xsl:with-param name="curline" select="$curline"/>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:when test="contains($text, $lfeed)">
+ <xsl:value-of select="$lfeed"/>
+ <xsl:call-template name="calclines">
+ <xsl:with-param name="marks" select="$marks"/>
+ <xsl:with-param name="text" select="substring-after($text, $lfeed)"/>
+ <xsl:with-param name="curline" select="$curline + 1"/>
+ </xsl:call-template>
+ </xsl:when>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="areaspec.calc"/>
+<xsl:template match="areaspec" mode="calc" dtm:id="areaspec.calc">
+ <xsl:apply-templates mode="calc"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="areaset.calc"/>
+<xsl:template match="areaset" mode="calc" dtm:id="areaset.calc">
+ <xsl:apply-templates mode="calc"/>
+ <xsl:value-of select="concat('(', string(position()), ')')"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="area.calc"/>
+<xsl:template match="area" mode="calc" dtm:id="area.calc">
+ <xsl:variable name="pos" select="number(normalize-space(@coords))"/>
+ <xsl:if test="not($pos = 'NaN')">
+ <xsl:text> </xsl:text>
+ <xsl:value-of select="string($pos)"/>
+ <xsl:text> </xsl:text>
+ </xsl:if>
+ <xsl:if test="not(parent::areaset)">
+ <xsl:value-of select="concat('(', string(position()), ')')"/>
+ </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:idref="programlisting.programlistingco"/>
+<xsl:template match="programlistingco/programlisting" dtm:id="programlisting.programlistingco">
+ <xsl:variable name="marks">
+ <xsl:apply-templates select="../areaspec" mode="calc"/>
+ </xsl:variable>
+ <xsl:variable name="lines">
+ <xsl:call-template name="calclines">
+ <xsl:with-param name="marks" select="$marks"/>
+ </xsl:call-template>
+ </xsl:variable>
+ <fo:table>
+ <fo:table-column column-number="1"/>
+ <fo:table-column column-number="2" column-width="2cm" />
+ <fo:table-body>
+ <fo:table-row>
+ <fo:table-cell>
+ <xsl:call-template name="programlisting"/>
+ </fo:table-cell>
+ <fo:table-cell>
+ <fo:block linefeed-treatment="preserve"
+ xsl:use-attribute-sets="shade.verbatim.style verbatim.properties">
+ <xsl:value-of select="$lines"/>
+ </fo:block>
+ </fo:table-cell>
+ </fo:table-row>
+ </fo:table-body>
+ </fo:table>
+</xsl:template>
+
+<dtm:doc dtm:idref="programlistingco"/>
+<xsl:template match="programlistingco|areaspec|areaset|area|screenco" dtm:id="programlistingco">
+ <fo:block xsl:use-attribute-sets="normal.para.properties">
+ <xsl:apply-templates/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="calloutlist"/>
+<xsl:template match="calloutlist" dtm:id="calloutlist">
+ <fo:block>
+ <xsl:apply-templates
+ select="title[not(self::processing-instruction('se:choice'))]"
+ mode="plain.formal.title.mode"/>
+
+ <fo:list-block xsl:use-attribute-sets="list.block.spacing"
+ provisional-label-separation="0.2em">
+ <xsl:attribute name="provisional-distance-between-starts">
+ <xsl:choose>
+ <xsl:when test="$label-width != ''">
+ <xsl:value-of select="$label-width"/>
+ </xsl:when>
+ <xsl:otherwise>2em</xsl:otherwise>
+ </xsl:choose>
+ </xsl:attribute>
+ <xsl:apply-templates select="callout"/>
+ </fo:list-block>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="callout.calloutlist"/>
+<xsl:template match="calloutlist/callout" dtm:id="callout.calloutlist">
+ <fo:list-item xsl:use-attribute-sets="list.item.spacing">
+ <fo:list-item-label end-indent="label-end()">
+ <fo:block>
+ <xsl:variable name="x" select="id(@arearefs)"/>
+ <xsl:for-each select="$x[1]/parent::*[1]/*">
+ <xsl:if test="@id = $x/@id">
+ <xsl:value-of select="concat('(', string(position()), ')')"/>
+ </xsl:if>
+ </xsl:for-each>
+ </fo:block>
+ </fo:list-item-label>
+ <fo:list-item-body start-indent="body-start()">
+ <xsl:apply-templates/>
+ </fo:list-item-body>
+ </fo:list-item>
+</xsl:template>
+
+<dtm:doc dtm:idref="co"/>
+<xsl:template match="co" dtm:id="co">
+ <fo:inline>
+ <xsl:text>(</xsl:text>
+ <xsl:value-of select="position() div 2"/>
+ <xsl:text>)</xsl:text>
+ </fo:inline>
+</xsl:template>
+
+<!-- Indexterms -->
+ <dtm:doc dtm:idref="indexterm"/>
+ <xsl:template match="indexterm" dtm:id="indexterm">
+ <xsl:if test="'1' = $show.preamble.editing">
+ <fo:block background-color="#e0e0e0"
+ border-width="1pt"
+ border-color="black">
+ <xsl:choose>
+ <xsl:when test="@class='endofrange'">
+ <xsl:text>End of range</xsl:text>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates mode="startofrange"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </fo:block>
+ </xsl:if>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="primary.startofrange"/>
+ <xsl:template match="primary" mode="startofrange" dtm:id="primary.startofrange">
+ <fo:block>
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="tertiary.startofrange"/>
+ <xsl:template match="tertiary" mode="startofrange" dtm:id="tertiary.startofrange">
+ <fo:block start-indent="4em">
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="see.startofrange"/>
+ <xsl:template match="seealso|see|secondary" mode="startofrange" dtm:id="see.startofrange">
+ <fo:block start-indent="2em">
+ <xsl:if test="local-name(.)='seealso'">
+ <xsl:text>See also: </xsl:text>
+ </xsl:if>
+ <xsl:if test="local-name(.)='see'">
+ <xsl:text>See: </xsl:text>
+ </xsl:if>
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:template>
+
+</xsl:stylesheet>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/common-table.xsl b/doc/editor_configs/serna/scons/docbook-xsl-serna/common-table.xsl
new file mode 100644
index 0000000..4bf89ca
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/common-table.xsl
@@ -0,0 +1,444 @@
+<?xml version="1.0"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:dtm="http://syntext.com/Extensions/DocumentTypeMetadata-1.0"
+ extension-element-prefixes="dtm"
+ version="1.0">
+
+ <!-- A row expressed with the following mnemonics:
+
+ 0: -> means a cell, that takes no rows down
+ 1: -> means a cell, that takes 1 row down besides its own row
+ 0:0:0: -> means a cell, that spans 3 cells in its row and takes no row down
+ 1:1: -> means a cell, that spans 2 cells in its row and takes 1 more row down
+
+ -->
+
+
+ <!-- Creates a string of "0:" repeating number of "cols"
+
+ For cols==0: ""
+ cols==1: 0:
+ cols==2: 0:0:
+ ....
+ -->
+<dtm:doc dtm:idref="blank.spans"/>
+<xsl:template name="blank.spans" dtm:id="blank.spans">
+ <xsl:param name="cols" select="1"/>
+ <xsl:if test="$cols &gt; 0">
+ <xsl:text>0:</xsl:text>
+ <xsl:call-template name="blank.spans">
+ <xsl:with-param name="cols" select="$cols - 1"/>
+ </xsl:call-template>
+ </xsl:if>
+</xsl:template>
+
+<!-- Calculates the following cells' span mnemonic, removing
+ span related to current cell.
+-->
+<dtm:doc dtm:idref="calculate.following.spans"/>
+<xsl:template name="calculate.following.spans" dtm:id="calculate.following.spans">
+ <xsl:param name="colspan" select="1"/>
+ <xsl:param name="spans" select="''"/>
+
+ <xsl:choose>
+ <xsl:when test="$colspan &gt; 0">
+ <xsl:call-template name="calculate.following.spans">
+ <xsl:with-param name="colspan" select="$colspan - 1"/>
+ <xsl:with-param name="spans" select="substring-after($spans,':')"/>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$spans"/>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<!-- Generate empty cells if the span is not exhausted. -->
+<dtm:doc dtm:idref="finaltd"/>
+<xsl:template name="finaltd" dtm:id="finaltd">
+ <xsl:param name="spans"/>
+ <xsl:param name="col" select="0"/>
+
+ <xsl:if test="$spans != ''">
+ <xsl:choose>
+ <xsl:when test="starts-with($spans,'0:')">
+ <!-- TODO: We now disable generating empty cells in the end of
+ the row. When table cell extension will be created, empty cells will be
+ generated. -->
+ <!-- xsl:call-template name="empty.table.cell">
+ <xsl:with-param name="colnum" select="$col"/>
+ </xsl:call-template -->
+ </xsl:when>
+ <xsl:otherwise></xsl:otherwise>
+ </xsl:choose>
+
+ <xsl:call-template name="finaltd">
+ <xsl:with-param name="spans" select="substring-after($spans,':')"/>
+ <xsl:with-param name="col" select="$col+1"/>
+ </xsl:call-template>
+ </xsl:if>
+</xsl:template>
+
+<!-- For every mnemonic in spans decrease its morerows value for 1 -->
+<dtm:doc dtm:idref="sfinaltd"/>
+<xsl:template name="sfinaltd" dtm:id="sfinaltd">
+ <xsl:param name="spans"/>
+
+ <xsl:if test="$spans != ''">
+ <xsl:choose>
+ <xsl:when test="starts-with($spans,'0:')">0:</xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="substring-before($spans,':')-1"/>
+ <xsl:text>:</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+
+ <xsl:call-template name="sfinaltd">
+ <xsl:with-param name="spans" select="substring-after($spans,':')"/>
+ </xsl:call-template>
+ </xsl:if>
+ <!-- Do nothing if following spans is none -->
+</xsl:template>
+
+<!-- entry.colnum
+ Determine the column number in which a given entry occurs
+
+ If an entry has a colname or namest attribute,
+ this template will determine the number of the column in which the
+ entry should occur.
+
+ For other entry's, 0 is returned.
+-->
+<dtm:doc dtm:idref="entry.colnum"/>
+<xsl:template name="entry.colnum" dtm:id="entry.colnum">
+ <xsl:param name="entry" select="."/>
+
+ <xsl:choose>
+ <xsl:when test="$entry/@spanname">
+ <xsl:variable name="spanname" select="$entry/@spanname"/>
+ <xsl:variable name="spanspec"
+ select="$entry/ancestor::tgroup/spanspec[@spanname=$spanname]"/>
+ <xsl:variable name="colspec"
+ select="$entry/ancestor::tgroup/colspec[@colname=$spanspec/@namest]"/>
+ <xsl:call-template name="colspec.colnum">
+ <xsl:with-param name="colspec" select="$colspec"/>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:when test="$entry/@colname">
+ <xsl:variable name="colname" select="$entry/@colname"/>
+ <xsl:variable name="colspec"
+ select="$entry/ancestor::tgroup/colspec[@colname=$colname]"/>
+ <xsl:call-template name="colspec.colnum">
+ <xsl:with-param name="colspec" select="$colspec"/>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:when test="$entry/@namest">
+ <xsl:variable name="namest" select="$entry/@namest"/>
+ <xsl:variable name="colspec"
+ select="$entry/ancestor::tgroup/colspec[@colname=$namest]"/>
+ <xsl:call-template name="colspec.colnum">
+ <xsl:with-param name="colspec" select="$colspec"/>
+ </xsl:call-template>
+ </xsl:when>
+ <!-- no idea, return 0 -->
+ <xsl:otherwise>0</xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+ <!-- Calculates column number the given colspec corresponds to. -->
+<dtm:doc dtm:idref="colspec.colnum"/>
+<xsl:template name="colspec.colnum" dtm:id="colspec.colnum">
+ <xsl:param name="colspec" select="."/>
+ <xsl:choose>
+ <xsl:when test="$colspec/@colnum">
+ <xsl:value-of select="$colspec/@colnum"/>
+ </xsl:when>
+ <xsl:when test="$colspec/preceding-sibling::colspec">
+ <xsl:variable name="prec.colspec.colnum">
+ <xsl:call-template name="colspec.colnum">
+ <xsl:with-param name="colspec"
+ select="$colspec/preceding-sibling::colspec[1]"/>
+ </xsl:call-template>
+ </xsl:variable>
+ <xsl:value-of select="$prec.colspec.colnum + 1"/>
+ </xsl:when>
+ <xsl:otherwise>1</xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<!--
+ Calculates how many cells the span takes. If one cell, then
+ value is 1.
+-->
+<dtm:doc dtm:idref="calculate.colspan"/>
+<xsl:template name="calculate.colspan" dtm:id="calculate.colspan">
+ <xsl:param name="entry" select="."/>
+ <xsl:variable name="spanname" select="$entry/@spanname"/>
+ <xsl:variable name="spanspec"
+ select="$entry/ancestor::tgroup/spanspec[@spanname=$spanname]"/>
+
+ <xsl:variable name="namest">
+ <xsl:choose>
+ <xsl:when test="@spanname">
+ <xsl:value-of select="$spanspec/@namest"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$entry/@namest"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:variable name="nameend">
+ <xsl:choose>
+ <xsl:when test="@spanname">
+ <xsl:value-of select="$spanspec/@nameend"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$entry/@nameend"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:variable name="scol">
+ <xsl:call-template name="colspec.colnum">
+ <xsl:with-param name="colspec"
+ select="$entry/ancestor::tgroup/colspec[@colname=$namest]"/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <xsl:variable name="ecol">
+ <xsl:call-template name="colspec.colnum">
+ <xsl:with-param name="colspec"
+ select="$entry/ancestor::tgroup/colspec[@colname=$nameend]"/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <xsl:choose>
+ <xsl:when test="$namest != '' and $nameend != ''">
+ <xsl:choose>
+ <xsl:when test="$ecol &gt;= $scol">
+ <xsl:value-of select="$ecol - $scol + 1"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$scol - $ecol + 1"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:when>
+ <xsl:otherwise>1</xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="inherited.table.attribute"/>
+<xsl:template name="inherited.table.attribute" dtm:id="inherited.table.attribute">
+ <xsl:param name="entry" select="."/>
+ <xsl:param name="colnum" select="0"/>
+ <xsl:param name="attribute" select="'colsep'"/>
+
+ <xsl:variable name="row" select="$entry/ancestor-or-self::row[1]"/>
+ <xsl:variable name="tgroup" select="$row/ancestor::tgroup[1]"/>
+
+ <xsl:variable name="entry.value">
+ <xsl:call-template name="get-attribute">
+ <xsl:with-param name="element" select="$entry"/>
+ <xsl:with-param name="attribute" select="$attribute"/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <xsl:variable name="row.value">
+ <xsl:call-template name="get-attribute">
+ <xsl:with-param name="element" select="$row"/>
+ <xsl:with-param name="attribute" select="$attribute"/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <xsl:variable name="span.value">
+ <xsl:if test="$entry/@spanname">
+ <xsl:variable name="spanname" select="$entry/@spanname"/>
+ <xsl:variable name="spanspec"
+ select="$tgroup/spanspec[@spanname=$spanname]"/>
+ <xsl:variable name="span.colspec"
+ select="$tgroup/colspec[@colname=$spanspec/@namest]"/>
+
+ <xsl:variable name="spanspec.value">
+ <xsl:call-template name="get-attribute">
+ <xsl:with-param name="element" select="$spanspec"/>
+ <xsl:with-param name="attribute" select="$attribute"/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <xsl:variable name="scolspec.value">
+ <xsl:call-template name="get-attribute">
+ <xsl:with-param name="element" select="$span.colspec"/>
+ <xsl:with-param name="attribute" select="$attribute"/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <xsl:choose>
+ <xsl:when test="$spanspec.value != ''">
+ <xsl:value-of select="$spanspec.value"/>
+ </xsl:when>
+ <xsl:when test="$scolspec.value != ''">
+ <xsl:value-of select="$scolspec.value"/>
+ </xsl:when>
+ <xsl:otherwise></xsl:otherwise>
+ </xsl:choose>
+ </xsl:if>
+ </xsl:variable>
+
+ <xsl:variable name="namest.value">
+ <xsl:if test="$entry/@namest">
+ <xsl:variable name="namest" select="$entry/@namest"/>
+ <xsl:variable name="colspec"
+ select="$tgroup/colspec[@colname=$namest]"/>
+
+ <xsl:variable name="inner.namest.value">
+ <xsl:call-template name="get-attribute">
+ <xsl:with-param name="element" select="$colspec"/>
+ <xsl:with-param name="attribute" select="$attribute"/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <xsl:choose>
+ <xsl:when test="$inner.namest.value">
+ <xsl:value-of select="$inner.namest.value"/>
+ </xsl:when>
+ <xsl:otherwise></xsl:otherwise>
+ </xsl:choose>
+ </xsl:if>
+ </xsl:variable>
+
+ <xsl:variable name="tgroup.value">
+ <xsl:call-template name="get-attribute">
+ <xsl:with-param name="element" select="$tgroup"/>
+ <xsl:with-param name="attribute" select="$attribute"/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <xsl:variable name="default.value">
+ <!-- This section used to say that rowsep and colsep have defaults based -->
+ <!-- on the frame setting. Further reflection and closer examination of the -->
+ <!-- CALS spec reveals I was mistaken. The default is "1" for rowsep and colsep. -->
+ <!-- For everything else, the default is the tgroup value -->
+ <xsl:choose>
+ <xsl:when test="$tgroup.value != ''">
+ <xsl:value-of select="$tgroup.value"/>
+ </xsl:when>
+ <xsl:when test="$attribute = 'rowsep'">1</xsl:when>
+ <xsl:when test="$attribute = 'colsep'">1</xsl:when>
+ <xsl:otherwise><!-- empty --></xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:choose>
+ <xsl:when test="$entry.value != ''">
+ <xsl:value-of select="$entry.value"/>
+ </xsl:when>
+ <xsl:when test="$row.value != ''">
+ <xsl:value-of select="$row.value"/>
+ </xsl:when>
+ <xsl:when test="$span.value != ''">
+ <xsl:value-of select="$span.value"/>
+ </xsl:when>
+ <xsl:when test="$namest.value != ''">
+ <xsl:value-of select="$namest.value"/>
+ </xsl:when>
+ <xsl:when test="$colnum &gt; 0">
+ <xsl:variable name="calc.colvalue">
+ <xsl:call-template name="colnum.colspec">
+ <xsl:with-param name="colnum" select="$colnum"/>
+ <xsl:with-param name="attribute" select="$attribute"/>
+ </xsl:call-template>
+ </xsl:variable>
+ <xsl:choose>
+ <xsl:when test="$calc.colvalue != ''">
+ <xsl:value-of select="$calc.colvalue"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$default.value"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$default.value"/>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<!-- Get colspec value. Namely, value given for the current column. -->
+
+<dtm:doc dtm:idref="colnum.colspec"/>
+<xsl:template name="colnum.colspec" dtm:id="colnum.colspec">
+ <xsl:param name="colnum" select="0"/>
+ <xsl:param name="attribute" select="'colname'"/>
+ <xsl:param name="colspecs" select="ancestor::tgroup/colspec"/>
+ <!-- Param count tells which colspec we currently work on -->
+ <xsl:param name="count" select="1"/>
+
+ <xsl:choose>
+ <!-- If there are no column specifications or current colspec
+ over the colnum, we did not find any column specifications -->
+ <xsl:when test="not($colspecs) or $count &gt; $colnum">
+ <!-- nop -->
+ </xsl:when>
+ <!-- If the first colspec has col number, explore it -->
+ <xsl:when test="$colspecs[1]/@colnum">
+ <xsl:choose>
+ <!-- If colspec's colnum is our colnum take the value -->
+ <xsl:when test="$colspecs[1]/@colnum = $colnum">
+ <xsl:call-template name="get-attribute">
+ <xsl:with-param name="element" select="$colspecs[1]"/>
+ <xsl:with-param name="attribute" select="$attribute"/>
+ </xsl:call-template>
+ </xsl:when>
+ <!-- Otherwise proceed to the next colspec -->
+ <xsl:otherwise>
+ <xsl:call-template name="colnum.colspec">
+ <xsl:with-param name="colnum" select="$colnum"/>
+ <xsl:with-param name="attribute" select="$attribute"/>
+ <xsl:with-param name="colspecs"
+ select="$colspecs[position()&gt;1]"/>
+ <xsl:with-param name="count"
+ select="$colspecs[1]/@colnum+1"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:when>
+ <!-- Colspec does not have explicit number, therefore rely on
+ "count" -->
+ <xsl:otherwise>
+ <xsl:choose>
+ <!-- If we reached right colspec, take it value. -->
+ <xsl:when test="$count = $colnum">
+ <xsl:call-template name="get-attribute">
+ <xsl:with-param name="element" select="$colspecs[1]"/>
+ <xsl:with-param name="attribute" select="$attribute"/>
+ </xsl:call-template>
+ </xsl:when>
+ <!-- Otherwise proceed to the next colspec -->
+ <xsl:otherwise>
+ <xsl:call-template name="colnum.colspec">
+ <xsl:with-param name="colnum" select="$colnum"/>
+ <xsl:with-param name="attribute" select="$attribute"/>
+ <xsl:with-param name="colspecs"
+ select="$colspecs[position()&gt;1]"/>
+ <xsl:with-param name="count" select="$count+1"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="get-attribute"/>
+<xsl:template name="get-attribute" dtm:id="get-attribute">
+ <xsl:param name="element" select="."/>
+ <xsl:param name="attribute" select="''"/>
+
+ <xsl:for-each select="$element/@*">
+ <xsl:if test="local-name(.) = $attribute">
+ <xsl:value-of select="."/>
+ </xsl:if>
+ </xsl:for-each>
+</xsl:template>
+
+</xsl:stylesheet>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/common.xsl b/doc/editor_configs/serna/scons/docbook-xsl-serna/common.xsl
new file mode 100644
index 0000000..0683f5e
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/common.xsl
@@ -0,0 +1,451 @@
+<?xml version='1.0'?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:doc="http://nwalsh.com/xsl/documentation/1.0"
+ xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ xmlns:dtm="http://syntext.com/Extensions/DocumentTypeMetadata-1.0"
+ exclude-result-prefixes="doc"
+ extension-element-prefixes="dtm"
+ version='1.0'>
+
+ <!-- Counts the depth of the sections/refsections/sectN when
+ "title" is a context node -->
+ <dtm:doc dtm:idref="section.level"/>
+ <xsl:template name="section.level" dtm:id="section.level">
+ <xsl:param name="parent" select="parent::*"/>
+ <xsl:variable name="title.parent" select="name($parent)"/>
+ <xsl:choose>
+ <xsl:when test="$title.parent='section'">
+ <xsl:value-of select="count(ancestor::section)"/>
+ </xsl:when>
+ <xsl:when test="$title.parent='refsection'">
+ <xsl:value-of select="count(ancestor::refsection)"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:variable
+ name="nmbr"
+ select="translate($title.parent, 'sectionrfmpl', '')"/>
+ <xsl:choose>
+ <xsl:when test="number($nmbr) = 'NaN'">1</xsl:when>
+ <xsl:otherwise><xsl:value-of select="$nmbr"/></xsl:otherwise>
+ </xsl:choose>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+
+<dtm:doc dtm:idref="get.type"/>
+<xsl:template name="get.type" dtm:id="get.type">
+ <xsl:param name="node" select="."/>
+ <xsl:choose>
+ <xsl:when test="$node[self::appendix or self::article
+ or self::chapter or self::preface
+ or self::bibliography or self::glossary
+ or self::index]">component</xsl:when>
+ <xsl:when test="$node[self::book or self::part or
+ self::set or self::reference]">division</xsl:when>
+ <xsl:otherwise>0</xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="is.component"/>
+<xsl:template name="is.component" dtm:id="is.component">
+ <xsl:param name="node" select="."/>
+ <xsl:choose>
+ <xsl:when test="$node[self::appendix or self::article or
+ self::chapter or self::preface or
+ self::bibliography or self::glossary or
+ self::index]">1</xsl:when>
+ <xsl:otherwise>0</xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="copyright.years"/>
+<xsl:template name="copyright.years" dtm:id="copyright.years">
+ <xsl:param name="years"/>
+ <xsl:param name="print.ranges" select="1"/>
+ <xsl:param name="single.year.ranges" select="0"/>
+ <xsl:param name="firstyear" select="0"/>
+ <xsl:param name="nextyear" select="0"/>
+ <xsl:variable name="num.years" select="count($years)"/>
+ <xsl:choose>
+ <xsl:when test="$print.ranges = 0">
+ <xsl:choose>
+ <xsl:when test="$num.years = 0"/>
+ <xsl:when test="$num.years = 1">
+ <xsl:apply-templates select="$years[1]" mode="titlepage.mode"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="$years[1]" mode="titlepage.mode"/>
+ <xsl:text>, </xsl:text>
+ <xsl:call-template name="copyright.years">
+ <xsl:with-param name="years"
+ select="$years[position() &gt; 1]"/>
+ <xsl:with-param name="print.ranges" select="$print.ranges"/>
+ <xsl:with-param name="single.year.ranges"
+ select="$single.year.ranges"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:when>
+ <xsl:when test="$num.years = 0">
+ <xsl:variable name="lastyear" select="$nextyear - 1"/>
+ <xsl:choose>
+ <xsl:when test="$firstyear = 0">
+ <!-- there weren't any years at all -->
+ </xsl:when>
+ <xsl:when test="$firstyear = $lastyear">
+ <xsl:value-of select="$firstyear"/>
+ </xsl:when>
+ <xsl:when test="$single.year.ranges = 0
+ and $lastyear = $firstyear + 1">
+ <xsl:value-of select="$firstyear"/>
+ <xsl:text>, </xsl:text>
+ <xsl:value-of select="$lastyear"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$firstyear"/>
+ <xsl:text>-</xsl:text>
+ <xsl:value-of select="$lastyear"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:when>
+ <xsl:when test="$firstyear = 0">
+ <xsl:call-template name="copyright.years">
+ <xsl:with-param name="years"
+ select="$years[position() &gt; 1]"/>
+ <xsl:with-param name="firstyear" select="$years[1]"/>
+ <xsl:with-param name="nextyear" select="$years[1] + 1"/>
+ <xsl:with-param name="print.ranges" select="$print.ranges"/>
+ <xsl:with-param name="single.year.ranges"
+ select="$single.year.ranges"/>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:when test="$nextyear = $years[1]">
+ <xsl:call-template name="copyright.years">
+ <xsl:with-param name="years"
+ select="$years[position() &gt; 1]"/>
+ <xsl:with-param name="firstyear" select="$firstyear"/>
+ <xsl:with-param name="nextyear" select="$nextyear + 1"/>
+ <xsl:with-param name="print.ranges" select="$print.ranges"/>
+ <xsl:with-param name="single.year.ranges"
+ select="$single.year.ranges"/>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:otherwise>
+ <!-- we have years left, but they aren't in the current range -->
+ <xsl:choose>
+ <xsl:when test="$nextyear = $firstyear + 1">
+ <xsl:value-of select="$firstyear"/>
+ <xsl:text>, </xsl:text>
+ </xsl:when>
+ <xsl:when test="$single.year.ranges = 0
+ and $nextyear = $firstyear + 2">
+ <xsl:value-of select="$firstyear"/>
+ <xsl:text>, </xsl:text>
+ <xsl:value-of select="$nextyear - 1"/>
+ <xsl:text>, </xsl:text>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$firstyear"/>
+ <xsl:text>-</xsl:text>
+ <xsl:value-of select="$nextyear - 1"/>
+ <xsl:text>, </xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:call-template name="copyright.years">
+ <xsl:with-param name="years"
+ select="$years[position() &gt; 1]"/>
+ <xsl:with-param name="firstyear" select="$years[1]"/>
+ <xsl:with-param name="nextyear" select="$years[1] + 1"/>
+ <xsl:with-param name="print.ranges" select="$print.ranges"/>
+ <xsl:with-param name="single.year.ranges"
+ select="$single.year.ranges"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="lookup.key"/>
+<xsl:template name="lookup.key" dtm:id="lookup.key">
+ <xsl:param name="key" select="''"/>
+ <xsl:param name="table" select="''"/>
+
+ <xsl:if test="contains($table, ' ')">
+ <xsl:choose>
+ <xsl:when test="substring-before($table, ' ') = $key">
+ <xsl:variable name="rest" select="substring-after($table, ' ')"/>
+ <xsl:choose>
+ <xsl:when test="contains($rest, ' ')">
+ <xsl:value-of select="substring-before($rest, ' ')"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$rest"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="lookup.key">
+ <xsl:with-param name="key" select="$key"/>
+ <xsl:with-param name="table" select="substring-after(substring-after($table,' '), ' ')"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:idref="copy-string"/>
+<xsl:template name="copy-string" dtm:id="copy-string">
+ <!-- returns 'count' copies of 'string' -->
+ <xsl:param name="string"/>
+ <xsl:param name="count" select="0"/>
+ <xsl:param name="result"/>
+
+ <xsl:choose>
+ <xsl:when test="$count&gt;0">
+ <xsl:call-template name="copy-string">
+ <xsl:with-param name="string" select="$string"/>
+ <xsl:with-param name="count" select="$count - 1"/>
+ <xsl:with-param name="result">
+ <xsl:value-of select="$result"/>
+ <xsl:value-of select="$string"/>
+ </xsl:with-param>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$result"/>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="decorations"/>
+<xsl:template name="decorations" dtm:id="decorations">
+ <xsl:param name="key" select="local-name(.)"/>
+ <xsl:call-template name="lookup.key">
+ <xsl:with-param name="key" select="$key"/>
+ <xsl:with-param name="table" select="$generate.toc"/>
+ </xsl:call-template>
+</xsl:template>
+
+<dtm:doc dtm:idref="dingbat"/>
+<xsl:template name="dingbat" dtm:id="dingbat">
+ <xsl:param name="dingbat">bullet</xsl:param>
+ <xsl:variable name="symbol">
+ <xsl:choose>
+ <xsl:when test="$dingbat='bullet'">o</xsl:when>
+ <xsl:when test="$dingbat='copyright'">&#x00A9;</xsl:when>
+ <xsl:when test="$dingbat='trademark'">&#x2122;</xsl:when>
+ <xsl:when test="$dingbat='trade'">&#x2122;</xsl:when>
+ <xsl:when test="$dingbat='registered'">&#x00AE;</xsl:when>
+ <xsl:when test="$dingbat='service'">(SM)</xsl:when>
+ <xsl:when test="$dingbat='ldquo'">"</xsl:when>
+ <xsl:when test="$dingbat='rdquo'">"</xsl:when>
+ <xsl:when test="$dingbat='lsquo'">'</xsl:when>
+ <xsl:when test="$dingbat='rsquo'">'</xsl:when>
+ <xsl:when test="$dingbat='em-dash'">--</xsl:when>
+ <xsl:when test="$dingbat='en-dash'">-</xsl:when>
+ <xsl:otherwise>o</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:choose>
+ <xsl:when test="$dingbat.font.family = ''">
+ <xsl:copy-of select="$symbol"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <fo:inline font-family="{$dingbat.font.family}">
+ <xsl:copy-of select="$symbol"/>
+ </fo:inline>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="person.name"/>
+<xsl:template name="person.name" dtm:id="person.name">
+ <!-- Formats a personal name. Handles corpauthor as a special case. -->
+ <xsl:param name="node" select="."/>
+
+ <xsl:variable name="style">
+ <xsl:choose>
+ <xsl:when test="$node/@role">
+ <xsl:value-of select="$node/@role"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text></xsl:text> <!-- TODO: move to a param -->
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:choose>
+ <!-- the personname element is a specialcase -->
+ <xsl:when test="$node/personname">
+ <xsl:call-template name="person.name">
+ <xsl:with-param name="node" select="$node/personname"/>
+ </xsl:call-template>
+ </xsl:when>
+
+ <!-- handle corpauthor as a special case...-->
+ <xsl:when test="name($node)='corpauthor'">
+ <xsl:apply-templates select="$node"/>
+ </xsl:when>
+
+ <xsl:otherwise>
+ <xsl:choose>
+ <xsl:when test="$style = 'family-given'">
+ <xsl:call-template name="person.name.family-given">
+ <xsl:with-param name="node" select="$node"/>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:when test="$style = 'last-first'">
+ <xsl:call-template name="person.name.last-first">
+ <xsl:with-param name="node" select="$node"/>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="person.name.first-last">
+ <xsl:with-param name="node" select="$node"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="person.name.family-given"/>
+<xsl:template name="person.name.family-given" dtm:id="person.name.family-given">
+ <xsl:param name="node" select="."/>
+
+ <!-- The family-given style applies a convention for identifying given -->
+ <!-- and family names in locales where it may be ambiguous -->
+ <xsl:apply-templates select="$node/surname[1]"/>
+
+ <xsl:if test="$node/surname and $node/firstname">
+ <xsl:text> </xsl:text>
+ </xsl:if>
+
+ <xsl:apply-templates select="$node/firstname[1]"/>
+
+ <xsl:text> [FAMILY Given]</xsl:text>
+</xsl:template>
+
+<dtm:doc dtm:idref="person.name.last-first"/>
+<xsl:template name="person.name.last-first" dtm:id="person.name.last-first">
+ <xsl:param name="node" select="."/>
+
+ <xsl:apply-templates select="$node/surname[1]"/>
+
+ <xsl:if test="$node/surname and $node/firstname">
+ <xsl:text>, </xsl:text>
+ </xsl:if>
+
+ <xsl:apply-templates select="$node/firstname[1]"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="person.name.first-last"/>
+<xsl:template name="person.name.first-last" dtm:id="person.name.first-last">
+ <xsl:param name="node" select="."/>
+
+ <xsl:if test="$node/honorific">
+ <xsl:apply-templates select="$node/honorific[1]"/>
+ <xsl:value-of select="$punct.honorific"/>
+ </xsl:if>
+
+ <xsl:if test="$node/firstname">
+ <xsl:if test="$node/honorific">
+ <xsl:text> </xsl:text>
+ </xsl:if>
+ <xsl:apply-templates select="$node/firstname[1]"/>
+ </xsl:if>
+
+ <xsl:if test="$node/othername and $author.othername.in.middle != 0">
+ <xsl:if test="$node/honorific or $node/firstname">
+ <xsl:text> </xsl:text>
+ </xsl:if>
+ <xsl:apply-templates select="$node/othername[1]"/>
+ </xsl:if>
+
+ <xsl:if test="$node/surname">
+ <xsl:if test="$node/honorific or $node/firstname
+ or ($node/othername and $author.othername.in.middle != 0)">
+ <xsl:text> </xsl:text>
+ </xsl:if>
+ <xsl:apply-templates select="$node/surname[1]"/>
+ </xsl:if>
+
+ <xsl:if test="$node/lineage">
+ <xsl:text>, </xsl:text>
+ <xsl:apply-templates select="$node/lineage[1]"/>
+ </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:idref="person.name.list"/>
+<xsl:template name="person.name.list" dtm:id="person.name.list">
+ <!-- Return a formatted string representation of the contents of
+ the current element. The current element must contain one or
+ more AUTHORs, CORPAUTHORs, OTHERCREDITs, and/or EDITORs.
+
+ John Doe
+ or
+ John Doe and Jane Doe
+ or
+ John Doe, Jane Doe, and A. Nonymous
+ -->
+ <xsl:param name="person.list"
+ select="author|corpauthor|othercredit|editor"/>
+ <xsl:param name="person.count" select="count($person.list)"/>
+ <xsl:param name="count" select="1"/>
+
+ <xsl:choose>
+ <xsl:when test="$count &gt; $person.count"></xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="person.name">
+ <xsl:with-param name="node" select="$person.list[position()=$count]"/>
+ </xsl:call-template>
+
+ <xsl:choose>
+ <xsl:when test="$person.count = 2 and $count = 1">
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="'authorgroup'"/>
+ <xsl:with-param name="name" select="'sep2'"/>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:when test="$person.count &gt; 2 and $count+1 = $person.count">
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="'authorgroup'"/>
+ <xsl:with-param name="name" select="'seplast'"/>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:when test="$count &lt; $person.count">
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="'authorgroup'"/>
+ <xsl:with-param name="name" select="'sep'"/>
+ </xsl:call-template>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:call-template name="person.name.list">
+ <xsl:with-param name="person.list" select="$person.list"/>
+ <xsl:with-param name="person.count" select="$person.count"/>
+ <xsl:with-param name="count" select="$count+1"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template><!-- person.name.list -->
+
+<xsl:variable name="arg.choice.opt.open.str">[</xsl:variable>
+<xsl:variable name="arg.choice.opt.close.str">]</xsl:variable>
+<xsl:variable name="arg.choice.req.open.str">{</xsl:variable>
+<xsl:variable name="arg.choice.req.close.str">}</xsl:variable>
+<xsl:variable name="arg.choice.plain.open.str"><xsl:text> </xsl:text></xsl:variable>
+<xsl:variable name="arg.choice.plain.close.str"><xsl:text> </xsl:text></xsl:variable>
+<xsl:variable name="arg.choice.def.open.str">[</xsl:variable>
+<xsl:variable name="arg.choice.def.close.str">]</xsl:variable>
+<xsl:variable name="arg.rep.repeat.str">...</xsl:variable>
+<xsl:variable name="arg.rep.norepeat.str"></xsl:variable>
+<xsl:variable name="arg.rep.def.str"></xsl:variable>
+<xsl:variable name="arg.or.sep"> | </xsl:variable>
+<xsl:variable name="cmdsynopsis.hanging.indent">4pi</xsl:variable>
+
+<xsl:param name="use-serna-extensions"
+ select="contains(system-property('xsl:vendor'), 'Syntext')"/>
+
+</xsl:stylesheet>
+
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/compounds.xsl b/doc/editor_configs/serna/scons/docbook-xsl-serna/compounds.xsl
new file mode 100644
index 0000000..430cec0
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/compounds.xsl
@@ -0,0 +1,126 @@
+<?xml version='1.0'?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:dtm="http://syntext.com/Extensions/DocumentTypeMetadata-1.0"
+ xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ extension-element-prefixes="dtm"
+ version='1.0'>
+
+<dtm:doc dtm:idref="appendix"/>
+<xsl:template match="appendix" dtm:id="appendix">
+ <xsl:variable name="preamble"
+ select="title|subtitle|titleabbrev|appendixinfo|docinfo"/>
+ <xsl:variable name="content"
+ select="*[not(self::title or self::subtitle
+ or self::titleabbrev
+ or self::appendixinfo or self::docinfo)]"/>
+ <fo:block
+ xsl:use-attribute-sets="component.block.properties">
+ <xsl:call-template name="handle.empty">
+ <xsl:with-param name="titles">
+ <xsl:call-template name="appendix.titlepage"/>
+ </xsl:with-param>
+ <xsl:with-param name="preamble" select="$preamble"/>
+ <xsl:with-param name="content" select="$content"/>
+ </xsl:call-template>
+ </fo:block>
+</xsl:template>
+
+
+<dtm:doc dtm:idref="article"/>
+<xsl:template match="article" dtm:id="article">
+ <xsl:variable name="preamble"
+ select="title|subtitle|articleinfo|artheader"/>
+ <xsl:variable name="content"
+ select="*[not(self::title or self::subtitle
+ or self::articleinfo or self::artheader)]"/>
+ <fo:block
+ xsl:use-attribute-sets="component.block.properties">
+ <xsl:call-template name="handle.empty">
+ <xsl:with-param name="titles">
+ <xsl:call-template name="article.titlepage"/>
+ </xsl:with-param>
+ <xsl:with-param name="preamble" select="$preamble"/>
+ <xsl:with-param name="content" select="$content"/>
+ </xsl:call-template>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="preface"/>
+<xsl:template match="preface" dtm:id="preface">
+ <xsl:variable name="preamble"
+ select="title|subtitle|titleabbrev|docinfo|prefaceinfo"/>
+ <xsl:variable name="content"
+ select="*[not(self::title or self::subtitle or self::titleabbrev
+ or self::docinfo or self::prefaceinfo)]"/>
+ <fo:block
+ xsl:use-attribute-sets="component.block.properties">
+ <xsl:call-template name="handle.empty">
+ <xsl:with-param name="titles">
+ <xsl:call-template name="preface.titlepage"/>
+ </xsl:with-param>
+ <xsl:with-param name="preamble" select="$preamble"/>
+ <xsl:with-param name="content" select="$content"/>
+ </xsl:call-template>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="chapter"/>
+<xsl:template match="chapter" dtm:id="chapter">
+ <xsl:variable name="preamble"
+ select="title|subtitle|titleabbrev|docinfo|chapterinfo"/>
+ <xsl:variable name="content"
+ select="*[not(self::title or self::subtitle or self::titleabbrev
+ or self::docinfo or self::chapterinfo)]"/>
+ <fo:block
+ xsl:use-attribute-sets="component.block.properties">
+ <xsl:call-template name="handle.empty">
+ <xsl:with-param name="titles">
+ <xsl:call-template name="chapter.titlepage"/>
+ </xsl:with-param>
+ <xsl:with-param name="preamble" select="$preamble"/>
+ <xsl:with-param name="content" select="$content"/>
+ </xsl:call-template>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="sections"/>
+<xsl:template match="section|sect1|sect2|sect3|sect4|sect5" dtm:id="sections">
+ <xsl:variable name="preamble"
+ select="title|subtitle|titleabbrev|sectioninfo|sect1info
+ |sect2info|sect3info|sect4info|sect5info"/>
+ <xsl:variable name="content"
+ select="*[not(self::title or self::subtitle or self::titleabbrev
+ or self::sectioninfo or self::sect1info
+ or self::sect2info or self::sect3info
+ or self::sect4info or self::sect5info)]"/>
+ <fo:block
+ xsl:use-attribute-sets="section.block.properties">
+ <xsl:call-template name="handle.empty">
+ <xsl:with-param name="titles">
+ <xsl:call-template name="section.titlepage"/>
+ </xsl:with-param>
+ <xsl:with-param name="preamble" select="$preamble"/>
+ <xsl:with-param name="content" select="$content"/>
+ </xsl:call-template>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="simplesect"/>
+<xsl:template match="simplesect" dtm:id="simplesect">
+ <xsl:variable name="preamble"
+ select="title|subtitle|titleabbrev"/>
+ <xsl:variable name="content"
+ select="*[not(self::title or self::subtitle or self::titleabbrev)]"/>
+ <fo:block
+ xsl:use-attribute-sets="section.block.properties">
+ <xsl:call-template name="handle.empty">
+ <xsl:with-param name="titles">
+ <xsl:call-template name="simplesect.titlepage"/>
+ </xsl:with-param>
+ <xsl:with-param name="preamble" select="$preamble"/>
+ <xsl:with-param name="content" select="$content"/>
+ </xsl:call-template>
+ </fo:block>
+</xsl:template>
+
+</xsl:stylesheet>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/divisions.xsl b/doc/editor_configs/serna/scons/docbook-xsl-serna/divisions.xsl
new file mode 100644
index 0000000..f740eb6
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/divisions.xsl
@@ -0,0 +1,88 @@
+<?xml version='1.0'?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ xmlns:dtm="http://syntext.com/Extensions/DocumentTypeMetadata-1.0"
+ extension-element-prefixes="dtm"
+ version='1.0'>
+
+<!-- ==================================================================== -->
+
+<!-- The priority is set for exceeding /* template.
+ Templates that contain page-sequence/flow should exceed
+ the /* fallback. -->
+
+<dtm:doc dtm:idref="bp.root-mode"/>
+<xsl:template match="/book|/part" priority="1" mode="root.mode" dtm:id="bp.root-mode">
+ <fo:page-sequence
+ master-reference="body"
+ initial-page-number="1">
+ <fo:flow flow-name="xsl-region-body">
+ <xsl:apply-templates select="."/>
+ </fo:flow>
+ </fo:page-sequence>
+</xsl:template>
+
+<dtm:doc dtm:idref="set"/>
+<xsl:template match="set" dtm:id="set">
+ <xsl:variable name="preamble"
+ select="*[not(self::book or self::setindex)]"/>
+ <xsl:variable name="content" select="book|setindex"/>
+
+ <fo:block>
+ <xsl:call-template name="handle.empty">
+ <xsl:with-param name="titles">
+ <xsl:call-template name="set.titlepage"/>
+ </xsl:with-param>
+ <xsl:with-param name="preamble" select="$preamble"/>
+ <xsl:with-param name="content" select="$content"/>
+ </xsl:call-template>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="book"/>
+<xsl:template match="book" dtm:id="book">
+ <xsl:variable name="preamble"
+ select="title|subtitle|titleabbrev|bookinfo"/>
+ <xsl:variable name="content"
+ select="*[not(self::title or self::subtitle
+ or self::titleabbrev
+ or self::bookinfo)]"/>
+ <fo:block>
+ <xsl:call-template name="handle.empty">
+ <xsl:with-param name="titles">
+ <xsl:call-template name="book.titlepage"/>
+ </xsl:with-param>
+ <xsl:with-param name="preamble" select="$preamble"/>
+ <xsl:with-param name="content" select="$content"/>
+ </xsl:call-template>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="part"/>
+<xsl:template match="part" dtm:id="part">
+ <xsl:variable name="preamble"
+ select="title|subtitle|titleabbrev|partinfo|docinfo"/>
+ <xsl:variable name="content"
+ select="*[not(self::title or self::subtitle
+ or self::titleabbrev or self::partinfo
+ or self::docinfo)]"/>
+ <fo:block>
+ <xsl:call-template name="handle.empty">
+ <xsl:with-param name="titles">
+ <xsl:call-template name="part.titlepage"/>
+ </xsl:with-param>
+ <xsl:with-param name="preamble" select="$preamble"/>
+ <xsl:with-param name="content" select="$content"/>
+ </xsl:call-template>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="titles"/>
+<xsl:template match="title|subtitle|titleabbrev|bookinfo|othercredit|edition|setinfo" priority="-1" dtm:id="titles">
+ <fo:block padding-bottom="1em">
+ <xsl:apply-templates/>
+ </fo:block>
+</xsl:template>
+
+</xsl:stylesheet>
+
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/docbook.xsl b/doc/editor_configs/serna/scons/docbook-xsl-serna/docbook.xsl
new file mode 100644
index 0000000..fd2c4b8
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/docbook.xsl
@@ -0,0 +1,54 @@
+<?xml version='1.0'?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ xmlns:xse="http://www.syntext.com/Extensions/XSLT-1.0"
+ extension-element-prefixes="xse"
+ version='1.0'>
+<!--
+
+ DocBook XSL Stylesheet for Syntext Serna (c) 2003, Syntext Inc.
+
+ The Stylesheet is based on Norman Walsh XSL DocBook Stylesheet
+ distribution. See file NW-COPYING for Norman Walsh Copyright
+ information.
+
+-->
+ <xsl:import href="http://www.syntext.com/xslbricks-1.0/fo/fonts.xsl"/>
+ <xsl:import href="http://www.syntext.com/xslbricks-1.0/fo/common.xsl"/>
+ <xsl:import href="http://www.syntext.com/xslbricks-1.0/fo/layoutsetup.xsl"/>
+ <xsl:import href="http://www.syntext.com/xslbricks-1.0/fo/default-elements.xsl"/>
+ <xsl:import href="http://www.syntext.com/xslbricks-1.0/fo/page-sizes.xsl"/>
+
+ <xsl:include href="table.xsl" xse:alt-href="serna-table.xsl"/>
+ <xsl:include href="titlepage.templates.xsl"/>
+ <xsl:include href="titlepage.xsl"/>
+
+ <xsl:include href="parameters.xsl"/>
+ <xsl:include href="divisions.xsl"/>
+ <xsl:include href="compounds.xsl"/>
+ <xsl:include href="common.xsl"/>
+ <xsl:include href="blocks.xsl"/>
+ <xsl:include href="inlines.xsl"/>
+ <xsl:include href="glossary.xsl"/>
+
+ <xsl:include href="l10n.xsl"/>
+
+ <xsl:include href="titles.xsl"/>
+ <xsl:include href="refentry.xsl"/>
+ <xsl:include href="synopsis.xsl"/>
+ <xsl:include href="formal.xsl"/>
+ <xsl:include href="graphics.xsl"/>
+ <xsl:include href="qandaset.xsl"/>
+ <xsl:include href="biblio.xsl"/>
+ <xsl:include href="lists.xsl"/>
+ <xsl:include href="xref.xsl"/>
+
+
+ <xsl:include href="toc.titles.xsl"/>
+ <xsl:include href="toc.labels.xsl"/>
+ <xsl:include href="toc.xsl"/>
+
+ <xsl:output method="xml"/>
+ <xsl:strip-space elements="*"/>
+ <xsl:preserve-space elements="programlisting screen para synopsis literallayout sconstruct scons_example_file example_commands scons_output_command file directory"/>
+</xsl:stylesheet>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/formal.xsl b/doc/editor_configs/serna/scons/docbook-xsl-serna/formal.xsl
new file mode 100644
index 0000000..0f292cf
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/formal.xsl
@@ -0,0 +1,216 @@
+<?xml version='1.0'?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ xmlns:dtm="http://syntext.com/Extensions/DocumentTypeMetadata-1.0"
+ extension-element-prefixes="dtm"
+ version='1.0'>
+
+<dtm:doc dtm:idref="formal.object.content"/>
+<xsl:template name="formal.object.content" dtm:id="formal.object.content">
+ <xsl:param name="placement"/>
+
+ <xsl:if test="$placement = 'before'">
+ <xsl:call-template name="formal.object.heading">
+ <xsl:with-param name="placement" select="$placement"/>
+ </xsl:call-template>
+ </xsl:if>
+ <xsl:apply-templates/>
+ <xsl:if test="$placement != 'before'">
+ <xsl:call-template name="formal.object.heading">
+ <xsl:with-param name="placement" select="$placement"/>
+ </xsl:call-template>
+ </xsl:if>
+
+</xsl:template>
+
+<dtm:doc dtm:idref="formal.object"/>
+<xsl:template name="formal.object" dtm:id="formal.object">
+ <xsl:param name="placement" select="'before'"/>
+
+ <fo:block xsl:use-attribute-sets="formal.object.properties">
+ <xsl:call-template name="formal.object.content">
+ <xsl:with-param name="placement" select="$placement"/>
+ </xsl:call-template>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="formal.object.heading"/>
+<xsl:template name="formal.object.heading" dtm:id="formal.object.heading">
+ <xsl:param name="object" select="."/>
+ <xsl:param name="placement" select="'before'"/>
+
+ <xsl:if test="$object/title[not(self::processing-instruction('se:choice'))]">
+ <fo:block xsl:use-attribute-sets="formal.title.properties">
+ <xsl:choose>
+ <xsl:when test="$placement = 'before'">
+ <xsl:attribute
+ name="keep-with-next.within-column">always</xsl:attribute>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:attribute
+ name="keep-with-previous.within-column">always</xsl:attribute>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:apply-templates select="$object/title" mode="formal.title.mode">
+ <xsl:with-param name="key" select="local-name($object)"/>
+ </xsl:apply-templates>
+ </fo:block>
+ </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:idref="informal.object"/>
+<xsl:template name="informal.object" dtm:id="informal.object">
+ <xsl:choose>
+ <xsl:when test="local-name(.) = 'equation'">
+ <fo:block
+ xsl:use-attribute-sets="equation.properties">
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:when>
+ <xsl:when test="local-name(.) = 'procedure'">
+ <fo:block
+ xsl:use-attribute-sets="procedure.properties">
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:when>
+ <xsl:otherwise>
+ <fo:block>
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="semiformal.object"/>
+<xsl:template name="semiformal.object" dtm:id="semiformal.object">
+ <xsl:param name="placement" select="'before'"/>
+ <xsl:choose>
+ <xsl:when test="./title">
+ <xsl:call-template name="formal.object">
+ <xsl:with-param name="placement" select="$placement"/>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="informal.object"/>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="figure"/>
+<xsl:template match="figure" dtm:id="figure">
+ <xsl:variable name="param.placement"
+ select="substring-after(normalize-space($formal.title.placement),
+ concat(local-name(.), ' '))"/>
+
+ <xsl:variable name="placement">
+ <xsl:choose>
+ <xsl:when test="contains($param.placement, ' ')">
+ <xsl:value-of select="substring-before($param.placement, ' ')"/>
+ </xsl:when>
+ <xsl:when test="$param.placement = ''">before</xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$param.placement"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:call-template name="formal.object">
+ <xsl:with-param name="placement" select="$placement"/>
+ </xsl:call-template>
+
+</xsl:template>
+
+<dtm:doc dtm:idref="example"/>
+<xsl:template match="example" dtm:id="example">
+ <xsl:variable name="param.placement"
+ select="substring-after(normalize-space($formal.title.placement),
+ concat(local-name(.), ' '))"/>
+
+ <xsl:variable name="placement">
+ <xsl:choose>
+ <xsl:when test="contains($param.placement, ' ')">
+ <xsl:value-of select="substring-before($param.placement, ' ')"/>
+ </xsl:when>
+ <xsl:when test="$param.placement = ''">before</xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$param.placement"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:call-template name="formal.object">
+ <xsl:with-param name="placement" select="$placement"/>
+ </xsl:call-template>
+
+</xsl:template>
+
+<dtm:doc dtm:idref="equation"/>
+<xsl:template match="equation" dtm:id="equation">
+ <xsl:variable name="param.placement"
+ select="substring-after(normalize-space($formal.title.placement),
+ concat(local-name(.), ' '))"/>
+
+ <xsl:variable name="placement">
+ <xsl:choose>
+ <xsl:when test="contains($param.placement, ' ')">
+ <xsl:value-of select="substring-before($param.placement, ' ')"/>
+ </xsl:when>
+ <xsl:when test="$param.placement = ''">before</xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$param.placement"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:call-template name="semiformal.object">
+ <xsl:with-param name="placement" select="$placement"/>
+ </xsl:call-template>
+
+</xsl:template>
+
+<dtm:doc dtm:idref="title.figure"/>
+<xsl:template match="figure/title" dtm:id="title.figure"></xsl:template>
+
+<dtm:doc dtm:idref="titleabbrev.figure"/>
+<xsl:template match="figure/titleabbrev" dtm:id="titleabbrev.figure"></xsl:template>
+
+<dtm:doc dtm:idref="title.table"/>
+<xsl:template match="table/title" dtm:id="title.table"></xsl:template>
+
+<dtm:doc dtm:idref="titleabbrev.table"/>
+<xsl:template match="table/titleabbrev" dtm:id="titleabbrev.table"></xsl:template>
+
+<dtm:doc dtm:idref="textobject.table"/>
+<xsl:template match="table/textobject" dtm:id="textobject.table"></xsl:template>
+
+<dtm:doc dtm:idref="title.example"/>
+<xsl:template match="example/title" dtm:id="title.example"></xsl:template>
+
+<dtm:doc dtm:idref="titleabbrev.example"/>
+<xsl:template match="example/titleabbrev" dtm:id="titleabbrev.example"></xsl:template>
+
+<dtm:doc dtm:idref="title.equation"/>
+<xsl:template match="equation/title" dtm:id="title.equation"></xsl:template>
+
+<dtm:doc dtm:idref="titleabbrev.equation"/>
+<xsl:template match="equation/titleabbrev" dtm:id="titleabbrev.equation"></xsl:template>
+
+<dtm:doc dtm:idref="informalfigure"/>
+<xsl:template match="informalfigure" dtm:id="informalfigure">
+ <xsl:call-template name="informal.object"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="informalexample"/>
+<xsl:template match="informalexample" dtm:id="informalexample">
+ <xsl:call-template name="informal.object"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="textobject.informaltable"/>
+<xsl:template match="informaltable/textobject" dtm:id="textobject.informaltable"></xsl:template>
+
+<dtm:doc dtm:idref="informalequation"/>
+<xsl:template match="informalequation" dtm:id="informalequation">
+ <xsl:call-template name="informal.object"/>
+</xsl:template>
+
+</xsl:stylesheet>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/gentext.xsl b/doc/editor_configs/serna/scons/docbook-xsl-serna/gentext.xsl
new file mode 100644
index 0000000..e7de5f5
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/gentext.xsl
@@ -0,0 +1,500 @@
+<?xml version='1.0'?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:doc="http://nwalsh.com/xsl/documentation/1.0"
+ exclude-result-prefixes="doc"
+ xmlns:dtm="http://syntext.com/Extensions/DocumentTypeMetadata-1.0"
+ extension-element-prefixes="dtm"
+ version='1.0'>
+
+<!-- ============================================================ -->
+<dtm:doc dtm:idref="xpath.location"/>
+<xsl:template name="xpath.location" dtm:id="xpath.location">
+ <xsl:param name="node" select="."/>
+ <xsl:param name="path" select="''"/>
+
+ <xsl:variable name="next.path">
+ <xsl:value-of select="local-name($node)"/>
+ <xsl:if test="$path != ''">/</xsl:if>
+ <xsl:value-of select="$path"/>
+ </xsl:variable>
+
+ <xsl:choose>
+ <xsl:when test="$node/parent::*">
+ <xsl:call-template name="xpath.location">
+ <xsl:with-param name="node" select="$node/parent::*"/>
+ <xsl:with-param name="path" select="$next.path"/>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text>/</xsl:text>
+ <xsl:value-of select="$next.path"/>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<!-- ============================================================ -->
+<dtm:doc dtm:idref="all.object.title.template"/>
+<xsl:template match="*" mode="object.title.template" dtm:id="all.object.title.template">
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="'title'"/>
+ <xsl:with-param name="name">
+ <xsl:call-template name="xpath.location"/>
+ </xsl:with-param>
+ </xsl:call-template>
+</xsl:template>
+
+<dtm:doc dtm:idref="chapter.object.title.template"/>
+<xsl:template match="chapter" mode="object.title.template" dtm:id="chapter.object.title.template">
+ <xsl:choose>
+ <xsl:when test="$chapter.autolabel != 0">
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="'title-numbered'"/>
+ <xsl:with-param name="name">
+ <xsl:call-template name="xpath.location"/>
+ </xsl:with-param>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="'title-unnumbered'"/>
+ <xsl:with-param name="name">
+ <xsl:call-template name="xpath.location"/>
+ </xsl:with-param>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="appendix.object.title.template"/>
+<xsl:template match="appendix" mode="object.title.template" dtm:id="appendix.object.title.template">
+ <xsl:choose>
+ <xsl:when test="$appendix.autolabel != 0">
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="'title-numbered'"/>
+ <xsl:with-param name="name">
+ <xsl:call-template name="xpath.location"/>
+ </xsl:with-param>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="'title-unnumbered'"/>
+ <xsl:with-param name="name">
+ <xsl:call-template name="xpath.location"/>
+ </xsl:with-param>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:elements="section|simplesect|sect1|sect2|sect3|sect4|sect5|refsect1|refsect2|refsect3|bridgehead" dtm:idref="sections.object.title.template sections.object.xref.template"/>
+<xsl:template match="section|sect1|sect2|sect3|sect4|sect5|simplesect
+ |bridgehead"
+ mode="object.title.template" dtm:id="sections.object.title.template">
+ <xsl:choose>
+ <xsl:when test="$section.autolabel != 0">
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="'title-numbered'"/>
+ <xsl:with-param name="name">
+ <xsl:call-template name="xpath.location"/>
+ </xsl:with-param>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="'title-unnumbered'"/>
+ <xsl:with-param name="name">
+ <xsl:call-template name="xpath.location"/>
+ </xsl:with-param>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="procedure.object.title.template"/>
+<xsl:template match="procedure" mode="object.title.template" dtm:id="procedure.object.title.template">
+ <xsl:choose>
+ <xsl:when test="$formal.procedures != 0">
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="'title'"/>
+ <xsl:with-param name="name">
+ <xsl:call-template name="xpath.location"/>
+ <xsl:text>.formal</xsl:text>
+ </xsl:with-param>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="'title'"/>
+ <xsl:with-param name="name">
+ <xsl:call-template name="xpath.location"/>
+ </xsl:with-param>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<!-- ============================================================ -->
+<dtm:doc dtm:idref="all.object.subtitle.template"/>
+<xsl:template match="*" mode="object.subtitle.template" dtm:id="all.object.subtitle.template">
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="'subtitle'"/>
+ <xsl:with-param name="name">
+ <xsl:call-template name="xpath.location"/>
+ </xsl:with-param>
+ </xsl:call-template>
+</xsl:template>
+
+<!-- ============================================================ -->
+<dtm:doc dtm:idref="all.object.xref.template"/>
+<xsl:template match="*" mode="object.xref.template" dtm:id="all.object.xref.template">
+ <xsl:param name="purpose"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:param name="referrer"/>
+
+ <xsl:variable name="number-and-title-template">
+ <xsl:call-template name="gentext.template.exists">
+ <xsl:with-param name="context" select="'xref-number-and-title'"/>
+ <xsl:with-param name="name">
+ <xsl:call-template name="xpath.location"/>
+ </xsl:with-param>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <xsl:choose>
+ <xsl:when test="$number-and-title-template != 0
+ and $xref.with.number.and.title != 0">
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="'xref-number-and-title'"/>
+ <xsl:with-param name="name">
+ <xsl:call-template name="xpath.location"/>
+ </xsl:with-param>
+ <xsl:with-param name="purpose" select="$purpose"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="referrer" select="$referrer"/>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="'xref'"/>
+ <xsl:with-param name="name">
+ <xsl:call-template name="xpath.location"/>
+ </xsl:with-param>
+ <xsl:with-param name="purpose" select="$purpose"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="referrer" select="$referrer"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<xsl:template match="section|simplesect
+ |sect1|sect2|sect3|sect4|sect5
+ |refsect1|refsect2|refsect3
+ |bridgehead"
+ mode="object.xref.template" dtm:id="sections.object.xref.template">
+
+ <xsl:variable name="number-and-title-template">
+ <xsl:call-template name="gentext.template.exists">
+ <xsl:with-param name="context" select="'xref-number-and-title'"/>
+ <xsl:with-param name="name">
+ <xsl:call-template name="xpath.location"/>
+ </xsl:with-param>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <xsl:choose>
+ <xsl:when test="$number-and-title-template != 0
+ and $xref.with.number.and.title != 0">
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="'xref-number-and-title'"/>
+ <xsl:with-param name="name">
+ <xsl:call-template name="xpath.location"/>
+ </xsl:with-param>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:when test="$section.autolabel != 0">
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="'section-xref-numbered'"/>
+ <xsl:with-param name="name">
+ <xsl:call-template name="xpath.location"/>
+ </xsl:with-param>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="'section-xref'"/>
+ <xsl:with-param name="name">
+ <xsl:call-template name="xpath.location"/>
+ </xsl:with-param>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<!-- ============================================================ -->
+<dtm:doc dtm:idref="all.object.title.markup"/>
+<xsl:template match="*" mode="object.title.markup" dtm:id="all.object.title.markup">
+ <xsl:param name="allow-anchors" select="0"/>
+ <xsl:variable name="template">
+ <xsl:apply-templates select="." mode="object.title.template"/>
+ </xsl:variable>
+
+<!--
+ <xsl:message>
+ <xsl:text>object.title.markup: </xsl:text>
+ <xsl:value-of select="local-name(.)"/>
+ <xsl:text>: </xsl:text>
+ <xsl:value-of select="$template"/>
+ </xsl:message>
+-->
+
+ <xsl:call-template name="substitute-markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ <xsl:with-param name="template" select="$template"/>
+ </xsl:call-template>
+</xsl:template>
+
+<dtm:doc dtm:idref="all.object.title.markup.textonly"/>
+<xsl:template match="*" mode="object.title.markup.textonly" dtm:id="all.object.title.markup.textonly">
+ <xsl:variable name="title">
+ <xsl:apply-templates select="." mode="object.title.markup"/>
+ </xsl:variable>
+ <xsl:value-of select="$title"/>
+</xsl:template>
+
+<!-- ============================================================ -->
+<dtm:doc dtm:idref="all.object.titleabbrev.markup"/>
+<xsl:template match="*" mode="object.titleabbrev.markup" dtm:id="all.object.titleabbrev.markup">
+ <xsl:param name="allow-anchors" select="0"/>
+
+ <!-- Just for consistency in template naming -->
+
+ <xsl:apply-templates select="." mode="titleabbrev.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ </xsl:apply-templates>
+</xsl:template>
+
+<!-- ============================================================ -->
+<dtm:doc dtm:idref="all.object.subtitle.markup"/>
+<xsl:template match="*" mode="object.subtitle.markup" dtm:id="all.object.subtitle.markup">
+ <xsl:variable name="template">
+ <xsl:apply-templates select="." mode="object.subtitle.template"/>
+ </xsl:variable>
+
+ <xsl:call-template name="substitute-markup">
+ <xsl:with-param name="template" select="$template"/>
+ </xsl:call-template>
+</xsl:template>
+
+<!-- ============================================================ -->
+<dtm:doc dtm:idref="all.object.xref.markup"/>
+<xsl:template match="*" mode="object.xref.markup" dtm:id="all.object.xref.markup">
+ <xsl:param name="purpose"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:param name="referrer"/>
+
+ <xsl:variable name="template">
+ <xsl:apply-templates select="." mode="object.xref.template">
+ <xsl:with-param name="purpose" select="$purpose"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="referrer" select="$referrer"/>
+ </xsl:apply-templates>
+ </xsl:variable>
+
+<!--
+ <xsl:message>
+ <xsl:text>object.xref.markup: </xsl:text>
+ <xsl:value-of select="local-name(.)"/>
+ <xsl:text>(</xsl:text>
+ <xsl:value-of select="$xrefstyle"/>
+ <xsl:text>, </xsl:text>
+ <xsl:value-of select="$purpose"/>
+ <xsl:text>)</xsl:text>
+ <xsl:text>: [</xsl:text>
+ <xsl:value-of select="$template"/>
+ <xsl:text>]</xsl:text>
+ </xsl:message>
+-->
+
+ <xsl:call-template name="substitute-markup">
+ <xsl:with-param name="purpose" select="$purpose"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="referrer" select="$referrer"/>
+ <xsl:with-param name="template" select="$template"/>
+ </xsl:call-template>
+</xsl:template>
+
+<dtm:doc dtm:idref="listitem.object-xref-markup"/>
+<xsl:template match="listitem" mode="object.xref.markup" dtm:id="listitem.object-xref-markup">
+ <xsl:choose>
+ <xsl:when test="parent::orderedlist">
+ <xsl:variable name="template">
+ <xsl:apply-templates select="." mode="object.xref.template"/>
+ </xsl:variable>
+ <xsl:call-template name="substitute-markup">
+ <xsl:with-param name="template" select="$template"/>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:message>
+ <xsl:text>Xref is only supported to listitems in an</xsl:text>
+ <xsl:text> orderedlist: </xsl:text>
+ <xsl:value-of select="@id"/>
+ </xsl:message>
+ <xsl:text>???</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<!-- ============================================================ -->
+<dtm:doc dtm:idref="substitute-markup"/>
+<xsl:template name="substitute-markup" dtm:id="substitute-markup">
+ <xsl:param name="template" select="''"/>
+ <xsl:param name="allow-anchors" select="'0'"/>
+ <xsl:param name="title" select="''"/>
+ <xsl:param name="subtitle" select="''"/>
+ <xsl:param name="label" select="''"/>
+ <xsl:param name="pagenumber" select="''"/>
+ <xsl:param name="purpose"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:param name="referrer"/>
+
+ <xsl:choose>
+ <xsl:when test="contains($template, '%')">
+ <xsl:value-of select="substring-before($template, '%')"/>
+ <xsl:variable name="candidate"
+ select="substring(substring-after($template, '%'), 1, 1)"/>
+ <xsl:choose>
+ <xsl:when test="$candidate = 't'">
+ <xsl:apply-templates select="." mode="insert.title.markup">
+ <xsl:with-param name="purpose" select="$purpose"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="title">
+ <xsl:choose>
+ <xsl:when test="$title != ''">
+ <xsl:copy-of select="$title"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="." mode="title.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ </xsl:apply-templates>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:with-param>
+ </xsl:apply-templates>
+ </xsl:when>
+ <xsl:when test="$candidate = 's'">
+ <xsl:apply-templates select="." mode="insert.subtitle.markup">
+ <xsl:with-param name="purpose" select="$purpose"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="subtitle">
+ <xsl:choose>
+ <xsl:when test="$subtitle != ''">
+ <xsl:copy-of select="$subtitle"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="." mode="subtitle.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ </xsl:apply-templates>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:with-param>
+ </xsl:apply-templates>
+ </xsl:when>
+ <xsl:when test="$candidate = 'n'">
+ <xsl:apply-templates select="." mode="insert.label.markup">
+ <xsl:with-param name="purpose" select="$purpose"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="label">
+ <xsl:choose>
+ <xsl:when test="$label != ''">
+ <xsl:copy-of select="$label"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="." mode="label.markup"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:with-param>
+ </xsl:apply-templates>
+ </xsl:when>
+ <xsl:when test="$candidate = 'p'">
+ <xsl:apply-templates select="." mode="insert.pagenumber.markup">
+ <xsl:with-param name="purpose" select="$purpose"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="pagenumber">
+ <xsl:choose>
+ <xsl:when test="$pagenumber != ''">
+ <xsl:copy-of select="$pagenumber"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="." mode="pagenumber.markup"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:with-param>
+ </xsl:apply-templates>
+ </xsl:when>
+ <xsl:when test="$candidate = 'd'">
+ <xsl:apply-templates select="." mode="insert.direction.markup">
+ <xsl:with-param name="purpose" select="$purpose"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="direction">
+ <xsl:choose>
+ <xsl:when test="$referrer">
+ <xsl:variable name="referent-is-below">
+ <xsl:for-each select="preceding::xref">
+ <xsl:if test="generate-id(.) = generate-id($referrer)">1</xsl:if>
+ </xsl:for-each>
+ </xsl:variable>
+ <xsl:choose>
+ <xsl:when test="$referent-is-below = ''">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'above'"/>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'below'"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:message>Attempt to use %d in gentext with no referrer!</xsl:message>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:with-param>
+ </xsl:apply-templates>
+ </xsl:when>
+ <xsl:when test="$candidate = '%' ">
+ <xsl:text>%</xsl:text>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text>%</xsl:text><xsl:value-of select="$candidate"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ <!-- recurse with the rest of the template string -->
+ <xsl:variable name="rest"
+ select="substring($template,
+ string-length(substring-before($template, '%'))+3)"/>
+ <xsl:call-template name="substitute-markup">
+ <xsl:with-param name="template" select="$rest"/>
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ <xsl:with-param name="title" select="$title"/>
+ <xsl:with-param name="subtitle" select="$subtitle"/>
+ <xsl:with-param name="label" select="$label"/>
+ <xsl:with-param name="pagenumber" select="$label"/>
+ <xsl:with-param name="purpose" select="$purpose"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="referrer" select="$referrer"/>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$template"/>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<!-- ============================================================ -->
+
+</xsl:stylesheet>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/glossary.xsl b/doc/editor_configs/serna/scons/docbook-xsl-serna/glossary.xsl
new file mode 100644
index 0000000..8a116d6
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/glossary.xsl
@@ -0,0 +1,423 @@
+<?xml version='1.0'?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ xmlns:dtm="http://syntext.com/Extensions/DocumentTypeMetadata-1.0"
+ extension-element-prefixes="dtm"
+ version='1.0'>
+
+<dtm:doc dtm:idref="glossary"/>
+<xsl:template match="glossary" dtm:id="glossary">
+ <xsl:variable name="preamble"
+ select="title|subtitle|titleabbrev|glossaryinfo"/>
+ <xsl:variable name="content"
+ select="not-a-node"/>
+ <fo:block
+ xsl:use-attribute-sets="component.block.properties">
+ <xsl:call-template name="handle.empty">
+ <xsl:with-param name="titles">
+ <xsl:call-template name="glossary.titlepage"/>
+ </xsl:with-param>
+ <xsl:with-param name="preamble" select="$preamble"/>
+ <xsl:with-param name="content" select="$content"/>
+ </xsl:call-template>
+ <xsl:call-template name="make-glossary"/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="make-glossary"/>
+<xsl:template name="make-glossary" dtm:id="make-glossary">
+ <xsl:param name="divs" select="glossdiv"/>
+ <xsl:param name="entries" select="glossentry"/>
+
+ <xsl:variable name="width">
+ <xsl:value-of select="$glossterm.width"/>
+ </xsl:variable>
+
+ <xsl:variable name="presentation">
+ <xsl:value-of select="$glossary.presentation"/>
+ </xsl:variable>
+ <xsl:choose>
+ <xsl:when test="$presentation = 'list'">
+ <xsl:apply-templates select="$divs" mode="glossary.as.list">
+ <xsl:with-param name="width" select="$width"/>
+ </xsl:apply-templates>
+ <xsl:if test="$entries">
+ <fo:list-block provisional-distance-between-starts="{$width}"
+ provisional-label-separation="{$glossterm.separation}"
+ xsl:use-attribute-sets="normal.para.spacing">
+ <xsl:apply-templates select="$entries" mode="glossary.as.list"/>
+ </fo:list-block>
+ </xsl:if>
+ </xsl:when>
+ <xsl:when test="$presentation = 'blocks'">
+ <xsl:apply-templates select="$divs" mode="glossary.as.blocks"/>
+ <xsl:apply-templates select="$entries" mode="glossary.as.blocks"/>
+ </xsl:when>
+ <xsl:when test="$glossary.as.blocks != 0">
+ <xsl:apply-templates select="$divs" mode="glossary.as.blocks"/>
+ <xsl:apply-templates select="$entries" mode="glossary.as.blocks"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="$divs" mode="glossary.as.list">
+ <xsl:with-param name="width" select="$width"/>
+ </xsl:apply-templates>
+ <xsl:if test="$entries">
+ <fo:list-block provisional-distance-between-starts="{$width}"
+ provisional-label-separation="{$glossterm.separation}"
+ xsl:use-attribute-sets="normal.para.spacing">
+ <xsl:apply-templates select="$entries" mode="glossary.as.list"/>
+ </fo:list-block>
+ </xsl:if>
+ </xsl:otherwise>
+ </xsl:choose>
+<!-- <xsl:apply-templates select="*[not(local-name()='glossdiv')]"/> -->
+</xsl:template>
+
+<dtm:doc dtm:idref="glosslist"/>
+<xsl:template match="glosslist" dtm:id="glosslist">
+
+ <xsl:variable name="width">
+ <xsl:value-of select="$glossterm.width"/>
+ </xsl:variable>
+
+ <xsl:variable name="presentation">
+ <xsl:value-of select="$glossary.presentation"/>
+ </xsl:variable>
+
+ <xsl:choose>
+ <xsl:when test="$presentation = 'list'">
+ <fo:list-block provisional-distance-between-starts="{$width}"
+ provisional-label-separation="{$glossterm.separation}"
+ xsl:use-attribute-sets="normal.para.spacing">
+ <xsl:apply-templates mode="glossary.as.list"/>
+ </fo:list-block>
+ </xsl:when>
+ <xsl:when test="$presentation = 'blocks'">
+ <xsl:apply-templates mode="glossary.as.blocks"/>
+ </xsl:when>
+ <xsl:when test="$glosslist.as.blocks != 0">
+ <xsl:apply-templates mode="glossary.as.blocks"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <fo:list-block provisional-distance-between-starts="{$width}"
+ provisional-label-separation="{$glossterm.separation}"
+ xsl:use-attribute-sets="normal.para.spacing">
+ <xsl:apply-templates mode="glossary.as.list"/>
+ </fo:list-block>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<!-- ==================================================================== -->
+<!-- Format glossary as a list -->
+<dtm:doc dtm:elements="glossdiv" dtm:idref="glossdiv.glossary-as-list glossdiv.glossary-as-blocks"/>
+<xsl:template match="glossdiv" mode="glossary.as.list" dtm:id="glossdiv.glossary-as-list">
+ <xsl:variable name="preamble"
+ select="title|subtitle|titleabbrev|glossaryinfo"/>
+ <xsl:variable name="content"
+ select="not-a-node"/>
+ <fo:block
+ xsl:use-attribute-sets="component.block.properties">
+
+ <xsl:call-template name="handle.empty">
+ <xsl:with-param name="titles">
+ <xsl:call-template name="glossdiv.titlepage"/>
+ </xsl:with-param>
+ <xsl:with-param name="preamble" select="$preamble"/>
+ <xsl:with-param name="content" select="$content"/>
+ </xsl:call-template>
+
+ <xsl:variable name="width" select="$glossterm.width"/>
+
+ <fo:list-block provisional-distance-between-starts="{$width}"
+ provisional-label-separation="{$glossterm.separation}"
+ xsl:use-attribute-sets="normal.para.spacing">
+ <xsl:apply-templates select="glossentry" mode="glossary.as.list"/>
+ </fo:list-block>
+
+ </fo:block>
+</xsl:template>
+
+<!--
+GlossEntry ::=
+ GlossTerm, Acronym?, Abbrev?,
+ (IndexTerm)*,
+ RevHistory?,
+ (GlossSee | GlossDef+)
+-->
+<dtm:doc dtm:elements="glossentry" dtm:idref="glossentry.glossary-as-list glossentry.glossary-as-blocks"/>
+<xsl:template match="glossentry" mode="glossary.as.list" dtm:id="glossentry.glossary-as-list">
+
+ <fo:list-item xsl:use-attribute-sets="normal.para.spacing">
+
+ <fo:list-item-label end-indent="label-end()">
+ <fo:block>
+ <xsl:choose>
+ <xsl:when test="$glossentry.show.acronym = 'primary'">
+ <xsl:choose>
+ <xsl:when test="acronym|abbrev">
+ <xsl:apply-templates select="acronym|abbrev[not(self::processing-instruction('se:choice'))]" mode="glossary.as.list"/>
+ <xsl:text> (</xsl:text>
+ <xsl:apply-templates select="glossterm" mode="glossary.as.list"/>
+ <xsl:text>)</xsl:text>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="glossterm" mode="glossary.as.list"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:when>
+
+ <xsl:when test="$glossentry.show.acronym = 'yes'">
+ <xsl:apply-templates select="glossterm" mode="glossary.as.list"/>
+
+ <xsl:if test="acronym[not(self::processing-instruction('se:choice'))]|abbrev[not(self::processing-instruction('se:choice'))]">
+ <xsl:text> (</xsl:text>
+ <xsl:apply-templates select="acronym|abbrev" mode="glossary.as.list"/>
+ <xsl:text>)</xsl:text>
+ </xsl:if>
+ </xsl:when>
+
+ <xsl:otherwise>
+ <xsl:apply-templates select="glossterm" mode="glossary.as.list"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:apply-templates select="indexterm[not(self::processing-instruction('se:choice'))]"/>
+ </fo:block>
+ </fo:list-item-label>
+
+ <fo:list-item-body start-indent="body-start()">
+ <xsl:apply-templates select="glosssee|glossdef" mode="glossary.as.list"/>
+ </fo:list-item-body>
+ </fo:list-item>
+</xsl:template>
+
+<dtm:doc dtm:elements="glossentry/glossterm" dtm:idref="glossterm.glossentry.glossary-as-list glossterm.glossentry.glossary-as-blocks"/>
+<xsl:template match="glossentry/glossterm" mode="glossary.as.list" dtm:id="glossterm.glossentry.glossary-as-list">
+ <fo:inline>
+ <xsl:apply-templates/>
+ </fo:inline>
+ <xsl:if test="following-sibling::glossterm">, </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:elements="glossentry/acronym" dtm:idref="acronym.glossentry.glossary-as-list acronym.glossentry.glossary-as-blocks"/>
+<xsl:template match="glossentry/acronym" mode="glossary.as.list" dtm:id="acronym.glossentry.glossary-as-list">
+ <fo:inline>
+ <xsl:apply-templates/>
+ </fo:inline>
+ <xsl:if test="following-sibling::acronym|following-sibling::abbrev">, </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:elements="glossentry/abbrev" dtm:idref="abbrev.glossentry.glossary-as-list abbrev.glossentry.glossary-as-blocks"/>
+<xsl:template match="glossentry/abbrev" mode="glossary.as.list" dtm:id="abbrev.glossentry.glossary-as-list">
+ <fo:inline>
+ <xsl:apply-templates/>
+ </fo:inline>
+ <xsl:if test="following-sibling::acronym|following-sibling::abbrev">, </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:elements="glossentry/glosssee" dtm:idref="glosssee.glossentry.glossary-as-list glosssee.glossentry.glossary-as-blocks"/>
+<xsl:template match="glossentry/glosssee" mode="glossary.as.list" dtm:id="glosssee.glossentry.glossary-as-list">
+ <xsl:variable name="otherterm" select="@otherterm"/>
+ <fo:block>
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="'glossary'"/>
+ <xsl:with-param name="name" select="'see'"/>
+ </xsl:call-template>
+ <xsl:apply-templates mode="glossary.as.list"/>
+ <xsl:choose>
+ <xsl:when test="@otherterm">
+ <xsl:value-of select="id(@otherterm)"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text>.</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:elements="glossentry/glossdef" dtm:idref="glossdef.glossentry.glossary-as-list glossdef.glossentry.glossary-as-blocks"/>
+<xsl:template match="glossentry/glossdef" mode="glossary.as.list" dtm:id="glossdef.glossentry.glossary-as-list">
+ <fo:block>
+ <xsl:apply-templates select="*[local-name(.) != 'glossseealso']"/>
+ <xsl:if test="glossseealso">
+ <fo:block>
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="'glossary'"/>
+ <xsl:with-param name="name" select="'seealso'"/>
+ </xsl:call-template>
+ <xsl:apply-templates select="glossseealso" mode="glossary.as.list"/>
+ </fo:block>
+ </xsl:if>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:elements="glossentry/glossdef/para[1]|glossentry/glossdef/simpara[1]" dtm:idref="para1.glossentry.glossary-as-list para1.glossentry.glossary-as-blocks"/>
+<xsl:template match="glossentry/glossdef/para[1]|glossentry/glossdef/simpara[1]"
+ mode="glossary.as.list" dtm:id="para1.glossentry.glossary-as-list">
+ <fo:block>
+ <xsl:apply-templates/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:elements="glossseealso" dtm:idref="glossseealso.glossary-as-list glossseealso.glossary-as-blocks"/>
+<xsl:template match="glossseealso" mode="glossary.as.list" dtm:id="glossseealso.glossary-as-list">
+ <fo:inline>
+ <xsl:apply-templates mode="glossary.as.list"/>
+ <xsl:choose>
+ <xsl:when test="@otherterm">
+ <xsl:value-of select="id(@otherterm)"/>
+ </xsl:when>
+ <xsl:when test="position() = last()">
+ <xsl:text>.</xsl:text>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text>, </xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ </fo:inline>
+</xsl:template>
+
+<!-- ==================================================================== -->
+<!-- Format glossary blocks -->
+
+<xsl:template match="glossdiv" mode="glossary.as.blocks" dtm:id="glossdiv.glossary-as-blocks">
+ <xsl:variable name="preamble"
+ select="title|subtitle|titleabbrev|glossaryinfo"/>
+ <xsl:variable name="content"
+ select="*[not(self::title or self::subtitle
+ or self::titleabbrev)]"/>
+ <fo:block
+ xsl:use-attribute-sets="component.block.properties">
+ <xsl:call-template name="handle.empty">
+ <xsl:with-param name="titles">
+ <xsl:call-template name="glossdiv.titlepage"/>
+ </xsl:with-param>
+ <xsl:with-param name="preamble" select="$preamble"/>
+ </xsl:call-template>
+
+ <xsl:apply-templates select="glossentry" mode="glossary.as.blocks"/>
+
+ </fo:block>
+</xsl:template>
+
+
+<!--
+GlossEntry ::=
+ GlossTerm, Acronym?, Abbrev?,
+ (IndexTerm)*,
+ RevHistory?,
+ (GlossSee | GlossDef+)
+-->
+<xsl:template match="glossentry" mode="glossary.as.blocks" dtm:id="glossentry.glossary-as-blocks">
+ <fo:block xsl:use-attribute-sets="list.block.spacing">
+
+ <xsl:choose>
+ <xsl:when test="$glossentry.show.acronym = 'primary'">
+ <xsl:choose>
+ <xsl:when test="acronym|abbrev">
+ <xsl:apply-templates select="acronym|abbrev" mode="glossary.as.blocks"/>
+ <xsl:text> (</xsl:text>
+ <xsl:apply-templates select="glossterm" mode="glossary.as.blocks"/>
+ <xsl:text>)</xsl:text>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="glossterm" mode="glossary.as.blocks"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:when>
+
+ <xsl:when test="$glossentry.show.acronym = 'yes'">
+ <xsl:apply-templates select="glossterm" mode="glossary.as.blocks"/>
+
+ <xsl:if test="acronym[not(self::processing-instruction('se:choice'))]|abbrev[not(self::processing-instruction('se:choice'))]">
+ <xsl:text> (</xsl:text>
+ <xsl:apply-templates select="acronym|abbrev" mode="glossary.as.blocks"/>
+ <xsl:text>)</xsl:text>
+ </xsl:if>
+ </xsl:when>
+
+ <xsl:otherwise>
+ <xsl:apply-templates select="glossterm[not(self::processing-instruction('se:choice'))]" mode="glossary.as.blocks"/>
+ </xsl:otherwise>
+ </xsl:choose>
+
+ <xsl:apply-templates select="indexterm[not(self::processing-instruction('se:choice'))]"/>
+ <fo:block margin-left="0.25in">
+ <xsl:apply-templates select="glosssee|glossdef" mode="glossary.as.blocks"/>
+ </fo:block>
+ </fo:block>
+</xsl:template>
+
+<xsl:template match="glossentry/glossterm" mode="glossary.as.blocks" dtm:id="glossterm.glossentry.glossary-as-blocks">
+ <fo:inline>
+ <xsl:apply-templates/>
+ <xsl:if test="following-sibling::glossterm">, </xsl:if>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="glossentry/acronym" mode="glossary.as.blocks" dtm:id="acronym.glossentry.glossary-as-blocks">
+ <fo:inline>
+ <xsl:apply-templates/>
+ <xsl:if test="following-sibling::acronym|following-sibling::abbrev">, </xsl:if>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="glossentry/abbrev" mode="glossary.as.blocks" dtm:id="abbrev.glossentry.glossary-as-blocks">
+ <fo:inline>
+ <xsl:apply-templates/>
+ <xsl:if test="following-sibling::acronym|following-sibling::abbrev">, </xsl:if>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="glossentry/glosssee" mode="glossary.as.blocks" dtm:id="glosssee.glossentry.glossary-as-blocks">
+ <fo:inline>
+ <xsl:variable name="otherterm" select="@otherterm"/>
+
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="'glossary'"/>
+ <xsl:with-param name="name" select="'see'"/>
+ </xsl:call-template>
+ <xsl:apply-templates mode="glossary.as.blocks"/>
+ <xsl:text>.</xsl:text>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="glossentry/glossdef" mode="glossary.as.blocks" dtm:id="glossdef.glossentry.glossary-as-blocks">
+ <xsl:apply-templates select="*[local-name(.) != 'glossseealso']"/>
+ <xsl:if test="glossseealso">
+ <fo:block>
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="'glossary'"/>
+ <xsl:with-param name="name" select="'seealso'"/>
+ </xsl:call-template>
+ <xsl:apply-templates select="glossseealso" mode="glossary.as.blocks"/>
+ </fo:block>
+ </xsl:if>
+</xsl:template>
+
+<xsl:template match="glossentry/glossdef/para[1]|glossentry/glossdef/simpara[1]"
+ mode="glossary.as.blocks" dtm:id="para1.glossentry.glossary-as-blocks">
+ <fo:block>
+ <xsl:apply-templates/>
+ </fo:block>
+</xsl:template>
+
+<xsl:template match="glossseealso" mode="glossary.as.blocks" dtm:id="glossseealso.glossary-as-blocks">
+ <fo:inline>
+
+ <xsl:variable name="otherterm" select="@otherterm"/>
+
+ <xsl:apply-templates mode="glossary.as.blocks"/>
+
+ <xsl:choose>
+ <xsl:when test="position() = last()">
+ <xsl:text>.</xsl:text>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text>, </xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ </fo:inline>
+</xsl:template>
+
+</xsl:stylesheet>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/graphics.xsl b/doc/editor_configs/serna/scons/docbook-xsl-serna/graphics.xsl
new file mode 100644
index 0000000..43088f7
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/graphics.xsl
@@ -0,0 +1,269 @@
+<?xml version='1.0'?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:dtm="http://syntext.com/Extensions/DocumentTypeMetadata-1.0"
+ xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ extension-element-prefixes="dtm"
+ version='1.0'>
+
+<xsl:template name="mediaobject.filename" dtm:id="media.filename">
+ <xsl:param name="object"></xsl:param>
+
+ <xsl:variable name="data" select="$object/videodata
+ |$object/imagedata
+ |$object/audiodata
+ |$object"/>
+
+ <xsl:choose>
+ <xsl:when test="$data[@fileref]">
+ <xsl:value-of select="$data/@fileref"/>
+ </xsl:when>
+ <xsl:when test="$data[@entityref]">
+ <xsl:value-of select="unparsed-entity-uri($data/@entityref)"/>
+ </xsl:when>
+ <xsl:otherwise></xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="screenshot"/>
+<xsl:template match="screenshot" dtm:id="screenshot">
+ <fo:block>
+ <xsl:apply-templates/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="screeninfo"/>
+<xsl:template match="screeninfo" dtm:id="screeninfo">
+ <xsl:if test="$show.preamble.editing">
+ <fo:block xsl:use-attribute-sets="preamble.attributes">
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="name" select="'draftarea'"/>
+ <xsl:with-param name="context" select="'empty'"/>
+ </xsl:call-template>
+ <xsl:text> "</xsl:text>
+ <xsl:value-of select="local-name(.)"/>
+ <xsl:text>" </xsl:text>
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:if>
+</xsl:template>
+
+<!-- ==================================================================== -->
+<!-- Override these templates for FO -->
+<!-- ==================================================================== -->
+
+<xsl:template name="process.image" dtm:id="image.process">
+ <!-- When this template is called, the current node should be -->
+ <!-- a graphic, inlinegraphic, audiodata, imagedata, or videodata. -->
+ <!-- All those elements have the same set of attributes, so we -->
+ <!-- can handle them all in one place. -->
+
+ <xsl:variable name="scalefit">
+ <xsl:choose>
+ <xsl:when test="$ignore.image.scaling != 0">0</xsl:when>
+ <xsl:when test="@contentwidth or @contentdepth">0</xsl:when>
+ <xsl:when test="@scale">0</xsl:when>
+ <xsl:when test="@scalefit"><xsl:value-of select="@scalefit"/></xsl:when>
+ <xsl:when test="@width or @depth">1</xsl:when>
+ <xsl:otherwise>0</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:variable name="scale">
+ <xsl:choose>
+ <xsl:when test="$ignore.image.scaling != 0">0</xsl:when>
+ <xsl:when test="@contentwidth or @contentdepth">1.0</xsl:when>
+ <xsl:when test="@scale">
+ <xsl:value-of select="@scale div 100.0"/>
+ </xsl:when>
+ <xsl:otherwise>1.0</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:variable name="filename">
+ <xsl:choose>
+ <xsl:when test="local-name(.) = 'graphic'
+ or local-name(.) = 'inlinegraphic'">
+ <!-- handle legacy graphic and inlinegraphic by new template -->
+ <xsl:call-template name="mediaobject.filename">
+ <xsl:with-param name="object" select="."/>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:otherwise>
+ <!-- imagedata, videodata, audiodata -->
+ <xsl:call-template name="mediaobject.filename">
+ <xsl:with-param name="object" select=".."/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <fo:inline>
+ <fo:external-graphic>
+ <xsl:attribute name="src">
+ <xsl:call-template name="fo-external-image">
+ <xsl:with-param name="filename" select="$filename"/>
+ </xsl:call-template>
+ </xsl:attribute>
+
+ <xsl:attribute name="width">
+ <xsl:choose>
+ <xsl:when test="$ignore.image.scaling != 0">auto</xsl:when>
+ <xsl:when test="@width">
+ <xsl:value-of select="@width"/>
+ </xsl:when>
+ <xsl:otherwise>auto</xsl:otherwise>
+ </xsl:choose>
+ </xsl:attribute>
+
+ <xsl:attribute name="height">
+ <xsl:choose>
+ <xsl:when test="$ignore.image.scaling != 0">auto</xsl:when>
+ <xsl:when test="@depth">
+ <xsl:value-of select="@depth"/>
+ </xsl:when>
+ <xsl:otherwise>auto</xsl:otherwise>
+ </xsl:choose>
+ </xsl:attribute>
+
+ <xsl:attribute name="content-width">
+ <xsl:choose>
+ <xsl:when test="$ignore.image.scaling != 0">auto</xsl:when>
+ <xsl:when test="@contentwidth">
+ <xsl:value-of select="@contentwidth"/>
+ </xsl:when>
+ <xsl:when test="number($scale) != 1.0">
+ <xsl:value-of select="$scale * 100"/>
+ <xsl:text>%</xsl:text>
+ </xsl:when>
+ <xsl:when test="$scalefit = 1">scale-to-fit</xsl:when>
+ <xsl:otherwise>auto</xsl:otherwise>
+ </xsl:choose>
+ </xsl:attribute>
+
+ <xsl:attribute name="content-height">
+ <xsl:choose>
+ <xsl:when test="$ignore.image.scaling != 0">auto</xsl:when>
+ <xsl:when test="@contentdepth">
+ <xsl:value-of select="@contentdepth"/>
+ </xsl:when>
+ <xsl:when test="number($scale) != 1.0">
+ <xsl:value-of select="$scale * 100"/>
+ <xsl:text>%</xsl:text>
+ </xsl:when>
+ <xsl:otherwise>auto</xsl:otherwise>
+ </xsl:choose>
+ </xsl:attribute>
+
+ <xsl:if test="@align">
+ <xsl:attribute name="text-align">
+ <xsl:value-of select="@align"/>
+ </xsl:attribute>
+ </xsl:if>
+
+ <xsl:if test="@valign">
+ <xsl:attribute name="display-align">
+ <xsl:choose>
+ <xsl:when test="@valign = 'top'">before</xsl:when>
+ <xsl:when test="@valign = 'middle'">center</xsl:when>
+ <xsl:when test="@valign = 'bottom'">after</xsl:when>
+ <xsl:otherwise>auto</xsl:otherwise>
+ </xsl:choose>
+ </xsl:attribute>
+ </xsl:if>
+ </fo:external-graphic>
+ </fo:inline>
+</xsl:template>
+
+<!-- ==================================================================== -->
+
+<dtm:doc dtm:elements="graphic" dtm:idref="graphic image.process media.filename"/>
+<xsl:template match="graphic" dtm:id="graphic">
+ <xsl:choose>
+ <xsl:when test="../inlineequation">
+ <xsl:call-template name="process.image"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <fo:block>
+ <xsl:if test="@align">
+ <xsl:attribute name="text-align">
+ <xsl:value-of select="@align"/>
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:call-template name="process.image"/>
+ </fo:block>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:elements="inlinegraphic" dtm:idref="inlinegraphic image.process media.filename"/>
+<xsl:template match="inlinegraphic" dtm:id="inlinegraphic">
+ <xsl:call-template name="process.image"/>
+</xsl:template>
+
+<!-- ==================================================================== -->
+
+<dtm:doc dtm:idref="mediaobjects"/>
+<xsl:template match="mediaobject|mediaobjectco" dtm:id="mediaobjects">
+<fo:block>
+ <xsl:variable name="olist"
+ select="imageobject|imageobjectco|videoobject|audioobject|textobject"/>
+
+ <!-- We are processing all mediaobject in order to allow user edit
+ them. -->
+
+ <xsl:for-each select="$olist">
+ <xsl:variable name="align">
+ <xsl:value-of select="./imagedata[@align][1]/@align"/>
+ </xsl:variable>
+ <fo:block>
+ <xsl:if test="$align != '' ">
+ <xsl:attribute name="text-align">
+ <xsl:value-of select="$align"/>
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates select="."/>
+ </fo:block>
+ </xsl:for-each>
+ <xsl:apply-templates select="caption"/>
+</fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="inlinemediaobject"/>
+<xsl:template match="inlinemediaobject" dtm:id="inlinemediaobject">
+ <fo:inline><xsl:apply-templates/></fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:idref="imageobject"/>
+<xsl:template match="imageobject" dtm:id="imageobject">
+ <fo:inline><xsl:apply-templates/></fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:idref="data image.process media.filename image.external"/>
+<xsl:template match="videodata|imagedata|audiodata" dtm:id="data">
+ <xsl:call-template name="process.image"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="objects.media"/>
+<xsl:template match="audioobject|videoobject" dtm:id="objects.media">
+ <fo:inline><xsl:apply-templates/></fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:idref="object.text"/>
+<xsl:template match="textobject|textdata" dtm:id="object.text">
+ <fo:inline><xsl:apply-templates/></fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:idref="caption"/>
+<xsl:template match="caption" dtm:id="caption">
+ <fo:block>
+ <xsl:apply-templates/>
+ </fo:block>
+</xsl:template>
+
+
+<xsl:template name="fo-external-image" dtm:id="image.external">
+ <xsl:param name="filename"/>
+ <xsl:value-of select="concat('url(', $filename, ')')"/>
+</xsl:template>
+
+</xsl:stylesheet>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/inlines.xsl b/doc/editor_configs/serna/scons/docbook-xsl-serna/inlines.xsl
new file mode 100644
index 0000000..7a31774
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/inlines.xsl
@@ -0,0 +1,939 @@
+<?xml version='1.0'?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ xmlns:dtm="http://syntext.com/Extensions/DocumentTypeMetadata-1.0"
+ xmlns:se="http://syntext.com/XSL/Format-1.0"
+ extension-element-prefixes="dtm"
+ version='1.0'>
+
+ <!-- General templates -->
+<xsl:attribute-set name="inline.monoseq.properties"
+ use-attribute-sets="monospace.properties">
+ <xsl:attribute name="border-left-width">0pt</xsl:attribute>
+ <xsl:attribute name="border-right-width">0pt</xsl:attribute>
+</xsl:attribute-set>
+
+<xsl:attribute-set name="inline.charseq.properties">
+ <xsl:attribute name="border-left-width">0pt</xsl:attribute>
+ <xsl:attribute name="border-right-width">0pt</xsl:attribute>
+</xsl:attribute-set>
+
+ <dtm:doc dtm:idref="inline.italicmonoseq"/>
+ <xsl:template name="inline.italicmonoseq" dtm:id="inline.italicmonoseq">
+ <fo:inline font-style="italic"
+ border-left-width="0pt"
+ border-right-width="0pt"
+ xsl:use-attribute-sets="monospace.properties">
+ <xsl:apply-templates/>
+ </fo:inline>
+ </xsl:template>
+
+<dtm:doc dtm:idref="inline.italicseq"/>
+<xsl:template name="inline.italicseq" dtm:id="inline.italicseq">
+ <fo:inline font-style="italic"
+ border-left-width="0pt"
+ border-right-width="0pt">
+ <xsl:apply-templates/>
+ </fo:inline>
+</xsl:template>
+
+ <dtm:doc dtm:idref="inline.boldseq"/>
+ <xsl:template name="inline.boldseq" dtm:id="inline.boldseq">
+ <fo:inline font-weight="bold"
+ border-left-width="0pt"
+ border-right-width="0pt">
+ <xsl:apply-templates/>
+ </fo:inline>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="inline.monoseq"/>
+ <xsl:template name="inline.monoseq" dtm:id="inline.monoseq">
+ <fo:inline xsl:use-attribute-sets="inline.monoseq.properties">
+ <xsl:apply-templates/>
+ </fo:inline>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="inline.charseq"/>
+ <xsl:template name="inline.charseq" dtm:id="inline.charseq">
+ <fo:inline xsl:use-attribute-sets="inline.charseq.properties">
+ <xsl:apply-templates/>
+ </fo:inline>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="inline.boldmonoseq"/>
+ <xsl:template name="inline.boldmonoseq" dtm:id="inline.boldmonoseq">
+ <fo:inline
+ font-weight="bold"
+ border-left-width="0pt"
+ border-right-width="0pt"
+ xsl:use-attribute-sets="monospace.properties">
+ <xsl:apply-templates/>
+ </fo:inline>
+ </xsl:template>
+
+ <!-- Misc simple templates -->
+
+ <dtm:doc dtm:idref="parameter"/>
+ <xsl:template match="parameter" dtm:id="parameter">
+ <xsl:call-template name="inline.italicmonoseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="replaceable"/>
+ <xsl:template match="replaceable" dtm:id="replaceable">
+ <xsl:call-template name="inline.italicmonoseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="structfield"/>
+ <xsl:template match="structfield" dtm:id="structfield">
+ <xsl:call-template name="inline.italicmonoseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="authorinitials"/>
+ <xsl:template match="authorinitials" dtm:id="authorinitials">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="editor"/>
+ <xsl:template match="editor" dtm:id="editor">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="confs"/>
+ <xsl:template match="confdates|confgroup|confnum|confsponsor|conftitle" dtm:id="confs">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="accel"/>
+ <xsl:template match="accel" dtm:id="accel">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="action"/>
+ <xsl:template match="action" dtm:id="action">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="application"/>
+ <xsl:template match="application" dtm:id="application">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="database"/>
+ <xsl:template match="database" dtm:id="database">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="errorcode"/>
+ <xsl:template match="errorcode" dtm:id="errorcode">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="errorname"/>
+ <xsl:template match="errorname" dtm:id="errorname">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="errortype"/>
+ <xsl:template match="errortype" dtm:id="errortype">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="errortext"/>
+ <xsl:template match="errortext" dtm:id="errortext">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="guibutton"/>
+ <xsl:template match="guibutton" dtm:id="guibutton">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="guiicon"/>
+ <xsl:template match="guiicon" dtm:id="guiicon">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="guilabel"/>
+ <xsl:template match="guilabel" dtm:id="guilabel">
+ <xsl:call-template name="inline.italicmonoseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="guimenu"/>
+ <xsl:template match="guimenu" dtm:id="guimenu">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="guimenuitem"/>
+ <xsl:template match="guimenuitem" dtm:id="guimenuitem">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="guisubmenu"/>
+ <xsl:template match="guisubmenu" dtm:id="guisubmenu">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="isbn-issn"/>
+ <xsl:template match="isbn|issn" dtm:id="isbn-issn">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="nums"/>
+ <xsl:template match="shortaffil|artpagenums|contractnum|contractsponsor|contrib|invpartnumber|issuenum|pagenums|volumenum|jobtitle" dtm:id="nums">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="hardware"/>
+ <xsl:template match="hardware" dtm:id="hardware">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="interface"/>
+ <xsl:template match="interface" dtm:id="interface">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="interfacedefinition"/>
+ <xsl:template match="interfacedefinition" dtm:id="interfacedefinition">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="keycode"/>
+ <xsl:template match="keycode" dtm:id="keycode">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="keysym"/>
+ <xsl:template match="keysym" dtm:id="keysym">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="code"/>
+ <xsl:template match="code" dtm:id="code">
+ <xsl:call-template name="inline.monoseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="mousebutton"/>
+ <xsl:template match="mousebutton" dtm:id="mousebutton">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="property"/>
+ <xsl:template match="property" dtm:id="property">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="returnvalue"/>
+ <xsl:template match="returnvalue" dtm:id="returnvalue">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="structname"/>
+ <xsl:template match="structname" dtm:id="structname">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="symbol"/>
+ <xsl:template match="symbol" dtm:id="symbol">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="token"/>
+ <xsl:template match="token" dtm:id="token">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="type"/>
+ <xsl:template match="type" dtm:id="type">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="abbrev"/>
+ <xsl:template match="abbrev" dtm:id="abbrev">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="acronym"/>
+ <xsl:template match="acronym" dtm:id="acronym">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="citerefentry"/>
+ <xsl:template match="citerefentry" dtm:id="citerefentry">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="markup"/>
+ <xsl:template match="markup" dtm:id="markup">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="phrase"/>
+ <xsl:template match="phrase" dtm:id="phrase">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+<dtm:doc dtm:idref="productname"/>
+<xsl:template match="productname" dtm:id="productname">
+ <xsl:call-template name="inline.charseq"/>
+ <xsl:if test="@class">
+ <xsl:call-template name="dingbat">
+ <xsl:with-param name="dingbat" select="@class"/>
+ </xsl:call-template>
+ </xsl:if>
+</xsl:template>
+
+ <dtm:doc dtm:idref="productnumber"/>
+ <xsl:template match="productnumber" dtm:id="productnumber">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="addressparams"/>
+ <xsl:template match="pob|street|city|state|postcode|country|otheraddr" dtm:id="addressparams">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="phone|fax"/>
+ <xsl:template match="phone|fax" dtm:id="phone|fax">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="publisher"/>
+ <xsl:template match="pubdate|publisher|publishername" dtm:id="publisher">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="year"/>
+ <xsl:template match="year" dtm:id="year">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="author"/>
+ <xsl:template
+ match="honorific|firstname|surname|lineage|othername|author|corpauthor|corpname" dtm:id="author">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="command"/>
+ <xsl:template match="command" dtm:id="command">
+ <xsl:call-template name="inline.boldseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="keycap"/>
+ <xsl:template match="keycap" dtm:id="keycap">
+ <xsl:call-template name="inline.boldseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="shortcut"/>
+ <xsl:template match="shortcut" dtm:id="shortcut">
+ <xsl:call-template name="inline.boldseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="filename"/>
+ <xsl:template match="filename" dtm:id="filename">
+ <xsl:call-template name="inline.monoseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="literal"/>
+ <xsl:template match="literal" dtm:id="literal">
+ <xsl:call-template name="inline.monoseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="classname"/>
+ <xsl:template match="classname" dtm:id="classname">
+ <xsl:call-template name="inline.monoseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="exceptionname"/>
+ <xsl:template match="exceptionname" dtm:id="exceptionname">
+ <xsl:call-template name="inline.monoseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="interfacename"/>
+ <xsl:template match="interfacename" dtm:id="interfacename">
+ <xsl:call-template name="inline.monoseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="methodname"/>
+ <xsl:template match="methodname" dtm:id="methodname">
+ <xsl:call-template name="inline.monoseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="computeroutput"/>
+ <xsl:template match="computeroutput" dtm:id="computeroutput">
+ <xsl:call-template name="inline.monoseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="constant"/>
+ <xsl:template match="constant" dtm:id="constant">
+ <xsl:call-template name="inline.monoseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="envar"/>
+ <xsl:template match="envar" dtm:id="envar">
+ <xsl:call-template name="inline.monoseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="option"/>
+ <xsl:template match="option" dtm:id="option">
+ <xsl:call-template name="inline.monoseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="prompt"/>
+ <xsl:template match="prompt" dtm:id="prompt">
+ <xsl:call-template name="inline.monoseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="systemitem"/>
+ <xsl:template match="systemitem" dtm:id="systemitem">
+ <xsl:call-template name="inline.monoseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="userinput"/>
+ <xsl:template match="userinput" dtm:id="userinput">
+ <xsl:call-template name="inline.boldmonoseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="varname"/>
+ <xsl:template match="varname" dtm:id="varname">
+ <xsl:call-template name="inline.monoseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="orgname"/>
+ <xsl:template match="orgname" dtm:id="orgname">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <!-- Specific templates -->
+ <dtm:doc dtm:idref="affiliation"/>
+ <xsl:template match="affiliation" dtm:id="affiliation">
+ <fo:inline xsl:use-attribute-sets="monospace.properties">
+ <xsl:call-template name="inline.monoseq"/>
+ </fo:inline>
+ </xsl:template>
+
+<dtm:doc dtm:idref="trademark"/>
+<xsl:template match="trademark" dtm:id="trademark">
+ <xsl:call-template name="inline.charseq"/>
+ <xsl:if test="@class">
+ <xsl:call-template name="dingbat">
+ <xsl:with-param name="dingbat" select="@class"/>
+ </xsl:call-template>
+ </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:idref="citetitle"/>
+<xsl:template match="citetitle" dtm:id="citetitle">
+ <xsl:choose>
+ <xsl:when test="@pubwork = 'article'">
+ <xsl:call-template name="gentext.startquote"/>
+ <xsl:call-template name="inline.charseq"/>
+ <xsl:call-template name="gentext.endquote"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="inline.italicseq"/>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+ <dtm:doc dtm:idref="email"/>
+ <xsl:template match="email" dtm:id="email">
+ <xsl:choose>
+ <xsl:when test="node()">
+ <fo:inline xsl:use-attribute-sets="inline.monoseq.properties">
+ <xsl:text>&lt;</xsl:text>
+ <xsl:apply-templates/>
+ <xsl:text>&gt;</xsl:text>
+ </fo:inline>
+ </xsl:when>
+ <xsl:otherwise>
+ <fo:inline></fo:inline>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="quote"/>
+ <xsl:template match="quote" dtm:id="quote">
+ <fo:inline>
+ <xsl:if test="node()">
+ <xsl:choose>
+ <xsl:when test="count(ancestor::quote) mod 2 = 0">
+ <xsl:call-template name="gentext.startquote"/>
+ <xsl:apply-templates/>
+ <xsl:call-template name="gentext.endquote"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="gentext.nestedstartquote"/>
+ <xsl:apply-templates/>
+ <xsl:call-template name="gentext.nestedendquote"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:if>
+ </fo:inline>
+ </xsl:template>
+
+<dtm:doc dtm:idref="sgmltag"/>
+<xsl:template match="sgmltag" dtm:id="sgmltag">
+ <xsl:variable name="class">
+ <xsl:choose>
+ <xsl:when test="@class">
+ <xsl:value-of select="@class"/>
+ </xsl:when>
+ <xsl:otherwise>element</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+ <xsl:choose>
+ <xsl:when test="$class='attribute'">
+ <xsl:call-template name="inline.monoseq"/>
+ </xsl:when>
+ <xsl:when test="$class='attvalue'">
+ <xsl:call-template name="inline.monoseq"/>
+ </xsl:when>
+ <xsl:when test="$class='element'">
+ <xsl:call-template name="inline.monoseq"/>
+ </xsl:when>
+ <xsl:when test="$class='endtag'">
+ <fo:inline xsl:use-attribute-sets="inline.monoseq.properties">
+ <xsl:text>&lt;/</xsl:text>
+ <xsl:apply-templates/>
+ <xsl:text>&gt;</xsl:text>
+ </fo:inline>
+ </xsl:when>
+ <xsl:when test="$class='genentity'">
+ <fo:inline xsl:use-attribute-sets="inline.monoseq.properties">
+ <xsl:text>&amp;</xsl:text>
+ <xsl:apply-templates/>
+ <xsl:text>;</xsl:text>
+ </fo:inline>
+ </xsl:when>
+ <xsl:when test="$class='numcharref'">
+ <fo:inline xsl:use-attribute-sets="inline.monoseq.properties">
+ <xsl:text>&amp;#</xsl:text>
+ <xsl:apply-templates/>
+ <xsl:text>;</xsl:text>
+ </fo:inline>
+ </xsl:when>
+ <xsl:when test="$class='paramentity'">
+ <fo:inline xsl:use-attribute-sets="inline.monoseq.properties">
+ <xsl:text>%</xsl:text>
+ <xsl:apply-templates/>
+ <xsl:text>;</xsl:text>
+ </fo:inline>
+ </xsl:when>
+ <xsl:when test="$class='pi'">
+ <fo:inline xsl:use-attribute-sets="inline.monoseq.properties">
+ <xsl:text>&lt;?</xsl:text>
+ <xsl:apply-templates/>
+ <xsl:text>&gt;</xsl:text>
+ </fo:inline>
+ </xsl:when>
+ <xsl:when test="$class='xmlpi'">
+ <fo:inline xsl:use-attribute-sets="inline.monoseq.properties">
+ <xsl:text>&lt;?</xsl:text>
+ <xsl:apply-templates/>
+ <xsl:text>?&gt;</xsl:text>
+ </fo:inline>
+ </xsl:when>
+ <xsl:when test="$class='starttag'">
+ <fo:inline xsl:use-attribute-sets="inline.monoseq.properties">
+ <xsl:text>&lt;</xsl:text>
+ <xsl:apply-templates/>
+ <xsl:text>&gt;</xsl:text>
+ </fo:inline>
+ </xsl:when>
+ <xsl:when test="$class='emptytag'">
+ <fo:inline xsl:use-attribute-sets="inline.monoseq.properties">
+ <xsl:text>&lt;</xsl:text>
+ <xsl:apply-templates/>
+ <xsl:text>/&gt;</xsl:text>
+ </fo:inline>
+ </xsl:when>
+ <xsl:when test="$class='sgmlcomment'">
+ <fo:inline xsl:use-attribute-sets="inline.monoseq.properties">
+ <xsl:text>&lt;!--</xsl:text>
+ <xsl:apply-templates/>
+ <xsl:text>--&gt;</xsl:text>
+ </fo:inline>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+ <dtm:doc dtm:idref="citation"/>
+ <xsl:template match="citation" dtm:id="citation">
+ <xsl:text>[</xsl:text>
+ <xsl:call-template name="inline.charseq"/>
+ <xsl:text>]</xsl:text>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="emphasis"/>
+ <xsl:template match="emphasis" dtm:id="emphasis">
+ <xsl:choose>
+ <xsl:when test="@role='bold'">
+ <xsl:call-template name="inline.boldseq"/>
+ </xsl:when>
+ <xsl:when test="@role='underline'">
+ <fo:inline
+ border-left-width="0pt"
+ border-right-width="0pt"
+ text-decoration="underline">
+ <xsl:call-template name="inline.charseq"/>
+ </fo:inline>
+ </xsl:when>
+ <xsl:when test="@role='strikethrough'">
+ <fo:inline
+ border-left-width="0pt"
+ border-right-width="0pt"
+ text-decoration="line-through">
+ <xsl:call-template name="inline.charseq"/>
+ </fo:inline>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:choose>
+ <xsl:when test="count(ancestor::emphasis) mod 2">
+ <fo:inline
+ border-left-width="0pt"
+ border-right-width="0pt"
+ font-style="normal">
+ <xsl:apply-templates/>
+ </fo:inline>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="inline.italicseq"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+
+
+ <!-- xsl:template match="emphasis">
+ <fo:inline font-style="italic"
+ border-left-width="0pt"
+ border-right-width="0pt">
+ <xsl:apply-templates/>
+ </fo:inline>
+ </xsl:template -->
+
+ <dtm:doc dtm:idref="firstterm"/>
+ <xsl:template match="firstterm" dtm:id="firstterm">
+ <fo:inline font-weight="bold"
+ border-left-width="0pt"
+ border-right-width="0pt">
+ <xsl:apply-templates/>
+ </fo:inline>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="glossterm"/>
+ <xsl:template match="glossterm" dtm:id="glossterm">
+ <fo:inline font-style="italic"
+ font-weight="bold"
+ border-left-width="0pt"
+ border-right-width="0pt">
+ <xsl:apply-templates/>
+ </fo:inline>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="ulink"/>
+ <xsl:template match="ulink" dtm:id="ulink">
+ <!-- Keep all the content within one area -->
+ <fo:inline text-decoration="underline">
+
+ <!-- Separate inline area will draw empty tag if content is empty -->
+ <fo:inline>
+ <xsl:apply-templates/>
+ </fo:inline>
+
+ <!-- Use the extensions if processed in Serna -->
+ <xsl:choose>
+ <xsl:when test="$use-serna-extensions">
+ <xsl:apply-templates select="@url" mode="ulink"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text> [</xsl:text>
+ <xsl:value-of select="@url"/>
+ <xsl:text>]</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ </fo:inline>
+ </xsl:template>
+
+ <!-- Call separate template for @url to make @url the context node -->
+ <dtm:doc dtm:idref="url.ulink"/>
+ <xsl:template match="@url" mode="ulink" dtm:id="url.ulink">
+ <fo:inline>
+ <xsl:text> [</xsl:text>
+ <se:line-edit width="4cm" value="{string(.)}" />
+ <xsl:text>]</xsl:text>
+ </fo:inline>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="link"/>
+ <xsl:template match="link" dtm:id="link">
+ <fo:inline>
+ <xsl:if test="@endterm">
+ <xsl:value-of select="id(@endterm)"/>
+ </xsl:if>
+ <xsl:apply-templates/>
+ <xsl:text> [</xsl:text>
+ <xsl:value-of select="@linkend"/>
+ <xsl:text>]</xsl:text>
+ </fo:inline>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="olink"/>
+ <xsl:template match="olink" dtm:id="olink">
+ <fo:inline>
+ <xsl:choose>
+ <xsl:when test="node()">
+ <xsl:apply-templates/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text>[]</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ </fo:inline>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="attribution"/>
+ <xsl:template match="attribution" dtm:id="attribution">
+ <fo:inline><xsl:apply-templates/></fo:inline>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="lineannotation"/>
+ <xsl:template match="lineannotation" dtm:id="lineannotation">
+ <fo:inline font-style="italic">
+ <xsl:apply-templates/>
+ </fo:inline>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="remark"/>
+ <xsl:template match="remark" dtm:id="remark">
+ <xsl:if test="$show.remarks != 0">
+ <fo:block font-style="italic">
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:if>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="copyright"/>
+ <xsl:template match="copyright" dtm:id="copyright">
+ <fo:inline>
+ <xsl:if test="node()">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'copyright'"/>
+ </xsl:call-template>
+ <xsl:text>&#x00A9; </xsl:text>
+ <xsl:call-template name="copyright.years">
+ <xsl:with-param name="years" select="year"/>
+ <xsl:with-param name="print.ranges" select="$make.year.ranges"/>
+ <xsl:with-param name="single.year.ranges"
+ select="$make.single.year.ranges"/>
+ </xsl:call-template>
+ <xsl:text>&#160;</xsl:text>
+ <xsl:apply-templates select="holder"/>
+ </xsl:if>
+ </fo:inline>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="holder"/>
+ <xsl:template match="holder" dtm:id="holder">
+ <xsl:call-template name="inline.charseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="anchor"/>
+ <xsl:template match="anchor" dtm:id="anchor">
+ <xsl:if test="$show.preamble.editing">
+ <fo:block xsl:use-attribute-sets="preamble.attributes">
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="name" select="'draftarea'"/>
+ <xsl:with-param name="context" select="'empty'"/>
+ </xsl:call-template>
+ <xsl:text> "</xsl:text>
+ <xsl:value-of select="local-name(.)"/>
+ <xsl:text>" </xsl:text>
+ <fo:inline font-size="0.75em" color="gray"><xsl:text> (anchor: </xsl:text>
+ <xsl:choose>
+ <xsl:when test="@id">
+ <xsl:value-of select="@id"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text>no ID</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:text>) </xsl:text>
+ </fo:inline>
+ </fo:block>
+ </xsl:if>
+
+ </xsl:template>
+
+ <dtm:doc dtm:idref="member"/>
+ <xsl:template match="member" dtm:id="member">
+ <fo:inline><xsl:apply-templates/></fo:inline>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="optional"/>
+ <xsl:template match="optional" dtm:id="optional">
+ <xsl:value-of select="$arg.choice.opt.open.str"/>
+ <xsl:call-template name="inline.charseq"/>
+ <xsl:value-of select="$arg.choice.opt.close.str"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="footnoteref"/>
+ <xsl:template match="footnoteref" dtm:id="footnoteref">
+ <fo:inline baseline-shift="super">
+ <xsl:choose>
+ <xsl:when test="@linkend">
+ <xsl:value-of select="id(@linkend)"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text>[</xsl:text>
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="name" select="'footnote'"/>
+ <xsl:with-param name="context" select="'empty'"/>
+ </xsl:call-template>
+ <xsl:text>: </xsl:text>
+ <xsl:if test="@label">
+ <xsl:value-of select="@label"/>
+ <xsl:text> </xsl:text>
+ </xsl:if>
+ <xsl:text>]</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ </fo:inline>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="title.footnote"/>
+ <xsl:template match="title/footnote" dtm:id="title.footnote">
+ <fo:inline font-size="{$footnote.font.size}" baseline-shift="super">
+ <xsl:choose>
+ <xsl:when test="@id">
+ <xsl:value-of select="id(@linkend)"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text>[</xsl:text>
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="'empty'"/>
+ <xsl:with-param name="name" select="'footnote'"/>
+ </xsl:call-template>
+ <xsl:text>]</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:apply-templates/>
+ </fo:inline>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="function"/>
+ <xsl:template match="function" dtm:id="function">
+ <xsl:call-template name="inline.monoseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="superscript"/>
+ <xsl:template match="superscript" dtm:id="superscript">
+ <fo:inline
+ border-left-width="0pt"
+ border-right-width="0pt"
+ baseline-shift="super">
+ <xsl:apply-templates/>
+ </fo:inline>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="subscript"/>
+ <xsl:template match="subscript" dtm:id="subscript">
+ <fo:inline
+ border-left-width="0pt"
+ border-right-width="0pt"
+ baseline-shift="sub">
+ <xsl:apply-templates/>
+ </fo:inline>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="keycombo"/>
+ <xsl:template match="keycombo" dtm:id="keycombo">
+ <xsl:variable name="action" select="@action"/>
+ <xsl:variable name="joinchar">
+ <xsl:choose>
+ <xsl:when test="$action='seq'"><xsl:text> </xsl:text></xsl:when>
+ <xsl:when test="$action='simul'">+</xsl:when>
+ <xsl:when test="$action='press'">-</xsl:when>
+ <xsl:when test="$action='click'">-</xsl:when>
+ <xsl:when test="$action='double-click'">-</xsl:when>
+ <xsl:when test="$action='other'"></xsl:when>
+ <xsl:otherwise>-</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+ <fo:inline xsl:use-attribute-sets="inline.charseq.properties">
+ <xsl:for-each select="*">
+ <xsl:if test="position() > 1">
+ <xsl:value-of select="$joinchar"/>
+ </xsl:if>
+ <xsl:apply-templates select="."/>
+ </xsl:for-each>
+ </fo:inline>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="menuchoice"/>
+ <xsl:template match="menuchoice" dtm:id="menuchoice">
+ <fo:inline xsl:use-attribute-sets="inline.charseq.properties">
+ <xsl:call-template name="process.menuchoice"/>
+ <xsl:if test="shortcut[not(self::processing-instruction('se:choice'))]">
+ <xsl:text> (</xsl:text>
+ <xsl:apply-templates select="shortcut"/>
+ <xsl:text>)</xsl:text>
+ </xsl:if>
+ </fo:inline>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="process.menuchoice"/>
+ <xsl:template name="process.menuchoice" dtm:id="process.menuchoice">
+ <xsl:param name="nodelist" select="guibutton|guiicon|guilabel|guimenu|guimenuitem|guisubmenu|interface"/><!-- not(shortcut) -->
+ <xsl:param name="count" select="1"/>
+
+ <xsl:choose>
+ <xsl:when test="$count>count($nodelist)"></xsl:when>
+ <xsl:when test="$count=1">
+ <xsl:apply-templates select="$nodelist[$count=position()]"/>
+ <xsl:call-template name="process.menuchoice">
+ <xsl:with-param name="nodelist" select="$nodelist"/>
+ <xsl:with-param name="count" select="$count+1"/>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:variable name="node" select="$nodelist[$count=position()]"/>
+ <xsl:choose>
+ <xsl:when test="name($node)='guimenuitem'
+ or name($node)='guisubmenu'">
+ <xsl:value-of select="$menuchoice.menu.separator"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$menuchoice.separator"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:apply-templates select="$node"/>
+ <xsl:call-template name="process.menuchoice">
+ <xsl:with-param name="nodelist" select="$nodelist"/>
+ <xsl:with-param name="count" select="$count+1"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="foreignphrase"/>
+ <xsl:template match="foreignphrase" dtm:id="foreignphrase">
+ <xsl:call-template name="inline.italicseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="wordasword"/>
+ <xsl:template match="wordasword" dtm:id="wordasword">
+ <xsl:call-template name="inline.italicseq"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="medialabel"/>
+ <xsl:template match="medialabel" dtm:id="medialabel">
+ <xsl:call-template name="inline.italicseq"/>
+ </xsl:template>
+
+</xsl:stylesheet>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n.xsl b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n.xsl
new file mode 100644
index 0000000..befb4d9
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n.xsl
@@ -0,0 +1,438 @@
+<?xml version='1.0'?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0"
+ exclude-result-prefixes="l"
+ xmlns:dtm="http://syntext.com/Extensions/DocumentTypeMetadata-1.0"
+ extension-element-prefixes="dtm"
+ version='1.0'>
+
+<xsl:param name="l10n.xml.en" select="document('l10n/en.xml')/l:l10n"/>
+
+<xsl:param name="supported.languages"
+ select="'af bg ca cs da de el en es et eu fi fr he hu id it ja ko lt
+ nl nn no pl pt ro ru sk sl sr sv th tr ok vi zh'"/>
+<xsl:param name="supported.dlanguages" select="'pt_br zh_cn zh_tw'"/>
+
+<dtm:doc dtm:idref="l10n.language"/>
+<xsl:template name="l10n.language" dtm:id="l10n.language">
+ <xsl:param name="target" select="."/>
+ <xsl:param name="xref-context" select="false()"/>
+
+ <xsl:variable name="mc-language">
+ <xsl:choose>
+ <xsl:when test="$l10n.gentext.language != ''">
+ <xsl:value-of select="$l10n.gentext.language"/>
+ </xsl:when>
+
+ <xsl:when test="$xref-context or $l10n.gentext.use.xref.language != 0">
+ <!-- can't do this one step: attributes are unordered! -->
+ <xsl:variable name="lang-scope"
+ select="($target/ancestor-or-self::*[@lang]
+ |$target/ancestor-or-self::*[@xml:lang])[last()]"/>
+ <xsl:variable name="lang-attr"
+ select="($lang-scope/@lang | $lang-scope/@xml:lang)[1]"/>
+ <xsl:choose>
+ <xsl:when test="string($lang-attr) = ''">
+ <xsl:value-of select="$l10n.gentext.default.language"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$lang-attr"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:when>
+
+ <xsl:otherwise>
+ <!-- can't do this one step: attributes are unordered! -->
+ <xsl:variable name="lang-scope"
+ select="(ancestor-or-self::*[@lang]
+ |ancestor-or-self::*[@xml:lang])[last()]"/>
+ <xsl:variable name="lang-attr"
+ select="($lang-scope/@lang | $lang-scope/@xml:lang)[1]"/>
+
+ <xsl:choose>
+ <xsl:when test="string($lang-attr) = ''">
+ <xsl:value-of select="$l10n.gentext.default.language"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$lang-attr"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:variable name="language" select="translate($mc-language,
+ 'ABCDEFGHIJKLMNOPQRSTUVWXYZ',
+ 'abcdefghijklmnopqrstuvwxyz')"/>
+
+ <xsl:variable name="adjusted.language">
+ <xsl:choose>
+ <xsl:when test="contains($language,'-')">
+ <xsl:value-of select="substring-before($language,'-')"/>
+ <xsl:text>_</xsl:text>
+ <xsl:value-of select="substring-after($language,'-')"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$language"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:variable name="subs.language">
+ <xsl:choose>
+ <xsl:when test="contains($adjusted.language, '_')">
+ <xsl:value-of select="substring-before($adjusted.language, '_')"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$adjusted.language"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:choose>
+ <xsl:when test="contains($adjusted.language, '_') and
+ contains($supported.dlanguages, $adjusted.language)">
+ <xsl:value-of select="$adjusted.language"/>
+ </xsl:when>
+ <xsl:when test="contains($supported.languages, $subs.language)">
+ <xsl:value-of select="$subs.language"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:message>
+ <xsl:text>l10n.language: No localization exists for "</xsl:text>
+ <xsl:value-of select="$adjusted.language"/>
+ <xsl:text>" or "</xsl:text>
+ <xsl:value-of select="substring-before($adjusted.language,'_')"/>
+ <xsl:text>". Using default "</xsl:text>
+ <xsl:value-of select="$l10n.gentext.default.language"/>
+ <xsl:text>".</xsl:text>
+ </xsl:message>
+ <xsl:value-of select="$l10n.gentext.default.language"/>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="language.attribute"/>
+<xsl:template name="language.attribute" dtm:id="language.attribute">
+ <xsl:param name="node" select="."/>
+
+ <xsl:variable name="language">
+ <xsl:choose>
+ <xsl:when test="$l10n.gentext.language != ''">
+ <xsl:value-of select="$l10n.gentext.language"/>
+ </xsl:when>
+
+ <xsl:otherwise>
+ <!-- can't do this one step: attributes are unordered! -->
+ <xsl:variable name="lang-scope"
+ select="($node/ancestor-or-self::*[@lang]
+ |$node/ancestor-or-self::*[@xml:lang])[last()]"/>
+ <xsl:variable name="lang-attr"
+ select="($lang-scope/@lang | $lang-scope/@xml:lang)[1]"/>
+
+ <xsl:choose>
+ <xsl:when test="string($lang-attr) = ''">
+ <xsl:value-of select="$l10n.gentext.default.language"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$lang-attr"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:if test="$language != ''">
+ <xsl:attribute name="lang">
+ <xsl:value-of select="$language"/>
+ </xsl:attribute>
+ </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:idref="gentext"/>
+<xsl:template name="gentext" dtm:id="gentext">
+ <xsl:param name="key" select="local-name(.)"/>
+ <xsl:param name="lang">
+ <xsl:call-template name="l10n.language"/>
+ </xsl:param>
+
+ <xsl:variable name="l10n.xml"
+ select="document(concat('l10n/', $lang, '.xml'))/l:l10n"/>
+
+ <xsl:variable name="l10n.gentext"
+ select="$l10n.xml/l:gentext[@key=$key]"/>
+
+ <xsl:variable name="l10n.name">
+ <xsl:value-of select="$l10n.gentext/@text"/>
+ </xsl:variable>
+
+ <xsl:choose>
+ <xsl:when test="count($l10n.gentext) &gt; 0">
+ <xsl:value-of select="$l10n.gentext/@text"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:message>
+ <xsl:text>gentext: No "</xsl:text>
+ <xsl:value-of select="$lang"/>
+ <xsl:text>" localization of "</xsl:text>
+ <xsl:value-of select="$key"/>
+ <xsl:text>" exists</xsl:text>
+ <xsl:choose>
+ <xsl:when test="$lang = 'en'">
+ <xsl:text>.</xsl:text>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text>; using "en".</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:message>
+ <xsl:value-of select="($l10n.xml.en/l:gentext[@key=$key])[1]/@text"/>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="gentext.element.name"/>
+<xsl:template name="gentext.element.name" dtm:id="gentext.element.name">
+ <xsl:param name="element.name" select="name(.)"/>
+ <xsl:param name="lang">
+ <xsl:call-template name="l10n.language"/>
+ </xsl:param>
+
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="$element.name"/>
+ <xsl:with-param name="lang" select="$lang"/>
+ </xsl:call-template>
+</xsl:template>
+
+<dtm:doc dtm:idref="gentext.space"/>
+<xsl:template name="gentext.space" dtm:id="gentext.space">
+ <xsl:text> </xsl:text>
+</xsl:template>
+
+<dtm:doc dtm:idref="gentext.edited.by"/>
+<xsl:template name="gentext.edited.by" dtm:id="gentext.edited.by">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'Editedby'"/>
+ </xsl:call-template>
+</xsl:template>
+
+<dtm:doc dtm:idref="gentext.by"/>
+<xsl:template name="gentext.by" dtm:id="gentext.by">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'by'"/>
+ </xsl:call-template>
+</xsl:template>
+
+<dtm:doc dtm:idref="gentext.dingbat"/>
+<xsl:template name="gentext.dingbat" dtm:id="gentext.dingbat">
+ <xsl:param name="dingbat">bullet</xsl:param>
+ <xsl:param name="lang">
+ <xsl:call-template name="l10n.language"/>
+ </xsl:param>
+
+ <xsl:variable name="l10n.xml"
+ select="document(concat('l10n/', $lang, '.xml'))/l:l10n"/>
+
+ <xsl:variable name="l10n.dingbat"
+ select="($l10n.xml/l:dingbat[@key=$dingbat])[1]"/>
+
+ <xsl:choose>
+ <xsl:when test="count($l10n.dingbat) &gt; 0">
+ <xsl:value-of select="$l10n.dingbat/@text"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:message>
+ <xsl:text>gentext.dingbat: No "</xsl:text>
+ <xsl:value-of select="$lang"/>
+ <xsl:text>" localization of dingbat </xsl:text>
+ <xsl:value-of select="$dingbat"/>
+ <xsl:text> exists; using "en".</xsl:text>
+ </xsl:message>
+
+ <xsl:value-of select="($l10n.xml.en/l:gentext[@key=$dingbat])[1]/@text"/>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="gentext.startquote"/>
+<xsl:template name="gentext.startquote" dtm:id="gentext.startquote">
+ <xsl:call-template name="gentext.dingbat">
+ <xsl:with-param name="dingbat">startquote</xsl:with-param>
+ </xsl:call-template>
+</xsl:template>
+
+<dtm:doc dtm:idref="gentext.endquote"/>
+<xsl:template name="gentext.endquote" dtm:id="gentext.endquote">
+ <xsl:call-template name="gentext.dingbat">
+ <xsl:with-param name="dingbat">endquote</xsl:with-param>
+ </xsl:call-template>
+</xsl:template>
+
+<dtm:doc dtm:idref="gentext.nestedstartquote"/>
+<xsl:template name="gentext.nestedstartquote" dtm:id="gentext.nestedstartquote">
+ <xsl:call-template name="gentext.dingbat">
+ <xsl:with-param name="dingbat">nestedstartquote</xsl:with-param>
+ </xsl:call-template>
+</xsl:template>
+
+<dtm:doc dtm:idref="gentext.nestedendquote"/>
+<xsl:template name="gentext.nestedendquote" dtm:id="gentext.nestedendquote">
+ <xsl:call-template name="gentext.dingbat">
+ <xsl:with-param name="dingbat">nestedendquote</xsl:with-param>
+ </xsl:call-template>
+</xsl:template>
+
+<dtm:doc dtm:idref="gentext.nav.prev"/>
+<xsl:template name="gentext.nav.prev" dtm:id="gentext.nav.prev">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'nav-prev'"/>
+ </xsl:call-template>
+</xsl:template>
+
+<dtm:doc dtm:idref="gentext.nav.next"/>
+<xsl:template name="gentext.nav.next" dtm:id="gentext.nav.next">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'nav-next'"/>
+ </xsl:call-template>
+</xsl:template>
+
+<dtm:doc dtm:idref="gentext.nav.home"/>
+<xsl:template name="gentext.nav.home" dtm:id="gentext.nav.home">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'nav-home'"/>
+ </xsl:call-template>
+</xsl:template>
+
+<dtm:doc dtm:idref="gentext.nav.up"/>
+<xsl:template name="gentext.nav.up" dtm:id="gentext.nav.up">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'nav-up'"/>
+ </xsl:call-template>
+</xsl:template>
+
+<!-- ============================================================ -->
+<dtm:doc dtm:idref="gentext.template"/>
+<xsl:template name="gentext.template" dtm:id="gentext.template">
+ <xsl:param name="context" select="'default'"/>
+ <xsl:param name="name" select="'default'"/>
+ <xsl:param name="origname" select="$name"/>
+ <xsl:param name="purpose"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:param name="referrer"/>
+ <xsl:param name="lang">
+ <xsl:call-template name="l10n.language"/>
+ </xsl:param>
+
+ <xsl:variable name="localization.node"
+ select="document(concat('l10n/', $lang, '.xml'))/l:l10n"/>
+
+ <xsl:if test="count($localization.node) = 0">
+ <xsl:message>
+ <xsl:text>gentext.template: No "</xsl:text>
+ <xsl:value-of select="$lang"/>
+ <xsl:text>" localization exists.</xsl:text>
+ </xsl:message>
+ </xsl:if>
+
+ <xsl:variable name="context.node"
+ select="$localization.node/l:context[@name=$context]"/>
+
+ <xsl:if test="count($context.node) = 0">
+ <xsl:message>
+ <xsl:text>gentext.template: No context named "</xsl:text>
+ <xsl:value-of select="$context"/>
+ <xsl:text>" exists in the "</xsl:text>
+ <xsl:value-of select="$lang"/>
+ <xsl:text>" localization.</xsl:text>
+ </xsl:message>
+ </xsl:if>
+
+ <xsl:variable name="template.node"
+ select="($context.node/l:template[@name=$name
+ and @style
+ and @style=$xrefstyle]
+ |$context.node/l:template[@name=$name
+ and not(@style)])[1]"/>
+
+ <xsl:choose>
+ <xsl:when test="$template.node/@text">
+ <xsl:value-of select="$template.node/@text"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:choose>
+ <xsl:when test="contains($name, '/')">
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="$context"/>
+ <xsl:with-param name="name" select="substring-after($name, '/')"/>
+ <xsl:with-param name="origname" select="$origname"/>
+ <xsl:with-param name="purpose" select="$purpose"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="referrer" select="$referrer"/>
+ <xsl:with-param name="lang" select="$lang"/>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:message>
+ <xsl:text>gentext.template: No template for "</xsl:text>
+ <xsl:value-of select="$origname"/>
+ <xsl:text>" (or any of its leaves) exists
+in the context named "</xsl:text>
+ <xsl:value-of select="$context"/>
+ <xsl:text>" in the "</xsl:text>
+ <xsl:value-of select="$lang"/>
+ <xsl:text>" localization.</xsl:text>
+ </xsl:message>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="gentext.template.exists"/>
+<xsl:template name="gentext.template.exists" dtm:id="gentext.template.exists">
+ <xsl:param name="context" select="'default'"/>
+ <xsl:param name="name" select="'default'"/>
+ <xsl:param name="origname" select="$name"/>
+ <xsl:param name="purpose"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:param name="referrer"/>
+ <xsl:param name="lang">
+ <xsl:call-template name="l10n.language"/>
+ </xsl:param>
+
+ <xsl:variable name="localization.node"
+ select="document(concat('l10n/', $lang, '.xml'))/l:l10n"/>
+
+ <xsl:variable name="context.node"
+ select="$localization.node/l:context[@name=$context]"/>
+
+ <xsl:variable name="template.node"
+ select="($context.node/l:template[@name=$name
+ and @style
+ and @style=$xrefstyle]
+ |$context.node/l:template[@name=$name
+ and not(@style)])[1]"/>
+
+ <xsl:choose>
+ <xsl:when test="$template.node/@text">1</xsl:when>
+ <xsl:otherwise>
+ <xsl:choose>
+ <xsl:when test="contains($name, '/')">
+ <xsl:call-template name="gentext.template.exists">
+ <xsl:with-param name="context" select="$context"/>
+ <xsl:with-param name="name" select="substring-after($name, '/')"/>
+ <xsl:with-param name="origname" select="$origname"/>
+ <xsl:with-param name="purpose" select="$purpose"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="referrer" select="$referrer"/>
+ <xsl:with-param name="lang" select="$lang"/>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:otherwise>0</xsl:otherwise>
+ </xsl:choose>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+</xsl:stylesheet>
+
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/af.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/af.xml
new file mode 100644
index 0000000..028c812
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/af.xml
@@ -0,0 +1,454 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="af" english-language-name="Afrikaans">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="Samevatting"/>
+ <l:gentext key="abstract" text="samevatting"/>
+ <l:gentext key="Answer" text="Antwoord:"/>
+ <l:gentext key="answer" text="antwoord:"/>
+ <l:gentext key="Appendix" text="Aanhangsel"/>
+ <l:gentext key="appendix" text="aanhangsel"/>
+ <l:gentext key="Article" text="Artikel"/>
+ <l:gentext key="article" text="artikel"/>
+ <l:gentext key="Bibliography" text="Bibliografie"/>
+ <l:gentext key="bibliography" text="bibliografie"/>
+ <l:gentext key="Book" text="Boek"/>
+ <l:gentext key="book" text="boek"/>
+ <l:gentext key="Caution" text="Pas op"/>
+ <l:gentext key="caution" text="pas op"/>
+ <l:gentext key="CAUTION" text="PAS OP"/>
+ <l:gentext key="Chapter" text="Hoofdstuk"/>
+ <l:gentext key="chapter" text="hoofdstuk"/>
+ <l:gentext key="Colophon" text="Kolifon"/>
+ <l:gentext key="colophon" text="kolifon"/>
+ <l:gentext key="Copyright" text="Kopie reg"/>
+ <l:gentext key="copyright" text="kopie reg"/>
+ <l:gentext key="Dedication" text="Opgedra aan"/>
+ <l:gentext key="dedication" text="opgedra aan"/>
+ <l:gentext key="Edition" text="Uitgawe"/>
+ <l:gentext key="edition" text="uitgawe"/>
+ <l:gentext key="Equation" text="Vergelyking"/>
+ <l:gentext key="equation" text="vergelyking"/>
+ <l:gentext key="Example" text="Voorbeeld"/>
+ <l:gentext key="example" text="voorbeeld"/>
+ <l:gentext key="Figure" text="Figuur"/>
+ <l:gentext key="figure" text="figuur"/>
+ <l:gentext key="Glossary" text="Woordlys"/>
+ <l:gentext key="glossary" text="woordlys"/>
+ <l:gentext key="GlossSee" text="WoordelysSien"/>
+ <l:gentext key="glosssee" text="woordelyssien"/>
+ <l:gentext key="GlossSeeAlso" text="WoordelysSienOok"/>
+ <l:gentext key="glossseealso" text="woordelyssienook"/>
+ <l:gentext key="IMPORTANT" text="BELANGRIK"/>
+ <l:gentext key="Important" text="Belangrik"/>
+ <l:gentext key="important" text="belangrik"/>
+ <l:gentext key="Index" text="Indeks"/>
+ <l:gentext key="index" text="indeks"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="isbn"/>
+ <l:gentext key="LegalNotice" text="RegsKennisgewing"/>
+ <l:gentext key="legalnotice" text="regskennisgewing"/>
+ <l:gentext key="MsgAud" text="Teikengroep"/>
+ <l:gentext key="msgaud" text="teikengroep"/>
+ <l:gentext key="MsgLevel" text="Vlak"/>
+ <l:gentext key="msglevel" text="vlak"/>
+ <l:gentext key="MsgOrig" text="Herkoms"/>
+ <l:gentext key="msgorig" text="herkoms"/>
+ <l:gentext key="note" text="opmerking"/>
+ <l:gentext key="NOTE" text="OPMERKING"/>
+ <l:gentext key="Note" text="Opmerking"/>
+ <l:gentext key="Part" text="Deel"/>
+ <l:gentext key="part" text="deel"/>
+ <l:gentext key="Preface" text="Voorwoord"/>
+ <l:gentext key="preface" text="voorwoord"/>
+ <l:gentext key="Procedure" text="Prosedure"/>
+ <l:gentext key="procedure" text="prosedure"/>
+ <l:gentext key="ProductionSet" text="ProduksieStel"/>
+ <l:gentext key="Published" text="Uitgegee"/>
+ <l:gentext key="published" text="uitgegee"/>
+ <l:gentext key="Question" text="Vraag:"/>
+ <l:gentext key="question" text="vraag:"/>
+ <l:gentext key="RefEntry" text="Verwysingslemma"/>
+ <l:gentext key="refentry" text="verwysingslemma"/>
+ <l:gentext key="Reference" text="Verwysing"/>
+ <l:gentext key="reference" text="verwysing"/>
+ <l:gentext key="RefName" text="Verwysingsnaam"/>
+ <l:gentext key="refname" text="verwysingsnaam"/>
+ <l:gentext key="RefSection" text="Verwysingsparagraaf"/>
+ <l:gentext key="refsection" text="verwysingsparagraaf"/>
+ <l:gentext key="RefSynopsisDiv" text="Verwysingsamevatting"/>
+ <l:gentext key="refsynopsisdiv" text="verwysingsamevatting"/>
+ <l:gentext key="RevHistory" text="Hersiening geskiedenis"/>
+ <l:gentext key="revhistory" text="hersiening geskiedenis"/>
+ <l:gentext key="Revision" text="Hersiening"/>
+ <l:gentext key="revision" text="hersiening"/>
+ <l:gentext key="sect1" text="Paragraaf"/>
+ <l:gentext key="sect2" text="Paragraaf"/>
+ <l:gentext key="sect3" text="Paragraaf"/>
+ <l:gentext key="sect4" text="Paragraaf"/>
+ <l:gentext key="sect5" text="Paragraaf"/>
+ <l:gentext key="Section" text="Paragraaf"/>
+ <l:gentext key="section" text="paragraaf"/>
+ <l:gentext key="see" text="sien"/>
+ <l:gentext key="See" text="Sien"/>
+ <l:gentext key="Seealso" text="Sien ook"/>
+ <l:gentext key="seealso" text="sien ook"/>
+ <l:gentext key="SeeAlso" text="Sien Ook"/>
+ <l:gentext key="set" text="versameling"/>
+ <l:gentext key="Set" text="Versameling"/>
+ <l:gentext key="SetIndex" text="VersamelingIndeks"/>
+ <l:gentext key="setindex" text="versamelingindeks"/>
+ <l:gentext key="Sidebar" text="Kantbalk"/>
+ <l:gentext key="sidebar" text="kantbalk"/>
+ <l:gentext key="step" text="stap"/>
+ <l:gentext key="Step" text="Stap"/>
+ <l:gentext key="table" text="tabel"/>
+ <l:gentext key="Table" text="Tabel"/>
+ <l:gentext key="TIP" text="LEIDRAAD"/>
+ <l:gentext key="Tip" text="Leidraad"/>
+ <l:gentext key="tip" text="leidraad"/>
+ <l:gentext key="WARNING" text="WAARSKUWING"/>
+ <l:gentext key="Warning" text="Waarskuwing"/>
+ <l:gentext key="warning" text="waarskuwing"/>
+ <l:gentext key="and" text="en"/>
+ <l:gentext key="by" text="deur"/>
+ <l:gentext key="Edited" text="Geredigeer"/>
+ <l:gentext key="edited" text="geredigeer"/>
+ <l:gentext key="Editedby" text="Geredigeer deur"/>
+ <l:gentext key="editedby" text="geredigeer deur"/>
+ <l:gentext key="in" text="in"/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="element bestaan nie"/>
+ <l:gentext key="notes" text="Notas"/>
+ <l:gentext key="Notes" text="notas"/>
+ <l:gentext key="Pgs" text="bl."/>
+ <l:gentext key="pgs" text="bl."/>
+ <l:gentext key="Revisedby" text="Hersien deur"/>
+ <l:gentext key="revisedby" text="hersien deur"/>
+ <l:gentext key="TableNotes" text="TabelOpmerking"/>
+ <l:gentext key="tablenotes" text="tabelopmerking"/>
+ <l:gentext key="TableofContents" text="Inhoudsopgawe"/>
+ <l:gentext key="tableofcontents" text="inhoudsopgawe"/>
+ <l:gentext key="unexpectedelementname" text="onverwagte element naam"/>
+ <l:gentext key="unsupported" text="nie geondersteun"/>
+ <l:gentext key="xrefto" text="verwysing na"/>
+ <l:gentext key="listofequations" text="lys van vergelykings"/>
+ <l:gentext key="ListofEquations" text="Lys van vergelykings"/>
+ <l:gentext key="ListofExamples" text="Lys van voorbeelde"/>
+ <l:gentext key="listofexamples" text="lys van voorbeelde"/>
+ <l:gentext key="ListofFigures" text="Lys van figure"/>
+ <l:gentext key="listoffigures" text="lys van figure"/>
+ <l:gentext key="listoftables" text="lys van tabelle"/>
+ <l:gentext key="ListofTables" text="Lys van tabelle"/>
+ <l:gentext key="ListofUnknown" text="Lys van onbekende tipes"/>
+ <l:gentext key="listofunknown" text="lys van onbekende tipes"/>
+ <l:gentext key="nav-home" text="Begin"/>
+ <l:gentext key="nav-next" text="Volgende"/>
+ <l:gentext key="nav-next-sibling" text="Verder vooruit"/>
+ <l:gentext key="nav-prev" text="Terug"/>
+ <l:gentext key="nav-prev-sibling" text="Verder terug"/>
+ <l:gentext key="nav-up" text="Boontoe"/>
+ <l:gentext key="Draft" text="Proef"/>
+ <l:gentext key="above" text="bo"/>
+ <l:gentext key="below" text="onder"/>
+ <l:gentext key="sectioncalled" text="die seksie genaamd"/>
+ <l:gentext key="index symbols" text="indeks simbole"/>
+ <l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz"/>
+ <l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="Aanhangsel %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Hoofdstuk %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Vergelyking %n. %t"/>
+ <l:template name="example" text="Voorbeeld %n. %t"/>
+ <l:template name="figure" text="Figuur %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Deel %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="Prosedure&#160;%n.&#160;%t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="ProduksieStel&#160;%n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="Tabel %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="Aanhangsel %n. %t"/>
+ <l:template name="bridgehead" text="%n.&#160;%t"/>
+ <l:template name="chapter" text="Hoofdstuk %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%n. %t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="Antwoord:&#160;%n"/>
+ <l:template name="appendix" text="Aanhangsel %n"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Hoofdstuk %n"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Vergelyking&#160;%n"/>
+ <l:template name="example" text="Voorbeeld %n"/>
+ <l:template name="figure" text="Figuur %n"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Deel %n"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="Prosedure&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="Vraag:&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="Vraag:&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="Tabel %n"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="die seksie genaamd &#8220;%t&#8221;"/>
+ <l:template name="refsection" text="die seksie genaamd &#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="die seksie genaamd &#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="die seksie genaamd &#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="die seksie genaamd &#8220;%t&#8221;"/>
+ <l:template name="sect1" text="die seksie genaamd &#8220;%t&#8221;"/>
+ <l:template name="sect2" text="die seksie genaamd &#8220;%t&#8221;"/>
+ <l:template name="sect3" text="die seksie genaamd &#8220;%t&#8221;"/>
+ <l:template name="sect4" text="die seksie genaamd &#8220;%t&#8221;"/>
+ <l:template name="sect5" text="die seksie genaamd &#8220;%t&#8221;"/>
+ <l:template name="section" text="die seksie genaamd &#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="die seksie genaamd &#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="die seksie genaamd &#8220;%t&#8221;"/>
+ <l:template name="refsection" text="die seksie genaamd &#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="die seksie genaamd &#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="die seksie genaamd &#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="die seksie genaamd &#8220;%t&#8221;"/>
+ <l:template name="sect1" text="Paragraaf %n"/>
+ <l:template name="sect2" text="Paragraaf %n"/>
+ <l:template name="sect3" text="Paragraaf %n"/>
+ <l:template name="sect4" text="Paragraaf %n"/>
+ <l:template name="sect5" text="Paragraaf %n"/>
+ <l:template name="section" text="Paragraaf %n"/>
+ <l:template name="simplesect" text="die seksie genaamd &#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" en "/>
+ <l:template name="seplast" text=", en "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="WoordelysSien "/>
+ <l:template name="seealso" text="WoordelysSienOok "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="Teikengroep: "/>
+ <l:template name="MsgLevel" text="Vlak: "/>
+ <l:template name="MsgOrig" text="Herkoms: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/bg.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/bg.xml
new file mode 100644
index 0000000..68e69c5
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/bg.xml
@@ -0,0 +1,456 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="bg" english-language-name="Bulgarian">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="&#1040;&#1085;&#1086;&#1090;&#1072;&#1094;&#1080;&#1103;"/>
+ <l:gentext key="abstract" text="&#1040;&#1085;&#1086;&#1090;&#1072;&#1094;&#1080;&#1103;"/>
+ <l:gentext key="Answer" text="&#1054;:"/>
+ <l:gentext key="answer" text="&#1054;:"/>
+ <l:gentext key="Appendix" text="&#1055;&#1088;&#1080;&#1083;&#1086;&#1078;&#1077;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="appendix" text="&#1087;&#1088;&#1080;&#1083;&#1086;&#1078;&#1077;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="Article" text="&#1057;&#1090;&#1072;&#1090;&#1080;&#1103;"/>
+ <l:gentext key="article" text="&#1057;&#1090;&#1072;&#1090;&#1080;&#1103;"/>
+ <l:gentext key="Bibliography" text="&#1051;&#1080;&#1090;&#1077;&#1088;&#1072;&#1090;&#1091;&#1088;&#1072;"/>
+ <l:gentext key="bibliography" text="&#1051;&#1080;&#1090;&#1077;&#1088;&#1072;&#1090;&#1091;&#1088;&#1072;"/>
+ <l:gentext key="Book" text="&#1050;&#1085;&#1080;&#1075;&#1072;"/>
+ <l:gentext key="book" text="&#1050;&#1085;&#1080;&#1075;&#1072;"/>
+ <l:gentext key="CAUTION" text="&#1042;&#1053;&#1048;&#1052;&#1040;&#1053;&#1048;&#1045;"/>
+ <l:gentext key="Caution" text="&#1042;&#1085;&#1080;&#1084;&#1072;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="caution" text="&#1042;&#1085;&#1080;&#1084;&#1072;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="Chapter" text="&#1043;&#1083;&#1072;&#1074;&#1072;"/>
+ <l:gentext key="chapter" text="&#1075;&#1083;&#1072;&#1074;&#1072;"/>
+ <l:gentext key="Colophon" text="Colophon"/>
+ <l:gentext key="colophon" text="Colophon"/>
+ <l:gentext key="Copyright" text="Copyright"/>
+ <l:gentext key="copyright" text="Copyright"/>
+ <l:gentext key="Dedication" text="&#1055;&#1086;&#1089;&#1074;&#1077;&#1097;&#1077;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="dedication" text="&#1055;&#1086;&#1089;&#1074;&#1077;&#1097;&#1077;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="Edition" text="&#1048;&#1079;&#1076;&#1072;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="edition" text="&#1048;&#1079;&#1076;&#1072;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="Equation" text="&#1060;&#1086;&#1088;&#1084;&#1091;&#1083;&#1072;"/>
+ <l:gentext key="equation" text="&#1060;&#1086;&#1088;&#1084;&#1091;&#1083;&#1072;"/>
+ <l:gentext key="Example" text="&#1055;&#1088;&#1080;&#1084;&#1077;&#1088;"/>
+ <l:gentext key="example" text="&#1055;&#1088;&#1080;&#1084;&#1077;&#1088;"/>
+ <l:gentext key="Figure" text="&#1060;&#1080;&#1075;&#1091;&#1088;&#1072;"/>
+ <l:gentext key="figure" text="&#1060;&#1080;&#1075;&#1091;&#1088;&#1072;"/>
+ <l:gentext key="Glossary" text="&#1058;&#1077;&#1088;&#1084;&#1080;&#1085;&#1086;&#1083;&#1086;&#1075;&#1080;&#1095;&#1077;&#1085; &#1088;&#1077;&#1095;&#1085;&#1080;&#1082;"/>
+ <l:gentext key="glossary" text="&#1058;&#1077;&#1088;&#1084;&#1080;&#1085;&#1086;&#1083;&#1086;&#1075;&#1080;&#1095;&#1077;&#1085; &#1088;&#1077;&#1095;&#1085;&#1080;&#1082;"/>
+ <l:gentext key="GlossSee" text="&#1074;&#1078;."/>
+ <l:gentext key="glosssee" text="&#1074;&#1078;."/>
+ <l:gentext key="GlossSeeAlso" text="&#1074;&#1078;. &#1089;&#1098;&#1097;&#1086;"/>
+ <l:gentext key="glossseealso" text="&#1074;&#1078;. &#1089;&#1098;&#1097;&#1086;"/>
+ <l:gentext key="IMPORTANT" text="&#1042;&#1040;&#1046;&#1053;&#1054;"/>
+ <l:gentext key="important" text="&#1042;&#1072;&#1078;&#1085;&#1086;"/>
+ <l:gentext key="Important" text="&#1042;&#1072;&#1078;&#1085;&#1086;"/>
+ <l:gentext key="Index" text="&#1048;&#1085;&#1076;&#1077;&#1082;&#1089;"/>
+ <l:gentext key="index" text="&#1048;&#1085;&#1076;&#1077;&#1082;&#1089;"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text="&#1040;&#1074;&#1090;&#1086;&#1088;&#1089;&#1082;&#1080; &#1087;&#1088;&#1072;&#1074;&#1072;"/>
+ <l:gentext key="legalnotice" text="&#1040;&#1074;&#1090;&#1086;&#1088;&#1089;&#1082;&#1080; &#1087;&#1088;&#1072;&#1074;&#1072;"/>
+ <l:gentext key="MsgAud" text="Audience"/>
+ <l:gentext key="msgaud" text="Audience"/>
+ <l:gentext key="MsgLevel" text="&#1053;&#1080;&#1074;&#1086;"/>
+ <l:gentext key="msglevel" text="&#1053;&#1080;&#1074;&#1086;"/>
+ <l:gentext key="MsgOrig" text="&#1048;&#1079;&#1090;&#1086;&#1095;&#1085;&#1080;&#1082;"/>
+ <l:gentext key="msgorig" text="&#1048;&#1079;&#1090;&#1086;&#1095;&#1085;&#1080;&#1082;"/>
+ <l:gentext key="NOTE" text="&#1047;&#1040;&#1041;&#1045;&#1051;&#1045;&#1046;&#1050;&#1040;"/>
+ <l:gentext key="Note" text="&#1047;&#1072;&#1073;&#1077;&#1083;&#1077;&#1078;&#1082;&#1072;"/>
+ <l:gentext key="note" text="&#1047;&#1072;&#1073;&#1077;&#1083;&#1077;&#1078;&#1082;&#1072;"/>
+ <l:gentext key="Part" text="&#1063;&#1072;&#1089;&#1090;"/>
+ <l:gentext key="part" text="&#1063;&#1072;&#1089;&#1090;"/>
+ <l:gentext key="Preface" text="&#1055;&#1088;&#1077;&#1076;&#1075;&#1086;&#1074;&#1086;&#1088;"/>
+ <l:gentext key="preface" text="&#1055;&#1088;&#1077;&#1076;&#1075;&#1086;&#1074;&#1086;&#1088;"/>
+ <l:gentext key="Procedure" text="&#1055;&#1088;&#1086;&#1094;&#1077;&#1076;&#1091;&#1088;&#1072;"/>
+ <l:gentext key="procedure" text="&#1055;&#1088;&#1086;&#1094;&#1077;&#1076;&#1091;&#1088;&#1072;"/>
+ <l:gentext key="ProductionSet" text="Production"/>
+ <l:gentext key="Published" text="&#1048;&#1079;&#1076;&#1072;&#1076;&#1077;&#1085;"/>
+ <l:gentext key="published" text="&#1048;&#1079;&#1076;&#1072;&#1076;&#1077;&#1085;"/>
+ <l:gentext key="Question" text="&#1042;:"/>
+ <l:gentext key="question" text="&#1042;:"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="&#1057;&#1087;&#1088;&#1072;&#1074;&#1086;&#1095;&#1085;&#1080;&#1082;"/>
+ <l:gentext key="reference" text="&#1057;&#1087;&#1088;&#1072;&#1074;&#1086;&#1095;&#1085;&#1080;&#1082;"/>
+ <l:gentext key="RefName" text="&#1053;&#1072;&#1079;&#1074;&#1072;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="refname" text="&#1053;&#1072;&#1079;&#1074;&#1072;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="RefSection" text=""/>
+ <l:gentext key="refsection" text=""/>
+ <l:gentext key="RefSynopsisDiv" text="&#1057;&#1080;&#1085;&#1090;&#1072;&#1082;&#1089;&#1080;&#1089;"/>
+ <l:gentext key="refsynopsisdiv" text="&#1057;&#1080;&#1085;&#1090;&#1072;&#1082;&#1089;&#1080;&#1089;"/>
+ <l:gentext key="RevHistory" text="&#1055;&#1088;&#1086;&#1084;&#1077;&#1085;&#1080;"/>
+ <l:gentext key="revhistory" text="&#1055;&#1088;&#1086;&#1084;&#1077;&#1085;&#1080;"/>
+ <l:gentext key="revision" text="&#1048;&#1079;&#1076;&#1072;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="Revision" text="&#1048;&#1079;&#1076;&#1072;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="sect1" text="&#1056;&#1072;&#1079;&#1076;&#1077;&#1083;"/>
+ <l:gentext key="sect2" text="&#1056;&#1072;&#1079;&#1076;&#1077;&#1083;"/>
+ <l:gentext key="sect3" text="&#1056;&#1072;&#1079;&#1076;&#1077;&#1083;"/>
+ <l:gentext key="sect4" text="&#1056;&#1072;&#1079;&#1076;&#1077;&#1083;"/>
+ <l:gentext key="sect5" text="&#1056;&#1072;&#1079;&#1076;&#1077;&#1083;"/>
+ <l:gentext key="section" text="&#1056;&#1072;&#1079;&#1076;&#1077;&#1083;"/>
+ <l:gentext key="Section" text="&#1056;&#1072;&#1079;&#1076;&#1077;&#1083;"/>
+ <l:gentext key="see" text="&#1074;&#1078;."/>
+ <l:gentext key="seealso" text="&#1074;&#1078;. &#1089;&#1098;&#1097;&#1086;"/>
+ <l:gentext key="set" text="&#1059;&#1082;&#1072;&#1079;&#1072;&#1090;&#1077;&#1083;"/>
+ <l:gentext key="Set" text="&#1059;&#1082;&#1072;&#1079;&#1072;&#1090;&#1077;&#1083;"/>
+ <l:gentext key="setindex" text="&#1059;&#1082;&#1072;&#1079;&#1072;&#1090;&#1077;&#1083;"/>
+ <l:gentext key="SetIndex" text="&#1059;&#1082;&#1072;&#1079;&#1072;&#1090;&#1077;&#1083;"/>
+ <l:gentext key="Sidebar" text="&#1056;&#1072;&#1079;&#1076;&#1077;&#1083;&#1080;&#1090;&#1077;&#1083;"/>
+ <l:gentext key="sidebar" text="&#1088;&#1072;&#1079;&#1076;&#1077;&#1083;&#1080;&#1090;&#1077;&#1083;"/>
+ <l:gentext key="step" text="&#1057;&#1090;&#1098;&#1087;&#1082;&#1072;"/>
+ <l:gentext key="Step" text="&#1057;&#1090;&#1098;&#1087;&#1082;&#1072;"/>
+ <l:gentext key="Table" text="&#1058;&#1072;&#1073;&#1083;&#1080;&#1094;&#1072;"/>
+ <l:gentext key="table" text="&#1058;&#1072;&#1073;&#1083;&#1080;&#1094;&#1072;"/>
+ <l:gentext key="tip" text="&#1055;&#1086;&#1079;&#1076;&#1089;&#1082;&#1072;&#1079;&#1082;&#1072;"/>
+ <l:gentext key="TIP" text="&#1055;&#1054;&#1044;&#1057;&#1050;&#1040;&#1047;&#1050;&#1040;"/>
+ <l:gentext key="Tip" text="&#1055;&#1086;&#1079;&#1076;&#1089;&#1082;&#1072;&#1079;&#1082;&#1072;"/>
+ <l:gentext key="Warning" text="&#1042;&#1085;&#1080;&#1084;&#1072;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="warning" text="&#1042;&#1085;&#1080;&#1084;&#1072;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="WARNING" text="&#1042;&#1053;&#1048;&#1052;&#1040;&#1053;&#1048;&#1045;"/>
+ <l:gentext key="and" text=""/>
+ <l:gentext key="by" text=""/>
+ <l:gentext key="Edited" text="&#1056;&#1077;&#1076;&#1072;&#1082;&#1090;&#1080;&#1088;&#1072;&#1085;&#1086; &#1086;&#1090;"/>
+ <l:gentext key="edited" text="&#1056;&#1077;&#1076;&#1072;&#1082;&#1090;&#1080;&#1088;&#1072;&#1085;&#1086; &#1086;&#1090;"/>
+ <l:gentext key="Editedby" text="&#1056;&#1077;&#1076;&#1072;&#1082;&#1090;&#1080;&#1088;&#1072;&#1085;&#1086; &#1086;&#1090;"/>
+ <l:gentext key="editedby" text="&#1056;&#1077;&#1076;&#1072;&#1082;&#1090;&#1080;&#1088;&#1072;&#1085;&#1086; &#1086;&#1090;"/>
+ <l:gentext key="in" text="&#1074;"/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="non-existant element"/>
+ <l:gentext key="notes" text="&#1047;&#1072;&#1073;&#1077;&#1083;&#1077;&#1078;&#1082;&#1080;"/>
+ <l:gentext key="Notes" text="&#1047;&#1072;&#1073;&#1077;&#1083;&#1077;&#1078;&#1082;&#1080;"/>
+ <l:gentext key="Pgs" text="&#1089;&#1090;&#1088;."/>
+ <l:gentext key="pgs" text="&#1089;&#1090;&#1088;."/>
+ <l:gentext key="Revisedby" text="&#1054;&#1076;&#1086;&#1073;&#1088;&#1077;&#1085;&#1086; &#1086;&#1090;: "/>
+ <l:gentext key="revisedby" text="&#1054;&#1076;&#1086;&#1073;&#1088;&#1077;&#1085;&#1086; &#1086;&#1090;: "/>
+ <l:gentext key="TableNotes" text="&#1047;&#1072;&#1073;&#1077;&#1083;&#1077;&#1078;&#1082;&#1080;"/>
+ <l:gentext key="tablenotes" text="&#1047;&#1072;&#1073;&#1077;&#1083;&#1077;&#1078;&#1082;&#1080;"/>
+ <l:gentext key="TableofContents" text="&#1057;&#1098;&#1076;&#1098;&#1088;&#1078;&#1072;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="tableofcontents" text="&#1057;&#1098;&#1076;&#1098;&#1088;&#1078;&#1072;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="unexpectedelementname" text="unexpected element name"/>
+ <l:gentext key="unsupported" text="unsupported"/>
+ <l:gentext key="xrefto" text="xref to"/>
+ <l:gentext key="listofequations" text="&#1057;&#1087;&#1080;&#1089;&#1098;&#1082; &#1085;&#1072; &#1092;&#1086;&#1088;&#1084;&#1091;&#1083;&#1080;&#1090;&#1077;"/>
+ <l:gentext key="ListofEquations" text="&#1057;&#1087;&#1080;&#1089;&#1098;&#1082; &#1085;&#1072; &#1092;&#1086;&#1088;&#1084;&#1091;&#1083;&#1080;&#1090;&#1077;"/>
+ <l:gentext key="ListofExamples" text="&#1057;&#1087;&#1080;&#1089;&#1098;&#1082; &#1085;&#1072; &#1087;&#1088;&#1080;&#1084;&#1077;&#1088;&#1080;&#1090;&#1077;"/>
+ <l:gentext key="listofexamples" text="&#1057;&#1087;&#1080;&#1089;&#1098;&#1082; &#1085;&#1072; &#1087;&#1088;&#1080;&#1084;&#1077;&#1088;&#1080;&#1090;&#1077;"/>
+ <l:gentext key="ListofFigures" text="&#1057;&#1087;&#1080;&#1089;&#1098;&#1082; &#1085;&#1072; &#1092;&#1080;&#1075;&#1091;&#1088;&#1080;&#1090;&#1077;"/>
+ <l:gentext key="listoffigures" text="&#1057;&#1087;&#1080;&#1089;&#1098;&#1082; &#1085;&#1072; &#1092;&#1080;&#1075;&#1091;&#1088;&#1080;&#1090;&#1077;"/>
+ <l:gentext key="listoftables" text="&#1057;&#1087;&#1080;&#1089;&#1098;&#1082; &#1085;&#1072; &#1090;&#1072;&#1073;&#1083;&#1080;&#1094;&#1080;&#1090;&#1077;"/>
+ <l:gentext key="ListofTables" text="&#1057;&#1087;&#1080;&#1089;&#1098;&#1082; &#1085;&#1072; &#1090;&#1072;&#1073;&#1083;&#1080;&#1094;&#1080;&#1090;&#1077;"/>
+ <l:gentext key="ListofUnknown" text="&#1053;&#1077;&#1086;&#1087;&#1088;&#1077;&#1076;&#1077;&#1083;&#1077;&#1085; &#1089;&#1087;&#1080;&#1089;&#1098;&#1082;"/>
+ <l:gentext key="listofunknown" text="&#1053;&#1077;&#1086;&#1087;&#1088;&#1077;&#1076;&#1077;&#1083;&#1077;&#1085; &#1089;&#1087;&#1080;&#1089;&#1098;&#1082;"/>
+ <l:gentext key="nav-home" text="&#1053;&#1072;&#1095;&#1072;&#1083;&#1086;"/>
+ <l:gentext key="nav-next" text="&#1057;&#1083;&#1077;&#1076;&#1074;&#1072;&#1097;&#1072; &#1089;&#1090;&#1088;&#1072;&#1085;&#1080;&#1094;&#1072;"/>
+ <l:gentext key="nav-next-sibling" text="&#1057;&#1083;&#1077;&#1076;&#1074;&#1072;&#1097; &#1088;&#1072;&#1079;&#1076;&#1077;&#1083;"/>
+ <l:gentext key="nav-prev" text="&#1055;&#1088;&#1077;&#1076;&#1080;&#1096;&#1085;&#1072; &#1089;&#1090;&#1088;&#1072;&#1085;&#1080;&#1094;&#1072;"/>
+ <l:gentext key="nav-prev-sibling" text="&#1055;&#1088;&#1077;&#1076;&#1080;&#1096;&#1077;&#1085; &#1088;&#1072;&#1079;&#1076;&#1077;&#1083;"/>
+ <l:gentext key="nav-up" text="&#1053;&#1072;&#1095;&#1072;&#1083;&#1086; &#1085;&#1072; &#1088;&#1072;&#1079;&#1076;&#1077;&#1083;&#1072;"/>
+ <l:gentext key="nav-toc" text="&#1057;&#1098;&#1076;&#1098;&#1088;&#1078;&#1072;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="Draft" text="&#1063;&#1077;&#1088;&#1085;&#1086;&#1074;&#1072;"/>
+ <l:gentext key="above" text="&#1087;&#1086;-&#1075;&#1086;&#1088;&#1077;"/>
+ <l:gentext key="below" text="&#1087;&#1086;-&#1076;&#1086;&#1083;&#1091;"/>
+ <l:gentext key="sectioncalled" text="the section called"/>
+ <l:gentext key="index symbols" text="&#1057;&#1080;&#1084;&#1074;&#1086;&#1083;&#1080;"/>
+ <l:gentext key="lowercase.alpha" text="&#1072;&#1073;&#1074;&#1075;&#1076;&#1077;&#1078;&#1079;&#1080;&#1081;&#1082;&#1083;&#1084;&#1085;&#1086;&#1087;&#1088;&#1089;&#1090;&#1091;&#1092;&#1093;&#1094;&#1095;&#1096;&#1097;&#1098;&#1099;&#1100;&#1101;&#1102;&#1103;"/>
+ <l:gentext key="uppercase.alpha" text="&#1040;&#1041;&#1042;&#1043;&#1044;&#1045;&#1046;&#1047;&#1048;&#1049;&#1050;&#1051;&#1052;&#1053;&#1054;&#1055;&#1056;&#1057;&#1058;&#1059;&#1060;&#1061;&#1062;&#1063;&#1064;&#1065;&#1066;&#1067;&#1068;&#1069;&#1070;&#1071;"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="&#1055;&#1088;&#1080;&#1083;&#1086;&#1078;&#1077;&#1085;&#1080;&#1077;&#160;%n.&#160;%t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="&#1043;&#1083;&#1072;&#1074;&#1072;&#160;%n.&#160;%t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="&#1060;&#1086;&#1088;&#1084;&#1091;&#1083;&#1072;&#160;%n.&#160;%t"/>
+ <l:template name="example" text="&#1055;&#1088;&#1080;&#1084;&#1077;&#1088;&#160;%n.&#160;%t"/>
+ <l:template name="figure" text="&#1060;&#1080;&#1075;&#1091;&#1088;&#1072;&#160;%n.&#160;%t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="glossentry" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="&#1063;&#1072;&#1089;&#1090;&#160;%n.&#160;%t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="&#1055;&#1088;&#1086;&#1094;&#1077;&#1076;&#1091;&#1088;&#1072;&#160;%n.&#160;%t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Production&#160;%n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="&#1058;&#1072;&#1073;&#1083;&#1080;&#1094;&#1072;&#160;%n.&#160;%t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text=""/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="article/appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="&#1055;&#1088;&#1080;&#1083;&#1086;&#1078;&#1077;&#1085;&#1080;&#1077;&#160;%n.&#160;%t"/>
+ <l:template name="article/appendix" text="%n.&#160;%t"/>
+ <l:template name="bridgehead" text="%n.&#160;%t"/>
+ <l:template name="chapter" text="&#1043;&#1083;&#1072;&#1074;&#1072;&#160;%n.&#160;%t"/>
+ <l:template name="sect1" text="%n.&#160;%t"/>
+ <l:template name="sect2" text="%n.&#160;%t"/>
+ <l:template name="sect3" text="%n.&#160;%t"/>
+ <l:template name="sect4" text="%n.&#160;%t"/>
+ <l:template name="sect5" text="%n.&#160;%t"/>
+ <l:template name="section" text="%n.&#160;%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="&#1054;:&#160;%n"/>
+ <l:template name="appendix" text="&#1055;&#1088;&#1080;&#1083;&#1086;&#1078;&#1077;&#1085;&#1080;&#1077;&#160;%n"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="&#1043;&#1083;&#1072;&#1074;&#1072;&#160;%n"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="&#1060;&#1086;&#1088;&#1084;&#1091;&#1083;&#1072;&#160;%n"/>
+ <l:template name="example" text="&#1055;&#1088;&#1080;&#1084;&#1077;&#1088;&#160;%n"/>
+ <l:template name="figure" text="&#1060;&#1080;&#1075;&#1091;&#1088;&#1072;&#160;%n"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="&#1063;&#1072;&#1089;&#1090;&#160;%n"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="&#1055;&#1088;&#1086;&#1094;&#1077;&#1076;&#1091;&#1088;&#1072;&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="&#1042;:&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="&#1042;:&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="&#1058;&#1072;&#1073;&#1083;&#1080;&#1094;&#1072;&#160;%n"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="refsection" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="sect1" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="sect2" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="sect3" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="sect4" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="sect5" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="section" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="the section called &#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="&#1056;&#1072;&#1079;&#1076;&#1077;&#1083;&#160;%n"/>
+ <l:template name="refsection" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#1056;&#1072;&#1079;&#1076;&#1077;&#1083;&#160;%n"/>
+ <l:template name="sect2" text="&#1056;&#1072;&#1079;&#1076;&#1077;&#1083;&#160;%n"/>
+ <l:template name="sect3" text="&#1056;&#1072;&#1079;&#1076;&#1077;&#1083;&#160;%n"/>
+ <l:template name="sect4" text="&#1056;&#1072;&#1079;&#1076;&#1077;&#1083;&#160;%n"/>
+ <l:template name="sect5" text="&#1056;&#1072;&#1079;&#1076;&#1077;&#1083;&#160;%n"/>
+ <l:template name="section" text="&#1056;&#1072;&#1079;&#1076;&#1077;&#1083;&#160;%n"/>
+ <l:template name="simplesect" text="the section called &#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" "/>
+ <l:template name="seplast" text=", "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="&#1074;&#1078;. "/>
+ <l:template name="seealso" text="&#1074;&#1078;. &#1089;&#1098;&#1097;&#1086; "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="Audience: "/>
+ <l:template name="MsgLevel" text="&#1053;&#1080;&#1074;&#1086;: "/>
+ <l:template name="MsgOrig" text="&#1048;&#1079;&#1090;&#1086;&#1095;&#1085;&#1080;&#1082;: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/ca.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/ca.xml
new file mode 100644
index 0000000..54779cb
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/ca.xml
@@ -0,0 +1,457 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="ca" english-language-name="Catalan">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="Resum"/>
+ <l:gentext key="abstract" text="Resum"/>
+ <l:gentext key="Answer" text="Answer"/>
+ <l:gentext key="answer" text="Answer"/>
+ <l:gentext key="appendix" text="ap&#232;ndex"/>
+ <l:gentext key="Appendix" text="Ap&#232;ndix"/>
+ <l:gentext key="Article" text="Article"/>
+ <l:gentext key="article" text="Article"/>
+ <l:gentext key="Bibliography" text="Bibliografia"/>
+ <l:gentext key="bibliography" text="Bibliografia"/>
+ <l:gentext key="Book" text="Llibre"/>
+ <l:gentext key="book" text="Llibre"/>
+ <l:gentext key="Caution" text="Atenci&#243;"/>
+ <l:gentext key="caution" text="Atenci&#243;"/>
+ <l:gentext key="CAUTION" text="ATENCI&#211;"/>
+ <l:gentext key="Chapter" text="Cap&#237;tol"/>
+ <l:gentext key="chapter" text="cap&#237;tol"/>
+ <l:gentext key="Colophon" text="Colophon"/>
+ <l:gentext key="colophon" text="Colophon"/>
+ <l:gentext key="Copyright" text="Dret de reproducci&#243;"/>
+ <l:gentext key="copyright" text="Dret de reproducci&#243;"/>
+ <l:gentext key="Dedication" text="Dedicat&#242;ria"/>
+ <l:gentext key="dedication" text="Dedicat&#242;ria"/>
+ <l:gentext key="Edition" text="Edici&#243;"/>
+ <l:gentext key="edition" text="Edici&#243;"/>
+ <l:gentext key="Equation" text="Equaci&#243;"/>
+ <l:gentext key="equation" text="Equaci&#243;"/>
+ <l:gentext key="Example" text="Exemple"/>
+ <l:gentext key="example" text="Exemple"/>
+ <l:gentext key="Figure" text="Figura"/>
+ <l:gentext key="figure" text="Figura"/>
+ <l:gentext key="Glossary" text="Glossari"/>
+ <l:gentext key="glossary" text="Glossari"/>
+ <l:gentext key="GlossSee" text="Veure"/>
+ <l:gentext key="glosssee" text="Veure"/>
+ <l:gentext key="GlossSeeAlso" text="Veure tamb&#233;"/>
+ <l:gentext key="glossseealso" text="Veure tamb&#233;"/>
+ <l:gentext key="IMPORTANT" text="IMPORTANT"/>
+ <l:gentext key="Important" text="Important"/>
+ <l:gentext key="important" text="Important"/>
+ <l:gentext key="Index" text="&#205;ndex alfab&#232;tic"/>
+ <l:gentext key="index" text="&#205;ndex alfab&#232;tic"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text=""/>
+ <l:gentext key="legalnotice" text=""/>
+ <l:gentext key="MsgAud" text="Audi&#232;ncia"/>
+ <l:gentext key="msgaud" text="Audi&#232;ncia"/>
+ <l:gentext key="MsgLevel" text="Nivell"/>
+ <l:gentext key="msglevel" text="Nivell"/>
+ <l:gentext key="MsgOrig" text="Origen"/>
+ <l:gentext key="msgorig" text="Origen"/>
+ <l:gentext key="note" text="Nota"/>
+ <l:gentext key="NOTE" text="NOTA"/>
+ <l:gentext key="Note" text="Nota"/>
+ <l:gentext key="Part" text="Part"/>
+ <l:gentext key="part" text="Part"/>
+ <l:gentext key="Preface" text="Prefaci"/>
+ <l:gentext key="preface" text="Prefaci"/>
+ <l:gentext key="Procedure" text="Procediment"/>
+ <l:gentext key="procedure" text="Procediment"/>
+ <l:gentext key="ProductionSet" text="Production"/>
+ <l:gentext key="PubDate" text="Data de publicaci&#243;"/>
+ <l:gentext key="pubdate" text="Data de publicaci&#243;"/>
+ <l:gentext key="Published" text="Data de publicaci&#243;"/>
+ <l:gentext key="published" text="Data de publicaci&#243;"/>
+ <l:gentext key="Question" text="Question"/>
+ <l:gentext key="question" text="Question"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="Refer&#232;ncia"/>
+ <l:gentext key="reference" text="Refer&#232;ncia"/>
+ <l:gentext key="RefName" text="Nom"/>
+ <l:gentext key="refname" text="Nom"/>
+ <l:gentext key="RefSection" text=""/>
+ <l:gentext key="refsection" text=""/>
+ <l:gentext key="RefSynopsisDiv" text="Synopsis"/>
+ <l:gentext key="refsynopsisdiv" text="Synopsis"/>
+ <l:gentext key="RevHistory" text="Historial de revisions"/>
+ <l:gentext key="revhistory" text="Historial de revisions"/>
+ <l:gentext key="Revision" text="Revisi&#243;"/>
+ <l:gentext key="revision" text="Revisi&#243;"/>
+ <l:gentext key="sect1" text="Secci&#243;"/>
+ <l:gentext key="sect2" text="Secci&#243;"/>
+ <l:gentext key="sect3" text="Secci&#243;"/>
+ <l:gentext key="sect4" text="Secci&#243;"/>
+ <l:gentext key="sect5" text="Secci&#243;"/>
+ <l:gentext key="Section" text="Secci&#243;"/>
+ <l:gentext key="section" text="secci&#243;"/>
+ <l:gentext key="see" text="Veure"/>
+ <l:gentext key="See" text="Veure"/>
+ <l:gentext key="Seealso" text="Veure tamb&#233;"/>
+ <l:gentext key="seealso" text="Veure tambi&#233;"/>
+ <l:gentext key="SeeAlso" text="Veure tambi&#233;"/>
+ <l:gentext key="Set" text="Conjunt"/>
+ <l:gentext key="set" text="Conjunt"/>
+ <l:gentext key="SetIndex" text="&#205;ndex del conjunt"/>
+ <l:gentext key="setindex" text="&#205;ndex del conjunt"/>
+ <l:gentext key="Sidebar" text=""/>
+ <l:gentext key="sidebar" text="glossa"/>
+ <l:gentext key="step" text="pas"/>
+ <l:gentext key="Step" text="Pas"/>
+ <l:gentext key="table" text="Taula"/>
+ <l:gentext key="Table" text="Taula"/>
+ <l:gentext key="TIP" text="SUGGERIMENT"/>
+ <l:gentext key="Tip" text="Suggeriment"/>
+ <l:gentext key="tip" text="Suggeriment"/>
+ <l:gentext key="WARNING" text="AV&#205;S"/>
+ <l:gentext key="Warning" text="Av&#237;s"/>
+ <l:gentext key="warning" text="Av&#237;s"/>
+ <l:gentext key="and" text="i"/>
+ <l:gentext key="by" text="per"/>
+ <l:gentext key="Edited" text="Editat"/>
+ <l:gentext key="edited" text="Editat"/>
+ <l:gentext key="Editedby" text="Editat per"/>
+ <l:gentext key="editedby" text="Editat per"/>
+ <l:gentext key="in" text="a"/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="element inexistent"/>
+ <l:gentext key="notes" text="Notes"/>
+ <l:gentext key="Notes" text="Notes"/>
+ <l:gentext key="Pgs" text="P&#224;gs."/>
+ <l:gentext key="pgs" text="P&#224;gs."/>
+ <l:gentext key="Revisedby" text="Revised by: "/>
+ <l:gentext key="revisedby" text="Revised by: "/>
+ <l:gentext key="TableNotes" text="Notes"/>
+ <l:gentext key="tablenotes" text="Notes"/>
+ <l:gentext key="TableofContents" text="Sumari"/>
+ <l:gentext key="tableofcontents" text="Sumari"/>
+ <l:gentext key="unexpectedelementname" text="Nom d'element no esperat"/>
+ <l:gentext key="unsupported" text="no reconeguda"/>
+ <l:gentext key="xrefto" text="xref a"/>
+ <l:gentext key="listofequations" text="&#205;ndex d'equacions"/>
+ <l:gentext key="ListofEquations" text="&#205;ndex d'equacions"/>
+ <l:gentext key="ListofExamples" text="&#205;ndex d'exemples"/>
+ <l:gentext key="listofexamples" text="&#205;ndex d'exemples"/>
+ <l:gentext key="ListofFigures" text="&#205;ndex de figures"/>
+ <l:gentext key="listoffigures" text="&#205;ndex de figures"/>
+ <l:gentext key="listoftables" text="&#205;ndex de taules"/>
+ <l:gentext key="ListofTables" text="&#205;ndex de taules"/>
+ <l:gentext key="ListofUnknown" text="&#205;ndex de desconegut ?"/>
+ <l:gentext key="listofunknown" text="&#205;ndex de desconegut ?"/>
+ <l:gentext key="nav-home" text="Inici"/>
+ <l:gentext key="nav-next" text="Seguent"/>
+ <l:gentext key="nav-next-sibling" text="Avancar"/>
+ <l:gentext key="nav-prev" text="Anterior"/>
+ <l:gentext key="nav-prev-sibling" text="Retrocedir"/>
+ <l:gentext key="nav-up" text="Pujar"/>
+ <l:gentext key="Draft" text="Draft"/>
+ <l:gentext key="above" text="above"/>
+ <l:gentext key="below" text="below"/>
+ <l:gentext key="sectioncalled" text="the section called"/>
+ <l:gentext key="index symbols" text="Symbols"/>
+ <l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz"/>
+ <l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="last-first"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="Ap&#232;ndix %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Cap&#237;tol %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Equaci&#243; %n. %t"/>
+ <l:template name="example" text="Exemple %n. %t"/>
+ <l:template name="figure" text="Figura %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Part %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="Procediment&#160;%n.&#160;%t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Production&#160;%n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="Taula %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="Ap&#232;ndix %n. %t"/>
+ <l:template name="bridgehead" text="%n.&#160;%t"/>
+ <l:template name="chapter" text="Cap&#237;tol %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%n. %t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="Answer&#160;%n"/>
+ <l:template name="appendix" text="Ap&#232;ndix %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Cap&#237;tol %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Equaci&#243;&#160;%n"/>
+ <l:template name="example" text="Exemple %n. %t"/>
+ <l:template name="figure" text="Figura %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ <l:template name="part" text="Part %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="Procediment&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="Question&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="Question&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="Taula %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text=" &#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#8220;%t&#8221;"/>
+ <l:template name="sect2" text="&#8220;%t&#8221;"/>
+ <l:template name="sect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect4" text="&#8220;%t&#8221;"/>
+ <l:template name="sect5" text="&#8220;%t&#8221;"/>
+ <l:template name="section" text="&#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="Secci&#243; %n"/>
+ <l:template name="sect2" text="Secci&#243; %n"/>
+ <l:template name="sect3" text="Secci&#243; %n"/>
+ <l:template name="sect4" text="Secci&#243; %n"/>
+ <l:template name="sect5" text="Secci&#243; %n"/>
+ <l:template name="section" text="Secci&#243; %n"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" i "/>
+ <l:template name="seplast" text=", i "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="Veure "/>
+ <l:template name="seealso" text="Veure tamb&#233; "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="Audi&#232;ncia: "/>
+ <l:template name="MsgLevel" text="Nivell: "/>
+ <l:template name="MsgOrig" text="Origen: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/cs.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/cs.xml
new file mode 100644
index 0000000..dbff9e4
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/cs.xml
@@ -0,0 +1,455 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="cs" english-language-name="Czech">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="Abstrakt"/>
+ <l:gentext key="abstract" text="Abstrakt"/>
+ <l:gentext key="Answer" text="Odpov&#283;&#271;:"/>
+ <l:gentext key="answer" text="Odpov&#283;&#271;:"/>
+ <l:gentext key="Appendix" text="P&#345;&#237;loha"/>
+ <l:gentext key="appendix" text="P&#345;&#237;loha"/>
+ <l:gentext key="Article" text="&#268;l&#225;nek"/>
+ <l:gentext key="article" text="&#268;l&#225;nek"/>
+ <l:gentext key="Bibliography" text="Bibliografie"/>
+ <l:gentext key="bibliography" text="Bibliografie"/>
+ <l:gentext key="Book" text="Kniha"/>
+ <l:gentext key="book" text="Kniha"/>
+ <l:gentext key="CAUTION" text="V&#253;straha"/>
+ <l:gentext key="Caution" text="V&#253;straha"/>
+ <l:gentext key="caution" text="V&#253;straha"/>
+ <l:gentext key="Chapter" text="Kapitola"/>
+ <l:gentext key="chapter" text="Kapitola"/>
+ <l:gentext key="Colophon" text="Tir&#225;&#382;"/>
+ <l:gentext key="colophon" text="Tir&#225;&#382;"/>
+ <l:gentext key="Copyright" text="Copyright"/>
+ <l:gentext key="copyright" text="Copyright"/>
+ <l:gentext key="Dedication" text="V&#283;nov&#225;n&#237;"/>
+ <l:gentext key="dedication" text="V&#283;nov&#225;n&#237;"/>
+ <l:gentext key="Edition" text="Vyd&#225;n&#237;"/>
+ <l:gentext key="edition" text="Vyd&#225;n&#237;"/>
+ <l:gentext key="Equation" text="Rovnice"/>
+ <l:gentext key="equation" text="Rovnice"/>
+ <l:gentext key="Example" text="P&#345;&#237;klad"/>
+ <l:gentext key="example" text="P&#345;&#237;klad"/>
+ <l:gentext key="Figure" text="Obr&#225;zek"/>
+ <l:gentext key="figure" text="Obr&#225;zek"/>
+ <l:gentext key="Glossary" text="Slovn&#237;k"/>
+ <l:gentext key="glossary" text="Slovn&#237;k"/>
+ <l:gentext key="GlossSee" text="Viz"/>
+ <l:gentext key="glosssee" text="Viz"/>
+ <l:gentext key="GlossSeeAlso" text="Viz t&#233;&#382;"/>
+ <l:gentext key="glossseealso" text="Viz t&#233;&#382;"/>
+ <l:gentext key="IMPORTANT" text="D&#367;le&#382;it&#233;"/>
+ <l:gentext key="Important" text="D&#367;le&#382;it&#233;"/>
+ <l:gentext key="important" text="D&#367;le&#382;it&#233;"/>
+ <l:gentext key="Index" text="Rejst&#345;&#237;k"/>
+ <l:gentext key="index" text="Rejst&#345;&#237;k"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text="Pr&#225;vn&#237; dolo&#382;ka"/>
+ <l:gentext key="legalnotice" text="Pr&#225;vn&#237; dolo&#382;ka"/>
+ <l:gentext key="MsgAud" text="Publikum"/>
+ <l:gentext key="msgaud" text="Publikum"/>
+ <l:gentext key="MsgLevel" text="&#218;rove&#328;"/>
+ <l:gentext key="msglevel" text="&#218;rove&#328;"/>
+ <l:gentext key="MsgOrig" text="P&#367;vod"/>
+ <l:gentext key="msgorig" text="P&#367;vod"/>
+ <l:gentext key="NOTE" text="Pozn&#225;mka"/>
+ <l:gentext key="Note" text="Pozn&#225;mka"/>
+ <l:gentext key="note" text="Pozn&#225;mka"/>
+ <l:gentext key="Part" text="&#268;&#225;st"/>
+ <l:gentext key="part" text="&#268;&#225;st"/>
+ <l:gentext key="Preface" text="P&#345;edmluva"/>
+ <l:gentext key="preface" text="P&#345;edmluva"/>
+ <l:gentext key="Procedure" text="Postup"/>
+ <l:gentext key="procedure" text="Postup"/>
+ <l:gentext key="ProductionSet" text="Produkce"/>
+ <l:gentext key="Published" text="Vyd&#225;no"/>
+ <l:gentext key="published" text="Vyd&#225;no"/>
+ <l:gentext key="Question" text="Ot&#225;zka:"/>
+ <l:gentext key="question" text="Ot&#225;zka:"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="Odkaz"/>
+ <l:gentext key="reference" text="Odkaz"/>
+ <l:gentext key="RefName" text="Jm&#233;no"/>
+ <l:gentext key="refname" text="Jm&#233;no"/>
+ <l:gentext key="RefSection" text=""/>
+ <l:gentext key="refsection" text=""/>
+ <l:gentext key="RefSynopsisDiv" text="P&#345;ehled"/>
+ <l:gentext key="refsynopsisdiv" text="P&#345;ehled"/>
+ <l:gentext key="RevHistory" text="P&#345;ehled reviz&#237;"/>
+ <l:gentext key="revhistory" text="P&#345;ehled reviz&#237;"/>
+ <l:gentext key="Revision" text="Revize"/>
+ <l:gentext key="revision" text="Revize"/>
+ <l:gentext key="sect1" text="Odd&#237;l"/>
+ <l:gentext key="sect2" text="Odd&#237;l"/>
+ <l:gentext key="sect3" text="Odd&#237;l"/>
+ <l:gentext key="sect4" text="Odd&#237;l"/>
+ <l:gentext key="sect5" text="Odd&#237;l"/>
+ <l:gentext key="Section" text="Odd&#237;l"/>
+ <l:gentext key="section" text="Odd&#237;l"/>
+ <l:gentext key="See" text="Viz"/>
+ <l:gentext key="see" text="Viz"/>
+ <l:gentext key="SeeAlso" text="Viz t&#233;&#382;"/>
+ <l:gentext key="Seealso" text="Viz t&#233;&#382;"/>
+ <l:gentext key="seealso" text="Viz t&#233;&#382;"/>
+ <l:gentext key="Set" text="Sada"/>
+ <l:gentext key="set" text="Sada"/>
+ <l:gentext key="SetIndex" text="Rejst&#345;&#237;k sady"/>
+ <l:gentext key="setindex" text="Rejst&#345;&#237;k sady"/>
+ <l:gentext key="Sidebar" text="Margin&#225;lie"/>
+ <l:gentext key="sidebar" text="Margin&#225;lie"/>
+ <l:gentext key="Step" text="Krok"/>
+ <l:gentext key="step" text="krok"/>
+ <l:gentext key="Table" text="Tabulka"/>
+ <l:gentext key="table" text="Tabulka"/>
+ <l:gentext key="TIP" text="Tip"/>
+ <l:gentext key="Tip" text="Tip"/>
+ <l:gentext key="tip" text="Tip"/>
+ <l:gentext key="WARNING" text="Varov&#225;n&#237;"/>
+ <l:gentext key="Warning" text="Varov&#225;n&#237;"/>
+ <l:gentext key="warning" text="Varov&#225;n&#237;"/>
+ <l:gentext key="and" text="a"/>
+ <l:gentext key="by" text=""/>
+ <l:gentext key="Edited" text="Vyd&#225;no"/>
+ <l:gentext key="edited" text="Vyd&#225;no"/>
+ <l:gentext key="Editedby" text="Sestavil"/>
+ <l:gentext key="editedby" text="Sestavil"/>
+ <l:gentext key="in" text="v"/>
+ <l:gentext key="lastlistcomma" text=""/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="neexistuj&#237;c&#237; prvek"/>
+ <l:gentext key="notes" text="Pozn&#225;mky"/>
+ <l:gentext key="Notes" text="Pozn&#225;mky"/>
+ <l:gentext key="Pgs" text="Str."/>
+ <l:gentext key="pgs" text="Str."/>
+ <l:gentext key="Revisedby" text="Revidoval: "/>
+ <l:gentext key="revisedby" text="Revidoval: "/>
+ <l:gentext key="TableNotes" text="Pozn&#225;mky"/>
+ <l:gentext key="tablenotes" text="Pozn&#225;mky"/>
+ <l:gentext key="TableofContents" text="Obsah"/>
+ <l:gentext key="tableofcontents" text="Obsah"/>
+ <l:gentext key="unexpectedelementname" text="Neo&#269;ek&#225;van&#233; jm&#233;no prvku"/>
+ <l:gentext key="unsupported" text="nepodporovan&#253;"/>
+ <l:gentext key="xrefto" text="xref k"/>
+ <l:gentext key="listofequations" text="Seznam rovnic"/>
+ <l:gentext key="ListofEquations" text="Seznam rovnic"/>
+ <l:gentext key="ListofExamples" text="Seznam p&#345;&#237;klad&#367;"/>
+ <l:gentext key="listofexamples" text="Seznam p&#345;&#237;klad&#367;"/>
+ <l:gentext key="ListofFigures" text="Seznam obr&#225;zk&#367;"/>
+ <l:gentext key="listoffigures" text="Seznam obr&#225;zk&#367;"/>
+ <l:gentext key="listoftables" text="Seznam tabulek"/>
+ <l:gentext key="ListofTables" text="Seznam tabulek"/>
+ <l:gentext key="ListofUnknown" text="Seznam nezn&#225;m&#233;ho"/>
+ <l:gentext key="listofunknown" text="Seznam nezn&#225;m&#233;ho"/>
+ <l:gentext key="nav-home" text="Dom&#367;"/>
+ <l:gentext key="nav-next" text="Dal&#353;&#237;"/>
+ <l:gentext key="nav-next-sibling" text="Rychle dop&#345;edu"/>
+ <l:gentext key="nav-prev" text="P&#345;edch&#225;zej&#237;c&#237;"/>
+ <l:gentext key="nav-prev-sibling" text="Rychle zp&#283;t"/>
+ <l:gentext key="nav-up" text="Nahoru"/>
+ <l:gentext key="sectioncalled" text="odd&#237;l nazvan&#253;"/>
+ <l:gentext key="Draft" text="N&#225;vrh"/>
+ <l:gentext key="above" text="nad"/>
+ <l:gentext key="below" text="pod"/>
+ <l:gentext key="index symbols" text="Symboly"/>
+ <l:gentext key="lowercase.alpha" text="a&#225;bc&#269;d&#271;e&#233;&#283;fghi&#237;jklmno&#243;pqr&#345;s&#353;t&#357;u&#250;&#367;vwxy&#253;z&#382;"/>
+ <l:gentext key="uppercase.alpha" text="A&#193;BC&#268;D&#270;E&#201;&#282;FGHI&#205;JKLMNO&#211;PQR&#344;S&#352;T&#356;U&#218;&#366;VWXY&#221;Z&#381;"/>
+ <l:dingbat key="startquote" text="&#8222;"/>
+ <l:dingbat key="endquote" text="&#8220;"/>
+ <l:dingbat key="nestedstartquote" text="&#8218;"/>
+ <l:dingbat key="nestedendquote" text="&#8216;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="P&#345;&#237;loha %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Kapitola %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Rovnice %n. %t"/>
+ <l:template name="example" text="P&#345;&#237;klad %n. %t"/>
+ <l:template name="figure" text="Obr&#225;zek %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="&#268;&#225;st %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="Postup %n. %t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Produkce %n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="Tabulka %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text=""/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="P&#345;&#237;loha %n. %t"/>
+ <l:template name="bridgehead" text="%n. %t"/>
+ <l:template name="chapter" text="Kapitola %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%n. %t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%n"/>
+ <l:template name="appendix" text="%n &#8211; &#8222;%t&#8220;"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="%n &#8211; &#8222;%t&#8220;"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="%n"/>
+ <l:template name="example" text="%n"/>
+ <l:template name="figure" text="%n"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="%n &#8211; &#8222;%t&#8220;"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="%n"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="&#8222;%t&#8220;"/>
+ <l:template name="refsection" text="&#8222;%t&#8220;"/>
+ <l:template name="refsect1" text="&#8222;%t&#8220;"/>
+ <l:template name="refsect2" text="&#8222;%t&#8220;"/>
+ <l:template name="refsect3" text="&#8222;%t&#8220;"/>
+ <l:template name="sect1" text="&#8222;%t&#8220;"/>
+ <l:template name="sect2" text="&#8222;%t&#8220;"/>
+ <l:template name="sect3" text="&#8222;%t&#8220;"/>
+ <l:template name="sect4" text="&#8222;%t&#8220;"/>
+ <l:template name="sect5" text="&#8222;%t&#8220;"/>
+ <l:template name="section" text="&#8222;%t&#8220;"/>
+ <l:template name="simplesect" text="&#8222;%t&#8220;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="%n"/>
+ <l:template name="refsection" text="&#8222;%t&#8220;"/>
+ <l:template name="refsect1" text="&#8222;%t&#8220;"/>
+ <l:template name="refsect2" text="&#8222;%t&#8220;"/>
+ <l:template name="refsect3" text="&#8222;%t&#8220;"/>
+ <l:template name="sect1" text="%n"/>
+ <l:template name="sect2" text="%n"/>
+ <l:template name="sect3" text="%n"/>
+ <l:template name="sect4" text="%n"/>
+ <l:template name="sect5" text="%n"/>
+ <l:template name="section" text="%n"/>
+ <l:template name="simplesect" text="&#8222;%t&#8220;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" a "/>
+ <l:template name="seplast" text=" a "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="Viz "/>
+ <l:template name="seealso" text="Viz t&#233;&#382; "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="Publikum: "/>
+ <l:template name="MsgLevel" text="&#218;rove&#328;: "/>
+ <l:template name="MsgOrig" text="P&#367;vod: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/da.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/da.xml
new file mode 100644
index 0000000..072eb09
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/da.xml
@@ -0,0 +1,457 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="da" english-language-name="Danish">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="Resum&#233;"/>
+ <l:gentext key="abstract" text="resum&#233;"/>
+ <l:gentext key="Answer" text="Svar"/>
+ <l:gentext key="answer" text="svar"/>
+ <l:gentext key="Appendix" text="Appendiks"/>
+ <l:gentext key="appendix" text="appendiks"/>
+ <l:gentext key="Article" text="Artikel"/>
+ <l:gentext key="article" text="artikel"/>
+ <l:gentext key="Bibliography" text="Litteraturliste"/>
+ <l:gentext key="bibliography" text="litteraturliste"/>
+ <l:gentext key="Book" text="Bog"/>
+ <l:gentext key="book" text="bog"/>
+ <l:gentext key="CAUTION" text="PAS P&#197;"/>
+ <l:gentext key="Caution" text="Pas p&#229;"/>
+ <l:gentext key="caution" text="pas p&#229;"/>
+ <l:gentext key="Chapter" text="Kapitel"/>
+ <l:gentext key="chapter" text="kapitel"/>
+ <l:gentext key="Colophon" text="Kolofon"/>
+ <l:gentext key="colophon" text="kolofon"/>
+ <l:gentext key="Copyright" text="Ophavsret"/>
+ <l:gentext key="copyright" text="ophavsret"/>
+ <l:gentext key="Dedication" text="Tilegnet"/>
+ <l:gentext key="dedication" text="tilegnet"/>
+ <l:gentext key="Edition" text="Udgave"/>
+ <l:gentext key="edition" text="udgave"/>
+ <l:gentext key="Equation" text="Ligning"/>
+ <l:gentext key="equation" text="ligning"/>
+ <l:gentext key="Example" text="Eksempel"/>
+ <l:gentext key="example" text="eksempel"/>
+ <l:gentext key="Figure" text="Figur"/>
+ <l:gentext key="figure" text="figur"/>
+ <l:gentext key="Glossary" text="Ordliste"/>
+ <l:gentext key="glossary" text="ordliste"/>
+ <l:gentext key="GlossSee" text="Se"/>
+ <l:gentext key="glosssee" text="se"/>
+ <l:gentext key="GlossSeeAlso" text="Se ogs&#229;"/>
+ <l:gentext key="glossseealso" text="se ogs&#229;"/>
+ <l:gentext key="IMPORTANT" text="VIGTIGT"/>
+ <l:gentext key="Important" text="Vigtigt"/>
+ <l:gentext key="important" text="vigtigt"/>
+ <l:gentext key="Index" text="Stikordsregister"/>
+ <l:gentext key="index" text="stikordsregister"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text="Retslig note"/>
+ <l:gentext key="legalnotice" text="retslig note"/>
+ <l:gentext key="MsgAud" text="M&#229;lgruppe"/>
+ <l:gentext key="msgaud" text="m&#229;lgruppe"/>
+ <l:gentext key="MsgLevel" text="Niveau"/>
+ <l:gentext key="msglevel" text="niveau"/>
+ <l:gentext key="MsgOrig" text="Grundlag"/>
+ <l:gentext key="msgorig" text="grundlag"/>
+ <l:gentext key="NOTE" text="BEM&#198;RK"/>
+ <l:gentext key="Note" text="Bem&#230;rk"/>
+ <l:gentext key="note" text="bem&#230;rk"/>
+ <l:gentext key="Part" text="Del"/>
+ <l:gentext key="part" text="del"/>
+ <l:gentext key="Preface" text="Forord"/>
+ <l:gentext key="preface" text="forord"/>
+ <l:gentext key="Procedure" text="Procedure"/>
+ <l:gentext key="procedure" text="procedure"/>
+ <l:gentext key="ProductionSet" text="Produktion"/>
+ <l:gentext key="Published" text="Udgivet"/>
+ <l:gentext key="published" text="udgivet"/>
+ <l:gentext key="Question" text="Sp&#248;rgsm&#229;l"/>
+ <l:gentext key="question" text="sp&#248;rgsm&#229;l"/>
+ <l:gentext key="RefEntry" text="Punkt"/>
+ <l:gentext key="refentry" text="punkt"/>
+ <l:gentext key="Reference" text="Henvisning"/>
+ <l:gentext key="reference" text="henvisning"/>
+ <l:gentext key="RefName" text="Navn"/>
+ <l:gentext key="refname" text="navn"/>
+ <l:gentext key="RefSection" text="Afsnit"/>
+ <l:gentext key="refsection" text="afsnit"/>
+ <l:gentext key="RefSynopsisDiv" text="Synopsis"/>
+ <l:gentext key="refsynopsisdiv" text="synopsis"/>
+ <l:gentext key="RevHistory" text="Revisionshistorie"/>
+ <l:gentext key="revhistory" text="revisionshistorie"/>
+ <l:gentext key="revision" text="revision"/>
+ <l:gentext key="Revision" text="Revision"/>
+ <l:gentext key="sect1" text="Afsnit"/>
+ <l:gentext key="sect2" text="Afsnit"/>
+ <l:gentext key="sect3" text="Afsnit"/>
+ <l:gentext key="sect4" text="Afsnit"/>
+ <l:gentext key="sect5" text="Afsnit"/>
+ <l:gentext key="section" text="afsnit"/>
+ <l:gentext key="Section" text="Afsnit"/>
+ <l:gentext key="See" text="Se"/>
+ <l:gentext key="see" text="se"/>
+ <l:gentext key="SeeAlso" text="Se ogs&#229;"/>
+ <l:gentext key="seealso" text="se ogs&#229;"/>
+ <l:gentext key="Seealso" text="Se ogs&#229;"/>
+ <l:gentext key="set" text="s&#230;t"/>
+ <l:gentext key="Set" text="S&#230;t"/>
+ <l:gentext key="setindex" text="s&#230;t indeks"/>
+ <l:gentext key="SetIndex" text="S&#230;t indeks"/>
+ <l:gentext key="Sidebar" text="Sidebj&#230;lke"/>
+ <l:gentext key="sidebar" text="sidebj&#230;lke"/>
+ <l:gentext key="step" text="trin"/>
+ <l:gentext key="Step" text="Trin"/>
+ <l:gentext key="Table" text="Tabel"/>
+ <l:gentext key="table" text="tabel"/>
+ <l:gentext key="tip" text="vink"/>
+ <l:gentext key="TIP" text="VINK"/>
+ <l:gentext key="Tip" text="Vink"/>
+ <l:gentext key="Warning" text="Advarsel"/>
+ <l:gentext key="warning" text="advarsel"/>
+ <l:gentext key="WARNING" text="ADVARSEL"/>
+ <l:gentext key="and" text="og"/>
+ <l:gentext key="by" text="af"/>
+ <l:gentext key="Edited" text="Redigeret"/>
+ <l:gentext key="edited" text="redigeret"/>
+ <l:gentext key="Editedby" text="Redigeret af"/>
+ <l:gentext key="editedby" text="redigeret af"/>
+ <l:gentext key="in" text="i"/>
+ <l:gentext key="lastlistcomma" text=" og "/>
+ <l:gentext key="listcomma" text=", "/>
+ <l:gentext key="nonexistantelement" text="ikke-eksisterende element"/>
+ <l:gentext key="notes" text="slutbem&#230;rkning:"/>
+ <l:gentext key="Notes" text="Slutbem&#230;rkning:"/>
+ <l:gentext key="Pgs" text="Siderne"/>
+ <l:gentext key="pgs" text="siderne"/>
+ <l:gentext key="Revisedby" text="Revideret af: "/>
+ <l:gentext key="revisedby" text="revideret af: "/>
+ <l:gentext key="TableNotes" text="Noter:"/>
+ <l:gentext key="tablenotes" text="noter:"/>
+ <l:gentext key="TableofContents" text="Indholdsfortegnelse"/>
+ <l:gentext key="tableofcontents" text="indholdsfortegnelse"/>
+ <l:gentext key="unexpectedelementname" text="uventet elementnavn"/>
+ <l:gentext key="unsupported" text="ikke underst&#248;ttet"/>
+ <l:gentext key="xrefto" text="krydshenvisning til"/>
+ <l:gentext key="listofequations" text="ligningsliste"/>
+ <l:gentext key="ListofEquations" text="Ligningsliste"/>
+ <l:gentext key="ListofExamples" text="Eksempelliste"/>
+ <l:gentext key="listofexamples" text="eksempelliste"/>
+ <l:gentext key="ListofFigures" text="Figurliste"/>
+ <l:gentext key="listoffigures" text="figurliste"/>
+ <l:gentext key="listoftables" text="tabelliste"/>
+ <l:gentext key="ListofTables" text="Tabelliste"/>
+ <l:gentext key="ListofUnknown" text="Liste over ukendte"/>
+ <l:gentext key="listofunknown" text="liste over ukendte"/>
+ <l:gentext key="nav-home" text="hjem"/>
+ <l:gentext key="nav-next" text="n&#230;ste"/>
+ <l:gentext key="nav-next-sibling" text="hurtigt fremad"/>
+ <l:gentext key="nav-prev" text="forrige"/>
+ <l:gentext key="nav-prev-sibling" text="hurtigt tilbage"/>
+ <l:gentext key="nav-up" text="op"/>
+ <l:gentext key="Draft" text="Kladde"/>
+ <l:gentext key="above" text="over"/>
+ <l:gentext key="below" text="under"/>
+ <l:gentext key="sectioncalled" text="afsnittet der hedder"/>
+ <l:gentext key="index symbols" text="symboler"/>
+ <l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz&#230;&#248;&#229;"/>
+ <l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ&#198;&#216;&#197;"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="Appendiks %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Kapitel %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Ligning %n. %t"/>
+ <l:template name="example" text="Eksempel %n. %t"/>
+ <l:template name="figure" text="Figur %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Del %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="Procedure %n. %t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Produktion %n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="Sp&#248;rgsm&#229;l %n"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="Tabel %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text=""/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="Appendiks %n. %t"/>
+ <l:template name="bridgehead" text="%n. %t"/>
+ <l:template name="chapter" text="Kapitel %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="Svar %n"/>
+ <l:template name="appendix" text="Appendiks %n"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Kapitel %n"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Ligning %n"/>
+ <l:template name="example" text="Eksempel %n"/>
+ <l:template name="figure" text="Figur %n"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Del %n"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="Procedure %n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="Sp&#248;rgsm&#229;l %n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="Sp&#248;rgsm&#229;l %n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="Tabel %n"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="afsnittet der hedder &#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#8220;%t&#8221;"/>
+ <l:template name="sect2" text="&#8220;%t&#8221;"/>
+ <l:template name="sect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect4" text="&#8220;%t&#8221;"/>
+ <l:template name="sect5" text="&#8220;%t&#8221;"/>
+ <l:template name="section" text="&#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="Afsnit %n"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="Afsnit %n"/>
+ <l:template name="sect2" text="Afsnit %n"/>
+ <l:template name="sect3" text="Afsnit %n"/>
+ <l:template name="sect4" text="Afsnit %n"/>
+ <l:template name="sect5" text="Afsnit %n"/>
+ <l:template name="section" text="Afsnit %n"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" og "/>
+ <l:template name="seplast" text=" og og "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="Se "/>
+ <l:template name="seealso" text="Se ogs&#229; "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="M&#229;lgruppe: "/>
+ <l:template name="MsgLevel" text="Niveau: "/>
+ <l:template name="MsgOrig" text="Grundlag: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/de.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/de.xml
new file mode 100644
index 0000000..a9d279a
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/de.xml
@@ -0,0 +1,457 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="de" english-language-name="German">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="Zusammenfassung"/>
+ <l:gentext key="abstract" text="Zusammenfassung"/>
+ <l:gentext key="Answer" text="A:"/>
+ <l:gentext key="answer" text="A:"/>
+ <l:gentext key="Appendix" text="Anhang"/>
+ <l:gentext key="appendix" text="Anhang"/>
+ <l:gentext key="Article" text="Artikel"/>
+ <l:gentext key="article" text="Artikel"/>
+ <l:gentext key="Bibliography" text="Literaturverzeichnis"/>
+ <l:gentext key="bibliography" text="Literaturverzeichnis"/>
+ <l:gentext key="Book" text="Buch"/>
+ <l:gentext key="book" text="Buch"/>
+ <l:gentext key="Caution" text="Achtung"/>
+ <l:gentext key="caution" text="Achtung"/>
+ <l:gentext key="CAUTION" text="ACHTUNG"/>
+ <l:gentext key="Chapter" text="Kapitel"/>
+ <l:gentext key="chapter" text="Kapitel"/>
+ <l:gentext key="Colophon" text="Kolophon"/>
+ <l:gentext key="colophon" text="Kolophon"/>
+ <l:gentext key="Copyright" text="Copyright"/>
+ <l:gentext key="copyright" text="Copyright"/>
+ <l:gentext key="Dedication" text="Widmung"/>
+ <l:gentext key="dedication" text="Widmung"/>
+ <l:gentext key="Edition" text="Ausgabe"/>
+ <l:gentext key="edition" text="Ausgabe"/>
+ <l:gentext key="Equation" text="Gleichung"/>
+ <l:gentext key="equation" text="Gleichung"/>
+ <l:gentext key="Example" text="Beispiel"/>
+ <l:gentext key="example" text="Beispiel"/>
+ <l:gentext key="Figure" text="Abbildung"/>
+ <l:gentext key="figure" text="Abbildung"/>
+ <l:gentext key="Glossary" text="Glossar"/>
+ <l:gentext key="glossary" text="Glossar"/>
+ <l:gentext key="GlossSee" text="Siehe"/>
+ <l:gentext key="glosssee" text="Siehe"/>
+ <l:gentext key="GlossSeeAlso" text="Siehe auch"/>
+ <l:gentext key="glossseealso" text="Siehe auch"/>
+ <l:gentext key="IMPORTANT" text="WICHTIG"/>
+ <l:gentext key="Important" text="Wichtig"/>
+ <l:gentext key="important" text="Wichtig"/>
+ <l:gentext key="Index" text="Stichwortverzeichnis"/>
+ <l:gentext key="index" text="Stichwortverzeichnis"/>
+ <l:gentext key="index symbols" text="Symbole"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text="Rechtlicher Hinweis"/>
+ <l:gentext key="legalnotice" text="Rechtlicher Hinweis"/>
+ <l:gentext key="MsgAud" text="Zielgruppe"/>
+ <l:gentext key="msgaud" text="Zielgruppe"/>
+ <l:gentext key="MsgLevel" text="Dringlichkeit"/>
+ <l:gentext key="msglevel" text="Dringlichkeit"/>
+ <l:gentext key="MsgOrig" text="Ursprung"/>
+ <l:gentext key="msgorig" text="Ursprung"/>
+ <l:gentext key="note" text="Anmerkung"/>
+ <l:gentext key="NOTE" text="ANMERKUNG"/>
+ <l:gentext key="Note" text="Anmerkung"/>
+ <l:gentext key="part" text="Teil"/>
+ <l:gentext key="Part" text="Teil"/>
+ <l:gentext key="Preface" text="Vorwort"/>
+ <l:gentext key="preface" text="Vorwort"/>
+ <l:gentext key="Procedure" text="Prozedur"/>
+ <l:gentext key="procedure" text="Prozedur"/>
+ <l:gentext key="ProductionSet" text="Produktion"/>
+ <l:gentext key="Published" text="Ver&#246;ffentlicht"/>
+ <l:gentext key="published" text="Ver&#246;ffentlicht"/>
+ <l:gentext key="Question" text="F:"/>
+ <l:gentext key="question" text="F:"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="Verweis"/>
+ <l:gentext key="reference" text="Verweis"/>
+ <l:gentext key="refname" text="Name"/>
+ <l:gentext key="RefName" text="Name"/>
+ <l:gentext key="RefSection" text="Abschnitt"/>
+ <l:gentext key="refsection" text="Abschnitt"/>
+ <l:gentext key="RefSynopsisDiv" text="Synopsis"/>
+ <l:gentext key="refsynopsisdiv" text="Synopsis"/>
+ <l:gentext key="RevHistory" text="Versionsgeschichte"/>
+ <l:gentext key="revhistory" text="Versionsgeschichte"/>
+ <l:gentext key="Revision" text="Version"/>
+ <l:gentext key="revision" text="Version"/>
+ <l:gentext key="Section" text="Abschnitt"/>
+ <l:gentext key="section" text="Abschnitt"/>
+ <l:gentext key="sect1" text="Abschnitt"/>
+ <l:gentext key="sect2" text="Abschnitt"/>
+ <l:gentext key="sect3" text="Abschnitt"/>
+ <l:gentext key="sect4" text="Abschnitt"/>
+ <l:gentext key="sect5" text="Abschnitt"/>
+ <l:gentext key="see" text="Siehe"/>
+ <l:gentext key="See" text="Siehe"/>
+ <l:gentext key="SeeAlso" text="Siehe auch"/>
+ <l:gentext key="seealso" text="Siehe auch"/>
+ <l:gentext key="Seealso" text="Siehe auch"/>
+ <l:gentext key="Set" text="Satz"/>
+ <l:gentext key="set" text="Satz"/>
+ <l:gentext key="setindex" text="Stichwortverzeichnis"/>
+ <l:gentext key="SetIndex" text="Stichwortverzeichnis"/>
+ <l:gentext key="sidebar" text="randnotiz"/>
+ <l:gentext key="Sidebar" text="Randnotiz"/>
+ <l:gentext key="Step" text="Schritt"/>
+ <l:gentext key="step" text="Schritt"/>
+ <l:gentext key="table" text="Tabelle"/>
+ <l:gentext key="Table" text="Tabelle"/>
+ <l:gentext key="TIP" text="TIPP"/>
+ <l:gentext key="Tip" text="Tipp"/>
+ <l:gentext key="tip" text="Tipp"/>
+ <l:gentext key="Warning" text="Warnung"/>
+ <l:gentext key="warning" text="Warnung"/>
+ <l:gentext key="WARNING" text="WARNUNG"/>
+ <l:gentext key="and" text="und"/>
+ <l:gentext key="by" text="von"/>
+ <l:gentext key="Edited" text="Herausgegeben"/>
+ <l:gentext key="edited" text="Herausgegeben"/>
+ <l:gentext key="Editedby" text="Herausgegeben von"/>
+ <l:gentext key="editedby" text="Herausgegeben von"/>
+ <l:gentext key="in" text="in"/>
+ <l:gentext key="lastlistcomma" text=""/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="nicht existierendes Element"/>
+ <l:gentext key="notes" text="Fu&#223;noten"/>
+ <l:gentext key="Notes" text="Fu&#223;noten"/>
+ <l:gentext key="Pgs" text="Seiten"/>
+ <l:gentext key="pgs" text="Seiten"/>
+ <l:gentext key="Revisedby" text="Ge&#228;ndert durch: "/>
+ <l:gentext key="revisedby" text="Ge&#228;ndert durch: "/>
+ <l:gentext key="TableNotes" text="Bemerkungen"/>
+ <l:gentext key="tablenotes" text="Bemerkungen"/>
+ <l:gentext key="TableofContents" text="Inhaltsverzeichnis"/>
+ <l:gentext key="tableofcontents" text="Inhaltsverzeichnis"/>
+ <l:gentext key="unexpectedelementname" text="Unerwarteter Elementname"/>
+ <l:gentext key="unsupported" text="wird nicht unterst&#252;tzt"/>
+ <l:gentext key="xrefto" text="xref auf"/>
+ <l:gentext key="listofequations" text="Gleichungen"/>
+ <l:gentext key="ListofEquations" text="Gleichungen"/>
+ <l:gentext key="ListofExamples" text="Beispiele"/>
+ <l:gentext key="listofexamples" text="Beispiele"/>
+ <l:gentext key="ListofFigures" text="Abbildungsverzeichnis"/>
+ <l:gentext key="listoffigures" text="Abbildungsverzeichnis"/>
+ <l:gentext key="listoftables" text="Tabellenverzeichnis"/>
+ <l:gentext key="ListofTables" text="Tabellenverzeichnis"/>
+ <l:gentext key="ListofUnknown" text="???-Verzeichnis"/>
+ <l:gentext key="listofunknown" text="???-Verzeichnis"/>
+ <l:gentext key="nav-home" text="Zum Anfang"/>
+ <l:gentext key="nav-next" text="Weiter"/>
+ <l:gentext key="nav-next-sibling" text="Schnell weiter"/>
+ <l:gentext key="nav-prev" text="Zur&#252;ck"/>
+ <l:gentext key="nav-prev-sibling" text="Schnell zur&#252;ck"/>
+ <l:gentext key="nav-up" text="Nach oben"/>
+ <l:gentext key="sectioncalled" text="der Abschnitt namens"/>
+ <l:gentext key="Draft" text="Entwurf"/>
+ <l:gentext key="above" text="oben"/>
+ <l:gentext key="below" text="unten"/>
+ <l:gentext key="index symbols" text="Symbole"/>
+ <l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz&#228;&#246;&#252;&#223;"/>
+ <l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ&#196;&#214;&#220;&#223;"/>
+ <l:dingbat key="startquote" text="&#8222;"/>
+ <l:dingbat key="endquote" text="&#8220;"/>
+ <l:dingbat key="nestedstartquote" text="&#8218;"/>
+ <l:dingbat key="nestedendquote" text="&#8216;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Anhangtitel (leer)"/>
+ <l:template name="article" text="Artikeltitel (leer)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titel (leer)"/>
+ <l:template name="book" text="Buchtitel (leer)"/>
+ <l:template name="chapter" text="Kapiteltitel (leer)"/>
+ <l:template name="columns" text="Spalten"/>
+ <l:template name="draftarea" text="Entwurfsbereich f&#252;r"/>
+ <l:template name="edit-attrs" text="Attribute f&#252;r entsprechende Elemente bearbeiten"/>
+ <l:template name="footnote" text="Fu&#223;note"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ <l:template name="metainfo" text="Metainformationen"/>
+ <l:template name="preface" text="Vorworttitel (leer)"/>
+ <l:template name="part" text="Teilbuchtitel (leer)"/>
+ <l:template name="section" text="Abschnittstitel (leer)"/>
+ <l:template name="sect1" text="Abschnittstitel (leer)"/>
+ <l:template name="sect2" text="Abschnittstitel (leer)"/>
+ <l:template name="sect3" text="Abschnittstitel (leer)"/>
+ <l:template name="sect4" text="Abschnittstitel (leer)"/>
+ <l:template name="sect5" text="Abschnittstitel (leer)"/>
+ <l:template name="set" text="Sammlungstitel (leer)"/>
+ <l:template name="title" text="Titel: "/>
+ <l:template name="titles" text="Keine Titelseitenelemente"/>
+ <l:template name="reference" text="Reference (empty)"/>
+ <l:template name="refsection" text="Refsection (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="Anhang %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Kapitel %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Gleichung %n. %t"/>
+ <l:template name="example" text="Beispiel %n. %t"/>
+ <l:template name="figure" text="Abbildung %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Teil %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="Prozedur %n. %t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Produktion&#160;%n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="F: %n"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="Tabelle %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="Anhang %n. %t"/>
+ <l:template name="bridgehead" text="%n.&#160;%t"/>
+ <l:template name="chapter" text="Kapitel %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%n. %t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="A:&#160;%n"/>
+ <l:template name="appendix" text="Anhang %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Kapitel %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Gleichung&#160;%n"/>
+ <l:template name="example" text="Beispiel %n. %t"/>
+ <l:template name="figure" text="Abbildung %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Teil %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="Prozedur&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="F:&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="F: %n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="Tabelle %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="&#8222;%t&#8220;"/>
+ <l:template name="refsection" text="&#8222;%t&#8220;"/>
+ <l:template name="refsect1" text="&#8222;%t&#8220;"/>
+ <l:template name="refsect2" text="&#8222;%t&#8220;"/>
+ <l:template name="refsect3" text="&#8222;%t&#8220;"/>
+ <l:template name="sect1" text="&#8222;%t&#8220;"/>
+ <l:template name="sect2" text="&#8222;%t&#8220;"/>
+ <l:template name="sect3" text="&#8222;%t&#8220;"/>
+ <l:template name="sect4" text="&#8222;%t&#8220;"/>
+ <l:template name="sect5" text="&#8222;%t&#8220;"/>
+ <l:template name="section" text="&#8222;%t&#8220;"/>
+ <l:template name="simplesect" text="&#8222;%t&#8220;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="&#8222;%t&#8220;"/>
+ <l:template name="refsection" text="&#8222;%t&#8220;"/>
+ <l:template name="refsect1" text="&#8222;%t&#8220;"/>
+ <l:template name="refsect2" text="&#8222;%t&#8220;"/>
+ <l:template name="refsect3" text="&#8222;%t&#8220;"/>
+ <l:template name="sect1" text="Abschnitt %n"/>
+ <l:template name="sect2" text="Abschnitt %n"/>
+ <l:template name="sect3" text="Abschnitt %n"/>
+ <l:template name="sect4" text="Abschnitt %n"/>
+ <l:template name="sect5" text="Abschnitt %n"/>
+ <l:template name="section" text="Abschnitt %n"/>
+ <l:template name="simplesect" text="&#8222;%t&#8220;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" und "/>
+ <l:template name="seplast" text=" und "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="Siehe "/>
+ <l:template name="seealso" text="Siehe auch "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="Zielgruppe: "/>
+ <l:template name="MsgLevel" text="Dringlichkeit: "/>
+ <l:template name="MsgOrig" text="Ursprung: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/el.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/el.xml
new file mode 100644
index 0000000..7401c22
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/el.xml
@@ -0,0 +1,454 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="el" english-language-name="Greek">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="&#208;&#229;&#241;&#223;&#235;&#231;&#248;&#231;"/>
+ <l:gentext key="Answer" text="&#193;:"/>
+ <l:gentext key="Appendix" text="&#208;&#225;&#241;&#220;&#241;&#244;&#231;&#236;&#225;"/>
+ <l:gentext key="Article" text="&#182;&#241;&#232;&#241;&#239;"/>
+ <l:gentext key="Bibliography" text="&#194;&#233;&#226;&#235;&#233;&#239;&#227;&#241;&#225;&#246;&#223;&#225;"/>
+ <l:gentext key="Book" text="&#194;&#233;&#226;&#235;&#223;&#239;"/>
+ <l:gentext key="CAUTION" text="&#208;&#209;&#207;&#211;&#207;&#215;&#199;"/>
+ <l:gentext key="Caution" text="&#208;&#241;&#239;&#243;&#239;&#247;&#222;"/>
+ <l:gentext key="Chapter" text="&#202;&#229;&#246;&#220;&#235;&#225;&#233;&#239;"/>
+ <l:gentext key="Colophon" text="&#202;&#239;&#241;&#249;&#237;&#223;&#228;&#225;"/>
+ <l:gentext key="Copyright" text="&#208;&#237;&#229;&#245;&#236;&#225;&#244;&#233;&#234;&#220; &#196;&#233;&#234;&#225;&#233;&#254;&#236;&#225;&#244;&#225;"/>
+ <l:gentext key="Dedication" text="&#193;&#246;&#233;&#221;&#241;&#249;&#243;&#231;"/>
+ <l:gentext key="Edition" text="&#184;&#234;&#228;&#239;&#243;&#231;"/>
+ <l:gentext key="Equation" text="&#197;&#238;&#223;&#243;&#249;&#243;&#231;"/>
+ <l:gentext key="Example" text="&#208;&#225;&#241;&#220;&#228;&#229;&#233;&#227;&#236;&#225;"/>
+ <l:gentext key="Figure" text="&#211;&#247;&#222;&#236;&#225;"/>
+ <l:gentext key="GlossSee" text="&#196;&#229;&#223;&#244;&#229;"/>
+ <l:gentext key="GlossSeeAlso" text="&#196;&#229;&#223;&#244;&#229; &#197;&#240;&#223;&#243;&#231;&#242;"/>
+ <l:gentext key="Glossary" text="&#195;&#235;&#249;&#243;&#243;&#220;&#241;&#233;&#239;"/>
+ <l:gentext key="IMPORTANT" text="&#211;&#199;&#204;&#193;&#205;&#212;&#201;&#202;&#207;"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="Important" text="&#211;&#231;&#236;&#225;&#237;&#244;&#233;&#234;&#252;"/>
+ <l:gentext key="Index" text="&#197;&#245;&#241;&#229;&#244;&#222;&#241;&#233;&#239;"/>
+ <l:gentext key="LegalNotice" text="&#205;&#239;&#236;&#233;&#234;&#222; &#211;&#231;&#236;&#229;&#223;&#249;&#243;&#231;"/>
+ <l:gentext key="MsgAud" text="&#193;&#234;&#241;&#239;&#225;&#244;&#222;&#241;&#233;&#239;"/>
+ <l:gentext key="MsgLevel" text="&#197;&#240;&#223;&#240;&#229;&#228;&#239;"/>
+ <l:gentext key="MsgOrig" text="&#208;&#231;&#227;&#222;"/>
+ <l:gentext key="NOTE" text="&#211;&#199;&#204;&#197;&#201;&#217;&#211;&#199;"/>
+ <l:gentext key="Note" text="&#211;&#231;&#236;&#229;&#223;&#249;&#243;&#231;"/>
+ <l:gentext key="Part" text="&#204;&#221;&#241;&#239;&#242;"/>
+ <l:gentext key="Preface" text="&#197;&#233;&#243;&#225;&#227;&#249;&#227;&#222;"/>
+ <l:gentext key="Procedure" text="&#196;&#233;&#225;&#228;&#233;&#234;&#225;&#243;&#223;&#225;"/>
+ <l:gentext key="ProductionSet" text="Production"/>
+ <l:gentext key="Published" text="&#196;&#231;&#236;&#239;&#243;&#233;&#229;&#245;&#236;&#221;&#237;&#239;"/>
+ <l:gentext key="Question" text="&#197;:"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="RefName" text="&#188;&#237;&#239;&#236;&#225;"/>
+ <l:gentext key="RefSection" text=""/>
+ <l:gentext key="RefSynopsisDiv" text="&#211;&#253;&#237;&#239;&#248;&#231;"/>
+ <l:gentext key="Reference" text="&#193;&#237;&#225;&#246;&#239;&#241;&#220;"/>
+ <l:gentext key="RevHistory" text="&#201;&#243;&#244;&#239;&#241;&#233;&#234;&#252; &#193;&#237;&#225;&#232;&#229;&#249;&#241;&#222;&#243;&#229;&#249;&#237;"/>
+ <l:gentext key="Revision" text="&#193;&#237;&#225;&#232;&#229;&#254;&#241;&#231;&#243;&#231;"/>
+ <l:gentext key="Section" text="&#212;&#236;&#222;&#236;&#225;"/>
+ <l:gentext key="See" text="&#196;&#229;&#223;&#244;&#229;"/>
+ <l:gentext key="SeeAlso" text="&#196;&#229;&#223;&#244;&#229; &#197;&#240;&#223;&#243;&#231;&#242;"/>
+ <l:gentext key="Seealso" text="&#196;&#229;&#223;&#244;&#229; &#229;&#240;&#223;&#243;&#231;&#242;"/>
+ <l:gentext key="Set" text="&#211;&#253;&#237;&#239;&#235;&#239;"/>
+ <l:gentext key="SetIndex" text="&#197;&#245;&#241;&#229;&#244;&#222;&#241;&#233;&#239; &#211;&#245;&#237;&#252;&#235;&#249;&#237;"/>
+ <l:gentext key="Sidebar" text=""/>
+ <l:gentext key="Step" text="&#214;&#220;&#243;&#231;"/>
+ <l:gentext key="TIP" text="&#213;&#208;&#207;&#196;&#197;&#201;&#206;&#199;"/>
+ <l:gentext key="Table" text="&#208;&#223;&#237;&#225;&#234;&#225;&#242;"/>
+ <l:gentext key="Tip" text="&#213;&#240;&#252;&#228;&#229;&#233;&#238;&#231;"/>
+ <l:gentext key="WARNING" text="&#208;&#209;&#207;&#197;&#201;&#196;&#207;&#208;&#207;&#201;&#199;&#211;&#199;"/>
+ <l:gentext key="Warning" text="&#208;&#241;&#239;&#229;&#233;&#228;&#239;&#240;&#239;&#223;&#231;&#243;&#231;"/>
+ <l:gentext key="abstract" text="&#208;&#229;&#241;&#223;&#235;&#231;&#248;&#231;"/>
+ <l:gentext key="answer" text="&#193;:"/>
+ <l:gentext key="appendix" text="&#240;&#225;&#241;&#220;&#241;&#244;&#231;&#236;&#225;"/>
+ <l:gentext key="article" text="&#182;&#241;&#232;&#241;&#239;"/>
+ <l:gentext key="bibliography" text="&#194;&#233;&#226;&#235;&#233;&#239;&#227;&#241;&#225;&#246;&#223;&#225;"/>
+ <l:gentext key="book" text="&#194;&#233;&#226;&#235;&#223;&#239;"/>
+ <l:gentext key="caution" text="&#208;&#241;&#239;&#243;&#239;&#247;&#222;"/>
+ <l:gentext key="chapter" text="&#234;&#229;&#246;&#220;&#235;&#225;&#233;&#239;"/>
+ <l:gentext key="colophon" text="&#202;&#239;&#241;&#249;&#237;&#223;&#228;&#225;"/>
+ <l:gentext key="copyright" text="&#208;&#237;&#229;&#245;&#236;&#225;&#244;&#233;&#234;&#220; &#196;&#233;&#234;&#225;&#233;&#254;&#236;&#225;&#244;&#225;"/>
+ <l:gentext key="dedication" text="&#193;&#246;&#233;&#221;&#241;&#249;&#243;&#231;"/>
+ <l:gentext key="edition" text="&#184;&#234;&#228;&#239;&#243;&#231;"/>
+ <l:gentext key="equation" text="&#197;&#238;&#223;&#243;&#249;&#243;&#231;"/>
+ <l:gentext key="example" text="&#208;&#225;&#241;&#220;&#228;&#229;&#233;&#227;&#236;&#225;"/>
+ <l:gentext key="figure" text="&#211;&#247;&#222;&#236;&#225;"/>
+ <l:gentext key="glossary" text="&#195;&#235;&#249;&#243;&#243;&#220;&#241;&#233;&#239;"/>
+ <l:gentext key="glosssee" text="&#196;&#229;&#223;&#244;&#229;"/>
+ <l:gentext key="glossseealso" text="&#196;&#229;&#223;&#244;&#229; &#197;&#240;&#223;&#243;&#231;&#242;"/>
+ <l:gentext key="important" text="&#211;&#231;&#236;&#225;&#237;&#244;&#233;&#234;&#252;"/>
+ <l:gentext key="index" text="&#197;&#245;&#241;&#229;&#244;&#222;&#241;&#233;&#239;"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="legalnotice" text="&#205;&#239;&#236;&#233;&#234;&#222; &#211;&#231;&#236;&#229;&#223;&#249;&#243;&#231;"/>
+ <l:gentext key="msgaud" text="&#193;&#234;&#241;&#239;&#225;&#244;&#222;&#241;&#233;&#239;"/>
+ <l:gentext key="msglevel" text="&#197;&#240;&#223;&#240;&#229;&#228;&#239;"/>
+ <l:gentext key="msgorig" text="&#208;&#231;&#227;&#222;"/>
+ <l:gentext key="note" text="&#211;&#231;&#236;&#229;&#223;&#249;&#243;&#231;"/>
+ <l:gentext key="part" text="&#204;&#221;&#241;&#239;&#242;"/>
+ <l:gentext key="preface" text="&#197;&#233;&#243;&#225;&#227;&#249;&#227;&#222;"/>
+ <l:gentext key="procedure" text="&#196;&#233;&#225;&#228;&#233;&#234;&#225;&#243;&#223;&#225;"/>
+ <l:gentext key="published" text="&#196;&#231;&#236;&#239;&#243;&#233;&#229;&#245;&#236;&#221;&#237;&#239;"/>
+ <l:gentext key="question" text="&#197;:"/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="reference" text="&#193;&#237;&#225;&#246;&#239;&#241;&#220;"/>
+ <l:gentext key="refname" text="&#188;&#237;&#239;&#236;&#225;"/>
+ <l:gentext key="refsection" text=""/>
+ <l:gentext key="refsynopsisdiv" text="&#211;&#253;&#237;&#239;&#248;&#231;"/>
+ <l:gentext key="revhistory" text="&#201;&#243;&#244;&#239;&#241;&#233;&#234;&#252; &#193;&#237;&#225;&#232;&#229;&#249;&#241;&#222;&#243;&#229;&#249;&#237;"/>
+ <l:gentext key="revision" text="&#193;&#237;&#225;&#232;&#229;&#254;&#241;&#231;&#243;&#231;"/>
+ <l:gentext key="sect1" text="Section"/>
+ <l:gentext key="sect2" text="Section"/>
+ <l:gentext key="sect3" text="Section"/>
+ <l:gentext key="sect4" text="Section"/>
+ <l:gentext key="sect5" text="Section"/>
+ <l:gentext key="section" text="&#244;&#236;&#222;&#236;&#225;"/>
+ <l:gentext key="see" text="&#196;&#229;&#223;&#244;&#229;"/>
+ <l:gentext key="seealso" text="&#196;&#229;&#223;&#244;&#229; &#197;&#240;&#223;&#243;&#231;&#242;"/>
+ <l:gentext key="set" text="&#211;&#253;&#237;&#239;&#235;&#239;"/>
+ <l:gentext key="setindex" text="&#197;&#245;&#241;&#229;&#244;&#222;&#241;&#233;&#239; &#211;&#245;&#237;&#252;&#235;&#249;&#237;"/>
+ <l:gentext key="sidebar" text="&#229;&#240;&#229;&#238;&#231;&#227;&#231;&#236;&#225;&#244;&#233;&#234;&#252; &#240;&#235;&#229;&#245;&#241;&#233;&#234;&#252; &#225;&#241;&#232;&#241;&#223;&#228;&#233;&#239;"/>
+ <l:gentext key="step" text="&#246;&#220;&#243;&#231;"/>
+ <l:gentext key="table" text="&#208;&#223;&#237;&#225;&#234;&#225;&#242;"/>
+ <l:gentext key="tip" text="&#213;&#240;&#252;&#228;&#229;&#233;&#238;&#231;"/>
+ <l:gentext key="warning" text="&#208;&#241;&#239;&#229;&#233;&#228;&#239;&#240;&#239;&#223;&#231;&#243;&#231;"/>
+ <l:gentext key="and" text="&#234;&#225;&#233;"/>
+ <l:gentext key="by" text="&#225;&#240;&#252;"/>
+ <l:gentext key="Edited" text="&#197;&#240;&#233;&#236;&#221;&#235;&#229;&#233;&#225;"/>
+ <l:gentext key="edited" text="&#197;&#240;&#233;&#236;&#221;&#235;&#229;&#233;&#225;"/>
+ <l:gentext key="Editedby" text="&#197;&#240;&#233;&#236;&#221;&#235;&#229;&#233;&#225; &#225;&#240;&#252;"/>
+ <l:gentext key="editedby" text="&#197;&#240;&#233;&#236;&#221;&#235;&#229;&#233;&#225; &#225;&#240;&#252;"/>
+ <l:gentext key="in" text="&#243;&#229;"/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="&#236;&#231;-&#245;&#240;&#225;&#241;&#234;&#244;&#252; &#243;&#244;&#239;&#233;&#247;&#229;&#223;&#239;"/>
+ <l:gentext key="notes" text="&#211;&#231;&#236;&#229;&#233;&#254;&#243;&#229;&#233;&#242;"/>
+ <l:gentext key="Notes" text="&#211;&#231;&#236;&#229;&#233;&#254;&#243;&#229;&#233;&#242;"/>
+ <l:gentext key="Pgs" text="&#211;&#235;&#228;&#242;."/>
+ <l:gentext key="pgs" text="&#211;&#235;&#228;&#242;."/>
+ <l:gentext key="Revisedby" text="Revised by: "/>
+ <l:gentext key="revisedby" text="Revised by: "/>
+ <l:gentext key="TableNotes" text="&#208;&#223;&#237;&#225;&#234;&#225;&#242; &#211;&#231;&#236;&#229;&#233;&#254;&#243;&#229;&#249;&#237;"/>
+ <l:gentext key="tablenotes" text="&#208;&#223;&#237;&#225;&#234;&#225;&#242; &#211;&#231;&#236;&#229;&#233;&#254;&#243;&#229;&#249;&#237;"/>
+ <l:gentext key="TableofContents" text="&#208;&#223;&#237;&#225;&#234;&#225;&#242; &#208;&#229;&#241;&#233;&#229;&#247;&#239;&#236;&#221;&#237;&#249;&#237;"/>
+ <l:gentext key="tableofcontents" text="&#208;&#223;&#237;&#225;&#234;&#225;&#242; &#208;&#229;&#241;&#233;&#229;&#247;&#239;&#236;&#221;&#237;&#249;&#237;"/>
+ <l:gentext key="unexpectedelementname" text="&#204;&#231; &#225;&#237;&#225;&#236;&#229;&#237;&#252;&#236;&#229;&#237;&#239; &#252;&#237;&#239;&#236;&#225; &#243;&#244;&#239;&#233;&#247;&#229;&#223;&#239;&#245;"/>
+ <l:gentext key="unsupported" text="&#236;&#231; &#245;&#240;&#239;&#243;&#244;&#231;&#241;&#233;&#230;&#252;&#236;&#229;&#237;&#239;"/>
+ <l:gentext key="xrefto" text="&#225;&#237;&#244;&#233;&#240;&#225;&#241;&#225;&#240;&#239;&#236;&#240;&#222; &#243;&#229;"/>
+ <l:gentext key="listofequations" text="&#202;&#225;&#244;&#220;&#235;&#239;&#227;&#239;&#242; &#197;&#238;&#233;&#243;&#254;&#243;&#229;&#249;&#237;"/>
+ <l:gentext key="ListofEquations" text="&#202;&#225;&#244;&#220;&#235;&#239;&#227;&#239;&#242; &#197;&#238;&#233;&#243;&#254;&#243;&#229;&#249;&#237;"/>
+ <l:gentext key="ListofExamples" text="&#202;&#225;&#244;&#220;&#235;&#239;&#227;&#239;&#242; &#208;&#225;&#241;&#225;&#228;&#229;&#233;&#227;&#236;&#220;&#244;&#249;&#237;"/>
+ <l:gentext key="listofexamples" text="&#202;&#225;&#244;&#220;&#235;&#239;&#227;&#239;&#242; &#208;&#225;&#241;&#225;&#228;&#229;&#233;&#227;&#236;&#220;&#244;&#249;&#237;"/>
+ <l:gentext key="ListofFigures" text="&#202;&#225;&#244;&#220;&#235;&#239;&#227;&#239;&#242; &#211;&#247;&#231;&#236;&#220;&#244;&#249;&#237;"/>
+ <l:gentext key="listoffigures" text="&#202;&#225;&#244;&#220;&#235;&#239;&#227;&#239;&#242; &#211;&#247;&#231;&#236;&#220;&#244;&#249;&#237;"/>
+ <l:gentext key="listoftables" text="&#202;&#225;&#244;&#220;&#235;&#239;&#227;&#239;&#242; &#208;&#233;&#237;&#220;&#234;&#249;&#237;"/>
+ <l:gentext key="ListofTables" text="&#202;&#225;&#244;&#220;&#235;&#239;&#227;&#239;&#242; &#208;&#233;&#237;&#220;&#234;&#249;&#237;"/>
+ <l:gentext key="ListofUnknown" text="&#202;&#225;&#244;&#220;&#235;&#239;&#227;&#239;&#242; &#193;&#227;&#237;&#254;&#243;&#244;&#249;&#237;"/>
+ <l:gentext key="listofunknown" text="&#202;&#225;&#244;&#220;&#235;&#239;&#227;&#239;&#242; &#193;&#227;&#237;&#254;&#243;&#244;&#249;&#237;"/>
+ <l:gentext key="nav-home" text="&#193;&#241;&#247;&#222;"/>
+ <l:gentext key="nav-next" text="&#197;&#240;&#252;&#236;&#229;&#237;&#239;"/>
+ <l:gentext key="nav-next-sibling" text="&#208;&#241;&#239;&#242; &#244;&#239; &#244;&#221;&#235;&#239;&#242;"/>
+ <l:gentext key="nav-prev" text="&#208;&#241;&#239;&#231;&#227;"/>
+ <l:gentext key="nav-prev-sibling" text="&#208;&#241;&#239;&#242; &#244;&#231;&#237; &#225;&#241;&#247;&#222;"/>
+ <l:gentext key="nav-up" text="&#208;&#220;&#237;&#249;"/>
+ <l:gentext key="sectioncalled" text="the section called"/>
+ <l:gentext key="Draft" text="Draft"/>
+ <l:gentext key="above" text="above"/>
+ <l:gentext key="below" text="below"/>
+ <l:gentext key="index symbols" text="Symbols"/>
+ <l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz"/>
+ <l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="&#208;&#225;&#241;&#220;&#241;&#244;&#231;&#236;&#225; %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="&#202;&#229;&#246;&#220;&#235;&#225;&#233;&#239; %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="&#197;&#238;&#223;&#243;&#249;&#243;&#231; %n. %t"/>
+ <l:template name="example" text="&#208;&#225;&#241;&#220;&#228;&#229;&#233;&#227;&#236;&#225; %n. %t"/>
+ <l:template name="figure" text="&#211;&#247;&#222;&#236;&#225; %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="&#204;&#221;&#241;&#239;&#242; %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="&#196;&#233;&#225;&#228;&#233;&#234;&#225;&#243;&#223;&#225;&#160;%n.&#160;%t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Production&#160;%n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="&#208;&#223;&#237;&#225;&#234;&#225;&#242; %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="&#208;&#225;&#241;&#220;&#241;&#244;&#231;&#236;&#225; %n. %t"/>
+ <l:template name="bridgehead" text="%n.&#160;%t"/>
+ <l:template name="chapter" text="&#202;&#229;&#246;&#220;&#235;&#225;&#233;&#239; %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%n. %t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="&#193;:&#160;%n"/>
+ <l:template name="appendix" text="&#208;&#225;&#241;&#220;&#241;&#244;&#231;&#236;&#225; %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="&#202;&#229;&#246;&#220;&#235;&#225;&#233;&#239; %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="&#197;&#238;&#223;&#243;&#249;&#243;&#231;&#160;%n"/>
+ <l:template name="example" text="&#208;&#225;&#241;&#220;&#228;&#229;&#233;&#227;&#236;&#225; %n. %t"/>
+ <l:template name="figure" text="&#211;&#247;&#222;&#236;&#225; %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ <l:template name="part" text="&#204;&#221;&#241;&#239;&#242; %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="&#196;&#233;&#225;&#228;&#233;&#234;&#225;&#243;&#223;&#225;&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="&#197;:&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="&#197;:&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="&#208;&#223;&#237;&#225;&#234;&#225;&#242; %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#8220;%t&#8221;"/>
+ <l:template name="sect2" text="&#8220;%t&#8221;"/>
+ <l:template name="sect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect4" text="&#8220;%t&#8221;"/>
+ <l:template name="sect5" text="&#8220;%t&#8221;"/>
+ <l:template name="section" text="&#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#212;&#236;&#222;&#236;&#225; %n"/>
+ <l:template name="sect2" text="&#212;&#236;&#222;&#236;&#225; %n"/>
+ <l:template name="sect3" text="&#212;&#236;&#222;&#236;&#225; %n"/>
+ <l:template name="sect4" text="&#212;&#236;&#222;&#236;&#225; %n"/>
+ <l:template name="sect5" text="&#212;&#236;&#222;&#236;&#225; %n"/>
+ <l:template name="section" text="&#212;&#236;&#222;&#236;&#225; %n"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" &#234;&#225;&#233; "/>
+ <l:template name="seplast" text=", &#234;&#225;&#233; "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="&#196;&#229;&#223;&#244;&#229; "/>
+ <l:template name="seealso" text="&#196;&#229;&#223;&#244;&#229; &#197;&#240;&#223;&#243;&#231;&#242; "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="&#193;&#234;&#241;&#239;&#225;&#244;&#222;&#241;&#233;&#239;: "/>
+ <l:template name="MsgLevel" text="&#197;&#240;&#223;&#240;&#229;&#228;&#239;: "/>
+ <l:template name="MsgOrig" text="&#208;&#231;&#227;&#222;: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/en.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/en.xml
new file mode 100644
index 0000000..f46201d
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/en.xml
@@ -0,0 +1,481 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="en" english-language-name="English">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="Abstract"/>
+ <l:gentext key="abstract" text="Abstract"/>
+ <l:gentext key="Answer" text="A:"/>
+ <l:gentext key="answer" text="A:"/>
+ <l:gentext key="Appendix" text="Appendix"/>
+ <l:gentext key="appendix" text="Appendix"/>
+ <l:gentext key="Article" text="Article"/>
+ <l:gentext key="article" text="Article"/>
+ <l:gentext key="Bibliography" text="Bibliography"/>
+ <l:gentext key="bibliography" text="Bibliography"/>
+ <l:gentext key="Book" text="Book"/>
+ <l:gentext key="book" text="Book"/>
+ <l:gentext key="CAUTION" text="CAUTION"/>
+ <l:gentext key="Caution" text="Caution"/>
+ <l:gentext key="caution" text="Caution"/>
+ <l:gentext key="Chapter" text="Chapter"/>
+ <l:gentext key="chapter" text="Chapter"/>
+ <l:gentext key="Colophon" text="Colophon"/>
+ <l:gentext key="colophon" text="Colophon"/>
+ <l:gentext key="Copyright" text="Copyright"/>
+ <l:gentext key="copyright" text="Copyright"/>
+ <l:gentext key="Dedication" text="Dedication"/>
+ <l:gentext key="dedication" text="Dedication"/>
+ <l:gentext key="Edition" text="Edition"/>
+ <l:gentext key="edition" text="Edition"/>
+ <l:gentext key="Equation" text="Equation"/>
+ <l:gentext key="equation" text="Equation"/>
+ <l:gentext key="Example" text="Example"/>
+ <l:gentext key="example" text="Example"/>
+ <l:gentext key="Figure" text="Figure"/>
+ <l:gentext key="figure" text="Figure"/>
+ <l:gentext key="Glossary" text="Glossary"/>
+ <l:gentext key="glossary" text="Glossary"/>
+ <l:gentext key="GlossSee" text="See"/>
+ <l:gentext key="glosssee" text="See"/>
+ <l:gentext key="GlossSeeAlso" text="See Also"/>
+ <l:gentext key="glossseealso" text="See Also"/>
+ <l:gentext key="IMPORTANT" text="IMPORTANT"/>
+ <l:gentext key="important" text="Important"/>
+ <l:gentext key="Important" text="Important"/>
+ <l:gentext key="Index" text="Index"/>
+ <l:gentext key="index" text="Index"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text="Legal Notice"/>
+ <l:gentext key="legalnotice" text="Legal Notice"/>
+ <l:gentext key="MsgAud" text="Audience"/>
+ <l:gentext key="msgaud" text="Audience"/>
+ <l:gentext key="MsgLevel" text="Level"/>
+ <l:gentext key="msglevel" text="Level"/>
+ <l:gentext key="MsgOrig" text="Origin"/>
+ <l:gentext key="msgorig" text="Origin"/>
+ <l:gentext key="NOTE" text="NOTE"/>
+ <l:gentext key="Note" text="Note"/>
+ <l:gentext key="note" text="Note"/>
+ <l:gentext key="Part" text="Part"/>
+ <l:gentext key="part" text="Part"/>
+ <l:gentext key="Preface" text="Preface"/>
+ <l:gentext key="preface" text="Preface"/>
+ <l:gentext key="Procedure" text="Procedure"/>
+ <l:gentext key="procedure" text="Procedure"/>
+ <l:gentext key="ProductionSet" text="Production"/>
+ <l:gentext key="Published" text="Published"/>
+ <l:gentext key="published" text="Published"/>
+ <l:gentext key="Question" text="Q:"/>
+ <l:gentext key="question" text="Q:"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="Reference"/>
+ <l:gentext key="reference" text="Reference"/>
+ <l:gentext key="RefName" text="Name"/>
+ <l:gentext key="refname" text="Name"/>
+ <l:gentext key="RefSection" text=""/>
+ <l:gentext key="refsection" text=""/>
+ <l:gentext key="RefSynopsisDiv" text="Synopsis"/>
+ <l:gentext key="refsynopsisdiv" text="Synopsis"/>
+ <l:gentext key="RevHistory" text="Revision History"/>
+ <l:gentext key="revhistory" text="Revision History"/>
+ <l:gentext key="revision" text="Revision"/>
+ <l:gentext key="Revision" text="Revision"/>
+ <l:gentext key="sect1" text="Section"/>
+ <l:gentext key="sect2" text="Section"/>
+ <l:gentext key="sect3" text="Section"/>
+ <l:gentext key="sect4" text="Section"/>
+ <l:gentext key="sect5" text="Section"/>
+ <l:gentext key="section" text="Section"/>
+ <l:gentext key="Section" text="Section"/>
+ <l:gentext key="see" text="see"/>
+ <l:gentext key="seealso" text="see also"/>
+ <l:gentext key="set" text="Set"/>
+ <l:gentext key="Set" text="Set"/>
+ <l:gentext key="setindex" text="Set Index"/>
+ <l:gentext key="SetIndex" text="Set Index"/>
+ <l:gentext key="Sidebar" text=""/>
+ <l:gentext key="sidebar" text="sidebar"/>
+ <l:gentext key="step" text="step"/>
+ <l:gentext key="Step" text="Step"/>
+ <l:gentext key="Table" text="Table"/>
+ <l:gentext key="table" text="Table"/>
+ <l:gentext key="tip" text="Tip"/>
+ <l:gentext key="TIP" text="TIP"/>
+ <l:gentext key="Tip" text="Tip"/>
+ <l:gentext key="Warning" text="Warning"/>
+ <l:gentext key="warning" text="Warning"/>
+ <l:gentext key="WARNING" text="WARNING"/>
+ <l:gentext key="and" text="and"/>
+ <l:gentext key="by" text="by"/>
+ <l:gentext key="Edited" text="Edited"/>
+ <l:gentext key="edited" text="Edited"/>
+ <l:gentext key="Editedby" text="Edited by"/>
+ <l:gentext key="editedby" text="Edited by"/>
+ <l:gentext key="in" text="in"/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="non-existant element"/>
+ <l:gentext key="notes" text="Notes"/>
+ <l:gentext key="Notes" text="Notes"/>
+ <l:gentext key="Pgs" text="Pgs."/>
+ <l:gentext key="pgs" text="Pgs."/>
+ <l:gentext key="Revisedby" text="Revised by: "/>
+ <l:gentext key="revisedby" text="Revised by: "/>
+ <l:gentext key="TableNotes" text="Notes"/>
+ <l:gentext key="tablenotes" text="Notes"/>
+ <l:gentext key="TableofContents" text="Table of Contents"/>
+ <l:gentext key="tableofcontents" text="Table of Contents"/>
+ <l:gentext key="unexpectedelementname" text="Unexpected element name"/>
+ <l:gentext key="unsupported" text="unsupported"/>
+ <l:gentext key="xrefto" text="xref to"/>
+ <l:gentext key="listofequations" text="List of Equations"/>
+ <l:gentext key="ListofEquations" text="List of Equations"/>
+ <l:gentext key="ListofExamples" text="List of Examples"/>
+ <l:gentext key="listofexamples" text="List of Examples"/>
+ <l:gentext key="ListofFigures" text="List of Figures"/>
+ <l:gentext key="listoffigures" text="List of Figures"/>
+ <l:gentext key="ListofProcedures" text="List of Procedures"/>
+ <l:gentext key="listofprocedures" text="List of Procedures"/>
+ <l:gentext key="listoftables" text="List of Tables"/>
+ <l:gentext key="ListofTables" text="List of Tables"/>
+ <l:gentext key="ListofUnknown" text="List of Unknown"/>
+ <l:gentext key="listofunknown" text="List of Unknown"/>
+ <l:gentext key="nav-home" text="Home"/>
+ <l:gentext key="nav-next" text="Next"/>
+ <l:gentext key="nav-next-sibling" text="Fast Forward"/>
+ <l:gentext key="nav-prev" text="Prev"/>
+ <l:gentext key="nav-prev-sibling" text="Fast Backward"/>
+ <l:gentext key="nav-up" text="Up"/>
+ <l:gentext key="nav-toc" text="ToC"/>
+ <l:gentext key="Draft" text="Draft"/>
+ <l:gentext key="above" text="above"/>
+ <l:gentext key="below" text="below"/>
+ <l:gentext key="sectioncalled" text="the section called"/>
+ <l:gentext key="index symbols" text="Symbols"/>
+ <l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz"/>
+ <l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="reference" text="Reference (empty)"/>
+ <l:template name="refsynopsisdiv" text=" "/>
+ <l:template name="refsection" text="Refsection (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="Appendix&#160;%n.&#160;%t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Chapter&#160;%n.&#160;%t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Equation&#160;%n.&#160;%t"/>
+ <l:template name="example" text="Example&#160;%n.&#160;%t"/>
+ <l:template name="figure" text="Figure&#160;%n.&#160;%t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="glossentry" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Part&#160;%n.&#160;%t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="Procedure&#160;%n.&#160;%t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Production&#160;%n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="Table&#160;%n.&#160;%t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text=""/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="article/appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="Appendix&#160;%n.&#160;%t"/>
+ <l:template name="article/appendix" text="%n.&#160;%t"/>
+ <l:template name="bridgehead" text="%n.&#160;%t"/>
+ <l:template name="chapter" text="Chapter&#160;%n.&#160;%t"/>
+ <l:template name="sect1" text="%n.&#160;%t"/>
+ <l:template name="sect2" text="%n.&#160;%t"/>
+ <l:template name="sect3" text="%n.&#160;%t"/>
+ <l:template name="sect4" text="%n.&#160;%t"/>
+ <l:template name="sect5" text="%n.&#160;%t"/>
+ <l:template name="section" text="%n.&#160;%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="A:&#160;%n"/>
+ <l:template name="appendix" text="Appendix&#160;%n"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Chapter&#160;%n"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Equation&#160;%n"/>
+ <l:template name="example" text="Example&#160;%n"/>
+ <l:template name="figure" style="title" text="Figure&#160;%n.&#160;%t"/>
+ <l:template name="figure" text="Figure&#160;%n"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Part&#160;%n"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="Procedure&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="Q:&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="Q:&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="Table&#160;%n"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="refsection" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="sect1" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="sect2" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="sect3" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="sect4" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="sect5" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="section" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="the section called &#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="Section&#160;%n"/>
+ <l:template name="refsection" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="sect1" text="Section&#160;%n"/>
+ <l:template name="sect2" text="Section&#160;%n"/>
+ <l:template name="sect3" text="Section&#160;%n"/>
+ <l:template name="sect4" text="Section&#160;%n"/>
+ <l:template name="sect5" text="Section&#160;%n"/>
+ <l:template name="section" text="Section&#160;%n"/>
+ <l:template name="simplesect" text="the section called &#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="xref-number-and-title">
+ <l:template name="bridgehead" text="Section&#160;%n, &#8220;%t&#8221;"/>
+ <l:template name="refsection" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="sect1" text="Section&#160;%n, &#8220;%t&#8221;"/>
+ <l:template name="sect2" text="Section&#160;%n, &#8220;%t&#8221;"/>
+ <l:template name="sect3" text="Section&#160;%n, &#8220;%t&#8221;"/>
+ <l:template name="sect4" text="Section&#160;%n, &#8220;%t&#8221;"/>
+ <l:template name="sect5" text="Section&#160;%n, &#8220;%t&#8221;"/>
+ <l:template name="section" text="Section&#160;%n, &#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="chapter" text="Chapter&#160;%n, %t"/>
+ <l:template name="appendix" text="Appendix&#160;%n, %t"/>
+ <l:template name="example" text="Example&#160;%n, %t"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" and "/>
+ <l:template name="seplast" text=", and "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="See "/>
+ <l:template name="seealso" text="See Also "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="Audience: "/>
+ <l:template name="MsgLevel" text="Level: "/>
+ <l:template name="MsgOrig" text="Origin: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/es.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/es.xml
new file mode 100644
index 0000000..f6ef734
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/es.xml
@@ -0,0 +1,459 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="es" english-language-name="Spanish">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="Resumen"/>
+ <l:gentext key="abstract" text="resumen"/>
+ <l:gentext key="Answer" text="R:"/>
+ <l:gentext key="answer" text="r:"/>
+ <l:gentext key="Appendix" text="Ap&#233;ndice"/>
+ <l:gentext key="appendix" text="ap&#233;ndice"/>
+ <l:gentext key="Article" text="Art&#237;culo"/>
+ <l:gentext key="article" text="art&#237;culo"/>
+ <l:gentext key="Bibliography" text="Bibliograf&#237;a"/>
+ <l:gentext key="bibliography" text="bibliograf&#237;a"/>
+ <l:gentext key="Book" text="Libro"/>
+ <l:gentext key="book" text="libro"/>
+ <l:gentext key="CAUTION" text="ATENCI&#211;N"/>
+ <l:gentext key="Caution" text="Atenci&#243;n"/>
+ <l:gentext key="caution" text="atenci&#243;n"/>
+ <l:gentext key="Chapter" text="Cap&#237;tulo"/>
+ <l:gentext key="chapter" text="cap&#237;tulo"/>
+ <l:gentext key="Colophon" text="Colof&#243;n"/>
+ <l:gentext key="colophon" text="colof&#243;n"/>
+ <l:gentext key="Copyright" text="Copyright"/>
+ <l:gentext key="copyright" text="copyright"/>
+ <l:gentext key="Dedication" text="Dedicatoria"/>
+ <l:gentext key="dedication" text="dedicatoria"/>
+ <l:gentext key="Edition" text="Edici&#243;n"/>
+ <l:gentext key="edition" text="edici&#243;n"/>
+ <l:gentext key="Equation" text="Ecuaci&#243;n"/>
+ <l:gentext key="equation" text="ecuaci&#243;n"/>
+ <l:gentext key="Example" text="Ejemplo"/>
+ <l:gentext key="example" text="ejemplo"/>
+ <l:gentext key="Figure" text="Figura"/>
+ <l:gentext key="figure" text="figura"/>
+ <l:gentext key="Glossary" text="Glosario"/>
+ <l:gentext key="glossary" text="glosario"/>
+ <l:gentext key="GlossSee" text="Ver"/>
+ <l:gentext key="glosssee" text="ver"/>
+ <l:gentext key="GlossSeeAlso" text="Ver tambi&#233;n"/>
+ <l:gentext key="glossseealso" text="ver tambi&#233;n"/>
+ <l:gentext key="IMPORTANT" text="IMPORTANTE"/>
+ <l:gentext key="Important" text="Importante"/>
+ <l:gentext key="important" text="importante"/>
+ <l:gentext key="Index" text="&#205;ndice"/>
+ <l:gentext key="index" text="&#237;ndice"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="isbn"/>
+ <l:gentext key="LegalNotice" text="Aviso Legal"/>
+ <l:gentext key="legalnotice" text="aviso legal"/>
+ <l:gentext key="MsgAud" text="Audiencia"/>
+ <l:gentext key="msgaud" text="audiencia"/>
+ <l:gentext key="MsgLevel" text="Nivel"/>
+ <l:gentext key="msglevel" text="nivel"/>
+ <l:gentext key="MsgOrig" text="Origen"/>
+ <l:gentext key="msgorig" text="origen"/>
+ <l:gentext key="NOTE" text="NOTA"/>
+ <l:gentext key="Note" text="Nota"/>
+ <l:gentext key="note" text="nota"/>
+ <l:gentext key="Part" text="Parte"/>
+ <l:gentext key="part" text="parte"/>
+ <l:gentext key="Preface" text="Prefacio"/>
+ <l:gentext key="preface" text="prefacio"/>
+ <l:gentext key="Procedure" text="Procedimiento"/>
+ <l:gentext key="procedure" text="procedimiento"/>
+ <l:gentext key="ProductionSet" text="Producci&#243;n"/>
+ <l:gentext key="PubDate" text="Fecha de publicaci&#243;n"/>
+ <l:gentext key="pubdate" text="fecha de publicaci&#243;n"/>
+ <l:gentext key="Published" text="Publicado"/>
+ <l:gentext key="published" text="publicado"/>
+ <l:gentext key="Question" text="P:"/>
+ <l:gentext key="question" text="p:"/>
+ <l:gentext key="RefEntry" text="Entrada de referencia"/>
+ <l:gentext key="refentry" text="entrada de referencia"/>
+ <l:gentext key="Reference" text="Referencia"/>
+ <l:gentext key="reference" text="referencia"/>
+ <l:gentext key="RefName" text="Nombre de referencia"/>
+ <l:gentext key="refname" text="nombre de referencia"/>
+ <l:gentext key="RefSection" text="Secci&#243;n de referencia"/>
+ <l:gentext key="refsection" text="secci&#243;n de referencia"/>
+ <l:gentext key="RefSynopsisDiv" text="Sinopsis"/>
+ <l:gentext key="refsynopsisdiv" text="sinopsis"/>
+ <l:gentext key="RevHistory" text="Historial de revisiones"/>
+ <l:gentext key="revhistory" text="Historial de revisiones"/>
+ <l:gentext key="Revision" text="Revisi&#243;n"/>
+ <l:gentext key="revision" text="revisi&#243;n"/>
+ <l:gentext key="sect1" text="Secci&#243;n"/>
+ <l:gentext key="sect2" text="Secci&#243;n"/>
+ <l:gentext key="sect3" text="Secci&#243;n"/>
+ <l:gentext key="sect4" text="Secci&#243;n"/>
+ <l:gentext key="sect5" text="Secci&#243;n"/>
+ <l:gentext key="Section" text="Secci&#243;n"/>
+ <l:gentext key="section" text="secci&#243;n"/>
+ <l:gentext key="See" text="Ver"/>
+ <l:gentext key="see" text="ver"/>
+ <l:gentext key="SeeAlso" text="Ver Tambi&#233;n"/>
+ <l:gentext key="Seealso" text="Ver tambi&#233;n"/>
+ <l:gentext key="seealso" text="ver tambi&#233;n"/>
+ <l:gentext key="Set" text="Conjunto"/>
+ <l:gentext key="set" text="conjunto"/>
+ <l:gentext key="SetIndex" text="&#205;ndice del Conjunto"/>
+ <l:gentext key="setindex" text="&#237;ndice del conjunto"/>
+ <l:gentext key="Sidebar" text="Barra lateral"/>
+ <l:gentext key="sidebar" text="barra lateral"/>
+ <l:gentext key="Step" text="Paso"/>
+ <l:gentext key="step" text="paso"/>
+ <l:gentext key="Table" text="Tabla"/>
+ <l:gentext key="table" text="tabla"/>
+ <l:gentext key="TIP" text="SUGERENCIA"/>
+ <l:gentext key="Tip" text="Sugerencia"/>
+ <l:gentext key="tip" text="sugerencia"/>
+ <l:gentext key="WARNING" text="AVISO"/>
+ <l:gentext key="Warning" text="Aviso"/>
+ <l:gentext key="warning" text="aviso"/>
+ <l:gentext key="and" text="y"/>
+ <l:gentext key="by" text="por"/>
+ <l:gentext key="Edited" text="Editado"/>
+ <l:gentext key="edited" text="editado"/>
+ <l:gentext key="Editedby" text="Editado por"/>
+ <l:gentext key="editedby" text="editado por"/>
+ <l:gentext key="in" text="en"/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="elemento inexistente"/>
+ <l:gentext key="notes" text="notas"/>
+ <l:gentext key="Notes" text="Notas"/>
+ <l:gentext key="Pgs" text="Pags."/>
+ <l:gentext key="pgs" text="pags."/>
+ <l:gentext key="Revisedby" text="Revisado por: "/>
+ <l:gentext key="revisedby" text="revisado por: "/>
+ <l:gentext key="TableNotes" text="Notas de Tabla"/>
+ <l:gentext key="tablenotes" text="notas de tabla"/>
+ <l:gentext key="TableofContents" text="Tabla de contenidos"/>
+ <l:gentext key="tableofcontents" text="tabla de contenidos"/>
+ <l:gentext key="unexpectedelementname" text="nombre de elemento inesperado"/>
+ <l:gentext key="unsupported" text="no soportado"/>
+ <l:gentext key="xrefto" text="referencia a"/>
+ <l:gentext key="listofequations" text="lista de ecuaciones"/>
+ <l:gentext key="ListofEquations" text="Lista de ecuaciones"/>
+ <l:gentext key="ListofExamples" text="Lista de ejemplos"/>
+ <l:gentext key="listofexamples" text="lista de ejemplos"/>
+ <l:gentext key="ListofFigures" text="Lista de figuras"/>
+ <l:gentext key="listoffigures" text="lista de figuras"/>
+ <l:gentext key="listoftables" text="lista de tablas"/>
+ <l:gentext key="ListofTables" text="Lista de tablas"/>
+ <l:gentext key="ListofUnknown" text="Lista de desconocido"/>
+ <l:gentext key="listofunknown" text="lista de desconocido"/>
+ <l:gentext key="nav-home" text="Inicio"/>
+ <l:gentext key="nav-next" text="Siguiente"/>
+ <l:gentext key="nav-next-sibling" text="Avanzar"/>
+ <l:gentext key="nav-prev" text="Anterior"/>
+ <l:gentext key="nav-prev-sibling" text="Retroceder"/>
+ <l:gentext key="nav-up" text="Subir"/>
+ <l:gentext key="index symbols" text="S&#237;mbolos"/>
+ <l:gentext key="Draft" text="Borrador"/>
+ <l:gentext key="above" text="arriba"/>
+ <l:gentext key="below" text="abajo"/>
+ <l:gentext key="sectioncalled" text="secci&#243;n llamada"/>
+ <l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz&#225;&#233;&#237;&#243;&#250;&#241;"/>
+ <l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ&#193;&#201;&#205;&#211;&#218;&#209;"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ <l:template name="reference" text="Reference (empty)"/>
+ <l:template name="refsection" text="Refsection (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="Ap&#233;ndice %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Cap&#237;tulo %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Ecuaci&#243;n %n. %t"/>
+ <l:template name="example" text="Ejemplo %n. %t"/>
+ <l:template name="figure" text="Figura %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Parte %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="Procedimiento %n. %t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Producci&#243;n %n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="Tabla %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="Ap&#233;ndice %n. %t"/>
+ <l:template name="bridgehead" text="%n. %t"/>
+ <l:template name="chapter" text="Cap&#237;tulo %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="R:&#160;%n"/>
+ <l:template name="appendix" text="Ap&#233;ndice %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Cap&#237;tulo %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Ecuaci&#243;n&#160;%n"/>
+ <l:template name="example" text="Ejemplo %n. %t"/>
+ <l:template name="figure" text="Figura %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Parte %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="Procedimiento&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="P:&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="P:&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="Tabla %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#8220;%t&#8221;"/>
+ <l:template name="sect2" text="&#8220;%t&#8221;"/>
+ <l:template name="sect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect4" text="&#8220;%t&#8221;"/>
+ <l:template name="sect5" text="&#8220;%t&#8221;"/>
+ <l:template name="section" text="&#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="Secci&#243;n %n"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="Secci&#243;n %n"/>
+ <l:template name="sect2" text="Secci&#243;n %n"/>
+ <l:template name="sect3" text="Secci&#243;n %n"/>
+ <l:template name="sect4" text="Secci&#243;n %n"/>
+ <l:template name="sect5" text="Secci&#243;n %n"/>
+ <l:template name="section" text="Secci&#243;n %n"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" y "/>
+ <l:template name="seplast" text=", y "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="Ver "/>
+ <l:template name="seealso" text="Ver tambi&#233;n "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="Audiencia: "/>
+ <l:template name="MsgLevel" text="Nivel: "/>
+ <l:template name="MsgOrig" text="Origen: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/et.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/et.xml
new file mode 100644
index 0000000..f2ead71
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/et.xml
@@ -0,0 +1,454 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="et" english-language-name="Estonian">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="&#220;levaade"/>
+ <l:gentext key="abstract" text="&#220;levaade"/>
+ <l:gentext key="Answer" text="V:"/>
+ <l:gentext key="answer" text="V:"/>
+ <l:gentext key="Appendix" text="Lisa"/>
+ <l:gentext key="appendix" text="lisa"/>
+ <l:gentext key="Article" text="Artikkel"/>
+ <l:gentext key="article" text="Artikkel"/>
+ <l:gentext key="Bibliography" text="Bibliograafia"/>
+ <l:gentext key="bibliography" text="Bibliograafia"/>
+ <l:gentext key="Book" text="Raamat"/>
+ <l:gentext key="book" text="Raamat"/>
+ <l:gentext key="CAUTION" text="ETTEVAATUST"/>
+ <l:gentext key="Caution" text="Ettevaatust"/>
+ <l:gentext key="caution" text="Ettevaatust"/>
+ <l:gentext key="Chapter" text="Peat&#252;kk"/>
+ <l:gentext key="chapter" text="peat&#252;kk"/>
+ <l:gentext key="Colophon" text="L&#245;pum&#228;rgis"/>
+ <l:gentext key="colophon" text="L&#245;pum&#228;rgis"/>
+ <l:gentext key="Copyright" text="Autori&#245;igus"/>
+ <l:gentext key="copyright" text="Autori&#245;igus"/>
+ <l:gentext key="Dedication" text="P&#252;hendus"/>
+ <l:gentext key="dedication" text="P&#252;hendus"/>
+ <l:gentext key="Edition" text="V&#228;ljaanne"/>
+ <l:gentext key="edition" text="V&#228;ljaanne"/>
+ <l:gentext key="Equation" text="Valem"/>
+ <l:gentext key="equation" text="Valem"/>
+ <l:gentext key="Example" text="N&#228;ide"/>
+ <l:gentext key="example" text="N&#228;ide"/>
+ <l:gentext key="Figure" text="Joonis"/>
+ <l:gentext key="figure" text="Joonis"/>
+ <l:gentext key="Glossary" text="S&#245;nastik"/>
+ <l:gentext key="glossary" text="S&#245;nastik"/>
+ <l:gentext key="GlossSee" text="Vt."/>
+ <l:gentext key="glosssee" text="Vt."/>
+ <l:gentext key="GlossSeeAlso" text="Vt. ka"/>
+ <l:gentext key="glossseealso" text="Vt. ka"/>
+ <l:gentext key="IMPORTANT" text="OLULINE"/>
+ <l:gentext key="Important" text="Oluline"/>
+ <l:gentext key="important" text="Oluline"/>
+ <l:gentext key="Index" text="Aineregister"/>
+ <l:gentext key="index" text="Aineregister"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text="Autori&#245;iguse m&#228;rge"/>
+ <l:gentext key="legalnotice" text="Autori&#245;iguse m&#228;rge"/>
+ <l:gentext key="MsgAud" text="Auditoorium"/>
+ <l:gentext key="msgaud" text="Auditoorium"/>
+ <l:gentext key="MsgLevel" text="Tase"/>
+ <l:gentext key="msglevel" text="Tase"/>
+ <l:gentext key="MsgOrig" text="Algallikas"/>
+ <l:gentext key="msgorig" text="Algallikas"/>
+ <l:gentext key="NOTE" text="M&#196;RKUS"/>
+ <l:gentext key="Note" text="M&#228;rkus"/>
+ <l:gentext key="note" text="M&#228;rkus"/>
+ <l:gentext key="Part" text="Osa"/>
+ <l:gentext key="part" text="Osa"/>
+ <l:gentext key="Preface" text="Eess&#245;na"/>
+ <l:gentext key="preface" text="Eess&#245;na"/>
+ <l:gentext key="Procedure" text="Protseduur"/>
+ <l:gentext key="procedure" text="Protseduur"/>
+ <l:gentext key="ProductionSet" text="Production"/>
+ <l:gentext key="Published" text="Avaldatud"/>
+ <l:gentext key="published" text="Avaldatud"/>
+ <l:gentext key="Question" text="K:"/>
+ <l:gentext key="question" text="K:"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="Viide"/>
+ <l:gentext key="reference" text="Viide"/>
+ <l:gentext key="RefName" text="Nimi"/>
+ <l:gentext key="refname" text="Nimi"/>
+ <l:gentext key="RefSection" text="L&#245;ik"/>
+ <l:gentext key="refsection" text="L&#245;ik"/>
+ <l:gentext key="RefSynopsisDiv" text="S&#252;nopsis"/>
+ <l:gentext key="refsynopsisdiv" text="S&#252;nopsis"/>
+ <l:gentext key="RevHistory" text="Vigade paranduste ajalugu"/>
+ <l:gentext key="revhistory" text="Vigade paranduste ajalugu"/>
+ <l:gentext key="Revision" text="Vigade parandus"/>
+ <l:gentext key="revision" text="Vigade parandus"/>
+ <l:gentext key="sect1" text="Section"/>
+ <l:gentext key="sect2" text="Section"/>
+ <l:gentext key="sect3" text="Section"/>
+ <l:gentext key="sect4" text="Section"/>
+ <l:gentext key="sect5" text="Section"/>
+ <l:gentext key="section" text="l&#245;ik"/>
+ <l:gentext key="Section" text="Sektsioon"/>
+ <l:gentext key="See" text="Vt."/>
+ <l:gentext key="see" text="Vt."/>
+ <l:gentext key="SeeAlso" text="Vt. ka"/>
+ <l:gentext key="Seealso" text="Vt. ka"/>
+ <l:gentext key="seealso" text="Vt. ka"/>
+ <l:gentext key="Set" text="Sea"/>
+ <l:gentext key="set" text="Sea"/>
+ <l:gentext key="SetIndex" text="Sea indeks"/>
+ <l:gentext key="setindex" text="Sea indeks"/>
+ <l:gentext key="Sidebar" text=""/>
+ <l:gentext key="sidebar" text="k&#252;lgriba"/>
+ <l:gentext key="Step" text="Samm"/>
+ <l:gentext key="step" text="samm"/>
+ <l:gentext key="Table" text="Tabel"/>
+ <l:gentext key="table" text="Tabel"/>
+ <l:gentext key="TIP" text="VIHJE"/>
+ <l:gentext key="Tip" text="Vihje"/>
+ <l:gentext key="tip" text="Vihje"/>
+ <l:gentext key="WARNING" text="HOIATUS"/>
+ <l:gentext key="Warning" text="Hoiatus"/>
+ <l:gentext key="warning" text="Hoiatus"/>
+ <l:gentext key="and" text="ja"/>
+ <l:gentext key="by" text=""/>
+ <l:gentext key="Edited" text="Redaktsioon"/>
+ <l:gentext key="edited" text="Redaktsioon"/>
+ <l:gentext key="Editedby" text="Redaktsiooni autor(id)"/>
+ <l:gentext key="editedby" text="Redaktsiooni autor(id)"/>
+ <l:gentext key="in" text=""/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="mitte eksisteeriv element"/>
+ <l:gentext key="Notes" text="M&#228;rkused"/>
+ <l:gentext key="notes" text="M&#228;rkused"/>
+ <l:gentext key="Pgs" text="Lk."/>
+ <l:gentext key="pgs" text="Lk."/>
+ <l:gentext key="Revisedby" text="&#220;le vaadanud: "/>
+ <l:gentext key="revisedby" text="&#220;le vaadanud: "/>
+ <l:gentext key="TableNotes" text="M&#228;rkused"/>
+ <l:gentext key="tablenotes" text="M&#228;rkused"/>
+ <l:gentext key="TableofContents" text="Sisukord"/>
+ <l:gentext key="tableofcontents" text="Sisukord"/>
+ <l:gentext key="unexpectedelementname" text="Ootamatu elemendi nimi"/>
+ <l:gentext key="unsupported" text="toetuseta"/>
+ <l:gentext key="xrefto" text="viide"/>
+ <l:gentext key="listofequations" text="Valemite nimekiri"/>
+ <l:gentext key="ListofEquations" text="Valemite nimekiri"/>
+ <l:gentext key="ListofExamples" text="N&#228;idete nimekiri"/>
+ <l:gentext key="listofexamples" text="N&#228;idete nimekiri"/>
+ <l:gentext key="ListofFigures" text="Jooniste nimekiri"/>
+ <l:gentext key="listoffigures" text="Jooniste nimekiri"/>
+ <l:gentext key="listoftables" text="Tabelite nimekiri"/>
+ <l:gentext key="ListofTables" text="Tabelite nimekiri"/>
+ <l:gentext key="ListofUnknown" text="Tundmatute nimekiri"/>
+ <l:gentext key="listofunknown" text="Tundmatute nimekiri"/>
+ <l:gentext key="nav-home" text="Koju"/>
+ <l:gentext key="nav-next" text="J&#228;rgmine"/>
+ <l:gentext key="nav-next-sibling" text="Kiiresti edasi"/>
+ <l:gentext key="nav-prev" text="Eelmine"/>
+ <l:gentext key="nav-prev-sibling" text="Kiiresti tagasi"/>
+ <l:gentext key="nav-up" text="&#220;les"/>
+ <l:gentext key="sectioncalled" text="the section called"/>
+ <l:gentext key="Draft" text="Draft"/>
+ <l:gentext key="above" text="above"/>
+ <l:gentext key="below" text="below"/>
+ <l:gentext key="index symbols" text="Symbols"/>
+ <l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz"/>
+ <l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="Lisa %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Peat&#252;kk %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Valem %n. %t"/>
+ <l:template name="example" text="N&#228;ide %n. %t"/>
+ <l:template name="figure" text="Joonis %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Osa %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="Protseduur&#160;%n.&#160;%t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Production&#160;%n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="Tabel %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="Lisa %n. %t"/>
+ <l:template name="bridgehead" text="%n. %t"/>
+ <l:template name="chapter" text="Peat&#252;kk %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%n. %t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="V:&#160;%n"/>
+ <l:template name="appendix" text="Lisa %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Peat&#252;kk %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Valem&#160;%n"/>
+ <l:template name="example" text="N&#228;ide %n. %t"/>
+ <l:template name="figure" text="Joonis %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ <l:template name="part" text="Osa %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="Protseduur&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="K:&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="K:&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="Tabel %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#8220;%t&#8221;"/>
+ <l:template name="sect2" text="&#8220;%t&#8221;"/>
+ <l:template name="sect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect4" text="&#8220;%t&#8221;"/>
+ <l:template name="sect5" text="&#8220;%t&#8221;"/>
+ <l:template name="section" text="&#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="Sektsioon %n"/>
+ <l:template name="sect2" text="Sektsioon %n"/>
+ <l:template name="sect3" text="Sektsioon %n"/>
+ <l:template name="sect4" text="Sektsioon %n"/>
+ <l:template name="sect5" text="Sektsioon %n"/>
+ <l:template name="section" text="Sektsioon %n"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" ja "/>
+ <l:template name="seplast" text=", ja "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="Vt. "/>
+ <l:template name="seealso" text="Vt. ka "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="Auditoorium: "/>
+ <l:template name="MsgLevel" text="Tase: "/>
+ <l:template name="MsgOrig" text="Algallikas: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/eu.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/eu.xml
new file mode 100644
index 0000000..7bb2ba5
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/eu.xml
@@ -0,0 +1,455 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="eu" english-language-name="Basque">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="Laburpena"/>
+ <l:gentext key="abstract" text="Laburpena"/>
+ <l:gentext key="Answer" text="E:"/>
+ <l:gentext key="answer" text="E:"/>
+ <l:gentext key="Appendix" text="Eranskina"/>
+ <l:gentext key="appendix" text="eranskina"/>
+ <l:gentext key="Article" text="Artikulua"/>
+ <l:gentext key="article" text="Artikulua"/>
+ <l:gentext key="Bibliography" text="Bibliografia"/>
+ <l:gentext key="bibliography" text="Bibliografia"/>
+ <l:gentext key="Book" text="Liburua"/>
+ <l:gentext key="book" text="Liburua"/>
+ <l:gentext key="CAUTION" text="KONTUZ"/>
+ <l:gentext key="Caution" text="Kontuz"/>
+ <l:gentext key="caution" text="Kontuz"/>
+ <l:gentext key="Chapter" text="Atala"/>
+ <l:gentext key="chapter" text="atala"/>
+ <l:gentext key="Colophon" text="Azken ohar"/>
+ <l:gentext key="colophon" text="Azken ohar"/>
+ <l:gentext key="Copyright" text="Copyright"/>
+ <l:gentext key="copyright" text="Copyright"/>
+ <l:gentext key="Dedication" text="Eskaintza"/>
+ <l:gentext key="dedication" text="Eskaintza"/>
+ <l:gentext key="Edition" text="Edizioa"/>
+ <l:gentext key="edition" text="Edizioa"/>
+ <l:gentext key="Equation" text="Ekuazioa"/>
+ <l:gentext key="equation" text="Ekuazioa"/>
+ <l:gentext key="Example" text="Adibidea"/>
+ <l:gentext key="example" text="Adibidea"/>
+ <l:gentext key="Figure" text="Irudia"/>
+ <l:gentext key="figure" text="Irudia"/>
+ <l:gentext key="Glossary" text="Glosarioa"/>
+ <l:gentext key="glossary" text="Glosarioa"/>
+ <l:gentext key="GlossSee" text="Ikus"/>
+ <l:gentext key="glosssee" text="Ikus"/>
+ <l:gentext key="GlossSeeAlso" text="Ikus baita ere"/>
+ <l:gentext key="glossseealso" text="Ikus baita ere"/>
+ <l:gentext key="IMPORTANT" text="GARRANTZITSUA"/>
+ <l:gentext key="important" text="Garrantzitsua"/>
+ <l:gentext key="Important" text="Garrantzitsua"/>
+ <l:gentext key="Index" text="Indizea"/>
+ <l:gentext key="index" text="Indizea"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text="Legezko abisua"/>
+ <l:gentext key="legalnotice" text="Legezko abisua"/>
+ <l:gentext key="MsgAud" text="Audientzia"/>
+ <l:gentext key="msgaud" text="Audientzia"/>
+ <l:gentext key="MsgLevel" text="Maila"/>
+ <l:gentext key="msglevel" text="Maila"/>
+ <l:gentext key="MsgOrig" text="Jatorria"/>
+ <l:gentext key="msgorig" text="Jatorria"/>
+ <l:gentext key="NOTE" text="OHARRA"/>
+ <l:gentext key="Note" text="Oharra"/>
+ <l:gentext key="note" text="Oharra"/>
+ <l:gentext key="Part" text="Zatia"/>
+ <l:gentext key="part" text="Zatia"/>
+ <l:gentext key="Preface" text="Hitzaurrea"/>
+ <l:gentext key="preface" text="Hitzaurrea"/>
+ <l:gentext key="Procedure" text="Prozedura"/>
+ <l:gentext key="procedure" text="Prozedura"/>
+ <l:gentext key="ProductionSet" text="Ekoizpena"/>
+ <l:gentext key="Published" text="Argitaratua"/>
+ <l:gentext key="published" text="Argitaratua"/>
+ <l:gentext key="Question" text="Galdera"/>
+ <l:gentext key="question" text="galdera"/>
+ <l:gentext key="RefEntry" text="Sarrera"/>
+ <l:gentext key="refentry" text="Sarrera"/>
+ <l:gentext key="Reference" text="Erreferentzia"/>
+ <l:gentext key="reference" text="Erreferentzia"/>
+ <l:gentext key="RefName" text="Izena"/>
+ <l:gentext key="refname" text="Izena"/>
+ <l:gentext key="RefSection" text="Sekzioa"/>
+ <l:gentext key="refsection" text="sekzioa"/>
+ <l:gentext key="RefSynopsisDiv" text="Laburpena"/>
+ <l:gentext key="refsynopsisdiv" text="Laburpena"/>
+ <l:gentext key="RevHistory" text="Berrikuspenaren historia"/>
+ <l:gentext key="revhistory" text="Berrikuspenaren historia"/>
+ <l:gentext key="revision" text="Berrikuspena"/>
+ <l:gentext key="Revision" text="Berrikuspena"/>
+ <l:gentext key="sect1" text="Atala"/>
+ <l:gentext key="sect2" text="Atala"/>
+ <l:gentext key="sect3" text="Atala"/>
+ <l:gentext key="sect4" text="Atala"/>
+ <l:gentext key="sect5" text="Atala"/>
+ <l:gentext key="section" text="Atala"/>
+ <l:gentext key="Section" text="Atala"/>
+ <l:gentext key="See" text="Ikus"/>
+ <l:gentext key="see" text="Ikus"/>
+ <l:gentext key="SeeAlso" text="Ikus baita ere"/>
+ <l:gentext key="seealso" text="Ikus baita ere"/>
+ <l:gentext key="Seealso" text="Ikus baita ere"/>
+ <l:gentext key="set" text="Konfiguratu"/>
+ <l:gentext key="Set" text="Konfiguratu"/>
+ <l:gentext key="setindex" text="Konfiguratu indizea"/>
+ <l:gentext key="SetIndex" text="Konfiguratu indizea"/>
+ <l:gentext key="Sidebar" text="Alboko barra"/>
+ <l:gentext key="sidebar" text="alboko barra"/>
+ <l:gentext key="step" text="urratsa"/>
+ <l:gentext key="Step" text="Urratsa"/>
+ <l:gentext key="Table" text="Taula"/>
+ <l:gentext key="table" text="Taula"/>
+ <l:gentext key="tip" text="Iradokizuna"/>
+ <l:gentext key="TIP" text="IRADOKIZUNA"/>
+ <l:gentext key="Tip" text="Iradokizuna"/>
+ <l:gentext key="Warning" text="Abisua"/>
+ <l:gentext key="warning" text="Abisua"/>
+ <l:gentext key="WARNING" text="ABISUA"/>
+ <l:gentext key="and" text="eta"/>
+ <l:gentext key="by" text="Honek"/>
+ <l:gentext key="Edited" text="editatua"/>
+ <l:gentext key="edited" text="editatua"/>
+ <l:gentext key="Editedby" text="Honek editatua"/>
+ <l:gentext key="editedby" text="Honek editatua"/>
+ <l:gentext key="in" text="non"/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="lehendik ez dagoen elementua"/>
+ <l:gentext key="notes" text="Oharrak"/>
+ <l:gentext key="Notes" text="Oharrak"/>
+ <l:gentext key="Pgs" text="Orr."/>
+ <l:gentext key="pgs" text="Orr."/>
+ <l:gentext key="Revisedby" text="Berrikuspena: "/>
+ <l:gentext key="revisedby" text="Berrikuspena: "/>
+ <l:gentext key="TableNotes" text="Oharrak"/>
+ <l:gentext key="tablenotes" text="Oharrak"/>
+ <l:gentext key="TableofContents" text="Edukien aurkibidea"/>
+ <l:gentext key="tableofcontents" text="Edukien aurkibidea"/>
+ <l:gentext key="unexpectedelementname" text="Ustekabeko elemetu-izena"/>
+ <l:gentext key="unsupported" text="onartzen ez den"/>
+ <l:gentext key="xrefto" text="xref honi"/>
+ <l:gentext key="listofequations" text="Ekuazioen zerrenda"/>
+ <l:gentext key="ListofEquations" text="Ekuazioen zerrenda"/>
+ <l:gentext key="ListofExamples" text="Adibideen zerrenda"/>
+ <l:gentext key="listofexamples" text="Adibideen zerrenda"/>
+ <l:gentext key="ListofFigures" text="Irudien zerrenda"/>
+ <l:gentext key="listoffigures" text="Irudien zerrenda"/>
+ <l:gentext key="listoftables" text="Taulen zerrenda"/>
+ <l:gentext key="ListofTables" text="Taulen zerrenda"/>
+ <l:gentext key="ListofUnknown" text="Ezezagunen zerrenda"/>
+ <l:gentext key="listofunknown" text="Ezazagunen zerrenda"/>
+ <l:gentext key="nav-home" text="Etxea"/>
+ <l:gentext key="nav-next" text="Hurrengoa"/>
+ <l:gentext key="nav-next-sibling" text="Aurreratze azkarra"/>
+ <l:gentext key="nav-prev" text="Aurrekoa"/>
+ <l:gentext key="nav-prev-sibling" text="Atzeratze azkarra"/>
+ <l:gentext key="nav-up" text="Gora"/>
+ <l:gentext key="sectioncalled" text="honela deritzon atala"/>
+ <l:gentext key="Draft" text="Zirriborroa"/>
+ <l:gentext key="above" text="goian"/>
+ <l:gentext key="below" text="behean"/>
+ <l:gentext key="index symbols" text="Ikurrak"/>
+ <l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz"/>
+ <l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="Eranskina %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Atala %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Ekuazioa %n. %t"/>
+ <l:template name="example" text="Adibidea %n. %t"/>
+ <l:template name="figure" text="Irudia %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Zatia %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="Prozedura %n. %t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Ekoizpena %n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="Taula %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text=""/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="Eranskina %n. %t"/>
+ <l:template name="chapter" text="Atala %n. %t"/>
+ <l:template name="bridgehead" text="%n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="E:&#160;%n"/>
+ <l:template name="appendix" text="Eranskina %n"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Atala %n"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Ekuazioa&#160;%n"/>
+ <l:template name="example" text="Adibidea %n"/>
+ <l:template name="figure" text="Irudia %n"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Zatia %n"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="Prozedura&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="Galdera&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="Galdera&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="Taula %n"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="honela deritzon atala &#8220;%t&#8221;"/>
+ <l:template name="refsection" text="honela deritzon atala &#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="honela deritzon atala &#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="honela deritzon atala &#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="honela deritzon atala &#8220;%t&#8221;"/>
+ <l:template name="sect1" text="honela deritzon atala &#8220;%t&#8221;"/>
+ <l:template name="sect2" text="honela deritzon atala &#8220;%t&#8221;"/>
+ <l:template name="sect3" text="honela deritzon atala &#8220;%t&#8221;"/>
+ <l:template name="sect4" text="honela deritzon atala &#8220;%t&#8221;"/>
+ <l:template name="sect5" text="honela deritzon atala &#8220;%t&#8221;"/>
+ <l:template name="section" text="honela deritzon atala &#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="honela deritzon atala &#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="Atala %n"/>
+ <l:template name="refsection" text="honela deritzon atala &#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="honela deritzon atala &#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="honela deritzon atala &#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="honela deritzon atala &#8220;%t&#8221;"/>
+ <l:template name="sect1" text="Atala %n"/>
+ <l:template name="sect2" text="Atala %n"/>
+ <l:template name="sect3" text="Atala %n"/>
+ <l:template name="sect4" text="Atala %n"/>
+ <l:template name="sect5" text="Atala %n"/>
+ <l:template name="section" text="Atala %n"/>
+ <l:template name="simplesect" text="honela deritzon atala &#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" eta "/>
+ <l:template name="seplast" text=", eta "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="Ikus "/>
+ <l:template name="seealso" text="Ikus baita ere "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="Audientzia: "/>
+ <l:template name="MsgLevel" text="Maila: "/>
+ <l:template name="MsgOrig" text="Jatorria: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/fi.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/fi.xml
new file mode 100644
index 0000000..5582987
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/fi.xml
@@ -0,0 +1,454 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="fi" english-language-name="Finnish">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="Lyhennelm&#228;"/>
+ <l:gentext key="abstract" text="Lyhennelm&#228;"/>
+ <l:gentext key="Answer" text="A:"/>
+ <l:gentext key="answer" text="A:"/>
+ <l:gentext key="Appendix" text="Liite"/>
+ <l:gentext key="appendix" text="liite"/>
+ <l:gentext key="Article" text="Artikkeli"/>
+ <l:gentext key="article" text="Artikkeli"/>
+ <l:gentext key="Bibliography" text="L&#228;hteet"/>
+ <l:gentext key="bibliography" text="L&#228;hteet"/>
+ <l:gentext key="Book" text="Kirja"/>
+ <l:gentext key="book" text="Kirja"/>
+ <l:gentext key="CAUTION" text="VARO"/>
+ <l:gentext key="Caution" text="Varo"/>
+ <l:gentext key="caution" text="Varo"/>
+ <l:gentext key="Chapter" text="Luku"/>
+ <l:gentext key="chapter" text="luku"/>
+ <l:gentext key="Colophon" text="Colophon"/>
+ <l:gentext key="colophon" text="Colophon"/>
+ <l:gentext key="Copyright" text="Copyright"/>
+ <l:gentext key="copyright" text="Copyright"/>
+ <l:gentext key="Dedication" text="Omistus"/>
+ <l:gentext key="dedication" text="Omistus"/>
+ <l:gentext key="Edition" text="Edition"/>
+ <l:gentext key="edition" text="Edition"/>
+ <l:gentext key="Equation" text="Kaava"/>
+ <l:gentext key="equation" text="Kaava"/>
+ <l:gentext key="Example" text="Esimerkki"/>
+ <l:gentext key="example" text="Esimerkki"/>
+ <l:gentext key="Figure" text="Kuva"/>
+ <l:gentext key="figure" text="Kuva"/>
+ <l:gentext key="Glossary" text="Sanasto"/>
+ <l:gentext key="glossary" text="Sanasto"/>
+ <l:gentext key="GlossSee" text="Katso"/>
+ <l:gentext key="glosssee" text="Katso"/>
+ <l:gentext key="GlossSeeAlso" text="Katso my&#246;s"/>
+ <l:gentext key="glossseealso" text="Katso my&#246;s"/>
+ <l:gentext key="IMPORTANT" text="T&#196;RKE&#196;&#196;"/>
+ <l:gentext key="Important" text="T&#228;rke&#228;&#228;"/>
+ <l:gentext key="important" text="T&#228;rke&#228;&#228;"/>
+ <l:gentext key="Index" text="Indeksi"/>
+ <l:gentext key="index" text="Indeksi"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text=""/>
+ <l:gentext key="legalnotice" text=""/>
+ <l:gentext key="MsgAud" text="Yleis&#246;"/>
+ <l:gentext key="msgaud" text="Yleis&#246;"/>
+ <l:gentext key="MsgLevel" text="Taso"/>
+ <l:gentext key="msglevel" text="Taso"/>
+ <l:gentext key="MsgOrig" text="Alkuper&#228;"/>
+ <l:gentext key="msgorig" text="Alkuper&#228;"/>
+ <l:gentext key="NOTE" text="HUOMAA"/>
+ <l:gentext key="Note" text="Huomaa"/>
+ <l:gentext key="note" text="Huomaa"/>
+ <l:gentext key="Part" text="Osa"/>
+ <l:gentext key="part" text="Osa"/>
+ <l:gentext key="Preface" text="Esipuhe"/>
+ <l:gentext key="preface" text="Esipuhe"/>
+ <l:gentext key="Procedure" text="Aliohjelma"/>
+ <l:gentext key="procedure" text="Aliohjelma"/>
+ <l:gentext key="ProductionSet" text="Production"/>
+ <l:gentext key="Published" text="Julkaistu"/>
+ <l:gentext key="published" text="Julkaistu"/>
+ <l:gentext key="Question" text="Q:"/>
+ <l:gentext key="question" text="Q:"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="L&#228;hdeluettelo"/>
+ <l:gentext key="reference" text="L&#228;hdeluettelo"/>
+ <l:gentext key="RefName" text="Nimi"/>
+ <l:gentext key="refname" text="Nimi"/>
+ <l:gentext key="RefSection" text=""/>
+ <l:gentext key="refsection" text=""/>
+ <l:gentext key="RefSynopsisDiv" text="Synopsis"/>
+ <l:gentext key="refsynopsisdiv" text="Synopsis"/>
+ <l:gentext key="RevHistory" text="Versiohistoria"/>
+ <l:gentext key="revhistory" text="Versiohistoria"/>
+ <l:gentext key="Revision" text="Versio"/>
+ <l:gentext key="revision" text="Versio"/>
+ <l:gentext key="sect1" text="Section"/>
+ <l:gentext key="sect2" text="Section"/>
+ <l:gentext key="sect3" text="Section"/>
+ <l:gentext key="sect4" text="Section"/>
+ <l:gentext key="sect5" text="Section"/>
+ <l:gentext key="Section" text="Kohta"/>
+ <l:gentext key="section" text="kohta"/>
+ <l:gentext key="See" text="Katso"/>
+ <l:gentext key="see" text="Katso"/>
+ <l:gentext key="SeeAlso" text="Katso my&#246;s"/>
+ <l:gentext key="Seealso" text="Katso my&#246;s"/>
+ <l:gentext key="seealso" text="Katso my&#246;s"/>
+ <l:gentext key="Set" text="Kokoelma"/>
+ <l:gentext key="set" text="Kokoelma"/>
+ <l:gentext key="SetIndex" text="Kokoelman indeksi"/>
+ <l:gentext key="setindex" text="Kokoelman indeksi"/>
+ <l:gentext key="Sidebar" text=""/>
+ <l:gentext key="sidebar" text="sivupalkki"/>
+ <l:gentext key="Step" text="Step"/>
+ <l:gentext key="step" text="step"/>
+ <l:gentext key="Table" text="Taulu"/>
+ <l:gentext key="table" text="Taulu"/>
+ <l:gentext key="TIP" text="VIHJE"/>
+ <l:gentext key="Tip" text="Vihje"/>
+ <l:gentext key="tip" text="Vihje"/>
+ <l:gentext key="WARNING" text="VAROITUS"/>
+ <l:gentext key="Warning" text="Varoitus"/>
+ <l:gentext key="warning" text="Varoitus"/>
+ <l:gentext key="and" text="ja"/>
+ <l:gentext key="by" text=""/>
+ <l:gentext key="Edited" text="Toim."/>
+ <l:gentext key="edited" text="Toim."/>
+ <l:gentext key="Editedby" text="Toimittanut"/>
+ <l:gentext key="editedby" text="Toimittanut"/>
+ <l:gentext key="in" text="teoksessa"/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="elementti&#228; ei ole olemassa"/>
+ <l:gentext key="notes" text=""/>
+ <l:gentext key="Notes" text=""/>
+ <l:gentext key="Pgs" text="Sivut"/>
+ <l:gentext key="pgs" text="Sivut"/>
+ <l:gentext key="Revisedby" text="Revised by: "/>
+ <l:gentext key="revisedby" text="Revised by: "/>
+ <l:gentext key="TableNotes" text=""/>
+ <l:gentext key="tablenotes" text=""/>
+ <l:gentext key="TableofContents" text="Sis&#228;llys"/>
+ <l:gentext key="tableofcontents" text="Sis&#228;llys"/>
+ <l:gentext key="unexpectedelementname" text="Odottamaton elementin nimi"/>
+ <l:gentext key="unsupported" text="ei tueta"/>
+ <l:gentext key="xrefto" text="xref johonkin"/>
+ <l:gentext key="listofequations" text="Luettelo esimerkeist&#228;"/>
+ <l:gentext key="ListofEquations" text="Luettelo esimerkeist&#228;"/>
+ <l:gentext key="ListofExamples" text="Luettelo esimerkeist&#228;"/>
+ <l:gentext key="listofexamples" text="Luettelo esimerkeist&#228;"/>
+ <l:gentext key="ListofFigures" text="Luettelo kuvista"/>
+ <l:gentext key="listoffigures" text="Luettelo kuvista"/>
+ <l:gentext key="listoftables" text="Luettelo tauluista"/>
+ <l:gentext key="ListofTables" text="Luettelo tauluista"/>
+ <l:gentext key="ListofUnknown" text="Luettelo tuntemattomista"/>
+ <l:gentext key="listofunknown" text="Luettelo tuntemattomista"/>
+ <l:gentext key="nav-home" text="Alkuun"/>
+ <l:gentext key="nav-next" text="Seuraava"/>
+ <l:gentext key="nav-next-sibling" text="Nopeasti eteenp&#228;in"/>
+ <l:gentext key="nav-prev" text="Edellinen"/>
+ <l:gentext key="nav-prev-sibling" text="Nopeasti taaksep&#228;in"/>
+ <l:gentext key="nav-up" text="Yl&#246;s"/>
+ <l:gentext key="sectioncalled" text="the section called"/>
+ <l:gentext key="Draft" text="Draft"/>
+ <l:gentext key="above" text="above"/>
+ <l:gentext key="below" text="below"/>
+ <l:gentext key="index symbols" text="Symbols"/>
+ <l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz"/>
+ <l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="Liite %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Luku %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Kaava %n. %t"/>
+ <l:template name="example" text="Esimerkki %n. %t"/>
+ <l:template name="figure" text="Kuva %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Osa %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="Aliohjelma&#160;%n.&#160;%t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Production&#160;%n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="Taulu %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="Liite %n. %t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="Luku %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%n. %t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="A:&#160;%n"/>
+ <l:template name="appendix" text="Liite %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Luku %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Kaava&#160;%n"/>
+ <l:template name="example" text="Esimerkki %n. %t"/>
+ <l:template name="figure" text="Kuva %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Osa %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="Aliohjelma&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="Q:&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="Q:&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="Taulu %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#8220;%t&#8221;"/>
+ <l:template name="sect2" text="&#8220;%t&#8221;"/>
+ <l:template name="sect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect4" text="&#8220;%t&#8221;"/>
+ <l:template name="sect5" text="&#8220;%t&#8221;"/>
+ <l:template name="section" text="&#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="Kohta %n"/>
+ <l:template name="sect2" text="Kohta %n"/>
+ <l:template name="sect3" text="Kohta %n"/>
+ <l:template name="sect4" text="Kohta %n"/>
+ <l:template name="sect5" text="Kohta %n"/>
+ <l:template name="section" text="Kohta %n"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" ja "/>
+ <l:template name="seplast" text=", ja "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="Katso "/>
+ <l:template name="seealso" text="Katso my&#246;s "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="Yleis&#246;: "/>
+ <l:template name="MsgLevel" text="Taso: "/>
+ <l:template name="MsgOrig" text="Alkuper&#228;: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/fr.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/fr.xml
new file mode 100644
index 0000000..8d74773
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/fr.xml
@@ -0,0 +1,458 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="fr" english-language-name="French">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="R&#233;sum&#233;"/>
+ <l:gentext key="abstract" text="R&#233;sum&#233;"/>
+ <l:gentext key="Answer" text="R&#160;:"/>
+ <l:gentext key="answer" text="R&#160;:"/>
+ <l:gentext key="Appendix" text="Annexe"/>
+ <l:gentext key="appendix" text="annexe"/>
+ <l:gentext key="Article" text="Article"/>
+ <l:gentext key="article" text="Article"/>
+ <l:gentext key="Bibliography" text="Bibliographie"/>
+ <l:gentext key="bibliography" text="Bibliographie"/>
+ <l:gentext key="Book" text="Livre"/>
+ <l:gentext key="book" text="Livre"/>
+ <l:gentext key="Caution" text="Attention"/>
+ <l:gentext key="caution" text="Attention"/>
+ <l:gentext key="CAUTION" text="ATTENTION"/>
+ <l:gentext key="Chapter" text="Chapitre"/>
+ <l:gentext key="chapter" text="chapitre"/>
+ <l:gentext key="Colophon" text="Colophon"/>
+ <l:gentext key="colophon" text="Colophon"/>
+ <l:gentext key="Copyright" text="Copyright"/>
+ <l:gentext key="copyright" text="Copyright"/>
+ <l:gentext key="Dedication" text="D&#233;dicace"/>
+ <l:gentext key="dedication" text="D&#233;dicace"/>
+ <l:gentext key="Edition" text="&#201;dition"/>
+ <l:gentext key="edition" text="&#201;dition"/>
+ <l:gentext key="Equation" text="&#201;quation"/>
+ <l:gentext key="equation" text="&#201;quation"/>
+ <l:gentext key="Example" text="Exemple"/>
+ <l:gentext key="example" text="Exemple"/>
+ <l:gentext key="Figure" text="Figure"/>
+ <l:gentext key="figure" text="Figure"/>
+ <l:gentext key="Glossary" text="Glossaire"/>
+ <l:gentext key="glossary" text="Glossaire"/>
+ <l:gentext key="GlossSee" text="Voir"/>
+ <l:gentext key="glosssee" text="Voir"/>
+ <l:gentext key="GlossSeeAlso" text="Voir aussi"/>
+ <l:gentext key="glossseealso" text="Voir aussi"/>
+ <l:gentext key="IMPORTANT" text="IMPORTANT"/>
+ <l:gentext key="Important" text="Important"/>
+ <l:gentext key="important" text="Important"/>
+ <l:gentext key="Index" text="Index"/>
+ <l:gentext key="index" text="Index"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text="Note l&#233;gale"/>
+ <l:gentext key="legalnotice" text="Note l&#233;gale"/>
+ <l:gentext key="MsgAud" text="Public vis&#233;"/>
+ <l:gentext key="msgaud" text="Public vis&#233;"/>
+ <l:gentext key="MsgLevel" text="Niveau"/>
+ <l:gentext key="msglevel" text="Niveau"/>
+ <l:gentext key="MsgOrig" text="Origine"/>
+ <l:gentext key="msgorig" text="Origine"/>
+ <l:gentext key="Note" text="Note"/>
+ <l:gentext key="NOTE" text="NOTE"/>
+ <l:gentext key="note" text="NOTE"/>
+ <l:gentext key="Part" text="Partie"/>
+ <l:gentext key="part" text="Partie"/>
+ <l:gentext key="Preface" text="Pr&#233;face"/>
+ <l:gentext key="preface" text="Pr&#233;face"/>
+ <l:gentext key="Procedure" text="Proc&#233;dure"/>
+ <l:gentext key="procedure" text="Proc&#233;dure"/>
+ <l:gentext key="ProductionSet" text="Production"/>
+ <l:gentext key="Published" text="Publi&#233;"/>
+ <l:gentext key="published" text="Publi&#233;"/>
+ <l:gentext key="Question" text="Q&#160;:"/>
+ <l:gentext key="question" text="Q&#160;:"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="R&#233;f&#233;rence"/>
+ <l:gentext key="reference" text="R&#233;f&#233;rence"/>
+ <l:gentext key="RefName" text="Nom"/>
+ <l:gentext key="refname" text="Nom"/>
+ <l:gentext key="RefSection" text=""/>
+ <l:gentext key="refsection" text=""/>
+ <l:gentext key="RefSynopsisDiv" text="Synopsis"/>
+ <l:gentext key="refsynopsisdiv" text="Synopsis"/>
+ <l:gentext key="RevHistory" text="Historique des versions"/>
+ <l:gentext key="revhistory" text="Historique des versions"/>
+ <l:gentext key="Revision" text="Version"/>
+ <l:gentext key="revision" text="Version"/>
+ <l:gentext key="sect1" text="Section"/>
+ <l:gentext key="sect2" text="Section"/>
+ <l:gentext key="sect3" text="Section"/>
+ <l:gentext key="sect4" text="Section"/>
+ <l:gentext key="sect5" text="Section"/>
+ <l:gentext key="Section" text="Section"/>
+ <l:gentext key="section" text="Section"/>
+ <l:gentext key="see" text="Voir"/>
+ <l:gentext key="See" text="Voir"/>
+ <l:gentext key="seealso" text="Voir Aussi"/>
+ <l:gentext key="SeeAlso" text="Voir Aussi"/>
+ <l:gentext key="Seealso" text="Voir aussi"/>
+ <l:gentext key="Set" text="Ensemble"/>
+ <l:gentext key="set" text="Ensemble"/>
+ <l:gentext key="setindex" text="Index"/>
+ <l:gentext key="SetIndex" text="Index"/>
+ <l:gentext key="sidebar" text=""/>
+ <l:gentext key="Sidebar" text=""/>
+ <l:gentext key="Step" text="&#201;tape"/>
+ <l:gentext key="step" text="&#233;tape"/>
+ <l:gentext key="table" text="Tableau"/>
+ <l:gentext key="Table" text="Tableau"/>
+ <l:gentext key="tip" text="ASTUCE"/>
+ <l:gentext key="TIP" text="ASTUCE"/>
+ <l:gentext key="Tip" text="Astuce"/>
+ <l:gentext key="Warning" text="Avertissement"/>
+ <l:gentext key="WARNING" text="AVERTISSEMENT"/>
+ <l:gentext key="warning" text="AVERTISSEMENT"/>
+ <l:gentext key="and" text="et"/>
+ <l:gentext key="by" text="par"/>
+ <l:gentext key="Edited" text="Publi&#233;"/>
+ <l:gentext key="edited" text="Publi&#233;"/>
+ <l:gentext key="Editedby" text="Publi&#233; par"/>
+ <l:gentext key="editedby" text="Publi&#233; par"/>
+ <l:gentext key="in" text="dans"/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="Cet &#233;l&#233;ment n'existe pas"/>
+ <l:gentext key="notes" text="Notes"/>
+ <l:gentext key="Notes" text="Notes"/>
+ <l:gentext key="Pgs" text="Pages"/>
+ <l:gentext key="pgs" text="Pages"/>
+ <l:gentext key="Revisedby" text="Revu par&#160;: "/>
+ <l:gentext key="revisedby" text="Revu par&#160;: "/>
+ <l:gentext key="TableNotes" text="Remarques"/>
+ <l:gentext key="tablenotes" text="Remarques"/>
+ <l:gentext key="TableofContents" text="Table des mati&#232;res"/>
+ <l:gentext key="tableofcontents" text="Table des mati&#232;res"/>
+ <l:gentext key="unexpectedelementname" text="Nom d'&#233;l&#233;ment non attendu"/>
+ <l:gentext key="unsupported" text="Non reconnu par le syst&#232;me"/>
+ <l:gentext key="xrefto" text="R&#233;f&#233;rence vers"/>
+ <l:gentext key="listofequations" text="Liste des &#233;quations"/>
+ <l:gentext key="ListofEquations" text="Liste des &#233;quations"/>
+ <l:gentext key="ListofExamples" text="Liste des exemples"/>
+ <l:gentext key="listofexamples" text="Liste des exemples"/>
+ <l:gentext key="ListofFigures" text="Liste des illustrations"/>
+ <l:gentext key="listoffigures" text="Liste des illustrations"/>
+ <l:gentext key="listoftables" text="Liste des tableaux"/>
+ <l:gentext key="ListofTables" text="Liste des tableaux"/>
+ <l:gentext key="ListofUnknown" text="Liste des inconnues"/>
+ <l:gentext key="listofunknown" text="Liste des inconnues"/>
+ <l:gentext key="nav-home" text="Sommaire"/>
+ <l:gentext key="nav-next" text="Suivant"/>
+ <l:gentext key="nav-next-sibling" text="Avance rapide"/>
+ <l:gentext key="nav-prev" text="Pr&#233;c&#233;dent"/>
+ <l:gentext key="nav-prev-sibling" text="Arri&#232;re rapide"/>
+ <l:gentext key="nav-up" text="Niveau sup&#233;rieur"/>
+ <l:gentext key="sectioncalled" text="la section intitul&#233;e"/>
+ <l:gentext key="Draft" text="Draft"/>
+ <l:gentext key="above" text="above"/>
+ <l:gentext key="below" text="below"/>
+ <l:gentext key="index symbols" text="Symboles"/>
+ <l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz"/>
+ <l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/>
+ <l:dingbat key="startquote" text="&#171;"/>
+ <l:dingbat key="endquote" text="&#187;"/>
+ <l:dingbat key="singlestartquote" text="&#8249;"/>
+ <l:dingbat key="singleendquote" text="&#8250;"/>
+ <l:dingbat key="nestedstartquote" text="&#171;"/>
+ <l:dingbat key="nestedendquote" text="&#187;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Titres de l'appendice (vide)"/>
+ <l:template name="article" text="Titres de l'article (vide)"/>
+ <l:template name="bibliodiv" text="Titres du bibliodiv (vide)"/>
+ <l:template name="book" text="Titre du livre(vide)"/>
+ <l:template name="chapter" text="Titres du chapitre (vide)"/>
+ <l:template name="columns" text="Colonnes"/>
+ <l:template name="draftarea" text="Zone Brouillon"/>
+ <l:template name="edit-attrs" text="&#201;diter les attributs des &#233;l&#233;ments correspondants"/>
+ <l:template name="footnote" text="Note de bas de page"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Titres de la pr&#233;face (vide)"/>
+ <l:template name="part" text="Titre de la partie (vide)"/>
+ <l:template name="section" text="Titres de la section (vide)"/>
+ <l:template name="sect1" text="Titres de la section (vide)"/>
+ <l:template name="sect2" text="Titres de la section (vide)"/>
+ <l:template name="sect3" text="Titres de la section (vide)"/>
+ <l:template name="sect4" text="Titres de la section (vide)"/>
+ <l:template name="sect5" text="Titres de la section (vide)"/>
+ <l:template name="set" text="Appliquer les titres (vide)"/>
+ <l:template name="title" text="Titre: "/>
+ <l:template name="titles" text="Pas d'&#233;l&#233;ment Titlepage"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ <l:template name="reference" text="Reference (empty)"/>
+ <l:template name="refsection" text="Refsection (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="Annexe %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Chapitre %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="&#201;quation %n. %t"/>
+ <l:template name="example" text="Exemple %n. %t"/>
+ <l:template name="figure" text="Figure %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Partie %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="Proc&#233;dure %n. %t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Production %n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="Tableau %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="Annexe %n. %t"/>
+ <l:template name="bridgehead" text="%n. %t"/>
+ <l:template name="chapter" text="Chapitre %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="R&#160;:&#160;%n"/>
+ <l:template name="appendix" text="Annexe %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Chapitre %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="&#201;quation&#160;%n"/>
+ <l:template name="example" text="Exemple %n. %t"/>
+ <l:template name="figure" text="Figure %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Partie %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="Proc&#233;dure&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="Q&#160;:&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="Q&#160;:&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="Tableau %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="la section intitul&#233;e &#8220;%t&#8221;"/>
+ <l:template name="refsection" text="la section intitul&#233;e &#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="la section intitul&#233;e &#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="la section intitul&#233;e &#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="la section intitul&#233;e &#8220;%t&#8221;"/>
+ <l:template name="sect1" text="la section intitul&#233;e &#8220;%t&#8221;"/>
+ <l:template name="sect2" text="la section intitul&#233;e &#8220;%t&#8221;"/>
+ <l:template name="sect3" text="la section intitul&#233;e &#8220;%t&#8221;"/>
+ <l:template name="sect4" text="la section intitul&#233;e &#8220;%t&#8221;"/>
+ <l:template name="sect5" text="la section intitul&#233;e &#8220;%t&#8221;"/>
+ <l:template name="section" text="la section intitul&#233;e &#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="la section intitul&#233;e &#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="Section %n"/>
+ <l:template name="refsection" text="la section intitul&#233;e &#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="la section intitul&#233;e &#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="la section intitul&#233;e &#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="la section intitul&#233;e &#8220;%t&#8221;"/>
+ <l:template name="sect1" text="Section %n"/>
+ <l:template name="sect2" text="Section %n"/>
+ <l:template name="sect3" text="Section %n"/>
+ <l:template name="sect4" text="Section %n"/>
+ <l:template name="sect5" text="Section %n"/>
+ <l:template name="section" text="Section %n"/>
+ <l:template name="simplesect" text="la section intitul&#233;e &#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" et "/>
+ <l:template name="seplast" text=", et "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="Voir "/>
+ <l:template name="seealso" text="Voir aussi "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="Public vis&#233;: "/>
+ <l:template name="MsgLevel" text="Niveau: "/>
+ <l:template name="MsgOrig" text="Origine: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/he.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/he.xml
new file mode 100644
index 0000000..68f47ad
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/he.xml
@@ -0,0 +1,455 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="he" english-language-name="Hebrew">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="&#1505;&#1497;&#1499;&#1493;&#1501;"/>
+ <l:gentext key="abstract" text="&#1505;&#1497;&#1499;&#1493;&#1501;"/>
+ <l:gentext key="Answer" text="&#1514;:"/>
+ <l:gentext key="answer" text="&#1514;:"/>
+ <l:gentext key="Appendix" text="&#1504;&#1505;&#1508;&#1495;"/>
+ <l:gentext key="appendix" text="&#1504;&#1505;&#1508;&#1495;"/>
+ <l:gentext key="Article" text="&#1502;&#1488;&#1502;&#1512;"/>
+ <l:gentext key="article" text="&#1502;&#1488;&#1502;&#1512;"/>
+ <l:gentext key="Bibliography" text="&#1489;&#1497;&#1489;&#1500;&#1497;&#1493;&#1490;&#1512;&#1508;&#1497;&#1492;"/>
+ <l:gentext key="bibliography" text="&#1489;&#1497;&#1489;&#1500;&#1497;&#1493;&#1490;&#1512;&#1508;&#1497;&#1492;"/>
+ <l:gentext key="Book" text="&#1505;&#1508;&#1512;"/>
+ <l:gentext key="book" text="&#1505;&#1508;&#1512;"/>
+ <l:gentext key="CAUTION" text="&#1488;&#1494;&#1492;&#1512;&#1492;"/>
+ <l:gentext key="Caution" text="&#1488;&#1494;&#1492;&#1512;&#1492;"/>
+ <l:gentext key="caution" text="&#1488;&#1494;&#1492;&#1512;&#1492;"/>
+ <l:gentext key="Chapter" text="&#1508;&#1512;&#1511;"/>
+ <l:gentext key="chapter" text="&#1508;&#1512;&#1511;"/>
+ <l:gentext key="Colophon" text="&#1511;&#1493;&#1500;&#1493;&#1508;&#1493;&#1503;"/>
+ <l:gentext key="colophon" text="&#1511;&#1493;&#1500;&#1493;&#1508;&#1493;&#1503;"/>
+ <l:gentext key="Copyright" text="&#1494;&#1499;&#1493;&#1497;&#1493;&#1514; &#1497;&#1493;&#1510;&#1512;&#1497;&#1501;"/>
+ <l:gentext key="copyright" text="&#1494;&#1499;&#1493;&#1497;&#1493;&#1514; &#1497;&#1493;&#1510;&#1512;&#1497;&#1501;"/>
+ <l:gentext key="Dedication" text="&#1492;&#1511;&#1491;&#1513;&#1492;"/>
+ <l:gentext key="dedication" text="&#1492;&#1511;&#1491;&#1513;&#1492;"/>
+ <l:gentext key="Edition" text="&#1502;&#1492;&#1491;&#1493;&#1512;&#1492;"/>
+ <l:gentext key="edition" text="&#1502;&#1492;&#1491;&#1493;&#1512;&#1492;"/>
+ <l:gentext key="Equation" text="&#1502;&#1513;&#1493;&#1493;&#1488;&#1492;"/>
+ <l:gentext key="equation" text="&#1502;&#1513;&#1493;&#1493;&#1488;&#1492;"/>
+ <l:gentext key="Example" text="&#1491;&#1493;&#1490;&#1502;&#1492;"/>
+ <l:gentext key="example" text="&#1491;&#1493;&#1490;&#1502;&#1492;"/>
+ <l:gentext key="Figure" text="&#1488;&#1497;&#1493;&#1512;"/>
+ <l:gentext key="figure" text="&#1488;&#1497;&#1493;&#1512;"/>
+ <l:gentext key="Glossary" text="&#1502;&#1497;&#1500;&#1493;&#1503; &#1502;&#1493;&#1504;&#1495;&#1497;&#1501;"/>
+ <l:gentext key="glossary" text="&#1502;&#1497;&#1500;&#1493;&#1503; &#1502;&#1493;&#1504;&#1495;&#1497;&#1501;"/>
+ <l:gentext key="GlossSee" text="&#1512;&#1488;&#1492;"/>
+ <l:gentext key="glosssee" text="&#1512;&#1488;&#1492;"/>
+ <l:gentext key="GlossSeeAlso" text="&#1512;&#1488;&#1492; &#1490;&#1501;"/>
+ <l:gentext key="glossseealso" text="&#1512;&#1488;&#1492; &#1490;&#1501;"/>
+ <l:gentext key="IMPORTANT" text="&#1495;&#1513;&#1493;&#1489;"/>
+ <l:gentext key="important" text="&#1495;&#1513;&#1493;&#1489;"/>
+ <l:gentext key="Important" text="&#1495;&#1513;&#1493;&#1489;"/>
+ <l:gentext key="Index" text="&#1488;&#1497;&#1504;&#1491;&#1511;&#1505;"/>
+ <l:gentext key="index" text="&#1488;&#1497;&#1504;&#1491;&#1511;&#1505;"/>
+ <l:gentext key="ISBN" text="&#1502;&#1505;&#1508;&#1512; &#1505;&#1508;&#1512; &#1505;&#1496;&#1504;&#1491;&#1512;&#1496;&#1497; &#1489;&#1497;&#1504;&#1500;&#1488;&#1493;&#1502;&#1497;"/>
+ <l:gentext key="isbn" text="&#1502;&#1505;&#1508;&#1512; &#1505;&#1508;&#1512; &#1505;&#1496;&#1504;&#1491;&#1512;&#1496;&#1497; &#1489;&#1497;&#1504;&#1500;&#1488;&#1493;&#1502;&#1497;"/>
+ <l:gentext key="LegalNotice" text="&#1492;&#1493;&#1491;&#1506;&#1492; &#1502;&#1513;&#1508;&#1496;&#1497;&#1514;"/>
+ <l:gentext key="legalnotice" text="&#1492;&#1493;&#1491;&#1506;&#1492; &#1502;&#1513;&#1508;&#1496;&#1497;&#1514;"/>
+ <l:gentext key="MsgAud" text="&#1511;&#1492;&#1500; &#1497;&#1506;&#1491;"/>
+ <l:gentext key="msgaud" text="&#1511;&#1492;&#1500; &#1497;&#1506;&#1491;"/>
+ <l:gentext key="MsgLevel" text="&#1512;&#1502;&#1492;"/>
+ <l:gentext key="msglevel" text="&#1512;&#1502;&#1492;"/>
+ <l:gentext key="MsgOrig" text="&#1502;&#1511;&#1493;&#1512;"/>
+ <l:gentext key="msgorig" text="&#1502;&#1511;&#1493;&#1512;"/>
+ <l:gentext key="NOTE" text="&#1513;&#1497;&#1501; &#1500;&#1489;"/>
+ <l:gentext key="Note" text="&#1513;&#1497;&#1501; &#1500;&#1489;"/>
+ <l:gentext key="note" text="&#1513;&#1497;&#1501; &#1500;&#1489;"/>
+ <l:gentext key="Part" text="&#1495;&#1500;&#1511;"/>
+ <l:gentext key="part" text="&#1495;&#1500;&#1511;"/>
+ <l:gentext key="Preface" text="&#1502;&#1489;&#1493;&#1488;"/>
+ <l:gentext key="preface" text="&#1502;&#1489;&#1493;&#1488;"/>
+ <l:gentext key="Procedure" text="&#1492;&#1500;&#1497;&#1498;"/>
+ <l:gentext key="procedure" text="&#1492;&#1500;&#1497;&#1498;"/>
+ <l:gentext key="ProductionSet" text="&#1497;&#1497;&#1510;&#1493;&#1512;"/>
+ <l:gentext key="Published" text="&#1492;&#1493;&#1510;&#1488; &#1500;&#1488;&#1493;&#1512;"/>
+ <l:gentext key="published" text="&#1492;&#1493;&#1510;&#1488; &#1500;&#1488;&#1493;&#1512;"/>
+ <l:gentext key="Question" text="&#1513;:"/>
+ <l:gentext key="question" text="&#1513;:"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="&#1502;&#1512;&#1488;&#1492; &#1502;&#1511;&#1493;&#1501;"/>
+ <l:gentext key="reference" text="&#1502;&#1512;&#1488;&#1492; &#1502;&#1511;&#1493;&#1501;"/>
+ <l:gentext key="RefName" text="&#1513;&#1501;"/>
+ <l:gentext key="refname" text="&#1513;&#1501;"/>
+ <l:gentext key="RefSection" text=""/>
+ <l:gentext key="refsection" text=""/>
+ <l:gentext key="RefSynopsisDiv" text="&#1514;&#1502;&#1510;&#1497;&#1514;"/>
+ <l:gentext key="refsynopsisdiv" text="&#1514;&#1502;&#1510;&#1497;&#1514;"/>
+ <l:gentext key="RevHistory" text="&#1492;&#1497;&#1505;&#1496;&#1493;&#1512;&#1497;&#1497;&#1514; &#1490;&#1497;&#1512;&#1505;&#1488;&#1493;&#1514;"/>
+ <l:gentext key="revhistory" text="&#1492;&#1497;&#1505;&#1496;&#1493;&#1512;&#1497;&#1497;&#1514; &#1490;&#1497;&#1512;&#1505;&#1488;&#1493;&#1514;"/>
+ <l:gentext key="revision" text="&#1490;&#1497;&#1512;&#1505;&#1492;"/>
+ <l:gentext key="Revision" text="&#1490;&#1497;&#1512;&#1505;&#1492;"/>
+ <l:gentext key="sect1" text="&#1505;&#1506;&#1497;&#1507;"/>
+ <l:gentext key="sect2" text="&#1505;&#1506;&#1497;&#1507;"/>
+ <l:gentext key="sect3" text="&#1505;&#1506;&#1497;&#1507;"/>
+ <l:gentext key="sect4" text="&#1505;&#1506;&#1497;&#1507;"/>
+ <l:gentext key="sect5" text="&#1505;&#1506;&#1497;&#1507;"/>
+ <l:gentext key="section" text="&#1505;&#1506;&#1497;&#1507;"/>
+ <l:gentext key="Section" text="&#1505;&#1506;&#1497;&#1507;"/>
+ <l:gentext key="See" text="&#1512;&#1488;&#1492;"/>
+ <l:gentext key="see" text="&#1512;&#1488;&#1492;"/>
+ <l:gentext key="SeeAlso" text="&#1512;&#1488;&#1492; &#1490;&#1501;"/>
+ <l:gentext key="seealso" text="&#1512;&#1488;&#1492; &#1490;&#1501;"/>
+ <l:gentext key="Seealso" text="&#1512;&#1488;&#1492; &#1490;&#1501;"/>
+ <l:gentext key="set" text="&#1505;&#1497;&#1491;&#1512;&#1492;"/>
+ <l:gentext key="Set" text="&#1505;&#1497;&#1491;&#1512;&#1492;"/>
+ <l:gentext key="setindex" text="&#1488;&#1497;&#1504;&#1511;&#1491;&#1511;&#1505; &#1505;&#1491;&#1512;&#1493;&#1514;"/>
+ <l:gentext key="SetIndex" text="&#1488;&#1497;&#1504;&#1491;&#1511;&#1505; &#1505;&#1491;&#1512;&#1493;&#1514;"/>
+ <l:gentext key="Sidebar" text=""/>
+ <l:gentext key="sidebar" text="&#1508;&#1505; &#1510;&#1491;&#1491;&#1497;"/>
+ <l:gentext key="step" text="&#1510;&#1506;&#1491;"/>
+ <l:gentext key="Step" text="&#1510;&#1506;&#1491;"/>
+ <l:gentext key="Table" text="&#1496;&#1489;&#1500;&#1492;"/>
+ <l:gentext key="table" text="&#1496;&#1489;&#1500;&#1492;"/>
+ <l:gentext key="tip" text="&#1506;&#1510;&#1492;"/>
+ <l:gentext key="TIP" text="&#1506;&#1510;&#1492;"/>
+ <l:gentext key="Tip" text="&#1506;&#1510;&#1492;"/>
+ <l:gentext key="Warning" text="&#1488;&#1494;&#1492;&#1512;&#1492;"/>
+ <l:gentext key="warning" text="&#1488;&#1494;&#1492;&#1512;&#1492;"/>
+ <l:gentext key="WARNING" text="&#1488;&#1494;&#1492;&#1512;&#1492;"/>
+ <l:gentext key="and" text="&#1493;"/>
+ <l:gentext key="by" text="&#1502;&#1488;&#1514;"/>
+ <l:gentext key="Edited" text="&#1504;&#1506;&#1512;&#1498;"/>
+ <l:gentext key="edited" text="&#1504;&#1506;&#1512;&#1498;"/>
+ <l:gentext key="Editedby" text="&#1504;&#1506;&#1512;&#1498; &#1506;&#1500; &#1497;&#1491;&#1497;"/>
+ <l:gentext key="editedby" text="&#1504;&#1506;&#1512;&#1498; &#1506;&#1500; &#1497;&#1491;&#1497;"/>
+ <l:gentext key="in" text="&#1489;"/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="&#1502;&#1512;&#1499;&#1497;&#1489; &#1513;&#1488;&#1497;&#1504;&#1493; &#1511;&#1497;&#1497;&#1501;"/>
+ <l:gentext key="notes" text="&#1492;&#1506;&#1512;&#1493;&#1514;"/>
+ <l:gentext key="Notes" text="&#1492;&#1506;&#1512;&#1493;&#1514;"/>
+ <l:gentext key="Pgs" text="&#1506;&#1502;&#1493;&#1491;&#1497;&#1501;"/>
+ <l:gentext key="pgs" text="&#1506;&#1502;&#1493;&#1491;&#1497;&#1501;"/>
+ <l:gentext key="Revisedby" text="&#1492;&#1493;&#1490;&#1492; &#1506;&#1500; &#1497;&#1491;&#1497;: "/>
+ <l:gentext key="revisedby" text="&#1492;&#1493;&#1490;&#1492; &#1506;&#1500; &#1497;&#1491;&#1497;: "/>
+ <l:gentext key="TableNotes" text="&#1492;&#1506;&#1512;&#1493;&#1514;"/>
+ <l:gentext key="tablenotes" text="&#1492;&#1506;&#1512;&#1493;&#1514;"/>
+ <l:gentext key="TableofContents" text="&#1514;&#1493;&#1499;&#1503; &#1492;&#1506;&#1504;&#1497;&#1497;&#1504;&#1497;&#1501;"/>
+ <l:gentext key="tableofcontents" text="&#1514;&#1493;&#1499;&#1503; &#1492;&#1506;&#1504;&#1497;&#1497;&#1504;&#1497;&#1501;"/>
+ <l:gentext key="unexpectedelementname" text="&#1513;&#1501; &#1502;&#1512;&#1499;&#1497;&#1489; &#1489;&#1500;&#1514;&#1497; &#1510;&#1508;&#1493;&#1497;"/>
+ <l:gentext key="unsupported" text="&#1500;&#1488; &#1504;&#1514;&#1502;&#1498;"/>
+ <l:gentext key="xrefto" text="&#1492;&#1514;&#1497;&#1497;&#1495;&#1505;&#1493;&#1514; &#1510;&#1493;&#1500;&#1489;&#1514; &#1488;&#1500;"/>
+ <l:gentext key="listofequations" text="&#1512;&#1513;&#1497;&#1502;&#1514; &#1502;&#1513;&#1493;&#1493;&#1488;&#1493;&#1514;"/>
+ <l:gentext key="ListofEquations" text="&#1512;&#1513;&#1497;&#1502;&#1514; &#1502;&#1513;&#1493;&#1493;&#1488;&#1493;&#1514;"/>
+ <l:gentext key="ListofExamples" text="&#1512;&#1513;&#1497;&#1502;&#1514; &#1491;&#1493;&#1490;&#1502;&#1488;&#1493;&#1514;"/>
+ <l:gentext key="listofexamples" text="&#1512;&#1513;&#1497;&#1502;&#1514; &#1491;&#1493;&#1490;&#1502;&#1488;&#1493;&#1514;"/>
+ <l:gentext key="ListofFigures" text="&#1512;&#1513;&#1497;&#1502;&#1514; &#1488;&#1497;&#1493;&#1512;&#1497;&#1501;"/>
+ <l:gentext key="listoffigures" text="&#1512;&#1513;&#1497;&#1502;&#1514; &#1488;&#1497;&#1493;&#1512;&#1497;&#1501;"/>
+ <l:gentext key="listoftables" text="&#1512;&#1513;&#1497;&#1502;&#1514; &#1496;&#1489;&#1500;&#1488;&#1493;&#1514;"/>
+ <l:gentext key="ListofTables" text="&#1512;&#1513;&#1497;&#1502;&#1514; &#1496;&#1489;&#1500;&#1488;&#1493;&#1514;"/>
+ <l:gentext key="ListofUnknown" text="&#1512;&#1513;&#1497;&#1502;&#1492; &#1513;&#1500; &#1502;&#1512;&#1499;&#1497;&#1489;&#1497;&#1501; &#1500;&#1488; &#1497;&#1491;&#1493;&#1506;&#1497;&#1501;"/>
+ <l:gentext key="listofunknown" text="&#1512;&#1513;&#1497;&#1502;&#1492; &#1513;&#1500; &#1502;&#1512;&#1499;&#1497;&#1489;&#1497;&#1501; &#1500;&#1488; &#1497;&#1491;&#1493;&#1506;&#1497;&#1501;"/>
+ <l:gentext key="nav-home" text="&#1512;&#1488;&#1513;&#1497;"/>
+ <l:gentext key="nav-next" text="&#1492;&#1489;&#1488;"/>
+ <l:gentext key="nav-next-sibling" text="&#1491;&#1500;&#1490; &#1500;&#1505;&#1493;&#1507;"/>
+ <l:gentext key="nav-prev" text="&#1492;&#1511;&#1493;&#1491;&#1501;"/>
+ <l:gentext key="nav-prev-sibling" text="&#1495;&#1494;&#1493;&#1512; &#1500;&#1492;&#1514;&#1495;&#1500;&#1492;"/>
+ <l:gentext key="nav-up" text="&#1500;&#1502;&#1506;&#1500;&#1492;"/>
+ <l:gentext key="sectioncalled" text="&#1492;&#1505;&#1506;&#1497;&#1507; &#1513;&#1504;&#1511;&#1512;&#1488;"/>
+ <l:gentext key="Draft" text="&#1496;&#1497;&#1493;&#1496;&#1492;"/>
+ <l:gentext key="above" text="&#1500;&#1502;&#1506;&#1500;&#1492;"/>
+ <l:gentext key="below" text="&#1500;&#1502;&#1496;&#1492;"/>
+ <l:gentext key="index symbols" text="&#1505;&#1502;&#1500;&#1497;&#1501;"/>
+ <l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz"/>
+ <l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="&#1504;&#1505;&#1508;&#1495; %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="&#1508;&#1512;&#1511; %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="&#1502;&#1513;&#1493;&#1493;&#1488;&#1492; %n. %t"/>
+ <l:template name="example" text="&#1491;&#1493;&#1490;&#1502;&#1492; %n. %t"/>
+ <l:template name="figure" text="&#1488;&#1497;&#1493;&#1512; %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="&#1495;&#1500;&#1511; %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="&#1492;&#1500;&#1497;&#1498; %n. %t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="&#1497;&#1497;&#1510;&#1493;&#1512; %n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="&#1496;&#1489;&#1500;&#1492; %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text=""/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="&#1504;&#1505;&#1508;&#1495; %n. %t"/>
+ <l:template name="bridgehead" text="%n. %t"/>
+ <l:template name="chapter" text="&#1508;&#1512;&#1511; %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="&#1514;:&#160;%n"/>
+ <l:template name="appendix" text="&#1504;&#1505;&#1508;&#1495; %n"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="&#1508;&#1512;&#1511; %n"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="&#1502;&#1513;&#1493;&#1493;&#1488;&#1492;&#160;%n"/>
+ <l:template name="example" text="&#1491;&#1493;&#1490;&#1502;&#1492; %n"/>
+ <l:template name="figure" text="&#1488;&#1497;&#1493;&#1512; %n"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="&#1495;&#1500;&#1511; %n"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="&#1492;&#1500;&#1497;&#1498;&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="&#1513;:&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="&#1513;:&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="&#1496;&#1489;&#1500;&#1492; %n"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="&#1492;&#1505;&#1506;&#1497;&#1507; &#1513;&#1504;&#1511;&#1512;&#1488; &#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#1492;&#1505;&#1506;&#1497;&#1507; &#1513;&#1504;&#1511;&#1512;&#1488; &#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#1492;&#1505;&#1506;&#1497;&#1507; &#1513;&#1504;&#1511;&#1512;&#1488; &#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#1492;&#1505;&#1506;&#1497;&#1507; &#1513;&#1504;&#1511;&#1512;&#1488; &#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#1492;&#1505;&#1506;&#1497;&#1507; &#1513;&#1504;&#1511;&#1512;&#1488; &#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#1492;&#1505;&#1506;&#1497;&#1507; &#1513;&#1504;&#1511;&#1512;&#1488; &#8220;%t&#8221;"/>
+ <l:template name="sect2" text="&#1492;&#1505;&#1506;&#1497;&#1507; &#1513;&#1504;&#1511;&#1512;&#1488; &#8220;%t&#8221;"/>
+ <l:template name="sect3" text="&#1492;&#1505;&#1506;&#1497;&#1507; &#1513;&#1504;&#1511;&#1512;&#1488; &#8220;%t&#8221;"/>
+ <l:template name="sect4" text="&#1492;&#1505;&#1506;&#1497;&#1507; &#1513;&#1504;&#1511;&#1512;&#1488; &#8220;%t&#8221;"/>
+ <l:template name="sect5" text="&#1492;&#1505;&#1506;&#1497;&#1507; &#1513;&#1504;&#1511;&#1512;&#1488; &#8220;%t&#8221;"/>
+ <l:template name="section" text="&#1492;&#1505;&#1506;&#1497;&#1507; &#1513;&#1504;&#1511;&#1512;&#1488; &#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="&#1492;&#1505;&#1506;&#1497;&#1507; &#1513;&#1504;&#1511;&#1512;&#1488; &#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="&#1505;&#1506;&#1497;&#1507; %n"/>
+ <l:template name="refsection" text="&#1492;&#1505;&#1506;&#1497;&#1507; &#1513;&#1504;&#1511;&#1512;&#1488; &#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#1492;&#1505;&#1506;&#1497;&#1507; &#1513;&#1504;&#1511;&#1512;&#1488; &#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#1492;&#1505;&#1506;&#1497;&#1507; &#1513;&#1504;&#1511;&#1512;&#1488; &#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#1492;&#1505;&#1506;&#1497;&#1507; &#1513;&#1504;&#1511;&#1512;&#1488; &#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#1505;&#1506;&#1497;&#1507; %n"/>
+ <l:template name="sect2" text="&#1505;&#1506;&#1497;&#1507; %n"/>
+ <l:template name="sect3" text="&#1505;&#1506;&#1497;&#1507; %n"/>
+ <l:template name="sect4" text="&#1505;&#1506;&#1497;&#1507; %n"/>
+ <l:template name="sect5" text="&#1505;&#1506;&#1497;&#1507; %n"/>
+ <l:template name="section" text="&#1505;&#1506;&#1497;&#1507; %n"/>
+ <l:template name="simplesect" text="&#1492;&#1505;&#1506;&#1497;&#1507; &#1513;&#1504;&#1511;&#1512;&#1488; &#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" &#1493; "/>
+ <l:template name="seplast" text=", &#1493; "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="&#1512;&#1488;&#1492; "/>
+ <l:template name="seealso" text="&#1512;&#1488;&#1492; &#1490;&#1501; "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="&#1511;&#1492;&#1500; &#1497;&#1506;&#1491;: "/>
+ <l:template name="MsgLevel" text="&#1512;&#1502;&#1492;: "/>
+ <l:template name="MsgOrig" text="&#1502;&#1511;&#1493;&#1512;: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/hu.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/hu.xml
new file mode 100644
index 0000000..01eb18e
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/hu.xml
@@ -0,0 +1,454 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="hu" english-language-name="Hungarian">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="Kivonat"/>
+ <l:gentext key="abstract" text="kivonat"/>
+ <l:gentext key="Answer" text="V:"/>
+ <l:gentext key="answer" text="v:"/>
+ <l:gentext key="Appendix" text="F&#252;ggel&#233;k"/>
+ <l:gentext key="appendix" text="f&#252;ggel&#233;k"/>
+ <l:gentext key="Article" text="Cikk"/>
+ <l:gentext key="article" text="cikk"/>
+ <l:gentext key="Bibliography" text="Irodalomjegyz&#233;k"/>
+ <l:gentext key="bibliography" text="irodalomjegyz&#233;k"/>
+ <l:gentext key="Book" text="K&#246;nyv"/>
+ <l:gentext key="book" text="k&#246;nyv"/>
+ <l:gentext key="CAUTION" text="FIGYELEM"/>
+ <l:gentext key="Caution" text="Figyelem"/>
+ <l:gentext key="caution" text="figyelem"/>
+ <l:gentext key="Chapter" text="Fejezet"/>
+ <l:gentext key="chapter" text="fejezet"/>
+ <l:gentext key="Colophon" text="V&#233;gsz&#243;"/>
+ <l:gentext key="colophon" text="v&#233;gsz&#243;"/>
+ <l:gentext key="Copyright" text="Copyright"/>
+ <l:gentext key="copyright" text="copyright"/>
+ <l:gentext key="Dedication" text="Aj&#225;nl&#225;s"/>
+ <l:gentext key="dedication" text="aj&#225;nl&#225;s"/>
+ <l:gentext key="Edition" text="Kiad&#225;s"/>
+ <l:gentext key="edition" text="kiad&#225;s"/>
+ <l:gentext key="Equation" text="Egyenlet"/>
+ <l:gentext key="equation" text="egyenlet"/>
+ <l:gentext key="Example" text="P&#233;lda"/>
+ <l:gentext key="example" text="p&#233;lda"/>
+ <l:gentext key="Figure" text="&#193;bra"/>
+ <l:gentext key="figure" text="&#225;bra"/>
+ <l:gentext key="Glossary" text="Sz&#243;jegyz&#233;k"/>
+ <l:gentext key="glossary" text="sz&#243;jegyz&#233;k"/>
+ <l:gentext key="GlossSee" text="L&#225;sd"/>
+ <l:gentext key="glosssee" text="l&#225;sd"/>
+ <l:gentext key="GlossSeeAlso" text="L&#225;sd m&#233;g"/>
+ <l:gentext key="glossseealso" text="l&#225;sd m&#233;g"/>
+ <l:gentext key="IMPORTANT" text="FONTOS"/>
+ <l:gentext key="Important" text="Fontos"/>
+ <l:gentext key="important" text="fontos"/>
+ <l:gentext key="Index" text="T&#225;rgymutat&#243;"/>
+ <l:gentext key="index" text="t&#225;rgymutat&#243;"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="isbn"/>
+ <l:gentext key="LegalNotice" text="Jogi k&#246;zlem&#233;ny"/>
+ <l:gentext key="legalnotice" text="jogi k&#246;zlem&#233;ny"/>
+ <l:gentext key="MsgAud" text="C&#233;lk&#246;z&#246;ns&#233;g"/>
+ <l:gentext key="msgaud" text="c&#233;lk&#246;z&#246;ns&#233;g"/>
+ <l:gentext key="MsgLevel" text="Szint"/>
+ <l:gentext key="msglevel" text="szint"/>
+ <l:gentext key="MsgOrig" text="Eredet"/>
+ <l:gentext key="msgorig" text="eredet"/>
+ <l:gentext key="NOTE" text="MEGJEGYZ&#201;S"/>
+ <l:gentext key="Note" text="Megjegyz&#233;s"/>
+ <l:gentext key="note" text="megjegyz&#233;s"/>
+ <l:gentext key="Part" text="R&#233;sz"/>
+ <l:gentext key="part" text="r&#233;sz"/>
+ <l:gentext key="Preface" text="El&#337;sz&#243;"/>
+ <l:gentext key="preface" text="el&#337;sz&#243;"/>
+ <l:gentext key="Procedure" text="Elj&#225;r&#225;s"/>
+ <l:gentext key="procedure" text="elj&#225;r&#225;s"/>
+ <l:gentext key="ProductionSet" text="Elemcsoport"/>
+ <l:gentext key="Published" text="Megjelent"/>
+ <l:gentext key="published" text="megjelent"/>
+ <l:gentext key="Question" text="K:"/>
+ <l:gentext key="question" text="k:"/>
+ <l:gentext key="RefEntry" text="Bejegyz&#233;s"/>
+ <l:gentext key="refentry" text="bejegyz&#233;s"/>
+ <l:gentext key="Reference" text="Referencia"/>
+ <l:gentext key="reference" text="referencia"/>
+ <l:gentext key="RefName" text="N&#233;v"/>
+ <l:gentext key="refname" text="n&#233;v"/>
+ <l:gentext key="RefSection" text="Szakasz"/>
+ <l:gentext key="refsection" text="szakasz"/>
+ <l:gentext key="RefSynopsisDiv" text="&#193;ttekint&#233;s"/>
+ <l:gentext key="refsynopsisdiv" text="&#225;ttekint&#233;s"/>
+ <l:gentext key="RevHistory" text="Verzi&#243;t&#246;rt&#233;net"/>
+ <l:gentext key="revhistory" text="verzi&#243;t&#246;rt&#233;net"/>
+ <l:gentext key="Revision" text="Verzi&#243;"/>
+ <l:gentext key="revision" text="verzi&#243;"/>
+ <l:gentext key="sect1" text="Szakasz"/>
+ <l:gentext key="sect2" text="Szakasz"/>
+ <l:gentext key="sect3" text="Szakasz"/>
+ <l:gentext key="sect4" text="Szakasz"/>
+ <l:gentext key="sect5" text="Szakasz"/>
+ <l:gentext key="Section" text="Szakasz"/>
+ <l:gentext key="section" text="szakasz"/>
+ <l:gentext key="See" text="L&#225;sd"/>
+ <l:gentext key="see" text="l&#225;sd"/>
+ <l:gentext key="SeeAlso" text="L&#225;sd m&#233;g"/>
+ <l:gentext key="Seealso" text="L&#225;sd m&#233;g"/>
+ <l:gentext key="seealso" text="l&#225;sd m&#233;g"/>
+ <l:gentext key="Set" text="Csoport"/>
+ <l:gentext key="set" text="csoport"/>
+ <l:gentext key="SetIndex" text="Csoportmutat&#243;"/>
+ <l:gentext key="setindex" text="csoportmutat&#243;"/>
+ <l:gentext key="Sidebar" text="Sz&#233;ljegyzet"/>
+ <l:gentext key="sidebar" text="sz&#233;ljegyzet"/>
+ <l:gentext key="Step" text="L&#233;p&#233;s"/>
+ <l:gentext key="step" text="l&#233;p&#233;s"/>
+ <l:gentext key="Table" text="T&#225;bl&#225;zat"/>
+ <l:gentext key="table" text="t&#225;bl&#225;zat"/>
+ <l:gentext key="TIP" text="TIPP"/>
+ <l:gentext key="Tip" text="Tipp"/>
+ <l:gentext key="tip" text="tipp"/>
+ <l:gentext key="WARNING" text="FIGYELEM"/>
+ <l:gentext key="Warning" text="Figyelem"/>
+ <l:gentext key="warning" text="figyelem"/>
+ <l:gentext key="and" text="&#233;s"/>
+ <l:gentext key="by" text=""/>
+ <l:gentext key="Edited" text="Szerk."/>
+ <l:gentext key="edited" text="szerk."/>
+ <l:gentext key="Editedby" text="Szerkesztette"/>
+ <l:gentext key="editedby" text="szerkesztette"/>
+ <l:gentext key="in" text=""/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="nem l&#233;tez&#337; elem"/>
+ <l:gentext key="notes" text="megjegyz&#233;sek"/>
+ <l:gentext key="Notes" text="Megjegyz&#233;sek"/>
+ <l:gentext key="Pgs" text="Lsz."/>
+ <l:gentext key="pgs" text="lsz."/>
+ <l:gentext key="Revisedby" text="Megvizsg&#225;lva"/>
+ <l:gentext key="revisedby" text="megvizsg&#225;lva"/>
+ <l:gentext key="TableNotes" text="Megjegyz&#233;sek"/>
+ <l:gentext key="tablenotes" text="megjegyz&#233;sek"/>
+ <l:gentext key="TableofContents" text="Tartalom"/>
+ <l:gentext key="tableofcontents" text="tartalom"/>
+ <l:gentext key="unexpectedelementname" text="nem v&#225;rt elemn&#233;v"/>
+ <l:gentext key="unsupported" text="nem t&#225;mogatott"/>
+ <l:gentext key="xrefto" text="keresztref"/>
+ <l:gentext key="listofequations" text="az egyenletek list&#225;ja"/>
+ <l:gentext key="ListofEquations" text="Az egyenletek list&#225;ja"/>
+ <l:gentext key="ListofExamples" text="A p&#233;ld&#225;k list&#225;ja"/>
+ <l:gentext key="listofexamples" text="a p&#233;ld&#225;k list&#225;ja"/>
+ <l:gentext key="ListofFigures" text="Az &#225;br&#225;k list&#225;ja"/>
+ <l:gentext key="listoffigures" text="az &#225;br&#225;k list&#225;ja"/>
+ <l:gentext key="listoftables" text="a t&#225;bl&#225;zatok list&#225;ja"/>
+ <l:gentext key="ListofTables" text="A t&#225;bl&#225;zatok list&#225;ja"/>
+ <l:gentext key="ListofUnknown" text="Az egy&#233;b elemek list&#225;ja"/>
+ <l:gentext key="listofunknown" text="az egy&#233;b elemek list&#225;ja"/>
+ <l:gentext key="nav-home" text="Tartalom"/>
+ <l:gentext key="nav-next" text="K&#246;vetkez&#337;"/>
+ <l:gentext key="nav-next-sibling" text="Gyors el&#337;re"/>
+ <l:gentext key="nav-prev" text="El&#337;z&#337;"/>
+ <l:gentext key="nav-prev-sibling" text="Gyors vissza"/>
+ <l:gentext key="nav-up" text="Fel"/>
+ <l:gentext key="sectioncalled" text="ilyen nev&#369; szakasz:"/>
+ <l:gentext key="Draft" text="V&#225;zlat"/>
+ <l:gentext key="above" text="fent"/>
+ <l:gentext key="below" text="lent"/>
+ <l:gentext key="index symbols" text="szimb&#243;lummutat&#243;"/>
+ <l:gentext key="lowercase.alpha" text="a&#225;bcde&#233;fghi&#237;jklmno&#243;&#246;&#337;pqrstu&#250;&#252;&#171;vwxyz"/>
+ <l:gentext key="uppercase.alpha" text="A&#193;BCDE&#201;FGHI&#205;JKLMNO&#211;&#214;&#336;PQRSTU&#218;&#220;&#368;VWXYZ"/>
+ <l:dingbat key="startquote" text="&#8222;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#187;"/>
+ <l:dingbat key="nestedendquote" text="&#171;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="last-first"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="%n. f&#252;ggel&#233;k - %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="%n. fejezet - %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="%n. egyenlet - %t"/>
+ <l:template name="example" text="%n. p&#233;lda - %t"/>
+ <l:template name="figure" text="%n. &#225;bra - %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="%n. r&#233;sz - %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="Elj&#225;r&#225;s&#160;%n.&#160;%t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Elemcsoport&#160;%n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="%n. t&#225;bl&#225;zat - %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="%n. f&#252;ggel&#233;k - %t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%n. fejezet - %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%n. %t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="V:&#160;%n"/>
+ <l:template name="appendix" text="%n. f&#252;ggel&#233;k - %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="%n. fejezet - %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Egyenlet&#160;%n"/>
+ <l:template name="example" text="%n. p&#233;lda - %t"/>
+ <l:template name="figure" text="%n. &#225;bra - %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="%n. r&#233;sz - %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="Elj&#225;r&#225;s&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="K:&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="K:&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="%n. t&#225;bl&#225;zat - %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#8220;%t&#8221;"/>
+ <l:template name="sect2" text="&#8220;%t&#8221;"/>
+ <l:template name="sect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect4" text="&#8220;%t&#8221;"/>
+ <l:template name="sect5" text="&#8220;%t&#8221;"/>
+ <l:template name="section" text="&#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="%n. szakasz"/>
+ <l:template name="sect2" text="%n. szakasz"/>
+ <l:template name="sect3" text="%n. szakasz"/>
+ <l:template name="sect4" text="%n. szakasz"/>
+ <l:template name="sect5" text="%n. szakasz"/>
+ <l:template name="section" text="%n. szakasz"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" &#233;s "/>
+ <l:template name="seplast" text=", &#233;s "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="L&#225;sd "/>
+ <l:template name="seealso" text="L&#225;sd m&#233;g "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="C&#233;lk&#246;z&#246;ns&#233;g: "/>
+ <l:template name="MsgLevel" text="Szint: "/>
+ <l:template name="MsgOrig" text="Eredet: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/id.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/id.xml
new file mode 100644
index 0000000..1620995
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/id.xml
@@ -0,0 +1,454 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="id" english-language-name="Indonesian">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="Abstrak"/>
+ <l:gentext key="abstract" text="Abstrak"/>
+ <l:gentext key="Answer" text="Jawab:"/>
+ <l:gentext key="answer" text="Jawab:"/>
+ <l:gentext key="Appendix" text="Lampiran"/>
+ <l:gentext key="appendix" text="lampiran"/>
+ <l:gentext key="Article" text="Artikel"/>
+ <l:gentext key="article" text="Artikel"/>
+ <l:gentext key="Bibliography" text="Bibliografi"/>
+ <l:gentext key="bibliography" text="Bibliografi"/>
+ <l:gentext key="Book" text="Buku"/>
+ <l:gentext key="book" text="Buku"/>
+ <l:gentext key="CAUTION" text="PERHATIAN"/>
+ <l:gentext key="Caution" text="Perhatian"/>
+ <l:gentext key="caution" text="Perhatian"/>
+ <l:gentext key="Chapter" text="Bab"/>
+ <l:gentext key="chapter" text="bab"/>
+ <l:gentext key="Colophon" text="Kolofon"/>
+ <l:gentext key="colophon" text="Kolofon"/>
+ <l:gentext key="Copyright" text="Hak Cipta"/>
+ <l:gentext key="copyright" text="Hak Cipta"/>
+ <l:gentext key="Dedication" text="Dedikasi"/>
+ <l:gentext key="dedication" text="Dedikasi"/>
+ <l:gentext key="Edition" text="Edisi"/>
+ <l:gentext key="edition" text="Edisi"/>
+ <l:gentext key="Equation" text="Persamaan"/>
+ <l:gentext key="equation" text="Persamaan"/>
+ <l:gentext key="Example" text="Teladan"/>
+ <l:gentext key="example" text="Teladan"/>
+ <l:gentext key="Figure" text="Gambar"/>
+ <l:gentext key="figure" text="Gambar"/>
+ <l:gentext key="Glossary" text="Daftar Istilah"/>
+ <l:gentext key="glossary" text="Daftar Istilah"/>
+ <l:gentext key="GlossSee" text="Lihat"/>
+ <l:gentext key="glosssee" text="Lihat"/>
+ <l:gentext key="GlossSeeAlso" text="Lihat Juga"/>
+ <l:gentext key="glossseealso" text="Lihat Juga"/>
+ <l:gentext key="IMPORTANT" text="PENTING"/>
+ <l:gentext key="Important" text="Penting"/>
+ <l:gentext key="important" text="Penting"/>
+ <l:gentext key="Index" text="Indeks"/>
+ <l:gentext key="index" text="Indeks"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text="Aspek Hukum"/>
+ <l:gentext key="legalnotice" text="Aspek Hukum"/>
+ <l:gentext key="MsgAud" text="Pemirsa"/>
+ <l:gentext key="msgaud" text="Pemirsa"/>
+ <l:gentext key="MsgLevel" text="Tingkatan"/>
+ <l:gentext key="msglevel" text="Tingkatan"/>
+ <l:gentext key="MsgOrig" text="Asal"/>
+ <l:gentext key="msgorig" text="Asal"/>
+ <l:gentext key="NOTE" text="CATATAN"/>
+ <l:gentext key="Note" text="Catatan"/>
+ <l:gentext key="note" text="Catatan"/>
+ <l:gentext key="Part" text="Bagian"/>
+ <l:gentext key="part" text="Bagian"/>
+ <l:gentext key="Preface" text="Kata Pengantar"/>
+ <l:gentext key="preface" text="Kata Pengantar"/>
+ <l:gentext key="Procedure" text="Prosedur"/>
+ <l:gentext key="procedure" text="Prosedur"/>
+ <l:gentext key="ProductionSet" text="Production"/>
+ <l:gentext key="Published" text="Diterbitkan"/>
+ <l:gentext key="published" text="Diterbitkan"/>
+ <l:gentext key="Question" text="Tanya:"/>
+ <l:gentext key="question" text="Tanya:"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="Referensi"/>
+ <l:gentext key="reference" text="Referensi"/>
+ <l:gentext key="RefName" text="Nama"/>
+ <l:gentext key="refname" text="Nama"/>
+ <l:gentext key="RefSection" text=""/>
+ <l:gentext key="refsection" text=""/>
+ <l:gentext key="RefSynopsisDiv" text="Sinopsis"/>
+ <l:gentext key="refsynopsisdiv" text="Sinopsis"/>
+ <l:gentext key="RevHistory" text="Catatan Revisi"/>
+ <l:gentext key="revhistory" text="Catatan Revisi"/>
+ <l:gentext key="Revision" text="Revisi"/>
+ <l:gentext key="revision" text="Revisi"/>
+ <l:gentext key="sect1" text="Bagian"/>
+ <l:gentext key="sect2" text="Bagian"/>
+ <l:gentext key="sect3" text="Bagian"/>
+ <l:gentext key="sect4" text="Bagian"/>
+ <l:gentext key="sect5" text="Bagian"/>
+ <l:gentext key="Section" text="Bagian"/>
+ <l:gentext key="section" text="bagian"/>
+ <l:gentext key="See" text="Lihat"/>
+ <l:gentext key="see" text="Lihat"/>
+ <l:gentext key="SeeAlso" text="Lihat Juga"/>
+ <l:gentext key="Seealso" text="Lihat juga"/>
+ <l:gentext key="seealso" text="Lihat Juga"/>
+ <l:gentext key="Set" text="Set"/>
+ <l:gentext key="set" text="Set"/>
+ <l:gentext key="SetIndex" text="Indeks Set"/>
+ <l:gentext key="setindex" text="Indeks Set"/>
+ <l:gentext key="Sidebar" text=""/>
+ <l:gentext key="sidebar" text="sidebar"/>
+ <l:gentext key="Step" text="Tahap"/>
+ <l:gentext key="step" text="tahap"/>
+ <l:gentext key="Table" text="Tabel"/>
+ <l:gentext key="table" text="Tabel"/>
+ <l:gentext key="TIP" text="TIP"/>
+ <l:gentext key="Tip" text="Tip"/>
+ <l:gentext key="tip" text="Tip"/>
+ <l:gentext key="WARNING" text="AWAS"/>
+ <l:gentext key="Warning" text="Awas"/>
+ <l:gentext key="warning" text="Awas"/>
+ <l:gentext key="and" text="dan"/>
+ <l:gentext key="by" text="oleh"/>
+ <l:gentext key="Edited" text="disunting"/>
+ <l:gentext key="edited" text="disunting"/>
+ <l:gentext key="Editedby" text="disunting oleh"/>
+ <l:gentext key="editedby" text="disunting oleh"/>
+ <l:gentext key="in" text="di"/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="elemen tak tampak"/>
+ <l:gentext key="notes" text="Catatan"/>
+ <l:gentext key="Notes" text="Catatan"/>
+ <l:gentext key="Pgs" text="Hal."/>
+ <l:gentext key="pgs" text="Hal."/>
+ <l:gentext key="Revisedby" text="Direvisi oleh: "/>
+ <l:gentext key="revisedby" text="Direvisi oleh: "/>
+ <l:gentext key="TableNotes" text="Catatan"/>
+ <l:gentext key="tablenotes" text="Catatan"/>
+ <l:gentext key="TableofContents" text="Daftar Isi"/>
+ <l:gentext key="tableofcontents" text="Daftar Isi"/>
+ <l:gentext key="unexpectedelementname" text="Nama Elemen seharusnya tidak ada"/>
+ <l:gentext key="unsupported" text="tidak didukung"/>
+ <l:gentext key="xrefto" text="xref ke"/>
+ <l:gentext key="listofequations" text="Daftar Persamaan"/>
+ <l:gentext key="ListofEquations" text="Daftar Persamaan"/>
+ <l:gentext key="ListofExamples" text="Daftar Teladan"/>
+ <l:gentext key="listofexamples" text="Daftar Teladan"/>
+ <l:gentext key="ListofFigures" text="Daftar Gambar"/>
+ <l:gentext key="listoffigures" text="Daftar Gambar"/>
+ <l:gentext key="listoftables" text="Daftar Tabel"/>
+ <l:gentext key="ListofTables" text="Daftar Tabel"/>
+ <l:gentext key="ListofUnknown" text="Daftar Gaib"/>
+ <l:gentext key="listofunknown" text="Daftar Gaib"/>
+ <l:gentext key="nav-home" text="Depan"/>
+ <l:gentext key="nav-next" text="Lanjut"/>
+ <l:gentext key="nav-next-sibling" text="Lewati"/>
+ <l:gentext key="nav-prev" text="Kembali"/>
+ <l:gentext key="nav-prev-sibling" text="Sebelumnya"/>
+ <l:gentext key="nav-up" text="Induk"/>
+ <l:gentext key="sectioncalled" text="the section called"/>
+ <l:gentext key="Draft" text="Draft"/>
+ <l:gentext key="above" text="above"/>
+ <l:gentext key="below" text="below"/>
+ <l:gentext key="index symbols" text="Symbols"/>
+ <l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz"/>
+ <l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="Lampiran %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Bab %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Persamaan %n. %t"/>
+ <l:template name="example" text="Teladan %n. %t"/>
+ <l:template name="figure" text="Gambar %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Bagian %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="Prosedur&#160;%n.&#160;%t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Production&#160;%n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="Tabel %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="Lampiran %n. %t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="Bab %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%n. %t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="Jawab:&#160;%n"/>
+ <l:template name="appendix" text="Lampiran %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Bab %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Persamaan&#160;%n"/>
+ <l:template name="example" text="Teladan %n. %t"/>
+ <l:template name="figure" text="Gambar %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Bagian %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="Prosedur&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="Tanya:&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="Tanya:&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="Tabel %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#8220;%t&#8221;"/>
+ <l:template name="sect2" text="&#8220;%t&#8221;"/>
+ <l:template name="sect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect4" text="&#8220;%t&#8221;"/>
+ <l:template name="sect5" text="&#8220;%t&#8221;"/>
+ <l:template name="section" text="&#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="Bagian %n"/>
+ <l:template name="sect2" text="Bagian %n"/>
+ <l:template name="sect3" text="Bagian %n"/>
+ <l:template name="sect4" text="Bagian %n"/>
+ <l:template name="sect5" text="Bagian %n"/>
+ <l:template name="section" text="Bagian %n"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" dan "/>
+ <l:template name="seplast" text=", dan "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="Lihat "/>
+ <l:template name="seealso" text="Lihat Juga "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="Pemirsa: "/>
+ <l:template name="MsgLevel" text="Tingkatan: "/>
+ <l:template name="MsgOrig" text="Asal: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/it.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/it.xml
new file mode 100644
index 0000000..b79adea
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/it.xml
@@ -0,0 +1,455 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="it" english-language-name="Italian">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="Estratto"/>
+ <l:gentext key="abstract" text="Estratto"/>
+ <l:gentext key="Answer" text="R:"/>
+ <l:gentext key="answer" text="R:"/>
+ <l:gentext key="Appendix" text="Appendice"/>
+ <l:gentext key="appendix" text="appendice"/>
+ <l:gentext key="Article" text="Articolo"/>
+ <l:gentext key="article" text="Articolo"/>
+ <l:gentext key="Bibliography" text="Bibliografia"/>
+ <l:gentext key="bibliography" text="Bibliografia"/>
+ <l:gentext key="Book" text="Libro"/>
+ <l:gentext key="book" text="Libro"/>
+ <l:gentext key="CAUTION" text="ATTENZIONE"/>
+ <l:gentext key="Caution" text="Attenzione"/>
+ <l:gentext key="caution" text="Attenzione"/>
+ <l:gentext key="Chapter" text="Capitolo"/>
+ <l:gentext key="chapter" text="capitolo"/>
+ <l:gentext key="Colophon" text="Colophon"/>
+ <l:gentext key="colophon" text="Colophon"/>
+ <l:gentext key="Copyright" text="Copyright"/>
+ <l:gentext key="copyright" text="Copyright"/>
+ <l:gentext key="Dedication" text="Dedica"/>
+ <l:gentext key="dedication" text="Dedica"/>
+ <l:gentext key="Edition" text="Edizione"/>
+ <l:gentext key="edition" text="Edizione"/>
+ <l:gentext key="Equation" text="Equazione"/>
+ <l:gentext key="equation" text="Equazione"/>
+ <l:gentext key="Example" text="Esempio"/>
+ <l:gentext key="example" text="Esempio"/>
+ <l:gentext key="Figure" text="Figura"/>
+ <l:gentext key="figure" text="Figura"/>
+ <l:gentext key="Glossary" text="Glossario"/>
+ <l:gentext key="glossary" text="Glossario"/>
+ <l:gentext key="GlossSee" text="Vedi"/>
+ <l:gentext key="glosssee" text="Vedi"/>
+ <l:gentext key="GlossSeeAlso" text="Vedi Anche"/>
+ <l:gentext key="glossseealso" text="Vedi Anche"/>
+ <l:gentext key="IMPORTANT" text="IMPORTANTE"/>
+ <l:gentext key="important" text="Importante"/>
+ <l:gentext key="Important" text="Importante"/>
+ <l:gentext key="Index" text="Indice"/>
+ <l:gentext key="index" text="Indice"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text="Note Legali"/>
+ <l:gentext key="legalnotice" text="Note Legali"/>
+ <l:gentext key="MsgAud" text="Pubblico"/>
+ <l:gentext key="msgaud" text="Pubblico"/>
+ <l:gentext key="MsgLevel" text="Livello"/>
+ <l:gentext key="msglevel" text="Livello"/>
+ <l:gentext key="MsgOrig" text="Origine"/>
+ <l:gentext key="msgorig" text="Origine"/>
+ <l:gentext key="NOTE" text="NOTA"/>
+ <l:gentext key="Note" text="Nota"/>
+ <l:gentext key="note" text="Nota"/>
+ <l:gentext key="Part" text="Parte"/>
+ <l:gentext key="part" text="Parte"/>
+ <l:gentext key="Preface" text="Prefazione"/>
+ <l:gentext key="preface" text="Prefazione"/>
+ <l:gentext key="Procedure" text="Procedura"/>
+ <l:gentext key="procedure" text="Procedura"/>
+ <l:gentext key="ProductionSet" text="Produzione"/>
+ <l:gentext key="Published" text="Pubblicato"/>
+ <l:gentext key="published" text="Pubblicato"/>
+ <l:gentext key="Question" text="D:"/>
+ <l:gentext key="question" text="D:"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="Riferimento"/>
+ <l:gentext key="reference" text="Riferimento"/>
+ <l:gentext key="RefName" text="Nome"/>
+ <l:gentext key="refname" text="Nome"/>
+ <l:gentext key="RefSection" text=""/>
+ <l:gentext key="refsection" text=""/>
+ <l:gentext key="RefSynopsisDiv" text="Sinossi"/>
+ <l:gentext key="refsynopsisdiv" text="Sinossi"/>
+ <l:gentext key="RevHistory" text="Diario delle Revisioni"/>
+ <l:gentext key="revhistory" text="Diario delle Revisioni"/>
+ <l:gentext key="revision" text="Revisione"/>
+ <l:gentext key="Revision" text="Revisione"/>
+ <l:gentext key="sect1" text="Sezione"/>
+ <l:gentext key="sect2" text="Sezione"/>
+ <l:gentext key="sect3" text="Sezione"/>
+ <l:gentext key="sect4" text="Sezione"/>
+ <l:gentext key="sect5" text="Sezione"/>
+ <l:gentext key="section" text="Sezione"/>
+ <l:gentext key="Section" text="Sezione"/>
+ <l:gentext key="See" text="Vd."/>
+ <l:gentext key="see" text="Vd."/>
+ <l:gentext key="SeeAlso" text="Vd. Anche"/>
+ <l:gentext key="seealso" text="Vd. Anche"/>
+ <l:gentext key="Seealso" text="Vd. anche"/>
+ <l:gentext key="set" text="Raccolta"/>
+ <l:gentext key="Set" text="Raccolta"/>
+ <l:gentext key="setindex" text="Indice Raccolta"/>
+ <l:gentext key="SetIndex" text="Indice Raccolta"/>
+ <l:gentext key="Sidebar" text=""/>
+ <l:gentext key="sidebar" text="nota a margine"/>
+ <l:gentext key="step" text="passo"/>
+ <l:gentext key="Step" text="Passo"/>
+ <l:gentext key="Table" text="Tabella"/>
+ <l:gentext key="table" text="Tabella"/>
+ <l:gentext key="tip" text="Suggerimento"/>
+ <l:gentext key="TIP" text="SUGGERIMENTO"/>
+ <l:gentext key="Tip" text="Suggerimento"/>
+ <l:gentext key="Warning" text="Avvertimento"/>
+ <l:gentext key="warning" text="avvertimento"/>
+ <l:gentext key="WARNING" text="AVVERTIMENTO"/>
+ <l:gentext key="and" text="e"/>
+ <l:gentext key="by" text="di"/>
+ <l:gentext key="Edited" text="A cura"/>
+ <l:gentext key="edited" text="A cura"/>
+ <l:gentext key="Editedby" text="A cura di"/>
+ <l:gentext key="editedby" text="A cura di"/>
+ <l:gentext key="in" text="in"/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="elemento non esistente"/>
+ <l:gentext key="notes" text="Note"/>
+ <l:gentext key="Notes" text="Note"/>
+ <l:gentext key="Pgs" text="pp."/>
+ <l:gentext key="pgs" text="pp."/>
+ <l:gentext key="Revisedby" text="Revisionato da: "/>
+ <l:gentext key="revisedby" text="Revisionato da: "/>
+ <l:gentext key="TableNotes" text="Note"/>
+ <l:gentext key="tablenotes" text="Note"/>
+ <l:gentext key="TableofContents" text="Sommario"/>
+ <l:gentext key="tableofcontents" text="Sommario"/>
+ <l:gentext key="unexpectedelementname" text="Nome elemento inaspettato"/>
+ <l:gentext key="unsupported" text="non supportato"/>
+ <l:gentext key="xrefto" text="riferimento a"/>
+ <l:gentext key="listofequations" text="Lista delle Equazioni"/>
+ <l:gentext key="ListofEquations" text="Lista delle Equazioni"/>
+ <l:gentext key="ListofExamples" text="Lista degli Esempi"/>
+ <l:gentext key="listofexamples" text="Lista degli Esempi"/>
+ <l:gentext key="ListofFigures" text="Lista delle Figure"/>
+ <l:gentext key="listoffigures" text="Lista delle Figure"/>
+ <l:gentext key="listoftables" text="Lista delle Tabelle"/>
+ <l:gentext key="ListofTables" text="Lista delle Tabelle"/>
+ <l:gentext key="ListofUnknown" text="Lista degli Sconosciuti"/>
+ <l:gentext key="listofunknown" text="Lista degli Sconosciuti"/>
+ <l:gentext key="nav-home" text="Partenza"/>
+ <l:gentext key="nav-next" text="Avanti"/>
+ <l:gentext key="nav-next-sibling" text="Salta Avanti"/>
+ <l:gentext key="nav-prev" text="Indietro"/>
+ <l:gentext key="nav-prev-sibling" text="Salta Indietro"/>
+ <l:gentext key="nav-up" text="Risali"/>
+ <l:gentext key="Draft" text="Bozza"/>
+ <l:gentext key="above" text="sopra"/>
+ <l:gentext key="below" text="sotto"/>
+ <l:gentext key="sectioncalled" text="la sezione chiamata"/>
+ <l:gentext key="index symbols" text="Simboli"/>
+ <l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz"/>
+ <l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+<l:context name="empty">
+ <l:template name="appendix" text="Titoli di Appendice (vuoto)"/>
+ <l:template name="article" text="Titoli di Articolo (vuoto)"/>
+ <l:template name="bibliodiv" text="Titoli Bibliodiv (vuoto)"/>
+ <l:template name="book" text="Titoli dei Libri (vuoto)"/>
+ <l:template name="chapter" text="Titoli dei Capitoli (vuoto)"/>
+ <l:template name="columns" text="Colonne"/>
+ <l:template name="draftarea" text="Area temporanea per"/>
+ <l:template name="edit-attrs" text="modifica gli attributi degli elementi corrispondenti"/>
+ <l:template name="footnote" text="Nota a pi&#232; di pagina"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Titoli di Prefazione (vuoto)"/>
+ <l:template name="part" text="Titoli di Parti (vuoto)"/>
+ <l:template name="section" text="Titoli di Sezione (vuoto)"/>
+ <l:template name="sect1" text="Titoli di Sezione (vuoto)"/>
+ <l:template name="sect2" text="Titoli di Sezione (vuoto)"/>
+ <l:template name="sect3" text="Titoli di Sezione (vuoto)"/>
+ <l:template name="sect4" text="Titoli di Sezione (vuoto)"/>
+ <l:template name="sect5" text="Titoli di Sezione (vuoto)"/>
+ <l:template name="set" text="Titoli di Set (vuoto)"/>
+ <l:template name="title" text="Titolo: "/>
+ <l:template name="titles" text="Nessun Elemento di Titolo alla Pagina"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+</l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="Appendice&#160;%n.&#160;%t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Capitolo&#160;%n.&#160;%t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Equazione&#160;%n.&#160;%t"/>
+ <l:template name="example" text="Esempio&#160;%n.&#160;%t"/>
+ <l:template name="figure" text="Figura&#160;%n.&#160;%t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Parte&#160;%n.&#160;%t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="Procedura&#160;%n.&#160;%t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Produzione&#160;%n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="Tabella&#160;%n.&#160;%t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text=""/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="Appendice&#160;%n.&#160;%t"/>
+ <l:template name="bridgehead" text="%n.&#160;%t"/>
+ <l:template name="chapter" text="Capitolo&#160;%n.&#160;%t"/>
+ <l:template name="sect1" text="%n.&#160;%t"/>
+ <l:template name="sect2" text="%n.&#160;%t"/>
+ <l:template name="sect3" text="%n.&#160;%t"/>
+ <l:template name="sect4" text="%n.&#160;%t"/>
+ <l:template name="sect5" text="%n.&#160;%t"/>
+ <l:template name="section" text="%n.&#160;%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="R:&#160;%n"/>
+ <l:template name="appendix" text="Appendice&#160;%n"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Capitolo&#160;%n"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Equazione&#160;%n"/>
+ <l:template name="example" text="Esempio&#160;%n"/>
+ <l:template name="figure" text="Figura&#160;%n"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Parte&#160;%n"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="Procedura&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="D:&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="D:&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="Tabella&#160;%n"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="la sezione chiamata &#8220;%t&#8221;"/>
+ <l:template name="refsection" text="la sezione chiamata &#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="la sezione chiamata &#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="la sezione chiamata &#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="la sezione chiamata &#8220;%t&#8221;"/>
+ <l:template name="sect1" text="la sezione chiamata &#8220;%t&#8221;"/>
+ <l:template name="sect2" text="la sezione chiamata &#8220;%t&#8221;"/>
+ <l:template name="sect3" text="la sezione chiamata &#8220;%t&#8221;"/>
+ <l:template name="sect4" text="la sezione chiamata &#8220;%t&#8221;"/>
+ <l:template name="sect5" text="la sezione chiamata &#8220;%t&#8221;"/>
+ <l:template name="section" text="la sezione chiamata &#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="la sezione chiamata &#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="Sezione&#160;%n"/>
+ <l:template name="refsection" text="la sezione chiamata &#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="la sezione chiamata &#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="la sezione chiamata &#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="la sezione chiamata &#8220;%t&#8221;"/>
+ <l:template name="sect1" text="Sezione&#160;%n"/>
+ <l:template name="sect2" text="Sezione&#160;%n"/>
+ <l:template name="sect3" text="Sezione&#160;%n"/>
+ <l:template name="sect4" text="Sezione&#160;%n"/>
+ <l:template name="sect5" text="Sezione&#160;%n"/>
+ <l:template name="section" text="Sezione&#160;%n"/>
+ <l:template name="simplesect" text="la sezione chiamata &#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" e "/>
+ <l:template name="seplast" text=", e "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="Vedi "/>
+ <l:template name="seealso" text="Vedi Anche "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="Pubblico: "/>
+ <l:template name="MsgLevel" text="Livello: "/>
+ <l:template name="MsgOrig" text="Origine: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/ja.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/ja.xml
new file mode 100644
index 0000000..ad95901
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/ja.xml
@@ -0,0 +1,456 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="ja" english-language-name="Japanese">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="&#27010;&#35201;"/>
+ <l:gentext key="abstract" text="&#27010;&#35201;"/>
+ <l:gentext key="Answer" text="&#31572;&#65306;"/>
+ <l:gentext key="answer" text="&#31572;&#65306;"/>
+ <l:gentext key="Appendix" text="&#20184;&#37682;"/>
+ <l:gentext key="appendix" text="&#20184;&#37682;"/>
+ <l:gentext key="Article" text="&#38917;&#30446;"/>
+ <l:gentext key="article" text="&#38917;&#30446;"/>
+ <l:gentext key="Bibliography" text="&#21442;&#32771;&#25991;&#29486;"/>
+ <l:gentext key="bibliography" text="&#21442;&#32771;&#25991;&#29486;"/>
+ <l:gentext key="Book" text="&#12502;&#12483;&#12463;"/>
+ <l:gentext key="book" text="&#12502;&#12483;&#12463;"/>
+ <l:gentext key="Caution" text="&#27880;&#24847;"/>
+ <l:gentext key="caution" text="&#27880;&#24847;"/>
+ <l:gentext key="CAUTION" text="&#27880;&#24847;"/>
+ <l:gentext key="chapter" text="&#31456;"/>
+ <l:gentext key="Chapter" text="&#31456;"/>
+ <l:gentext key="chapter1" text="&#31532;"/>
+ <l:gentext key="Chapter1" text="&#31532;"/>
+ <l:gentext key="Chapter2" text="&#31456;"/>
+ <l:gentext key="chapter2" text="&#31456;"/>
+ <l:gentext key="Colophon" text="&#22885;&#20184;"/>
+ <l:gentext key="colophon" text="&#22885;&#20184;"/>
+ <l:gentext key="Copyright" text="&#35069;&#20316;&#33879;&#20316;"/>
+ <l:gentext key="copyright" text="&#35069;&#20316;&#33879;&#20316;"/>
+ <l:gentext key="Dedication" text="&#35613;&#36766;"/>
+ <l:gentext key="dedication" text="&#35613;&#36766;"/>
+ <l:gentext key="Edition" text="&#32232;&#38598;"/>
+ <l:gentext key="edition" text="&#32232;&#38598;"/>
+ <l:gentext key="Equation" text="&#24335;"/>
+ <l:gentext key="equation" text="&#24335;"/>
+ <l:gentext key="Example" text="&#20363;"/>
+ <l:gentext key="example" text="&#20363;"/>
+ <l:gentext key="Figure" text="&#22259;"/>
+ <l:gentext key="figure" text="&#22259;"/>
+ <l:gentext key="Glossary" text="&#29992;&#35486;&#38598;"/>
+ <l:gentext key="glossary" text="&#29992;&#35486;&#38598;"/>
+ <l:gentext key="GlossSee" text="&#21442;&#29031;"/>
+ <l:gentext key="glosssee" text="&#21442;&#29031;"/>
+ <l:gentext key="GlossSeeAlso" text="&#21442;&#29031;"/>
+ <l:gentext key="glossseealso" text="&#21442;&#29031;"/>
+ <l:gentext key="IMPORTANT" text="&#37325;&#35201;&#38917;&#30446;"/>
+ <l:gentext key="Important" text="&#37325;&#35201;&#38917;&#30446;"/>
+ <l:gentext key="important" text="&#37325;&#35201;&#38917;&#30446;"/>
+ <l:gentext key="Index" text="&#30446;&#27425;"/>
+ <l:gentext key="index" text="&#30446;&#27425;"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text=""/>
+ <l:gentext key="legalnotice" text=""/>
+ <l:gentext key="MsgAud" text="&#23550;&#35937;&#32773;"/>
+ <l:gentext key="msgaud" text="&#23550;&#35937;&#32773;"/>
+ <l:gentext key="MsgLevel" text="&#12524;&#12505;&#12523;"/>
+ <l:gentext key="msglevel" text="&#12524;&#12505;&#12523;"/>
+ <l:gentext key="MsgOrig" text="&#30330;&#20449;&#20803;"/>
+ <l:gentext key="msgorig" text="&#30330;&#20449;&#20803;"/>
+ <l:gentext key="note" text="&#27880;&#24847;"/>
+ <l:gentext key="Note" text="&#27880;&#24847;"/>
+ <l:gentext key="NOTE" text="&#27880;&#24847;"/>
+ <l:gentext key="Part" text="&#12497;&#12540;&#12488;"/>
+ <l:gentext key="part" text="&#12497;&#12540;&#12488;"/>
+ <l:gentext key="Preface" text="&#24207;&#25991;"/>
+ <l:gentext key="preface" text="&#24207;&#25991;"/>
+ <l:gentext key="Procedure" text="&#25163;&#38918;"/>
+ <l:gentext key="procedure" text="&#25163;&#38918;"/>
+ <l:gentext key="ProductionSet" text="&#12503;&#12525;&#12480;&#12463;&#12471;&#12519;&#12531;"/>
+ <l:gentext key="Published" text="&#30330;&#34892;"/>
+ <l:gentext key="published" text="&#30330;&#34892;"/>
+ <l:gentext key="Question" text="&#21839;&#65306;"/>
+ <l:gentext key="question" text="&#21839;&#65306;"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="&#21442;&#29031;"/>
+ <l:gentext key="reference" text="&#21442;&#29031;"/>
+ <l:gentext key="RefName" text="&#21517;&#21069;"/>
+ <l:gentext key="refname" text="&#21517;&#21069;"/>
+ <l:gentext key="RefSection" text=""/>
+ <l:gentext key="refsection" text=""/>
+ <l:gentext key="RefSynopsisDiv" text="&#27010;&#35201;"/>
+ <l:gentext key="refsynopsisdiv" text="&#27010;&#35201;"/>
+ <l:gentext key="RevHistory" text="&#25913;&#35330;&#23653;&#27508;"/>
+ <l:gentext key="revhistory" text="&#25913;&#35330;&#23653;&#27508;"/>
+ <l:gentext key="revision" text="&#25913;&#35330;"/>
+ <l:gentext key="Revision" text="&#25913;&#35330;"/>
+ <l:gentext key="sect1" text="&#38917;"/>
+ <l:gentext key="sect2" text="&#38917;"/>
+ <l:gentext key="sect3" text="&#38917;"/>
+ <l:gentext key="sect4" text="&#38917;"/>
+ <l:gentext key="sect5" text="&#38917;"/>
+ <l:gentext key="Section" text="&#38917;"/>
+ <l:gentext key="section" text="&#38917;"/>
+ <l:gentext key="See" text="&#21442;&#29031;"/>
+ <l:gentext key="see" text="&#21442;&#29031;"/>
+ <l:gentext key="seealso" text="&#21442;&#29031;"/>
+ <l:gentext key="SeeAlso" text="&#21442;&#29031;"/>
+ <l:gentext key="Seealso" text="&#21442;&#29031;"/>
+ <l:gentext key="Set" text="&#35373;&#23450;"/>
+ <l:gentext key="set" text="&#35373;&#23450;"/>
+ <l:gentext key="SetIndex" text="&#30446;&#27425;&#35373;&#23450;"/>
+ <l:gentext key="setindex" text="&#30446;&#27425;&#35373;&#23450;"/>
+ <l:gentext key="Sidebar" text=""/>
+ <l:gentext key="sidebar" text="&#12469;&#12452;&#12489;&#12496;&#12540;"/>
+ <l:gentext key="step" text="&#12473;&#12486;&#12483;&#12503;"/>
+ <l:gentext key="Step" text="&#12473;&#12486;&#12483;&#12503;"/>
+ <l:gentext key="table" text="&#34920;"/>
+ <l:gentext key="Table" text="&#34920;"/>
+ <l:gentext key="TIP" text="&#12486;&#12451;&#12483;&#12503;"/>
+ <l:gentext key="Tip" text="&#12486;&#12451;&#12483;&#12503;"/>
+ <l:gentext key="tip" text="&#12486;&#12451;&#12483;&#12503;"/>
+ <l:gentext key="WARNING" text="&#35686;&#21578;"/>
+ <l:gentext key="Warning" text="&#35686;&#21578;"/>
+ <l:gentext key="warning" text="&#35686;&#21578;"/>
+ <l:gentext key="and" text="&#12289;"/>
+ <l:gentext key="by" text="&#65306;"/>
+ <l:gentext key="Edited" text="&#20316;&#32773;"/>
+ <l:gentext key="edited" text="&#20316;&#32773;"/>
+ <l:gentext key="Editedby" text="&#20316;&#32773;&#65306;"/>
+ <l:gentext key="editedby" text="&#20316;&#32773;&#65306;"/>
+ <l:gentext key="in" text=""/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="&#35201;&#32032;&#12364;&#23384;&#22312;&#12375;&#12414;&#12379;&#12435;"/>
+ <l:gentext key="notes" text="&#27880;&#24847;"/>
+ <l:gentext key="Notes" text="&#27880;&#24847;"/>
+ <l:gentext key="Pgs" text="&#20583;&#29486;"/>
+ <l:gentext key="pgs" text="&#20583;&#29486;"/>
+ <l:gentext key="Revisedby" text="Revised by: "/>
+ <l:gentext key="revisedby" text="Revised by: "/>
+ <l:gentext key="TableNotes" text="&#27880;&#24847;"/>
+ <l:gentext key="tablenotes" text="&#27880;&#24847;"/>
+ <l:gentext key="TableofContents" text="&#30446;&#27425;"/>
+ <l:gentext key="tableofcontents" text="&#30446;&#27425;"/>
+ <l:gentext key="unexpectedelementname" text="&#19981;&#26126;&#12394;&#35201;&#32032;&#21517;"/>
+ <l:gentext key="unsupported" text="&#12469;&#12509;&#12540;&#12488;&#12375;&#12414;&#12379;&#12435;"/>
+ <l:gentext key="xrefto" text="xref to"/>
+ <l:gentext key="listofequations" text="&#24335;&#30446;&#27425;"/>
+ <l:gentext key="ListofEquations" text="&#24335;&#30446;&#27425;"/>
+ <l:gentext key="ListofExamples" text="&#20363;&#30446;&#27425;"/>
+ <l:gentext key="listofexamples" text="&#20363;&#30446;&#27425;"/>
+ <l:gentext key="ListofFigures" text="&#22259;&#30446;&#27425;"/>
+ <l:gentext key="listoffigures" text="&#22259;&#30446;&#27425;"/>
+ <l:gentext key="listoftables" text="&#34920;&#30446;&#27425;"/>
+ <l:gentext key="ListofTables" text="&#34920;&#30446;&#27425;"/>
+ <l:gentext key="ListofUnknown" text="&#19981;&#26126;&#30446;&#27425;"/>
+ <l:gentext key="listofunknown" text="&#19981;&#26126;&#30446;&#27425;"/>
+ <l:gentext key="nav-home" text="&#12507;&#12540;&#12512;"/>
+ <l:gentext key="nav-next" text="&#27425;&#12398;&#12506;&#12540;&#12472;"/>
+ <l:gentext key="nav-next-sibling" text="&#26089;&#36865;&#12426;"/>
+ <l:gentext key="nav-prev" text="&#21069;&#12398;&#12506;&#12540;&#12472;"/>
+ <l:gentext key="nav-prev-sibling" text="&#24059;&#25147;&#12375;"/>
+ <l:gentext key="nav-up" text="&#19978;&#12395;&#25147;&#12427;"/>
+ <l:gentext key="index symbols" text="&#12471;&#12531;&#12508;&#12523;"/>
+ <l:gentext key="Draft" text="Draft"/>
+ <l:gentext key="above" text="above"/>
+ <l:gentext key="below" text="below"/>
+ <l:gentext key="sectioncalled" text="the section called"/>
+ <l:dingbat key="startquote" text="&#12300;"/>
+ <l:dingbat key="endquote" text="&#12301;"/>
+ <l:dingbat key="nestedstartquote" text="&#12302;"/>
+ <l:dingbat key="nestedendquote" text="&#12303;"/>
+ <l:dingbat key="bullet" text="&#9679;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="family-given"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="&#20184;&#37682; %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="&#31532;%n&#31456; %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="&#24335; %n. %t"/>
+ <l:template name="example" text="&#20363; %n. %t"/>
+ <l:template name="figure" text="&#22259; %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="&#12497;&#12540;&#12488; %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="&#25163;&#38918; %n. %t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="&#12503;&#12525;&#12480;&#12463;&#12471;&#12519;&#12531; %n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="&#34920; %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="&#20184;&#37682; %n. %t"/>
+ <l:template name="chapter" text="&#31532;%n&#31456; %t"/>
+ <l:template name="bridgehead" text="%n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="&#31572;&#65306;&#160;%n"/>
+ <l:template name="appendix" text="&#20184;&#37682;%n"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="&#31532;%n&#31456;"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="&#24335;&#160;%n"/>
+ <l:template name="example" text="&#20363; %n"/>
+ <l:template name="figure" text="&#22259; %n"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="&#12497;&#12540;&#12488; %n"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="&#25163;&#38918;&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="&#21839;&#65306;&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="&#21839;&#65306;&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="&#34920; %n"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="%t&#38917;"/>
+ <l:template name="refsection" text="%t&#38917;"/>
+ <l:template name="refsect1" text="%t&#38917;"/>
+ <l:template name="refsect2" text="%t&#38917;"/>
+ <l:template name="refsect3" text="%t&#38917;"/>
+ <l:template name="sect1" text="%t&#38917;"/>
+ <l:template name="sect2" text="%t&#38917;"/>
+ <l:template name="sect3" text="%t&#38917;"/>
+ <l:template name="sect4" text="%t&#38917;"/>
+ <l:template name="sect5" text="%t&#38917;"/>
+ <l:template name="section" text="%t&#38917;"/>
+ <l:template name="simplesect" text="%t&#38917;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="&#38917;%n"/>
+ <l:template name="refsection" text="%t&#38917;"/>
+ <l:template name="refsect1" text="%t&#38917;"/>
+ <l:template name="refsect2" text="%t&#38917;"/>
+ <l:template name="refsect3" text="%t&#38917;"/>
+ <l:template name="sect1" text="&#38917;%n"/>
+ <l:template name="sect2" text="&#38917;%n"/>
+ <l:template name="sect3" text="&#38917;%n"/>
+ <l:template name="sect4" text="&#38917;%n"/>
+ <l:template name="sect5" text="&#38917;%n"/>
+ <l:template name="section" text="&#38917;%n"/>
+ <l:template name="simplesect" text="%t&#38917;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" &#12289; "/>
+ <l:template name="seplast" text=", &#12289; "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="&#21442;&#29031; "/>
+ <l:template name="seealso" text="&#21442;&#29031; "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="&#23550;&#35937;&#32773;: "/>
+ <l:template name="MsgLevel" text="&#12524;&#12505;&#12523;: "/>
+ <l:template name="MsgOrig" text="&#30330;&#20449;&#20803;: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/ko.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/ko.xml
new file mode 100644
index 0000000..e4a1c29
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/ko.xml
@@ -0,0 +1,452 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="ko" english-language-name="Korean">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="&#52488;&#47197;"/>
+ <l:gentext key="abstract" text="&#52488;&#47197;"/>
+ <l:gentext key="Answer" text="&#45813;&#48320;"/>
+ <l:gentext key="answer" text="&#45813;&#48320;"/>
+ <l:gentext key="Appendix" text="&#48512;&#47197;"/>
+ <l:gentext key="appendix" text="&#48512;&#47197;"/>
+ <l:gentext key="Article" text="&#47928;&#49436;"/>
+ <l:gentext key="article" text="&#47928;&#49436;"/>
+ <l:gentext key="Bibliography" text="&#49436;&#51648;&#49324;&#54637;"/>
+ <l:gentext key="bibliography" text="&#49436;&#51648;&#49324;&#54637;"/>
+ <l:gentext key="Book" text="&#52293;"/>
+ <l:gentext key="book" text="&#52293;"/>
+ <l:gentext key="Caution" text="&#44221;&#44256;"/>
+ <l:gentext key="caution" text="&#44221;&#44256;"/>
+ <l:gentext key="CAUTION" text="[&#44221;&#44256;]"/>
+ <l:gentext key="Chapter" text="&#51109;"/>
+ <l:gentext key="chapter" text="&#51109;"/>
+ <l:gentext key="Colophon" text="&#54032;&#44428;"/>
+ <l:gentext key="colophon" text="&#54032;&#44428;"/>
+ <l:gentext key="Copyright" text="&#51200;&#51089;&#44428;"/>
+ <l:gentext key="copyright" text="&#51200;&#51089;&#44428;"/>
+ <l:gentext key="Dedication" text="&#48148;&#52824;&#45716; &#44544;"/>
+ <l:gentext key="dedication" text="&#48148;&#52824;&#45716; &#44544;"/>
+ <l:gentext key="Edition" text="&#50670;&#51020;"/>
+ <l:gentext key="edition" text="&#50670;&#51020;"/>
+ <l:gentext key="Equation" text="&#49688;&#49885;"/>
+ <l:gentext key="equation" text="&#49688;&#49885;"/>
+ <l:gentext key="Example" text="&#50696;"/>
+ <l:gentext key="example" text="&#50696;"/>
+ <l:gentext key="Figure" text="&#44536;&#47548;"/>
+ <l:gentext key="figure" text="&#44536;&#47548;"/>
+ <l:gentext key="Glossary" text="&#50857;&#50612;&#54644;&#49444;"/>
+ <l:gentext key="glossary" text="&#50857;&#50612;&#54644;&#49444;"/>
+ <l:gentext key="GlossSee" text="&#49332;&#54196;&#48380; &#45236;&#50857;"/>
+ <l:gentext key="glosssee" text="&#49332;&#54196;&#48380; &#45236;&#50857;"/>
+ <l:gentext key="GlossSeeAlso" text="&#45796;&#47480; &#49332;&#54196;&#48380; &#45236;&#50857;"/>
+ <l:gentext key="glossseealso" text="&#45796;&#47480; &#49332;&#54196;&#48380; &#45236;&#50857;"/>
+ <l:gentext key="Important" text="&#51473;&#50836;"/>
+ <l:gentext key="important" text="&#51473;&#50836;"/>
+ <l:gentext key="IMPORTANT" text="[&#51473;&#50836;]"/>
+ <l:gentext key="Index" text="&#49353;&#51064;"/>
+ <l:gentext key="index" text="&#49353;&#51064;"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text="&#48277;&#51201; &#44277;&#51648;"/>
+ <l:gentext key="legalnotice" text="&#48277;&#51201; &#44277;&#51648;"/>
+ <l:gentext key="MsgAud" text="&#48155;&#45716; &#51060;"/>
+ <l:gentext key="msgaud" text="&#48155;&#45716; &#51060;"/>
+ <l:gentext key="MsgLevel" text="&#51473;&#50836;&#46020;"/>
+ <l:gentext key="msglevel" text="&#51473;&#50836;&#46020;"/>
+ <l:gentext key="MsgOrig" text="&#48372;&#45236;&#45716; &#51060;"/>
+ <l:gentext key="msgorig" text="&#48372;&#45236;&#45716; &#51060;"/>
+ <l:gentext key="Note" text="&#52280;&#44256;"/>
+ <l:gentext key="note" text="&#52280;&#44256;"/>
+ <l:gentext key="NOTE" text="[&#52280;&#44256;]"/>
+ <l:gentext key="Part" text="&#48512;"/>
+ <l:gentext key="part" text="&#48512;"/>
+ <l:gentext key="Preface" text="&#49436;&#47928;"/>
+ <l:gentext key="preface" text="&#49436;&#47928;"/>
+ <l:gentext key="Procedure" text="&#51208;&#52264;"/>
+ <l:gentext key="procedure" text="&#51208;&#52264;"/>
+ <l:gentext key="ProductionSet" text="Production"/>
+ <l:gentext key="Published" text="&#54196;&#45252;"/>
+ <l:gentext key="published" text="&#54196;&#45252;"/>
+ <l:gentext key="Question" text="&#51656;&#47928;"/>
+ <l:gentext key="question" text="&#51656;&#47928;"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="&#52280;&#44256;&#47928;&#54732;"/>
+ <l:gentext key="reference" text="&#52280;&#44256;&#47928;&#54732;"/>
+ <l:gentext key="RefName" text="&#51228;&#47785;"/>
+ <l:gentext key="refname" text="&#51228;&#47785;"/>
+ <l:gentext key="RefSection" text=""/>
+ <l:gentext key="refsection" text=""/>
+ <l:gentext key="RefSynopsisDiv" text="&#50836;&#50557;"/>
+ <l:gentext key="refsynopsisdiv" text="&#50836;&#50557;"/>
+ <l:gentext key="RevHistory" text="&#44256;&#52828; &#44284;&#51221;"/>
+ <l:gentext key="revhistory" text="&#44256;&#52828; &#44284;&#51221;"/>
+ <l:gentext key="Revision" text="&#44256;&#52840;"/>
+ <l:gentext key="revision" text="&#44256;&#52840;"/>
+ <l:gentext key="sect1" text="Section"/>
+ <l:gentext key="sect2" text="Section"/>
+ <l:gentext key="sect3" text="Section"/>
+ <l:gentext key="sect4" text="Section"/>
+ <l:gentext key="sect5" text="Section"/>
+ <l:gentext key="Section" text="&#51208;"/>
+ <l:gentext key="section" text="&#51208;"/>
+ <l:gentext key="See" text="&#49332;&#54196;&#48380; &#45236;&#50857;"/>
+ <l:gentext key="see" text="&#49332;&#54196;&#48380; &#45236;&#50857;"/>
+ <l:gentext key="Seealso" text="&#49332;&#54196;&#48380; &#45796;&#47480; &#45236;&#50857;"/>
+ <l:gentext key="SeeAlso" text="[&#49332;&#54196;&#48380; &#45796;&#47480; &#45236;&#50857;]"/>
+ <l:gentext key="seealso" text="[&#49332;&#54196;&#48380; &#45796;&#47480; &#45236;&#50857;]"/>
+ <l:gentext key="Set" text="&#51204;&#51665;"/>
+ <l:gentext key="set" text="&#51204;&#51665;"/>
+ <l:gentext key="SetIndex" text="&#51204;&#51665; &#49353;&#51064;"/>
+ <l:gentext key="setindex" text="&#51204;&#51665; &#49353;&#51064;"/>
+ <l:gentext key="Sidebar" text=""/>
+ <l:gentext key="sidebar" text="&#45927;&#48537;&#51076;"/>
+ <l:gentext key="Step" text="&#45800;&#44228;"/>
+ <l:gentext key="step" text="&#45800;&#44228;"/>
+ <l:gentext key="Table" text="&#54364;"/>
+ <l:gentext key="table" text="&#54364;"/>
+ <l:gentext key="Tip" text="&#51089;&#51008; &#51221;&#48372;"/>
+ <l:gentext key="tip" text="&#51089;&#51008; &#51221;&#48372;"/>
+ <l:gentext key="TIP" text="[&#51089;&#51008; &#51221;&#48372;]"/>
+ <l:gentext key="WARNING" text="&#51452;&#51032;!"/>
+ <l:gentext key="Warning" text="&#51452;&#51032;"/>
+ <l:gentext key="warning" text="&#51452;&#51032;"/>
+ <l:gentext key="and" text="&#44536;&#47532;&#44256;"/>
+ <l:gentext key="by" text="&#51648;&#51008;&#51060;"/>
+ <l:gentext key="Edited" text="&#50670;&#51020;"/>
+ <l:gentext key="edited" text="&#50670;&#51020;"/>
+ <l:gentext key="Editedby" text="&#50670;&#51008;&#51060;"/>
+ <l:gentext key="editedby" text="&#50670;&#51008;&#51060;"/>
+ <l:gentext key="in" text="-"/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="&#51316;&#51116;&#54616;&#51648; &#50506;&#45716; &#44592;&#52488;&#50836;&#49548;&#51077;&#45768;&#45796;"/>
+ <l:gentext key="notes" text="&#51452;&#49437;"/>
+ <l:gentext key="Notes" text="&#51452;&#49437;"/>
+ <l:gentext key="Pgs" text="Pgs."/>
+ <l:gentext key="pgs" text="Pgs."/>
+ <l:gentext key="Revisedby" text="&#44256;&#52828;&#51060; "/>
+ <l:gentext key="revisedby" text="&#44256;&#52828;&#51060; "/>
+ <l:gentext key="TableNotes" text="&#52280;&#44256;"/>
+ <l:gentext key="tablenotes" text="&#52280;&#44256;"/>
+ <l:gentext key="TableofContents" text="&#52264;&#47168;"/>
+ <l:gentext key="tableofcontents" text="&#52264;&#47168;"/>
+ <l:gentext key="unexpectedelementname" text="&#50508; &#49688; &#50630;&#45716; &#44592;&#52488;&#50836;&#49548; &#51060;&#47492;&#51077;&#45768;&#45796;"/>
+ <l:gentext key="unsupported" text="&#51648;&#50896;&#46104;&#51648; &#50506;&#49845;&#45768;&#45796;"/>
+ <l:gentext key="xrefto" text="&#51060; &#44275;&#51012; &#52280;&#51312;&#54616;&#49464;&#50836; : "/>
+ <l:gentext key="listofequations" text="&#49688;&#49885; &#47785;&#47197;"/>
+ <l:gentext key="ListofEquations" text="&#49688;&#49885; &#47785;&#47197;"/>
+ <l:gentext key="ListofExamples" text="&#50696; &#47785;&#47197;"/>
+ <l:gentext key="listofexamples" text="&#50696; &#47785;&#47197;"/>
+ <l:gentext key="ListofFigures" text="&#44536;&#47548; &#47785;&#47197;"/>
+ <l:gentext key="listoffigures" text="&#44536;&#47548; &#47785;&#47197;"/>
+ <l:gentext key="listoftables" text="&#54364; &#47785;&#47197;"/>
+ <l:gentext key="ListofTables" text="&#54364; &#47785;&#47197;"/>
+ <l:gentext key="ListofUnknown" text="&#44592;&#53440; &#47785;&#47197;"/>
+ <l:gentext key="listofunknown" text="&#44592;&#53440; &#47785;&#47197;"/>
+ <l:gentext key="nav-home" text="&#52376;&#51020;&#51004;&#47196;"/>
+ <l:gentext key="nav-next" text="&#45796;&#51020;"/>
+ <l:gentext key="nav-next-sibling" text="&#45796;&#51020;&#51004;&#47196; &#44148;&#45320;&#46848;"/>
+ <l:gentext key="nav-prev" text="&#51060;&#51204;"/>
+ <l:gentext key="nav-prev-sibling" text="&#51060;&#51204;&#51004;&#47196; &#44148;&#45320;&#46848;"/>
+ <l:gentext key="nav-up" text="&#50948;&#47196;"/>
+ <l:gentext key="sectioncalled" text="the section called"/>
+ <l:gentext key="Draft" text="Draft"/>
+ <l:gentext key="above" text="above"/>
+ <l:gentext key="below" text="below"/>
+ <l:gentext key="index symbols" text="Symbols"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="&#48512;&#47197; %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="%n&#51109;. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="&#49688;&#49885; %n. %t"/>
+ <l:template name="example" text="&#50696; %n. %t"/>
+ <l:template name="figure" text="&#44536;&#47548; %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="%n&#48512;. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="&#51208;&#52264;&#160;%n.&#160;%t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Production&#160;%n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="&#54364; %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="&#48512;&#47197; %n. %t"/>
+ <l:template name="bridgehead" text="%n. %t"/>
+ <l:template name="chapter" text="%n&#51109;. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%n. %t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="&#45813;&#48320;&#160;%n"/>
+ <l:template name="appendix" text="&#48512;&#47197; %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="%n&#51109;. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="&#49688;&#49885;&#160;%n"/>
+ <l:template name="example" text="&#50696; %n. %t"/>
+ <l:template name="figure" text="&#44536;&#47548; %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="%n&#48512;. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="&#51208;&#52264;&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="&#51656;&#47928;&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="&#51656;&#47928;&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="&#54364; %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#8220;%t&#8221;"/>
+ <l:template name="sect2" text="&#8220;%t&#8221;"/>
+ <l:template name="sect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect4" text="&#8220;%t&#8221;"/>
+ <l:template name="sect5" text="&#8220;%t&#8221;"/>
+ <l:template name="section" text="&#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="%n&#51208;"/>
+ <l:template name="sect2" text="%n&#51208;"/>
+ <l:template name="sect3" text="%n&#51208;"/>
+ <l:template name="sect4" text="%n&#51208;"/>
+ <l:template name="sect5" text="%n&#51208;"/>
+ <l:template name="section" text="%n&#51208;"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" &#44536;&#47532;&#44256; "/>
+ <l:template name="seplast" text=", &#44536;&#47532;&#44256; "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="&#49332;&#54196;&#48380; &#45236;&#50857; "/>
+ <l:template name="seealso" text="&#45796;&#47480; &#49332;&#54196;&#48380; &#45236;&#50857; "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="&#48155;&#45716; &#51060;: "/>
+ <l:template name="MsgLevel" text="&#51473;&#50836;&#46020;: "/>
+ <l:template name="MsgOrig" text="&#48372;&#45236;&#45716; &#51060;: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/l10n.dtd b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/l10n.dtd
new file mode 100644
index 0000000..b6fd0c1
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/l10n.dtd
@@ -0,0 +1,45 @@
+<!ENTITY % prefix "l">
+
+<!ENTITY % xmlns "xmlns:%prefix;">
+<!ENTITY % uri "'http://docbook.sourceforge.net/xmlns/l10n/1.0'">
+
+<!ENTITY % i18n "%prefix;:i18n">
+<!ENTITY % l10n "%prefix;:l10n">
+<!ENTITY % gentext "%prefix;:gentext">
+<!ENTITY % dingbat "%prefix;:dingbat">
+<!ENTITY % context "%prefix;:context">
+<!ENTITY % template "%prefix;:template">
+
+<!ELEMENT %i18n; ((%l10n;)+)>
+<!ATTLIST %i18n;
+ %xmlns; CDATA #FIXED %uri;
+>
+
+<!ELEMENT %l10n; (%gentext;|%dingbat;|%context;)*>
+<!ATTLIST %l10n;
+ %xmlns; CDATA #FIXED %uri;
+ language CDATA #REQUIRED
+>
+
+<!ELEMENT %gentext; EMPTY>
+<!ATTLIST %gentext;
+ key CDATA #REQUIRED
+ text CDATA #REQUIRED
+>
+
+<!ELEMENT %dingbat; EMPTY>
+<!ATTLIST %dingbat;
+ key CDATA #REQUIRED
+ text CDATA #REQUIRED
+>
+
+<!ELEMENT %context; ((%template;)+)>
+<!ATTLIST %context;
+ name CDATA #REQUIRED
+>
+
+<!ELEMENT %template; EMPTY>
+<!ATTLIST %template;
+ name CDATA #REQUIRED
+ text CDATA #REQUIRED
+>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/l10n.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/l10n.xml
new file mode 100644
index 0000000..d74e0b6
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/l10n.xml
@@ -0,0 +1,83 @@
+<?xml version='1.0'?>
+<!DOCTYPE l:i18n SYSTEM "l10n.dtd" [
+<!ENTITY af SYSTEM "af.xml">
+<!ENTITY bg SYSTEM "bg.xml">
+<!ENTITY ca SYSTEM "ca.xml">
+<!ENTITY cs SYSTEM "cs.xml">
+<!ENTITY da SYSTEM "da.xml">
+<!ENTITY de SYSTEM "de.xml">
+<!ENTITY el SYSTEM "el.xml">
+<!ENTITY en SYSTEM "en.xml">
+<!ENTITY es SYSTEM "es.xml">
+<!ENTITY et SYSTEM "et.xml">
+<!ENTITY eu SYSTEM "eu.xml">
+<!ENTITY fi SYSTEM "fi.xml">
+<!ENTITY fr SYSTEM "fr.xml">
+<!ENTITY he SYSTEM "he.xml">
+<!ENTITY hu SYSTEM "hu.xml">
+<!ENTITY id SYSTEM "id.xml">
+<!ENTITY it SYSTEM "it.xml">
+<!ENTITY ja SYSTEM "ja.xml">
+<!ENTITY ko SYSTEM "ko.xml">
+<!ENTITY lit SYSTEM "lt.xml">
+<!ENTITY nl SYSTEM "nl.xml">
+<!ENTITY nn SYSTEM "nn.xml">
+<!ENTITY no SYSTEM "no.xml">
+<!ENTITY pl SYSTEM "pl.xml">
+<!ENTITY pt SYSTEM "pt.xml">
+<!ENTITY pt_br SYSTEM "pt_br.xml">
+<!ENTITY ro SYSTEM "ro.xml">
+<!ENTITY ru SYSTEM "ru.xml">
+<!ENTITY sk SYSTEM "sk.xml">
+<!ENTITY sl SYSTEM "sl.xml">
+<!ENTITY sr SYSTEM "sr.xml">
+<!ENTITY sv SYSTEM "sv.xml">
+<!ENTITY th SYSTEM "th.xml">
+<!ENTITY tr SYSTEM "tr.xml">
+<!ENTITY uk SYSTEM "uk.xml">
+<!ENTITY vi SYSTEM "vi.xml">
+<!ENTITY xh SYSTEM "xh.xml">
+<!ENTITY zh_cn SYSTEM "zh_cn.xml">
+<!ENTITY zh_tw SYSTEM "zh_tw.xml">
+]>
+<l:i18n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0">
+&af;
+&bg;
+&ca;
+&cs;
+&da;
+&de;
+&el;
+&en;
+&es;
+&et;
+&eu;
+&fi;
+&fr;
+&he;
+&hu;
+&id;
+&it;
+&ja;
+&ko;
+&lit;
+&nl;
+&nn;
+&no;
+&pl;
+&pt;
+&pt_br;
+&ro;
+&ru;
+&sk;
+&sl;
+&sr;
+&sv;
+&th;
+&tr;
+&uk;
+&vi;
+&xh;
+&zh_cn;
+&zh_tw;
+</l:i18n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/lt.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/lt.xml
new file mode 100644
index 0000000..5b4891d
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/lt.xml
@@ -0,0 +1,454 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="lt" english-language-name="Lithuanian">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="Santrauka"/>
+ <l:gentext key="abstract" text="Santrauka"/>
+ <l:gentext key="Answer" text="Ats:"/>
+ <l:gentext key="answer" text="Ats:"/>
+ <l:gentext key="Appendix" text="Priedas"/>
+ <l:gentext key="appendix" text="priedas"/>
+ <l:gentext key="Article" text="Straipsnis"/>
+ <l:gentext key="article" text="Straipsnis"/>
+ <l:gentext key="Bibliography" text="Bibliografija"/>
+ <l:gentext key="bibliography" text="Bibliografija"/>
+ <l:gentext key="Book" text="Knyga"/>
+ <l:gentext key="book" text="Knyga"/>
+ <l:gentext key="CAUTION" text="ATSARGIAI"/>
+ <l:gentext key="Caution" text="Atsargiai"/>
+ <l:gentext key="caution" text="Atsargiai"/>
+ <l:gentext key="Chapter" text="Skyrius"/>
+ <l:gentext key="chapter" text="skyrius"/>
+ <l:gentext key="Colophon" text="&#302;&#382;anga &#303; knyg&#261;"/>
+ <l:gentext key="colophon" text="&#302;&#382;anga &#303; knyg&#336;"/>
+ <l:gentext key="Copyright" text="Autorin&#279;s teis&#279;s"/>
+ <l:gentext key="copyright" text="Autorin&#279;s teis&#279;s"/>
+ <l:gentext key="Dedication" text="Dedikacija"/>
+ <l:gentext key="dedication" text="Dedikacija"/>
+ <l:gentext key="Edition" text="Leidimas"/>
+ <l:gentext key="edition" text="Leidimas"/>
+ <l:gentext key="Equation" text="Lygtis"/>
+ <l:gentext key="equation" text="Lygtis"/>
+ <l:gentext key="Example" text="Pavyzdys"/>
+ <l:gentext key="example" text="Pavyzdys"/>
+ <l:gentext key="Figure" text="Pav."/>
+ <l:gentext key="figure" text="Pav."/>
+ <l:gentext key="Glossary" text="Termin&#371; &#382;odyn&#279;lis"/>
+ <l:gentext key="glossary" text="Termin&#371; &#382;odyn&#279;lis"/>
+ <l:gentext key="GlossSee" text="Termin&#261; &#382;r."/>
+ <l:gentext key="glosssee" text="Termin&#261; &#382;r."/>
+ <l:gentext key="GlossSeeAlso" text="Taip pat &#382;r."/>
+ <l:gentext key="glossseealso" text="Taip pat &#382;r."/>
+ <l:gentext key="IMPORTANT" text="SVARBU"/>
+ <l:gentext key="important" text="Svarbu"/>
+ <l:gentext key="Important" text="Svarbu"/>
+ <l:gentext key="Index" text="Rodykl&#279;"/>
+ <l:gentext key="index" text="Rodykl&#279;"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text="Teisin&#279; pastaba"/>
+ <l:gentext key="legalnotice" text="Teisin&#279; pastaba"/>
+ <l:gentext key="MsgAud" text="Auditorija"/>
+ <l:gentext key="msgaud" text="Auditorija"/>
+ <l:gentext key="MsgLevel" text="Lygmuo"/>
+ <l:gentext key="msglevel" text="Lygmuo"/>
+ <l:gentext key="MsgOrig" text="Kilm&#279;"/>
+ <l:gentext key="msgorig" text="Kilm&#279;"/>
+ <l:gentext key="NOTE" text="PASTABA"/>
+ <l:gentext key="Note" text="Pastaba"/>
+ <l:gentext key="note" text="Pastaba"/>
+ <l:gentext key="Part" text="Dalis"/>
+ <l:gentext key="part" text="Dalis"/>
+ <l:gentext key="Preface" text="&#302;&#382;anga"/>
+ <l:gentext key="preface" text="&#302;&#382;anga"/>
+ <l:gentext key="Procedure" text="Proced&#363;ra"/>
+ <l:gentext key="procedure" text="Proced&#363;ra"/>
+ <l:gentext key="ProductionSet" text="Production"/>
+ <l:gentext key="Published" text="I&#353;leistas"/>
+ <l:gentext key="published" text="I&#353;leistas"/>
+ <l:gentext key="Question" text="Klausimas:"/>
+ <l:gentext key="question" text="Klausimas:"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="Nuoroda"/>
+ <l:gentext key="reference" text="Nuoroda"/>
+ <l:gentext key="RefName" text="Pavadinimas"/>
+ <l:gentext key="refname" text="Pavadinimas"/>
+ <l:gentext key="RefSection" text=""/>
+ <l:gentext key="refsection" text=""/>
+ <l:gentext key="RefSynopsisDiv" text="Trumpa ap&#382;valga"/>
+ <l:gentext key="refsynopsisdiv" text="Trumpa ap&#382;valga"/>
+ <l:gentext key="RevHistory" text="Pataisym&#371; istorija"/>
+ <l:gentext key="revhistory" text="Pataisym&#371; istorija"/>
+ <l:gentext key="revision" text="Pataisytas leidimas"/>
+ <l:gentext key="Revision" text="Pataisytas leidimas"/>
+ <l:gentext key="sect1" text="Skyrius"/>
+ <l:gentext key="sect2" text="Skyrius"/>
+ <l:gentext key="sect3" text="Skyrius"/>
+ <l:gentext key="sect4" text="Skyrius"/>
+ <l:gentext key="sect5" text="Skyrius"/>
+ <l:gentext key="section" text="Skyrius"/>
+ <l:gentext key="Section" text="Skyrius"/>
+ <l:gentext key="see" text="&#382;r."/>
+ <l:gentext key="seealso" text="&#382;r."/>
+ <l:gentext key="set" text="Set"/>
+ <l:gentext key="Set" text="Set"/>
+ <l:gentext key="setindex" text="Set Index"/>
+ <l:gentext key="SetIndex" text="Set Index"/>
+ <l:gentext key="Sidebar" text=""/>
+ <l:gentext key="sidebar" text="sidebar"/>
+ <l:gentext key="step" text="&#382;ingsnis"/>
+ <l:gentext key="Step" text="&#381;ingsnis"/>
+ <l:gentext key="Table" text="Lentel&#279;"/>
+ <l:gentext key="table" text="Lentel&#279;"/>
+ <l:gentext key="tip" text="Patarimas"/>
+ <l:gentext key="TIP" text="PATARIMAS"/>
+ <l:gentext key="Tip" text="Patarimas"/>
+ <l:gentext key="Warning" text="&#302;sp&#279;jimas"/>
+ <l:gentext key="warning" text="&#302;sp&#279;jimas"/>
+ <l:gentext key="WARNING" text="&#302;SP&#278;JIMAS"/>
+ <l:gentext key="and" text="ir"/>
+ <l:gentext key="by" text="by"/>
+ <l:gentext key="Edited" text="Redaguotas"/>
+ <l:gentext key="edited" text="Redaguotas"/>
+ <l:gentext key="Editedby" text="Redaguotas:"/>
+ <l:gentext key="editedby" text="Redaguotas:"/>
+ <l:gentext key="in" text="in"/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="neegzistuojantis elementas"/>
+ <l:gentext key="notes" text="Pastabos"/>
+ <l:gentext key="Notes" text="Pastabos"/>
+ <l:gentext key="Pgs" text="Pgs."/>
+ <l:gentext key="pgs" text="Pgs."/>
+ <l:gentext key="Revisedby" text="Patais&#279;: "/>
+ <l:gentext key="revisedby" text="Patais&#279;: "/>
+ <l:gentext key="TableNotes" text="Lentel&#279;s pastabos"/>
+ <l:gentext key="tablenotes" text="Lentel&#279;s pastabos"/>
+ <l:gentext key="TableofContents" text="T&#363;rinys"/>
+ <l:gentext key="tableofcontents" text="T&#363;rinys"/>
+ <l:gentext key="unexpectedelementname" text="Unexpected element name"/>
+ <l:gentext key="unsupported" text="nepalaikomas"/>
+ <l:gentext key="xrefto" text="xref to"/>
+ <l:gentext key="listofequations" text="Lyg&#269;i&#371; s&#261;ra&#353;as"/>
+ <l:gentext key="ListofEquations" text="Lyg&#269;i&#371; s&#261;ra&#353;as"/>
+ <l:gentext key="ListofExamples" text="Pavyzd&#382;i&#371; s&#261;ra&#353;as"/>
+ <l:gentext key="listofexamples" text="Pavyzd&#382;i&#371; s&#261;ra&#353;as"/>
+ <l:gentext key="ListofFigures" text="Pav. s&#261;ra&#353;as"/>
+ <l:gentext key="listoffigures" text="Pav. s&#261;ra&#353;as"/>
+ <l:gentext key="listoftables" text="Lenteli&#371; s&#261;ra&#353;as"/>
+ <l:gentext key="ListofTables" text="Lenteli&#371; s&#261;ra&#353;as"/>
+ <l:gentext key="ListofUnknown" text="Ne&#382;inomas s&#261;ra&#353;as"/>
+ <l:gentext key="listofunknown" text="Ne&#382;inomas s&#261;ra&#353;as"/>
+ <l:gentext key="nav-home" text="Namai"/>
+ <l:gentext key="nav-next" text="Sekantis"/>
+ <l:gentext key="nav-next-sibling" text="Fast Forward"/>
+ <l:gentext key="nav-prev" text="Paskesnis"/>
+ <l:gentext key="nav-prev-sibling" text="Fast Backward"/>
+ <l:gentext key="nav-up" text="&#302; vir&#353;&#371;"/>
+ <l:gentext key="nav-toc" text="ToC"/>
+ <l:gentext key="Draft" text="Draft"/>
+ <l:gentext key="above" text="above"/>
+ <l:gentext key="below" text="below"/>
+ <l:gentext key="sectioncalled" text="the section called"/>
+ <l:gentext key="index symbols" text="Symbols"/>
+ <l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz"/>
+ <l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ <l:template name="reference" text="Reference (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="Priedas&#160;%n.&#160;%t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Skyrius&#160;%n.&#160;%t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Lygtis&#160;%n.&#160;%t"/>
+ <l:template name="example" text="Pavyzdys&#160;%n.&#160;%t"/>
+ <l:template name="figure" text="Pav.&#160;%n.&#160;%t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Dalis&#160;%n.&#160;%t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="Proced&#363;ra&#160;%n.&#160;%t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Production&#160;%n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="Lentel&#279;&#160;%n.&#160;%t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text=""/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="Priedas&#160;%n.&#160;%t"/>
+ <l:template name="bridgehead" text="%n.&#160;%t"/>
+ <l:template name="chapter" text="Skyrius&#160;%n.&#160;%t"/>
+ <l:template name="sect1" text="%n.&#160;%t"/>
+ <l:template name="sect2" text="%n.&#160;%t"/>
+ <l:template name="sect3" text="%n.&#160;%t"/>
+ <l:template name="sect4" text="%n.&#160;%t"/>
+ <l:template name="sect5" text="%n.&#160;%t"/>
+ <l:template name="section" text="%n.&#160;%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="Ats:&#160;%n"/>
+ <l:template name="appendix" text="Priedas&#160;%n"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Skyrius&#160;%n"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Lygtis&#160;%n"/>
+ <l:template name="example" text="Pavyzdys&#160;%n"/>
+ <l:template name="figure" text="Pav.&#160;%n"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Dalis&#160;%n"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="Proced&#363;ra&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="Klausimas:&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="Klausimas:&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="Lentel&#279;&#160;%n"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="refsection" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="sect1" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="sect2" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="sect3" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="sect4" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="sect5" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="section" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="the section called &#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="Skyrius&#160;%n"/>
+ <l:template name="refsection" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="the section called &#8220;%t&#8221;"/>
+ <l:template name="sect1" text="Skyrius&#160;%n"/>
+ <l:template name="sect2" text="Skyrius&#160;%n"/>
+ <l:template name="sect3" text="Skyrius&#160;%n"/>
+ <l:template name="sect4" text="Skyrius&#160;%n"/>
+ <l:template name="sect5" text="Skyrius&#160;%n"/>
+ <l:template name="section" text="Skyrius&#160;%n"/>
+ <l:template name="simplesect" text="the section called &#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" ir "/>
+ <l:template name="seplast" text=", ir "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="Termin&#261; &#382;r. "/>
+ <l:template name="seealso" text="Taip pat &#382;r. "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="Auditorija: "/>
+ <l:template name="MsgLevel" text="Lygmuo: "/>
+ <l:template name="MsgOrig" text="Kilm&#279;: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/nl.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/nl.xml
new file mode 100644
index 0000000..fe67e8d
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/nl.xml
@@ -0,0 +1,454 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="nl" english-language-name="Dutch">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="Samenvatting"/>
+ <l:gentext key="abstract" text="Samenvatting"/>
+ <l:gentext key="Answer" text="Antwoord:"/>
+ <l:gentext key="answer" text="Antwoord:"/>
+ <l:gentext key="Appendix" text="Aanhangsel"/>
+ <l:gentext key="appendix" text="aanhangsel"/>
+ <l:gentext key="Article" text="Artikel"/>
+ <l:gentext key="article" text="Artikel"/>
+ <l:gentext key="Bibliography" text="Literatuurlijst"/>
+ <l:gentext key="bibliography" text="Literatuurlijst"/>
+ <l:gentext key="Book" text="Boek"/>
+ <l:gentext key="book" text="Boek"/>
+ <l:gentext key="CAUTION" text="LET OP"/>
+ <l:gentext key="Caution" text="Let op"/>
+ <l:gentext key="caution" text="Let op"/>
+ <l:gentext key="Chapter" text="Hoofdstuk"/>
+ <l:gentext key="chapter" text="hoofdstuk"/>
+ <l:gentext key="Colophon" text="Colofon"/>
+ <l:gentext key="colophon" text="Colofon"/>
+ <l:gentext key="Copyright" text="Copyright"/>
+ <l:gentext key="copyright" text="Copyright"/>
+ <l:gentext key="Dedication" text="Opdracht"/>
+ <l:gentext key="dedication" text="Opdracht"/>
+ <l:gentext key="Edition" text="Uitgave"/>
+ <l:gentext key="edition" text="Uitgave"/>
+ <l:gentext key="Equation" text="Vergelijking"/>
+ <l:gentext key="equation" text="Vergelijking"/>
+ <l:gentext key="Example" text="Voorbeeld"/>
+ <l:gentext key="example" text="Voorbeeld"/>
+ <l:gentext key="Figure" text="Figuur"/>
+ <l:gentext key="figure" text="Figuur"/>
+ <l:gentext key="Glossary" text="Woordenlijst"/>
+ <l:gentext key="glossary" text="Woordenlijst"/>
+ <l:gentext key="GlossSee" text="Zie"/>
+ <l:gentext key="glosssee" text="Zie"/>
+ <l:gentext key="GlossSeeAlso" text="Zie ook"/>
+ <l:gentext key="glossseealso" text="Zie ook"/>
+ <l:gentext key="IMPORTANT" text="BELANGRIJK"/>
+ <l:gentext key="Important" text="Belangrijk"/>
+ <l:gentext key="important" text="Belangrijk"/>
+ <l:gentext key="Index" text="Register"/>
+ <l:gentext key="index" text="Register"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text="Bericht"/>
+ <l:gentext key="legalnotice" text="Bericht"/>
+ <l:gentext key="MsgAud" text="Doelgroep"/>
+ <l:gentext key="msgaud" text="Doelgroep"/>
+ <l:gentext key="MsgLevel" text="Niveau"/>
+ <l:gentext key="msglevel" text="Niveau"/>
+ <l:gentext key="MsgOrig" text="Herkomst"/>
+ <l:gentext key="msgorig" text="Herkomst"/>
+ <l:gentext key="NOTE" text="OPMERKING"/>
+ <l:gentext key="Note" text="Opmerking"/>
+ <l:gentext key="note" text="Opmerking"/>
+ <l:gentext key="Part" text="Deel"/>
+ <l:gentext key="part" text="Deel"/>
+ <l:gentext key="Preface" text="Voorwoord"/>
+ <l:gentext key="preface" text="Voorwoord"/>
+ <l:gentext key="Procedure" text="Procedure"/>
+ <l:gentext key="procedure" text="Procedure"/>
+ <l:gentext key="ProductionSet" text="Production"/>
+ <l:gentext key="Published" text="Uitgegeven"/>
+ <l:gentext key="published" text="Uitgegeven"/>
+ <l:gentext key="Question" text="Vraag:"/>
+ <l:gentext key="question" text="Vraag:"/>
+ <l:gentext key="RefEntry" text="Referentielemma"/>
+ <l:gentext key="refentry" text="Referentielemma"/>
+ <l:gentext key="Reference" text="Referentie"/>
+ <l:gentext key="reference" text="Referentie"/>
+ <l:gentext key="RefName" text="Referentienaam"/>
+ <l:gentext key="refname" text="Referentienaam"/>
+ <l:gentext key="RefSection" text="Referentieparagraaf"/>
+ <l:gentext key="refsection" text="Referentieparagraaf"/>
+ <l:gentext key="RefSynopsisDiv" text="Referentiesamenvatting"/>
+ <l:gentext key="refsynopsisdiv" text="Referentiesamenvatting"/>
+ <l:gentext key="RevHistory" text="Wijzigingen"/>
+ <l:gentext key="revhistory" text="Wijzigingen"/>
+ <l:gentext key="Revision" text="Herziening"/>
+ <l:gentext key="revision" text="Herziening"/>
+ <l:gentext key="sect1" text="Paragraaf"/>
+ <l:gentext key="sect2" text="Paragraaf"/>
+ <l:gentext key="sect3" text="Paragraaf"/>
+ <l:gentext key="sect4" text="Paragraaf"/>
+ <l:gentext key="sect5" text="Paragraaf"/>
+ <l:gentext key="Section" text="Paragraaf"/>
+ <l:gentext key="section" text="paragraaf"/>
+ <l:gentext key="See" text="Zie"/>
+ <l:gentext key="see" text="Zie"/>
+ <l:gentext key="SeeAlso" text="Zie ook"/>
+ <l:gentext key="Seealso" text="Zie ook"/>
+ <l:gentext key="seealso" text="Zie ook"/>
+ <l:gentext key="Set" text="Verzameling"/>
+ <l:gentext key="set" text="Verzameling"/>
+ <l:gentext key="SetIndex" text="Hoofdregister"/>
+ <l:gentext key="setindex" text="Hoofdregister"/>
+ <l:gentext key="Sidebar" text="Excursie"/>
+ <l:gentext key="sidebar" text="excursie"/>
+ <l:gentext key="Step" text="Stap"/>
+ <l:gentext key="step" text="stap"/>
+ <l:gentext key="Table" text="Tabel"/>
+ <l:gentext key="table" text="Tabel"/>
+ <l:gentext key="TIP" text="TIP"/>
+ <l:gentext key="Tip" text="Tip"/>
+ <l:gentext key="tip" text="Tip"/>
+ <l:gentext key="WARNING" text="WAARSCHUWING"/>
+ <l:gentext key="Warning" text="Waarschuwing"/>
+ <l:gentext key="warning" text="Waarschuwing"/>
+ <l:gentext key="and" text="en"/>
+ <l:gentext key="by" text="door"/>
+ <l:gentext key="Edited" text="Redactie"/>
+ <l:gentext key="edited" text="Redactie"/>
+ <l:gentext key="Editedby" text="Redactie door"/>
+ <l:gentext key="editedby" text="Redactie door"/>
+ <l:gentext key="in" text="in"/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="niet bestaand element"/>
+ <l:gentext key="notes" text="Noten"/>
+ <l:gentext key="Notes" text="Noten"/>
+ <l:gentext key="Pgs" text="blz."/>
+ <l:gentext key="pgs" text="blz."/>
+ <l:gentext key="Revisedby" text="Herzien door: "/>
+ <l:gentext key="revisedby" text="Herzien door: "/>
+ <l:gentext key="TableNotes" text="Opmerkingen"/>
+ <l:gentext key="tablenotes" text="Opmerkingen"/>
+ <l:gentext key="TableofContents" text="Inhoudsopgave"/>
+ <l:gentext key="tableofcontents" text="Inhoudsopgave"/>
+ <l:gentext key="unexpectedelementname" text="ONVERWACHT-ELEMENT"/>
+ <l:gentext key="unsupported" text="niet ondersteund"/>
+ <l:gentext key="xrefto" text="verwijzing naar"/>
+ <l:gentext key="listofequations" text="Lijst van vergelijkingen"/>
+ <l:gentext key="ListofEquations" text="Lijst van vergelijkingen"/>
+ <l:gentext key="ListofExamples" text="Lijst van voorbeelden"/>
+ <l:gentext key="listofexamples" text="Lijst van voorbeelden"/>
+ <l:gentext key="ListofFigures" text="Lijst van figuren"/>
+ <l:gentext key="listoffigures" text="Lijst van figuren"/>
+ <l:gentext key="listoftables" text="Lijst van tabellen"/>
+ <l:gentext key="ListofTables" text="Lijst van tabellen"/>
+ <l:gentext key="ListofUnknown" text="Lijst van ???"/>
+ <l:gentext key="listofunknown" text="Lijst van ???"/>
+ <l:gentext key="nav-home" text="Begin"/>
+ <l:gentext key="nav-next" text="Volgende"/>
+ <l:gentext key="nav-next-sibling" text="Verder vooruit"/>
+ <l:gentext key="nav-prev" text="Terug"/>
+ <l:gentext key="nav-prev-sibling" text="Verder terug"/>
+ <l:gentext key="nav-up" text="Omhoog"/>
+ <l:gentext key="Draft" text="Ontwerp"/>
+ <l:gentext key="above" text="boven"/>
+ <l:gentext key="below" text="onder"/>
+ <l:gentext key="index symbols" text="Symbolen"/>
+ <l:gentext key="sectioncalled" text="de paragraaf"/>
+ <l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz&#235;&#239;&#233;"/>
+ <l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ&#203;&#207;&#201;"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="Aanhangsel %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Hoofdstuk %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Vergelijking %n. %t"/>
+ <l:template name="example" text="Voorbeeld %n. %t"/>
+ <l:template name="figure" text="Figuur %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Deel %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="Procedure&#160;%n.&#160;%t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Production&#160;%n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="Tabel %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="Aanhangsel %n. %t"/>
+ <l:template name="bridgehead" text="%n. %t"/>
+ <l:template name="chapter" text="Hoofdstuk %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%n. %t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="Antwoord:&#160;%n"/>
+ <l:template name="appendix" text="Aanhangsel %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Hoofdstuk %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Vergelijking&#160;%n"/>
+ <l:template name="example" text="Voorbeeld %n. %t"/>
+ <l:template name="figure" text="Figuur %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Deel %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="Procedure&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="Vraag:&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="Vraag:&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="Tabel %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="de paragraaf &#8220;%t&#8221;"/>
+ <l:template name="refsection" text="de paragraaf &#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="de paragraaf &#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="de paragraaf &#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="de paragraaf &#8220;%t&#8221;"/>
+ <l:template name="sect1" text="de paragraaf &#8220;%t&#8221;"/>
+ <l:template name="sect2" text="de paragraaf &#8220;%t&#8221;"/>
+ <l:template name="sect3" text="de paragraaf &#8220;%t&#8221;"/>
+ <l:template name="sect4" text="de paragraaf &#8220;%t&#8221;"/>
+ <l:template name="sect5" text="de paragraaf &#8220;%t&#8221;"/>
+ <l:template name="section" text="de paragraaf &#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="de paragraaf &#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="de paragraaf &#8220;%t&#8221;"/>
+ <l:template name="refsection" text="de paragraaf &#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="de paragraaf &#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="de paragraaf &#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="de paragraaf &#8220;%t&#8221;"/>
+ <l:template name="sect1" text="Paragraaf %n"/>
+ <l:template name="sect2" text="Paragraaf %n"/>
+ <l:template name="sect3" text="Paragraaf %n"/>
+ <l:template name="sect4" text="Paragraaf %n"/>
+ <l:template name="sect5" text="Paragraaf %n"/>
+ <l:template name="section" text="Paragraaf %n"/>
+ <l:template name="simplesect" text="de paragraaf &#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" en "/>
+ <l:template name="seplast" text=", en "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="Zie "/>
+ <l:template name="seealso" text="Zie ook "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="Doelgroep: "/>
+ <l:template name="MsgLevel" text="Niveau: "/>
+ <l:template name="MsgOrig" text="Herkomst: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/nn.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/nn.xml
new file mode 100644
index 0000000..de5cf9f
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/nn.xml
@@ -0,0 +1,460 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="nn" english-language-name="Nynorsk">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="Samandrag"/>
+ <l:gentext key="abstract" text="Samandrag"/>
+ <l:gentext key="Answer" text="Svar"/>
+ <l:gentext key="answer" text="svar"/>
+ <l:gentext key="Appendix" text="Tillegg"/>
+ <l:gentext key="appendix" text="tillegg"/>
+ <l:gentext key="Article" text="Artikkel"/>
+ <l:gentext key="article" text="artikkel"/>
+ <l:gentext key="Bibliography" text="Bibliografi"/>
+ <l:gentext key="bibliography" text="bibliografi"/>
+ <l:gentext key="Book" text="Bok"/>
+ <l:gentext key="book" text="bok"/>
+ <l:gentext key="CAUTION" text="OBS"/>
+ <l:gentext key="Caution" text="Obs"/>
+ <l:gentext key="caution" text="OBS"/>
+ <l:gentext key="caution" text="Obs"/>
+ <l:gentext key="Chapter" text="Kapittel"/>
+ <l:gentext key="chapter" text="kapittel"/>
+ <l:gentext key="Colophon" text="Kolofon"/>
+ <l:gentext key="colophon" text="kolofon"/>
+ <l:gentext key="Copyright" text="Opphavsrett"/>
+ <l:gentext key="copyright" text="opphavsrett"/>
+ <l:gentext key="Dedication" text="Dedikasjon"/>
+ <l:gentext key="dedication" text="dedikasjon"/>
+ <l:gentext key="Edition" text="Utg&#229;ve"/>
+ <l:gentext key="edition" text="utg&#229;ve"/>
+ <l:gentext key="Equation" text="Formel"/>
+ <l:gentext key="equation" text="formel"/>
+ <l:gentext key="Example" text="D&#248;me"/>
+ <l:gentext key="example" text="d&#248;me"/>
+ <l:gentext key="Figure" text="Figur"/>
+ <l:gentext key="figure" text="figur"/>
+ <l:gentext key="Glossary" text="Ordliste"/>
+ <l:gentext key="glossary" text="ordliste"/>
+ <l:gentext key="GlossSee" text="Sj&#229;"/>
+ <l:gentext key="glosssee" text="sj&#229;"/>
+ <l:gentext key="GlossSeeAlso" text="Sj&#229; &#242;g"/>
+ <l:gentext key="glossseealso" text="sj&#229; &#242;g"/>
+ <l:gentext key="IMPORTANT" text="VIKTIG"/>
+ <l:gentext key="Important" text="Viktig"/>
+ <l:gentext key="important" text="viktig"/>
+ <l:gentext key="important" text="viktig"/>
+ <l:gentext key="Index" text="Indeks"/>
+ <l:gentext key="index" text="indeks"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text=""/>
+ <l:gentext key="legalnotice" text=""/>
+ <l:gentext key="MsgAud" text="Publikum"/>
+ <l:gentext key="msgaud" text="publikum"/>
+ <l:gentext key="MsgLevel" text="Niv&#229;"/>
+ <l:gentext key="msglevel" text="niv&#229;"/>
+ <l:gentext key="MsgOrig" text="Opphav"/>
+ <l:gentext key="msgorig" text="Opphav"/>
+ <l:gentext key="NOTE" text="NOTAT"/>
+ <l:gentext key="Note" text="Notat"/>
+ <l:gentext key="note" text="NOTAT"/>
+ <l:gentext key="note" text="Notat"/>
+ <l:gentext key="Part" text="Del"/>
+ <l:gentext key="part" text="del"/>
+ <l:gentext key="Preface" text="Forord"/>
+ <l:gentext key="preface" text="forord"/>
+ <l:gentext key="Procedure" text="Prosedyre"/>
+ <l:gentext key="procedure" text="prosedyre"/>
+ <l:gentext key="ProductionSet" text="Production"/>
+ <l:gentext key="Published" text="Utgitt"/>
+ <l:gentext key="published" text="utgitt"/>
+ <l:gentext key="Question" text="Sp&#248;rsm&#229;l"/>
+ <l:gentext key="question" text="sp&#248;rsm&#229;l"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="Referanse"/>
+ <l:gentext key="reference" text="referanse"/>
+ <l:gentext key="RefName" text="Namn"/>
+ <l:gentext key="refname" text="namn"/>
+ <l:gentext key="RefSection" text="Del"/>
+ <l:gentext key="refsection" text="del"/>
+ <l:gentext key="RefSynopsisDiv" text="Oversyn"/>
+ <l:gentext key="refsynopsisdiv" text="oversyn"/>
+ <l:gentext key="RevHistory" text="Revisjonshistorie"/>
+ <l:gentext key="revhistory" text="revisjonshistorie"/>
+ <l:gentext key="Revision" text="Revisjon"/>
+ <l:gentext key="revision" text="revisjon"/>
+ <l:gentext key="sect1" text="Section"/>
+ <l:gentext key="sect2" text="Section"/>
+ <l:gentext key="sect3" text="Section"/>
+ <l:gentext key="sect4" text="Section"/>
+ <l:gentext key="sect5" text="Section"/>
+ <l:gentext key="Section" text="Del"/>
+ <l:gentext key="section" text="del"/>
+ <l:gentext key="See" text="Sj&#229;"/>
+ <l:gentext key="see" text="sj&#229;"/>
+ <l:gentext key="SeeAlso" text="Sj&#229; &#242;g"/>
+ <l:gentext key="seealso" text="sj&#229; &#242;g"/>
+ <l:gentext key="Set" text="Set"/>
+ <l:gentext key="set" text="set"/>
+ <l:gentext key="SetIndex" text="Indeks"/>
+ <l:gentext key="setindex" text="Indeks"/>
+ <l:gentext key="Sidebar" text="Sidestolpe"/>
+ <l:gentext key="sidebar" text="sidestolpe"/>
+ <l:gentext key="Step" text="Steg"/>
+ <l:gentext key="step" text="steg"/>
+ <l:gentext key="Table" text="Tabell"/>
+ <l:gentext key="table" text="tabell"/>
+ <l:gentext key="TIP" text="TIPS"/>
+ <l:gentext key="Tip" text="Tips"/>
+ <l:gentext key="tip" text="tips"/>
+ <l:gentext key="tip" text="tips"/>
+ <l:gentext key="WARNING" text="&#197;TVARING"/>
+ <l:gentext key="Warning" text="&#197;tvaring"/>
+ <l:gentext key="warning" text="&#229;tvaring"/>
+ <l:gentext key="warning" text="&#229;tvaring"/>
+ <l:gentext key="Seealso" text="Sj&#229; &#242;g"/>
+ <l:gentext key="seealso" text="sj&#229; &#242;g"/>
+ <l:gentext key="TableofContents" text="Innhald"/>
+ <l:gentext key="tableofcontents" text="Innhald"/>
+ <l:gentext key="in" text="i"/>
+ <l:gentext key="by" text="av"/>
+ <l:gentext key="Edited" text="Redigert"/>
+ <l:gentext key="edited" text="redigert"/>
+ <l:gentext key="Editedby" text="Redigert av"/>
+ <l:gentext key="editedby" text="redigert av"/>
+ <l:gentext key="and" text="og"/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="Notes" text="Merknader"/>
+ <l:gentext key="notes" text="merknader"/>
+ <l:gentext key="TableNotes" text="Merknader"/>
+ <l:gentext key="tablenotes" text="merknader"/>
+ <l:gentext key="nonexistantelement" text="ikkje-eksisterande element"/>
+ <l:gentext key="Pgs" text="Sider"/>
+ <l:gentext key="pgs" text="sider"/>
+ <l:gentext key="unsupported" text="ikkje st&#248;tta"/>
+ <l:gentext key="xrefto" text="xref til"/>
+ <l:gentext key="unexpectedelementname" text="UVENTA-ELEMENTNAVN"/>
+ <l:gentext key="Revisedby" text="Revidert av: "/>
+ <l:gentext key="revisedby" text="revidert av: "/>
+ <l:gentext key="ListofTables" text="Tabelloversikt"/>
+ <l:gentext key="listoftables" text="tabelloversikt"/>
+ <l:gentext key="ListofExamples" text="D&#248;meoversikt"/>
+ <l:gentext key="listofexamples" text="d&#248;meoversikt"/>
+ <l:gentext key="ListofFigures" text="Figuroversikt"/>
+ <l:gentext key="listoffigures" text="figuroversikt"/>
+ <l:gentext key="ListofEquations" text="Formeloversikt"/>
+ <l:gentext key="listofequations" text="formeloversikt"/>
+ <l:gentext key="ListofUnknown" text="???-oversikt"/>
+ <l:gentext key="listofunknown" text="???-oversikt"/>
+ <l:gentext key="nav-prev" text="Att"/>
+ <l:gentext key="nav-prev-sibling" text="Raskt bakover"/>
+ <l:gentext key="nav-next-sibling" text="Raskt framover"/>
+ <l:gentext key="nav-next" text="Fram"/>
+ <l:gentext key="nav-up" text="Opp"/>
+ <l:gentext key="nav-home" text="Heim"/>
+ <l:gentext key="sectioncalled" text="the section called"/>
+ <l:gentext key="Draft" text="Draft"/>
+ <l:gentext key="above" text="above"/>
+ <l:gentext key="below" text="below"/>
+ <l:gentext key="index symbols" text="Symbols"/>
+ <l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz"/>
+ <l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="Tillegg %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Kapittel %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Formel %n. %t"/>
+ <l:template name="example" text="D&#248;me %n. %t"/>
+ <l:template name="figure" text="Figur %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Del %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="Prosedyre&#160;%n.&#160;%t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Production&#160;%n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="Tabell %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="Tillegg %n. %t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="Kapittel %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%n. %t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="Svar&#160;%n"/>
+ <l:template name="appendix" text="Tillegg %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Kapittel %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Formel&#160;%n"/>
+ <l:template name="example" text="D&#248;me %n. %t"/>
+ <l:template name="figure" text="Figur %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Del %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="Prosedyre&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="Sp&#248;rsm&#229;l&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="Sp&#248;rsm&#229;l&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="Tabell %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#8220;%t&#8221;"/>
+ <l:template name="sect2" text="&#8220;%t&#8221;"/>
+ <l:template name="sect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect4" text="&#8220;%t&#8221;"/>
+ <l:template name="sect5" text="&#8220;%t&#8221;"/>
+ <l:template name="section" text="&#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="Del %n"/>
+ <l:template name="sect2" text="Del %n"/>
+ <l:template name="sect3" text="Del %n"/>
+ <l:template name="sect4" text="Del %n"/>
+ <l:template name="sect5" text="Del %n"/>
+ <l:template name="section" text="Del %n"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" og "/>
+ <l:template name="seplast" text=", og "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="Sj&#229; "/>
+ <l:template name="seealso" text="Sj&#229; &#242;g "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgLevel" text="Niv&#229;: "/>
+ <l:template name="MsgOrig" text="Opphav: "/>
+ <l:template name="MsgAud" text="Publikum: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/no.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/no.xml
new file mode 100644
index 0000000..cd7ed43
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/no.xml
@@ -0,0 +1,454 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="no" english-language-name="Norwegian">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="Abstract"/>
+ <l:gentext key="abstract" text="Abstract"/>
+ <l:gentext key="Answer" text="A:"/>
+ <l:gentext key="answer" text="A:"/>
+ <l:gentext key="Appendix" text="Tillegg"/>
+ <l:gentext key="appendix" text="Tillegg"/>
+ <l:gentext key="Article" text=""/>
+ <l:gentext key="article" text=""/>
+ <l:gentext key="Bibliography" text="Bibliografi"/>
+ <l:gentext key="bibliography" text="Bibliografi"/>
+ <l:gentext key="Book" text=""/>
+ <l:gentext key="book" text=""/>
+ <l:gentext key="CAUTION" text="OBS"/>
+ <l:gentext key="Caution" text="Obs"/>
+ <l:gentext key="caution" text="Obs"/>
+ <l:gentext key="Chapter" text="Kapittel"/>
+ <l:gentext key="chapter" text="Kapittel"/>
+ <l:gentext key="Colophon" text="Colophon"/>
+ <l:gentext key="colophon" text="Colophon"/>
+ <l:gentext key="Copyright" text="Copyright"/>
+ <l:gentext key="copyright" text="Copyright"/>
+ <l:gentext key="Dedication" text="Dedikasjon"/>
+ <l:gentext key="dedication" text="Dedikasjon"/>
+ <l:gentext key="Edition" text=""/>
+ <l:gentext key="edition" text=""/>
+ <l:gentext key="Equation" text="Formel"/>
+ <l:gentext key="equation" text="Formel"/>
+ <l:gentext key="Example" text="Eksempel"/>
+ <l:gentext key="example" text="Eksempel"/>
+ <l:gentext key="Figure" text="Figur"/>
+ <l:gentext key="figure" text="Figur"/>
+ <l:gentext key="Glossary" text="Ordliste"/>
+ <l:gentext key="glossary" text="Ordliste"/>
+ <l:gentext key="GlossSee" text="Se"/>
+ <l:gentext key="glosssee" text="Se"/>
+ <l:gentext key="GlossSeeAlso" text="Se Ogs&#229;"/>
+ <l:gentext key="glossseealso" text="Se Ogs&#229;"/>
+ <l:gentext key="IMPORTANT" text="VIKTIG"/>
+ <l:gentext key="Important" text="Viktig"/>
+ <l:gentext key="important" text="Viktig"/>
+ <l:gentext key="Index" text="Indeks"/>
+ <l:gentext key="index" text="Indeks"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text=""/>
+ <l:gentext key="legalnotice" text=""/>
+ <l:gentext key="MsgAud" text="Publikum"/>
+ <l:gentext key="msgaud" text="Publikum"/>
+ <l:gentext key="MsgLevel" text="Niv&#229;"/>
+ <l:gentext key="msglevel" text="Niv&#229;"/>
+ <l:gentext key="MsgOrig" text="Opphav"/>
+ <l:gentext key="msgorig" text="Opphav"/>
+ <l:gentext key="NOTE" text="NOTAT"/>
+ <l:gentext key="Note" text="Notat"/>
+ <l:gentext key="note" text="Notat"/>
+ <l:gentext key="Part" text="Del"/>
+ <l:gentext key="part" text="Del"/>
+ <l:gentext key="Preface" text="Forord"/>
+ <l:gentext key="preface" text="Forord"/>
+ <l:gentext key="Procedure" text="Prosedyre"/>
+ <l:gentext key="procedure" text="Prosedyre"/>
+ <l:gentext key="ProductionSet" text="Production"/>
+ <l:gentext key="Published" text=""/>
+ <l:gentext key="published" text=""/>
+ <l:gentext key="Question" text="Q:"/>
+ <l:gentext key="question" text="Q:"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="Referanse"/>
+ <l:gentext key="reference" text="Referanse"/>
+ <l:gentext key="RefName" text="Navn"/>
+ <l:gentext key="refname" text="Navn"/>
+ <l:gentext key="RefSection" text=""/>
+ <l:gentext key="refsection" text=""/>
+ <l:gentext key="RefSynopsisDiv" text="Synopsis"/>
+ <l:gentext key="refsynopsisdiv" text="Synopsis"/>
+ <l:gentext key="RevHistory" text="Revisjonshistorie"/>
+ <l:gentext key="revhistory" text="Revisjonshistorie"/>
+ <l:gentext key="Revision" text="Revisjon"/>
+ <l:gentext key="revision" text="Revisjon"/>
+ <l:gentext key="sect1" text="Section"/>
+ <l:gentext key="sect2" text="Section"/>
+ <l:gentext key="sect3" text="Section"/>
+ <l:gentext key="sect4" text="Section"/>
+ <l:gentext key="sect5" text="Section"/>
+ <l:gentext key="Section" text="Seksjon"/>
+ <l:gentext key="section" text="seksjon"/>
+ <l:gentext key="See" text="Se"/>
+ <l:gentext key="see" text="Se"/>
+ <l:gentext key="SeeAlso" text="Se Ogs&#229;"/>
+ <l:gentext key="Seealso" text="Se ogs&#229;"/>
+ <l:gentext key="seealso" text="Se Ogs&#229;"/>
+ <l:gentext key="Set" text=""/>
+ <l:gentext key="set" text=""/>
+ <l:gentext key="SetIndex" text="Indeks"/>
+ <l:gentext key="setindex" text="Indeks"/>
+ <l:gentext key="Sidebar" text=""/>
+ <l:gentext key="sidebar" text=""/>
+ <l:gentext key="Step" text="Steg"/>
+ <l:gentext key="step" text="steg"/>
+ <l:gentext key="Table" text="Tabell"/>
+ <l:gentext key="table" text="Tabell"/>
+ <l:gentext key="TIP" text="TIPS"/>
+ <l:gentext key="Tip" text="Tips"/>
+ <l:gentext key="tip" text="Tips"/>
+ <l:gentext key="WARNING" text="ADVARSEL"/>
+ <l:gentext key="Warning" text="Advarsel"/>
+ <l:gentext key="warning" text="Advarsel"/>
+ <l:gentext key="and" text="og"/>
+ <l:gentext key="by" text="av"/>
+ <l:gentext key="Edited" text="Redigert"/>
+ <l:gentext key="edited" text="Redigert"/>
+ <l:gentext key="Editedby" text="Redigert av"/>
+ <l:gentext key="editedby" text="Redigert av"/>
+ <l:gentext key="in" text="i"/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="ikke-eksisterende element"/>
+ <l:gentext key="notes" text="Sluttnotater"/>
+ <l:gentext key="Notes" text="Sluttnotater"/>
+ <l:gentext key="Pgs" text="Sdr."/>
+ <l:gentext key="pgs" text="Sdr."/>
+ <l:gentext key="Revisedby" text="Revised by: "/>
+ <l:gentext key="revisedby" text="Revised by: "/>
+ <l:gentext key="TableNotes" text="Notater"/>
+ <l:gentext key="tablenotes" text="Notater"/>
+ <l:gentext key="TableofContents" text="Innholdsfortegnelse"/>
+ <l:gentext key="tableofcontents" text="Innholdsfortegnelse"/>
+ <l:gentext key="unexpectedelementname" text="UVENTET-ELEMENTNAVN"/>
+ <l:gentext key="unsupported" text="ikke st&#248;ttet"/>
+ <l:gentext key="xrefto" text="xref til"/>
+ <l:gentext key="listofequations" text="Formeloversikt"/>
+ <l:gentext key="ListofEquations" text="Formeloversikt"/>
+ <l:gentext key="ListofExamples" text="Eksempeloversikt"/>
+ <l:gentext key="listofexamples" text="Eksempeloversikt"/>
+ <l:gentext key="ListofFigures" text="Figuroversikt"/>
+ <l:gentext key="listoffigures" text="Figuroversikt"/>
+ <l:gentext key="listoftables" text="Tabelloversikt"/>
+ <l:gentext key="ListofTables" text="Tabelloversikt"/>
+ <l:gentext key="ListofUnknown" text="???-oversikt"/>
+ <l:gentext key="listofunknown" text="???-oversikt"/>
+ <l:gentext key="nav-home" text="Hjem"/>
+ <l:gentext key="nav-next" text="Neste"/>
+ <l:gentext key="nav-next-sibling" text="Raskt Fremover"/>
+ <l:gentext key="nav-prev" text="Forrige"/>
+ <l:gentext key="nav-prev-sibling" text="Raskt Bakover"/>
+ <l:gentext key="nav-up" text="Opp"/>
+ <l:gentext key="sectioncalled" text="the section called"/>
+ <l:gentext key="Draft" text="Draft"/>
+ <l:gentext key="above" text="above"/>
+ <l:gentext key="below" text="below"/>
+ <l:gentext key="index symbols" text="Symbols"/>
+ <l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz"/>
+ <l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="Tillegg %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Kapittel %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Formel %n. %t"/>
+ <l:template name="example" text="Eksempel %n. %t"/>
+ <l:template name="figure" text="Figur %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Del %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="Prosedyre&#160;%n.&#160;%t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Production&#160;%n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="Tabell %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="Tillegg %n. %t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="Kapittel %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%n. %t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="A:&#160;%n"/>
+ <l:template name="appendix" text="Tillegg %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Kapittel %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Formel&#160;%n"/>
+ <l:template name="example" text="Eksempel %n. %t"/>
+ <l:template name="figure" text="Figur %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Del %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="Prosedyre&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="Q:&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="Q:&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="Tabell %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#8220;%t&#8221;"/>
+ <l:template name="sect2" text="&#8220;%t&#8221;"/>
+ <l:template name="sect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect4" text="&#8220;%t&#8221;"/>
+ <l:template name="sect5" text="&#8220;%t&#8221;"/>
+ <l:template name="section" text="&#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="Seksjon %n"/>
+ <l:template name="sect2" text="Seksjon %n"/>
+ <l:template name="sect3" text="Seksjon %n"/>
+ <l:template name="sect4" text="Seksjon %n"/>
+ <l:template name="sect5" text="Seksjon %n"/>
+ <l:template name="section" text="Seksjon %n"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" og "/>
+ <l:template name="seplast" text=", og "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="Se "/>
+ <l:template name="seealso" text="Se Ogs&#229; "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="Publikum: "/>
+ <l:template name="MsgLevel" text="Niv&#229;: "/>
+ <l:template name="MsgOrig" text="Opphav: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/pl.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/pl.xml
new file mode 100644
index 0000000..df8f879
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/pl.xml
@@ -0,0 +1,454 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="pl" english-language-name="Polish">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="Abstrakt"/>
+ <l:gentext key="abstract" text="Abstrakt"/>
+ <l:gentext key="Answer" text="Odp:"/>
+ <l:gentext key="answer" text="Odp:"/>
+ <l:gentext key="Appendix" text="Dodatek"/>
+ <l:gentext key="appendix" text="dodatek"/>
+ <l:gentext key="Article" text="Artyku&#322;"/>
+ <l:gentext key="article" text="Artyku&#322;"/>
+ <l:gentext key="Bibliography" text="Bibliografia"/>
+ <l:gentext key="bibliography" text="Bibliografia"/>
+ <l:gentext key="Book" text="Ksi&#261;&#380;ka"/>
+ <l:gentext key="book" text="Ksi&#261;&#380;ka"/>
+ <l:gentext key="CAUTION" text="PRZYPADEK"/>
+ <l:gentext key="Caution" text="Uwaga!"/>
+ <l:gentext key="caution" text="Uwaga!"/>
+ <l:gentext key="Chapter" text="Rozdzia&#322;"/>
+ <l:gentext key="chapter" text="rozdzia&#322;;"/>
+ <l:gentext key="Colophon" text="Colophon"/>
+ <l:gentext key="colophon" text="Colophon"/>
+ <l:gentext key="Copyright" text="Copyright"/>
+ <l:gentext key="copyright" text="Copyright"/>
+ <l:gentext key="Dedication" text="Dedykacja"/>
+ <l:gentext key="dedication" text="Dedykacja"/>
+ <l:gentext key="Edition" text="Wydanie"/>
+ <l:gentext key="edition" text="Wydanie"/>
+ <l:gentext key="Equation" text="R&#243;wnanie"/>
+ <l:gentext key="equation" text="R&#243;wnanie"/>
+ <l:gentext key="Example" text="Przyk&#322;ad"/>
+ <l:gentext key="example" text="Przyk&#322;ad"/>
+ <l:gentext key="Figure" text="Rysunek"/>
+ <l:gentext key="figure" text="Rysunek"/>
+ <l:gentext key="Glossary" text="Glossary"/>
+ <l:gentext key="glossary" text="Glossary"/>
+ <l:gentext key="GlossSee" text="Patrz"/>
+ <l:gentext key="glosssee" text="Patrz"/>
+ <l:gentext key="GlossSeeAlso" text="Patrz te&#380;"/>
+ <l:gentext key="glossseealso" text="Patrz te&#380;"/>
+ <l:gentext key="IMPORTANT" text="WA&#379;NE"/>
+ <l:gentext key="Important" text="WA&#379;NE"/>
+ <l:gentext key="important" text="WA&#379;NE"/>
+ <l:gentext key="Index" text="Indeks"/>
+ <l:gentext key="index" text="Indeks"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text=""/>
+ <l:gentext key="legalnotice" text=""/>
+ <l:gentext key="MsgAud" text="Odbiorcy"/>
+ <l:gentext key="msgaud" text="Odbiorcy"/>
+ <l:gentext key="MsgLevel" text="Poziom"/>
+ <l:gentext key="msglevel" text="Poziom"/>
+ <l:gentext key="MsgOrig" text="Nadawca"/>
+ <l:gentext key="msgorig" text="Nadawca"/>
+ <l:gentext key="NOTE" text="Notatka"/>
+ <l:gentext key="Note" text="Notatka"/>
+ <l:gentext key="note" text="Notatka"/>
+ <l:gentext key="Part" text="Cz&#281;&#347;&#263;"/>
+ <l:gentext key="part" text="Cz&#281;&#347;&#263;"/>
+ <l:gentext key="Preface" text="Przedmowa"/>
+ <l:gentext key="preface" text="Przedmowa"/>
+ <l:gentext key="Procedure" text="Procedura"/>
+ <l:gentext key="procedure" text="Procedura"/>
+ <l:gentext key="ProductionSet" text="Production"/>
+ <l:gentext key="Published" text="Data wydania"/>
+ <l:gentext key="published" text="Data wydania"/>
+ <l:gentext key="question" text="Pyt:"/>
+ <l:gentext key="Question" text="Pyt:"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="Materia&#322;y &#378;r&#243;d&#322;owe"/>
+ <l:gentext key="reference" text="Materia&#322;y &#378;r&#243;d&#322;owe"/>
+ <l:gentext key="RefName" text="Nazwa"/>
+ <l:gentext key="refname" text="Nazwa"/>
+ <l:gentext key="RefSection" text=""/>
+ <l:gentext key="refsection" text=""/>
+ <l:gentext key="RefSynopsisDiv" text="Synopsis"/>
+ <l:gentext key="refsynopsisdiv" text="Synopsis"/>
+ <l:gentext key="RevHistory" text="Historia zmian"/>
+ <l:gentext key="revhistory" text="Historia zmian"/>
+ <l:gentext key="Revision" text="Zmiana"/>
+ <l:gentext key="revision" text="Zmiana"/>
+ <l:gentext key="sect1" text="Section"/>
+ <l:gentext key="sect2" text="Section"/>
+ <l:gentext key="sect3" text="Section"/>
+ <l:gentext key="sect4" text="Section"/>
+ <l:gentext key="sect5" text="Section"/>
+ <l:gentext key="Section" text="Sekcja"/>
+ <l:gentext key="section" text="sekcja"/>
+ <l:gentext key="See" text="Patrz"/>
+ <l:gentext key="see" text="Patrz"/>
+ <l:gentext key="SeeAlso" text="Patrz te&#380;"/>
+ <l:gentext key="Seealso" text="Patrz te&#380;"/>
+ <l:gentext key="seealso" text="Patrz te&#380;"/>
+ <l:gentext key="Set" text="Set"/>
+ <l:gentext key="set" text="Set"/>
+ <l:gentext key="SetIndex" text="Indeks"/>
+ <l:gentext key="setindex" text="Indeks"/>
+ <l:gentext key="Sidebar" text=""/>
+ <l:gentext key="sidebar" text=""/>
+ <l:gentext key="Step" text="krok"/>
+ <l:gentext key="step" text="krok"/>
+ <l:gentext key="Table" text="Tabela"/>
+ <l:gentext key="table" text="Tabela"/>
+ <l:gentext key="TIP" text="Podpowied&#378;"/>
+ <l:gentext key="Tip" text="Podpowied&#378;"/>
+ <l:gentext key="tip" text="Podpowied&#378;"/>
+ <l:gentext key="WARNING" text="Ostrze&#380;enie"/>
+ <l:gentext key="Warning" text="Ostrze&#380;enie"/>
+ <l:gentext key="warning" text="Ostrze&#380;enie"/>
+ <l:gentext key="and" text="i"/>
+ <l:gentext key="by" text=""/>
+ <l:gentext key="Edited" text="Edited"/>
+ <l:gentext key="edited" text="Edited"/>
+ <l:gentext key="Editedby" text="Redakcja: "/>
+ <l:gentext key="editedby" text="Redakcja: "/>
+ <l:gentext key="in" text="w"/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="nie istniej&#261;cy element"/>
+ <l:gentext key="notes" text="Przypisy"/>
+ <l:gentext key="Notes" text="Przypisy"/>
+ <l:gentext key="Pgs" text="stron"/>
+ <l:gentext key="pgs" text="stron"/>
+ <l:gentext key="Revisedby" text="Revised by: "/>
+ <l:gentext key="revisedby" text="Revised by: "/>
+ <l:gentext key="TableNotes" text="Przypisy"/>
+ <l:gentext key="tablenotes" text="Przypisy"/>
+ <l:gentext key="TableofContents" text="Spis tre&#347;ci"/>
+ <l:gentext key="tableofcontents" text="Spis tre&#347;ci"/>
+ <l:gentext key="unexpectedelementname" text="Unexpected element name"/>
+ <l:gentext key="unsupported" text="nie wspierany"/>
+ <l:gentext key="xrefto" text="xref to"/>
+ <l:gentext key="listofequations" text="Spis r&#243;wna&#324;"/>
+ <l:gentext key="ListofEquations" text="Spis r&#243;wna&#324;"/>
+ <l:gentext key="ListofExamples" text="Spis przyk&#322;ad&#243;w"/>
+ <l:gentext key="listofexamples" text="Spis przyk&#322;ad&#243;w"/>
+ <l:gentext key="ListofFigures" text="Spis rysunk&#243;w"/>
+ <l:gentext key="listoffigures" text="Spis rysunk&#243;w"/>
+ <l:gentext key="listoftables" text="Spis tabel"/>
+ <l:gentext key="ListofTables" text="Spis tabel"/>
+ <l:gentext key="ListofUnknown" text="Spis ???"/>
+ <l:gentext key="listofunknown" text="Spis ???"/>
+ <l:gentext key="nav-home" text="Spis tre&#347;ci"/>
+ <l:gentext key="nav-next" text="Nast&#281;pny"/>
+ <l:gentext key="nav-next-sibling" text="Nast&#281;pny rozdzia&#322;"/>
+ <l:gentext key="nav-prev" text="Poprzedni"/>
+ <l:gentext key="nav-prev-sibling" text="Poprzedni rozdzia&#322;"/>
+ <l:gentext key="nav-up" text="Pocz&#261;tek rozdzia&#322;u"/>
+ <l:gentext key="sectioncalled" text="the section called"/>
+ <l:gentext key="Draft" text="Draft"/>
+ <l:gentext key="above" text="above"/>
+ <l:gentext key="below" text="below"/>
+ <l:gentext key="index symbols" text="Symbols"/>
+ <l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz"/>
+ <l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/>
+ <l:dingbat key="startquote" text="&#8222;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#171;"/>
+ <l:dingbat key="nestedendquote" text="&#187;"/>
+ <l:dingbat key="bullet" text="&#2022;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="Dodatek %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Rozdzia&#322; %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="R&#243;wnanie %n. %t"/>
+ <l:template name="example" text="Przyk&#322;ad %n. %t"/>
+ <l:template name="figure" text="Rysunek %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Cz&#281;&#347;&#263; %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="Procedura&#160;%n.&#160;%t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Production&#160;%n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="Tabela %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="Dodatek %n. %t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="Rozdzia&#322; %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%n. %t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="Odp:&#160;%n"/>
+ <l:template name="appendix" text="Dodatek %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Rozdzia&#322; %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="R&#243;wnanie&#160;%n"/>
+ <l:template name="example" text="Przyk&#322;ad %n. %t"/>
+ <l:template name="figure" text="Rysunek %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Cz&#281;&#347;&#263; %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="Procedura&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="Pyt:&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="Pyt:&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="Tabela %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#8220;%t&#8221;"/>
+ <l:template name="sect2" text="&#8220;%t&#8221;"/>
+ <l:template name="sect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect4" text="&#8220;%t&#8221;"/>
+ <l:template name="sect5" text="&#8220;%t&#8221;"/>
+ <l:template name="section" text="&#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="Sekcja %n"/>
+ <l:template name="sect2" text="Sekcja %n"/>
+ <l:template name="sect3" text="Sekcja %n"/>
+ <l:template name="sect4" text="Sekcja %n"/>
+ <l:template name="sect5" text="Sekcja %n"/>
+ <l:template name="section" text="Sekcja %n"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" i "/>
+ <l:template name="seplast" text=", i "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="Patrz "/>
+ <l:template name="seealso" text="Patrz te&#380; "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="Odbiorcy: "/>
+ <l:template name="MsgLevel" text="Poziom: "/>
+ <l:template name="MsgOrig" text="Nadawca: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/pt.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/pt.xml
new file mode 100644
index 0000000..7a1c7e1
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/pt.xml
@@ -0,0 +1,456 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="pt" english-language-name="Portuguese">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="Resumo"/>
+ <l:gentext key="abstract" text="Resumo"/>
+ <l:gentext key="Answer" text="R:"/>
+ <l:gentext key="answer" text="R:"/>
+ <l:gentext key="Appendix" text="Ap&#234;ndice"/>
+ <l:gentext key="appendix" text="ap&#234;ndice"/>
+ <l:gentext key="Article" text="Artigo"/>
+ <l:gentext key="article" text="Artigo"/>
+ <l:gentext key="Bibliography" text="Bibliografia"/>
+ <l:gentext key="bibliography" text="Bibliografia"/>
+ <l:gentext key="Book" text="Livro"/>
+ <l:gentext key="book" text="Livro"/>
+ <l:gentext key="CAUTION" text="CAUTELA"/>
+ <l:gentext key="Caution" text="Cautela"/>
+ <l:gentext key="caution" text="Cautela"/>
+ <l:gentext key="Chapter" text="Cap&#237;tulo"/>
+ <l:gentext key="chapter" text="cap&#237;tulo"/>
+ <l:gentext key="Colophon" text="Colophon"/>
+ <l:gentext key="colophon" text="Colophon"/>
+ <l:gentext key="Copyright" text="Copyright"/>
+ <l:gentext key="copyright" text="Copyright"/>
+ <l:gentext key="Dedication" text="Dedicat&#243;ria"/>
+ <l:gentext key="dedication" text="Dedicat&#243;ria"/>
+ <l:gentext key="Edition" text="Edi&#231;&#227;o"/>
+ <l:gentext key="edition" text="Edi&#231;&#227;o"/>
+ <l:gentext key="Equation" text="Equa&#231;&#227;o"/>
+ <l:gentext key="equation" text="Equa&#231;&#227;o"/>
+ <l:gentext key="Example" text="Exemplo"/>
+ <l:gentext key="example" text="Exemplo"/>
+ <l:gentext key="Figure" text="Figura"/>
+ <l:gentext key="figure" text="Figura"/>
+ <l:gentext key="Glossary" text="Glossario"/>
+ <l:gentext key="glossary" text="Glossario"/>
+ <l:gentext key="GlossSee" text="Ver"/>
+ <l:gentext key="glosssee" text="Ver"/>
+ <l:gentext key="GlossSeeAlso" text="Ver Tamb&#233;m"/>
+ <l:gentext key="glossseealso" text="Ver Tamb&#233;m"/>
+ <l:gentext key="IMPORTANT" text="IMPORTANTE"/>
+ <l:gentext key="Important" text="Importante"/>
+ <l:gentext key="important" text="Importante"/>
+ <l:gentext key="Index" text="Index"/>
+ <l:gentext key="index" text="Index"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text=""/>
+ <l:gentext key="legalnotice" text=""/>
+ <l:gentext key="MsgAud" text="Audi&#234;ncia"/>
+ <l:gentext key="msgaud" text="Audi&#234;ncia"/>
+ <l:gentext key="MsgLevel" text="N&#237;vel"/>
+ <l:gentext key="msglevel" text="N&#237;vel"/>
+ <l:gentext key="MsgOrig" text="Origem"/>
+ <l:gentext key="msgorig" text="Origem"/>
+ <l:gentext key="NOTE" text="NOTA"/>
+ <l:gentext key="Note" text="Nota"/>
+ <l:gentext key="note" text="Nota"/>
+ <l:gentext key="Part" text="Parte"/>
+ <l:gentext key="part" text="Parte"/>
+ <l:gentext key="Preface" text="Pref&#225;cio"/>
+ <l:gentext key="preface" text="Pref&#225;cio"/>
+ <l:gentext key="Procedure" text="Procedimento"/>
+ <l:gentext key="procedure" text="Procedimento"/>
+ <l:gentext key="ProductionSet" text="Production"/>
+ <l:gentext key="PubDate" text="Editado"/>
+ <l:gentext key="pubdate" text="Editado"/>
+ <l:gentext key="Published" text="Publicado"/>
+ <l:gentext key="published" text="Publicado"/>
+ <l:gentext key="Question" text="P:"/>
+ <l:gentext key="question" text="P:"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="Refer&#234;ncia"/>
+ <l:gentext key="reference" text="Refer&#234;ncia"/>
+ <l:gentext key="RefName" text="Nome"/>
+ <l:gentext key="refname" text="Nome"/>
+ <l:gentext key="RefSection" text=""/>
+ <l:gentext key="refsection" text=""/>
+ <l:gentext key="RefSynopsisDiv" text="Synopsis"/>
+ <l:gentext key="refsynopsisdiv" text="Synopsis"/>
+ <l:gentext key="RevHistory" text="Hitorial de Revis&#245;es"/>
+ <l:gentext key="revhistory" text="Hitorial de Revis&#245;es"/>
+ <l:gentext key="Revision" text="Revis&#227;o"/>
+ <l:gentext key="revision" text="Revis&#227;o"/>
+ <l:gentext key="sect1" text="Section"/>
+ <l:gentext key="sect2" text="Section"/>
+ <l:gentext key="sect3" text="Section"/>
+ <l:gentext key="sect4" text="Section"/>
+ <l:gentext key="sect5" text="Section"/>
+ <l:gentext key="Section" text="Sec&#231;&#227;o"/>
+ <l:gentext key="section" text="sec&#231;&#227;o"/>
+ <l:gentext key="See" text="Ver"/>
+ <l:gentext key="see" text="Ver"/>
+ <l:gentext key="SeeAlso" text="Ver Tamb&#233;m"/>
+ <l:gentext key="Seealso" text="ver tamb&#233;m"/>
+ <l:gentext key="seealso" text="Ver Tamb&#233;m"/>
+ <l:gentext key="Set" text="Set"/>
+ <l:gentext key="set" text="Set"/>
+ <l:gentext key="SetIndex" text="Set Index"/>
+ <l:gentext key="setindex" text="Set Index"/>
+ <l:gentext key="Sidebar" text="Sidebar"/>
+ <l:gentext key="sidebar" text="sidebar"/>
+ <l:gentext key="Step" text="Passo"/>
+ <l:gentext key="step" text="passo"/>
+ <l:gentext key="Table" text="Tabela"/>
+ <l:gentext key="table" text="Tabela"/>
+ <l:gentext key="TIP" text="DICA"/>
+ <l:gentext key="Tip" text="Dica"/>
+ <l:gentext key="tip" text="Dica"/>
+ <l:gentext key="WARNING" text="ATEN&#199;&#195;O"/>
+ <l:gentext key="Warning" text="Aten&#231;&#227;o"/>
+ <l:gentext key="warning" text="Aten&#231;&#227;o"/>
+ <l:gentext key="and" text="e"/>
+ <l:gentext key="by" text="por"/>
+ <l:gentext key="Edited" text="Editado"/>
+ <l:gentext key="edited" text="Editado"/>
+ <l:gentext key="Editedby" text="Editado por"/>
+ <l:gentext key="editedby" text="Editado por"/>
+ <l:gentext key="in" text=""/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="non-existant element"/>
+ <l:gentext key="notes" text="Notas"/>
+ <l:gentext key="Notes" text="Notas"/>
+ <l:gentext key="Pgs" text="P&#225;ginas"/>
+ <l:gentext key="pgs" text="P&#225;ginas"/>
+ <l:gentext key="Revisedby" text="Revised by: "/>
+ <l:gentext key="revisedby" text="Revised by: "/>
+ <l:gentext key="TableNotes" text="Notas"/>
+ <l:gentext key="tablenotes" text="Notas"/>
+ <l:gentext key="TableofContents" text="&#205;ndice"/>
+ <l:gentext key="tableofcontents" text="&#205;ndice"/>
+ <l:gentext key="unexpectedelementname" text="Unexpected element name"/>
+ <l:gentext key="unsupported" text="unsupported"/>
+ <l:gentext key="xrefto" text="xref to"/>
+ <l:gentext key="listofequations" text="Lista de Equa&#231;&#245;es"/>
+ <l:gentext key="ListofEquations" text="Lista de Equa&#231;&#245;es"/>
+ <l:gentext key="ListofExamples" text="Lista de Exemplos"/>
+ <l:gentext key="listofexamples" text="Lista de Exemplos"/>
+ <l:gentext key="ListofFigures" text="Lista de Figuras"/>
+ <l:gentext key="listoffigures" text="Lista de Figuras"/>
+ <l:gentext key="listoftables" text="Lista de Tabelas"/>
+ <l:gentext key="ListofTables" text="Lista de Tabelas"/>
+ <l:gentext key="ListofUnknown" text="List of ???"/>
+ <l:gentext key="listofunknown" text="List of ???"/>
+ <l:gentext key="nav-home" text="Home"/>
+ <l:gentext key="nav-next" text="Next"/>
+ <l:gentext key="nav-next-sibling" text="Fast Forward"/>
+ <l:gentext key="nav-prev" text="Prev"/>
+ <l:gentext key="nav-prev-sibling" text="Fast Backward"/>
+ <l:gentext key="nav-up" text="Up"/>
+ <l:gentext key="sectioncalled" text="the section called"/>
+ <l:gentext key="Draft" text="Draft"/>
+ <l:gentext key="above" text="above"/>
+ <l:gentext key="below" text="below"/>
+ <l:gentext key="index symbols" text="Symbols"/>
+ <l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz"/>
+ <l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="Ap&#234;ndice %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Cap&#237;tulo %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Equa&#231;&#227;o %n. %t"/>
+ <l:template name="example" text="Exemplo %n. %t"/>
+ <l:template name="figure" text="Figura %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Parte %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="Procedimento&#160;%n.&#160;%t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Production&#160;%n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="Pergunta %n"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="Tabela %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="Ap&#234;ndice %n. %t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="Cap&#237;tulo %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%n. %t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="R:&#160;%n"/>
+ <l:template name="appendix" text="Ap&#234;ndice %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Cap&#237;tulo %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Equa&#231;&#227;o&#160;%n"/>
+ <l:template name="example" text="Exemplo %n. %t"/>
+ <l:template name="figure" text="Figura %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Parte %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="Procedimento&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="P:&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="P:&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="Tabela %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#8220;%t&#8221;"/>
+ <l:template name="sect2" text="&#8220;%t&#8221;"/>
+ <l:template name="sect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect4" text="&#8220;%t&#8221;"/>
+ <l:template name="sect5" text="&#8220;%t&#8221;"/>
+ <l:template name="section" text="&#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="Sec&#231;&#227;o %n"/>
+ <l:template name="sect2" text="Sec&#231;&#227;o %n"/>
+ <l:template name="sect3" text="Sec&#231;&#227;o %n"/>
+ <l:template name="sect4" text="Sec&#231;&#227;o %n"/>
+ <l:template name="sect5" text="Sec&#231;&#227;o %n"/>
+ <l:template name="section" text="Sec&#231;&#227;o %n"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" e "/>
+ <l:template name="seplast" text=", e "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="Ver "/>
+ <l:template name="seealso" text="Ver Tamb&#233;m "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="Audi&#234;ncia: "/>
+ <l:template name="MsgLevel" text="N&#237;vel: "/>
+ <l:template name="MsgOrig" text="Origem: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/pt_br.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/pt_br.xml
new file mode 100644
index 0000000..6b927c3
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/pt_br.xml
@@ -0,0 +1,451 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="pt_br" english-language-name="Portuguese (Brazil)">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="Resumo"/>
+ <l:gentext key="abstract" text="Resumo"/>
+ <l:gentext key="Answer" text="R:"/>
+ <l:gentext key="answer" text="R:"/>
+ <l:gentext key="Appendix" text="Ap&#234;ndice"/>
+ <l:gentext key="appendix" text="ap&#234;ndice"/>
+ <l:gentext key="Article" text="Artigo"/>
+ <l:gentext key="article" text="Artigo"/>
+ <l:gentext key="Bibliography" text="Bibliografia"/>
+ <l:gentext key="bibliography" text="Bibliografia"/>
+ <l:gentext key="Book" text="Livro"/>
+ <l:gentext key="book" text="Livro"/>
+ <l:gentext key="CAUTION" text="CUIDADO"/>
+ <l:gentext key="Caution" text="Cuidado"/>
+ <l:gentext key="caution" text="Cuidado"/>
+ <l:gentext key="Chapter" text="Cap&#237;tulo"/>
+ <l:gentext key="chapter" text="cap&#237;tulo"/>
+ <l:gentext key="Colophon" text="Considera&#231;&#245;es finais"/>
+ <l:gentext key="colophon" text="Considera&#231;&#245;es finais"/>
+ <l:gentext key="Copyright" text="Copyright"/>
+ <l:gentext key="copyright" text="Copyright"/>
+ <l:gentext key="Dedication" text="Dedicat&#243;ria"/>
+ <l:gentext key="dedication" text="Dedicat&#243;ria"/>
+ <l:gentext key="Edition" text="Edi&#231;&#227;o"/>
+ <l:gentext key="edition" text="Edi&#231;&#227;o"/>
+ <l:gentext key="Equation" text="Equa&#231;&#227;o"/>
+ <l:gentext key="equation" text="Equa&#231;&#227;o"/>
+ <l:gentext key="Example" text="Exemplo"/>
+ <l:gentext key="example" text="Exemplo"/>
+ <l:gentext key="Figure" text="Figura"/>
+ <l:gentext key="figure" text="Figura"/>
+ <l:gentext key="Glossary" text="Gloss&#225;rio"/>
+ <l:gentext key="glossary" text="Gloss&#225;rio"/>
+ <l:gentext key="GlossSee" text="Ver"/>
+ <l:gentext key="glosssee" text="Ver"/>
+ <l:gentext key="GlossSeeAlso" text="Ver Tamb&#233;m"/>
+ <l:gentext key="glossseealso" text="Ver Tamb&#233;m"/>
+ <l:gentext key="IMPORTANT" text="IMPORTANTE"/>
+ <l:gentext key="Important" text="Importante"/>
+ <l:gentext key="important" text="Importante"/>
+ <l:gentext key="Index" text="&#205;ndice Remissivo"/>
+ <l:gentext key="index" text="&#205;ndice Remissivo"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text="Nota Legal"/>
+ <l:gentext key="legalnotice" text="Nota Legal"/>
+ <l:gentext key="MsgAud" text="Audi&#234;ncia"/>
+ <l:gentext key="msgaud" text="Audi&#234;ncia"/>
+ <l:gentext key="MsgLevel" text="N&#237;vel"/>
+ <l:gentext key="msglevel" text="N&#237;vel"/>
+ <l:gentext key="MsgOrig" text="Origem"/>
+ <l:gentext key="msgorig" text="Origem"/>
+ <l:gentext key="NOTE" text="NOTA"/>
+ <l:gentext key="Note" text="Nota"/>
+ <l:gentext key="note" text="Nota"/>
+ <l:gentext key="Part" text="Parte"/>
+ <l:gentext key="part" text="Parte"/>
+ <l:gentext key="Preface" text="Pref&#225;cio"/>
+ <l:gentext key="preface" text="Pref&#225;cio"/>
+ <l:gentext key="Procedure" text="Procedimento"/>
+ <l:gentext key="procedure" text="Procedimento"/>
+ <l:gentext key="ProductionSet" text="Production"/>
+ <l:gentext key="PubDate" text="Data de Publica&#231;&#227;o"/>
+ <l:gentext key="pubdate" text="Data de Publica&#231;&#227;o"/>
+ <l:gentext key="Published" text="Publicado"/>
+ <l:gentext key="published" text="Publicado"/>
+ <l:gentext key="Question" text="P:"/>
+ <l:gentext key="question" text="P:"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="Refer&#234;ncia"/>
+ <l:gentext key="reference" text="Refer&#234;ncia"/>
+ <l:gentext key="RefName" text="Nome"/>
+ <l:gentext key="refname" text="Nome"/>
+ <l:gentext key="RefSection" text=""/>
+ <l:gentext key="refsection" text=""/>
+ <l:gentext key="RefSynopsisDiv" text="Sinopse"/>
+ <l:gentext key="refsynopsisdiv" text="Sinopse"/>
+ <l:gentext key="RevHistory" text="Hist&#243;rico de Revis&#245;es"/>
+ <l:gentext key="revhistory" text="Hist&#243;rico de Revis&#245;es"/>
+ <l:gentext key="Revision" text="Revis&#227;o"/>
+ <l:gentext key="revision" text="Revis&#227;o"/>
+ <l:gentext key="sect1" text="Section"/>
+ <l:gentext key="sect2" text="Section"/>
+ <l:gentext key="sect3" text="Section"/>
+ <l:gentext key="sect4" text="Section"/>
+ <l:gentext key="sect5" text="Section"/>
+ <l:gentext key="Section" text="Se&#231;&#227;o"/>
+ <l:gentext key="section" text="se&#231;&#227;o"/>
+ <l:gentext key="See" text="Ver"/>
+ <l:gentext key="see" text="Ver"/>
+ <l:gentext key="SeeAlso" text="Ver Tamb&#233;m"/>
+ <l:gentext key="Seealso" text="ver tamb&#233;m"/>
+ <l:gentext key="seealso" text="Ver Tamb&#233;m"/>
+ <l:gentext key="Set" text="Conjunto"/>
+ <l:gentext key="set" text="Conjunto"/>
+ <l:gentext key="SetIndex" text="&#205;ndice do Conjunto"/>
+ <l:gentext key="setindex" text="&#205;ndice do Conjunto"/>
+ <l:gentext key="Sidebar" text="Quadro Lateral"/>
+ <l:gentext key="sidebar" text="quadro lateral"/>
+ <l:gentext key="Step" text="Passo"/>
+ <l:gentext key="step" text="passo"/>
+ <l:gentext key="Table" text="Tabela"/>
+ <l:gentext key="table" text="Tabela"/>
+ <l:gentext key="TIP" text="DICA"/>
+ <l:gentext key="Tip" text="Dica"/>
+ <l:gentext key="tip" text="Dica"/>
+ <l:gentext key="WARNING" text="ATEN&#199;&#195;O"/>
+ <l:gentext key="Warning" text="Aten&#231;&#227;o"/>
+ <l:gentext key="warning" text="Aten&#231;&#227;o"/>
+ <l:gentext key="and" text="e"/>
+ <l:gentext key="by" text="por"/>
+ <l:gentext key="edited" text="Editado"/>
+ <l:gentext key="Edited" text="Editado"/>
+ <l:gentext key="editedby" text="Editado por"/>
+ <l:gentext key="Editedby" text="Editado por"/>
+ <l:gentext key="in" text=""/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="elemento inexistente"/>
+ <l:gentext key="Notes" text="Notas"/>
+ <l:gentext key="notes" text="Notas"/>
+ <l:gentext key="Pgs" text="P&#225;ginas"/>
+ <l:gentext key="pgs" text="P&#225;ginas"/>
+ <l:gentext key="Revisedby" text="Revisado por: "/>
+ <l:gentext key="revisedby" text="Revisado por: "/>
+ <l:gentext key="tablenotes" text="Notas"/>
+ <l:gentext key="TableNotes" text="Notas"/>
+ <l:gentext key="TableofContents" text="&#205;ndice"/>
+ <l:gentext key="tableofcontents" text="&#205;ndice"/>
+ <l:gentext key="unexpectedelementname" text="Nome de elemento inesperado"/>
+ <l:gentext key="unsupported" text="n&#227;o suportado"/>
+ <l:gentext key="xrefto" text="refer&#234;ncia para"/>
+ <l:gentext key="listofequations" text="Lista de Equa&#231;&#245;es"/>
+ <l:gentext key="ListofEquations" text="Lista de Equa&#231;&#245;es"/>
+ <l:gentext key="ListofExamples" text="Lista de Exemplos"/>
+ <l:gentext key="listofexamples" text="Lista de Exemplos"/>
+ <l:gentext key="ListofFigures" text="Lista de Figuras"/>
+ <l:gentext key="listoffigures" text="Lista de Figuras"/>
+ <l:gentext key="listoftables" text="Lista de Tabelas"/>
+ <l:gentext key="ListofTables" text="Lista de Tabelas"/>
+ <l:gentext key="ListofUnknown" text="Lista de ???"/>
+ <l:gentext key="listofunknown" text="Lista de ???"/>
+ <l:gentext key="nav-home" text="Principal"/>
+ <l:gentext key="nav-next" text="Pr&#243;xima"/>
+ <l:gentext key="nav-next-sibling" text="Fim"/>
+ <l:gentext key="nav-prev" text="Anterior"/>
+ <l:gentext key="nav-prev-sibling" text="In&#237;cio"/>
+ <l:gentext key="nav-up" text="Acima"/>
+ <l:gentext key="sectioncalled" text="the section called"/>
+ <l:gentext key="Draft" text="Draft"/>
+ <l:gentext key="above" text="above"/>
+ <l:gentext key="below" text="below"/>
+ <l:gentext key="index symbols" text="Symbols"/>
+ <l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz"/>
+ <l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="Ap&#234;ndice %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Cap&#237;tulo %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Equa&#231;&#227;o %n. %t"/>
+ <l:template name="example" text="Exemplo %n. %t"/>
+ <l:template name="figure" text="Figura %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Parte %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="Procedimento&#160;%n.&#160;%t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Production&#160;%n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="Tabela %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="Ap&#234;ndice %n. %t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="Cap&#237;tulo %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%n. %t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="R:&#160;%n"/>
+ <l:template name="appendix" text="Ap&#234;ndice %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Cap&#237;tulo %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Equa&#231;&#227;o&#160;%n"/>
+ <l:template name="example" text="Exemplo %n. %t"/>
+ <l:template name="figure" text="Figura %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Parte %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="Procedimento&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="P:&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="P:&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="Tabela %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#8220;%t&#8221;"/>
+ <l:template name="sect2" text="&#8220;%t&#8221;"/>
+ <l:template name="sect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect4" text="&#8220;%t&#8221;"/>
+ <l:template name="sect5" text="&#8220;%t&#8221;"/>
+ <l:template name="section" text="&#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="Se&#231;&#227;o %n"/>
+ <l:template name="sect2" text="Se&#231;&#227;o %n"/>
+ <l:template name="sect3" text="Se&#231;&#227;o %n"/>
+ <l:template name="sect4" text="Se&#231;&#227;o %n"/>
+ <l:template name="sect5" text="Se&#231;&#227;o %n"/>
+ <l:template name="section" text="Se&#231;&#227;o %n"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" e "/>
+ <l:template name="seplast" text=", e "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="Ver "/>
+ <l:template name="seealso" text="Ver Tamb&#233;m "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="Audi&#234;ncia: "/>
+ <l:template name="MsgLevel" text="N&#237;vel: "/>
+ <l:template name="MsgOrig" text="Origem: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/ro.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/ro.xml
new file mode 100644
index 0000000..1fac0ed
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/ro.xml
@@ -0,0 +1,454 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="ro" english-language-name="Romanian">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="Rezumat"/>
+ <l:gentext key="abstract" text="Rezumat"/>
+ <l:gentext key="Answer" text="A:"/>
+ <l:gentext key="answer" text="A:"/>
+ <l:gentext key="Appendix" text="Anexa"/>
+ <l:gentext key="appendix" text="anexa"/>
+ <l:gentext key="Article" text="Articol"/>
+ <l:gentext key="article" text="Articol"/>
+ <l:gentext key="Bibliography" text="Bibliografie"/>
+ <l:gentext key="bibliography" text="Bibliografie"/>
+ <l:gentext key="Book" text="Carte"/>
+ <l:gentext key="book" text="Carte"/>
+ <l:gentext key="CAUTION" text="ATEN&#222;IE"/>
+ <l:gentext key="Caution" text="Aten&#254;ie"/>
+ <l:gentext key="caution" text="Aten&#254;ie"/>
+ <l:gentext key="Chapter" text="Cap."/>
+ <l:gentext key="chapter" text="cap."/>
+ <l:gentext key="Colophon" text="Colophon"/>
+ <l:gentext key="colophon" text="Colophon"/>
+ <l:gentext key="Copyright" text="Copyright"/>
+ <l:gentext key="copyright" text="Copyright"/>
+ <l:gentext key="Dedication" text="Dedica&#254;ie"/>
+ <l:gentext key="dedication" text="Dedica&#254;ie"/>
+ <l:gentext key="Edition" text="Edi&#254;ie"/>
+ <l:gentext key="edition" text="Edi&#254;ie"/>
+ <l:gentext key="Equation" text="ecua&#254;ia"/>
+ <l:gentext key="equation" text="ecua&#254;ia"/>
+ <l:gentext key="Example" text="Exemplu"/>
+ <l:gentext key="example" text="Exemplu"/>
+ <l:gentext key="Figure" text="Fig."/>
+ <l:gentext key="figure" text="Fig."/>
+ <l:gentext key="Glossary" text="Glosar"/>
+ <l:gentext key="glossary" text="Glosar"/>
+ <l:gentext key="GlossSee" text="Vezi"/>
+ <l:gentext key="glosssee" text="Vezi"/>
+ <l:gentext key="GlossSeeAlso" text="Vezi &#351;i"/>
+ <l:gentext key="glossseealso" text="Vezi &#351;i"/>
+ <l:gentext key="IMPORTANT" text="IMPORTANT"/>
+ <l:gentext key="Important" text="Important"/>
+ <l:gentext key="important" text="Important"/>
+ <l:gentext key="Index" text="Index"/>
+ <l:gentext key="index" text="Index"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text=""/>
+ <l:gentext key="legalnotice" text=""/>
+ <l:gentext key="MsgAud" text=""/>
+ <l:gentext key="msgaud" text=""/>
+ <l:gentext key="MsgLevel" text="Nivel"/>
+ <l:gentext key="msglevel" text="Nivel"/>
+ <l:gentext key="MsgOrig" text="Origine"/>
+ <l:gentext key="msgorig" text="Origine"/>
+ <l:gentext key="NOTE" text="NOT&#195;"/>
+ <l:gentext key="Note" text="Not&#227;"/>
+ <l:gentext key="note" text="Not&#227;"/>
+ <l:gentext key="Part" text="Parte"/>
+ <l:gentext key="part" text="Parte"/>
+ <l:gentext key="Preface" text="Prefa&#254;&#227;"/>
+ <l:gentext key="preface" text="Prefa&#254;&#227;"/>
+ <l:gentext key="Procedure" text="Procedur&#227;"/>
+ <l:gentext key="procedure" text="Procedur&#227;"/>
+ <l:gentext key="ProductionSet" text="Production"/>
+ <l:gentext key="Published" text="Publicat"/>
+ <l:gentext key="published" text="Publicat"/>
+ <l:gentext key="Question" text="Q:"/>
+ <l:gentext key="question" text="Q:"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="Referin&#254;&#227;"/>
+ <l:gentext key="reference" text="Referin&#254;&#227;"/>
+ <l:gentext key="RefName" text="Nume"/>
+ <l:gentext key="refname" text="Nume"/>
+ <l:gentext key="RefSection" text=""/>
+ <l:gentext key="refsection" text=""/>
+ <l:gentext key="RefSynopsisDiv" text="Rezumat"/>
+ <l:gentext key="refsynopsisdiv" text="Rezumat"/>
+ <l:gentext key="RevHistory" text="Istoricul versiunilor"/>
+ <l:gentext key="revhistory" text="Istoricul versiunilor"/>
+ <l:gentext key="Revision" text="Versiune"/>
+ <l:gentext key="revision" text="Versiune"/>
+ <l:gentext key="sect1" text="Section"/>
+ <l:gentext key="sect2" text="Section"/>
+ <l:gentext key="sect3" text="Section"/>
+ <l:gentext key="sect4" text="Section"/>
+ <l:gentext key="sect5" text="Section"/>
+ <l:gentext key="Section" text="Sec&#254;iune"/>
+ <l:gentext key="section" text="sec."/>
+ <l:gentext key="See" text="Vezi"/>
+ <l:gentext key="see" text="Vezi"/>
+ <l:gentext key="SeeAlso" text="Vezi &#351;i"/>
+ <l:gentext key="Seealso" text="Vezi &#351;i"/>
+ <l:gentext key="seealso" text="Vezi &#351;i"/>
+ <l:gentext key="Set" text="Set"/>
+ <l:gentext key="set" text="Set"/>
+ <l:gentext key="SetIndex" text="Index"/>
+ <l:gentext key="setindex" text="Index"/>
+ <l:gentext key="Sidebar" text=""/>
+ <l:gentext key="sidebar" text="sidebar"/>
+ <l:gentext key="Step" text="Opera&#254;ie"/>
+ <l:gentext key="step" text="opera&#254;iune"/>
+ <l:gentext key="Table" text="Tabel"/>
+ <l:gentext key="table" text="Tabel"/>
+ <l:gentext key="TIP" text="INDICA&#222;IE"/>
+ <l:gentext key="Tip" text="Indica&#254;ie"/>
+ <l:gentext key="tip" text="Indica&#254;ie"/>
+ <l:gentext key="WARNING" text="AVERTISMENT"/>
+ <l:gentext key="Warning" text="Avertisment"/>
+ <l:gentext key="warning" text="Avertisment"/>
+ <l:gentext key="and" text="&#351;i"/>
+ <l:gentext key="by" text="de"/>
+ <l:gentext key="Edited" text="Publicat"/>
+ <l:gentext key="edited" text="Publicat"/>
+ <l:gentext key="Editedby" text="Publicat de"/>
+ <l:gentext key="editedby" text="Publicat de"/>
+ <l:gentext key="in" text="&#238;n"/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="element inexistent"/>
+ <l:gentext key="notes" text="Note"/>
+ <l:gentext key="Notes" text="Note"/>
+ <l:gentext key="Pgs" text="Pagini"/>
+ <l:gentext key="pgs" text="Pagini"/>
+ <l:gentext key="Revisedby" text="Revised by: "/>
+ <l:gentext key="revisedby" text="Revised by: "/>
+ <l:gentext key="TableNotes" text="Remarci"/>
+ <l:gentext key="tablenotes" text="Remarci"/>
+ <l:gentext key="TableofContents" text="Cuprins"/>
+ <l:gentext key="tableofcontents" text="Cuprins"/>
+ <l:gentext key="unexpectedelementname" text="Nume de element nea&#351;teptat"/>
+ <l:gentext key="unsupported" text="nerecunoscut de sisitem"/>
+ <l:gentext key="xrefto" text="referin&#254;&#227; c&#227;tre"/>
+ <l:gentext key="listofequations" text="List&#227; de ecua&#254;ii"/>
+ <l:gentext key="ListofEquations" text="List&#227; de ecua&#254;ii"/>
+ <l:gentext key="ListofExamples" text="List&#227; de exemple"/>
+ <l:gentext key="listofexamples" text="List&#227; de exemple"/>
+ <l:gentext key="ListofFigures" text="List&#227; de figuri"/>
+ <l:gentext key="listoffigures" text="List&#227; de figuri"/>
+ <l:gentext key="listoftables" text="List&#227; de tabele"/>
+ <l:gentext key="ListofTables" text="List&#227; de tabele"/>
+ <l:gentext key="ListofUnknown" text="List&#227; de necunoscute"/>
+ <l:gentext key="listofunknown" text="List&#227; de necunoscute"/>
+ <l:gentext key="nav-home" text="Acas&#227;"/>
+ <l:gentext key="nav-next" text="&#206;nainte"/>
+ <l:gentext key="nav-next-sibling" text="Repede &#239;nainte"/>
+ <l:gentext key="nav-prev" text="&#206;napoi"/>
+ <l:gentext key="nav-prev-sibling" text="Repede &#238;napoi"/>
+ <l:gentext key="nav-up" text="Sus"/>
+ <l:gentext key="sectioncalled" text="the section called"/>
+ <l:gentext key="Draft" text="Draft"/>
+ <l:gentext key="above" text="above"/>
+ <l:gentext key="below" text="below"/>
+ <l:gentext key="index symbols" text="Symbols"/>
+ <l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz"/>
+ <l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="Anexa %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Cap. %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="ecua&#254;ia %n. %t"/>
+ <l:template name="example" text="Exemplu %n. %t"/>
+ <l:template name="figure" text="Fig. %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Parte %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="Procedur&#227;&#160;%n.&#160;%t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Production&#160;%n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="Tabel %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="Anexa %n. %t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="Cap. %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%n. %t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="A:&#160;%n"/>
+ <l:template name="appendix" text="Anexa %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Cap. %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="ecua&#254;ia&#160;%n"/>
+ <l:template name="example" text="Exemplu %n. %t"/>
+ <l:template name="figure" text="Fig. %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Parte %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="Procedur&#227;&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="Q:&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="Q:&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="Tabel %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#8220;%t&#8221;"/>
+ <l:template name="sect2" text="&#8220;%t&#8221;"/>
+ <l:template name="sect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect4" text="&#8220;%t&#8221;"/>
+ <l:template name="sect5" text="&#8220;%t&#8221;"/>
+ <l:template name="section" text="&#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="Sec&#254;iune %n"/>
+ <l:template name="sect2" text="Sec&#254;iune %n"/>
+ <l:template name="sect3" text="Sec&#254;iune %n"/>
+ <l:template name="sect4" text="Sec&#254;iune %n"/>
+ <l:template name="sect5" text="Sec&#254;iune %n"/>
+ <l:template name="section" text="Sec&#254;iune %n"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" &#351;i "/>
+ <l:template name="seplast" text=", &#351;i "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="Vezi "/>
+ <l:template name="seealso" text="Vezi &#351;i "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text=": "/>
+ <l:template name="MsgLevel" text="Nivel: "/>
+ <l:template name="MsgOrig" text="Origine: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/ru.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/ru.xml
new file mode 100644
index 0000000..b7d26fc
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/ru.xml
@@ -0,0 +1,484 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="ru" english-language-name="Russian">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="&#1040;&#1085;&#1085;&#1086;&#1090;&#1072;&#1094;&#1080;&#1103;"/>
+ <l:gentext key="abstract" text="&#1040;&#1085;&#1085;&#1086;&#1090;&#1072;&#1094;&#1080;&#1103;"/>
+ <l:gentext key="Answer" text="&#1054;:"/>
+ <l:gentext key="answer" text="&#1054;:"/>
+ <l:gentext key="Appendix" text="&#1055;&#1088;&#1080;&#1083;&#1086;&#1078;&#1077;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="appendix" text="&#1087;&#1088;&#1080;&#1083;&#1086;&#1078;&#1077;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="Appendix.abr" text="&#1055;&#1088;&#1080;&#1083;."/>
+ <l:gentext key="appendix.abr" text="&#1055;&#1088;&#1080;&#1083;."/>
+ <l:gentext key="Article" text="&#1057;&#1090;&#1072;&#1090;&#1100;&#1103;"/>
+ <l:gentext key="article" text="&#1057;&#1090;&#1072;&#1090;&#1100;&#1103;"/>
+ <l:gentext key="Audience" text="&#1040;&#1091;&#1076;&#1080;&#1090;&#1086;&#1088;&#1080;&#1103;"/>
+ <l:gentext key="audience" text="&#1040;&#1091;&#1076;&#1080;&#1090;&#1086;&#1088;&#1080;&#1103;"/>
+ <l:gentext key="Bibliography" text="&#1051;&#1080;&#1090;&#1077;&#1088;&#1072;&#1090;&#1091;&#1088;&#1072;"/>
+ <l:gentext key="bibliography" text="&#1051;&#1080;&#1090;&#1077;&#1088;&#1072;&#1090;&#1091;&#1088;&#1072;"/>
+ <l:gentext key="Book" text="&#1050;&#1085;&#1080;&#1075;&#1072;"/>
+ <l:gentext key="book" text="&#1050;&#1085;&#1080;&#1075;&#1072;"/>
+ <l:gentext key="CAUTION" text="&#1055;&#1056;&#1045;&#1044;&#1054;&#1057;&#1058;&#1045;&#1056;&#1045;&#1046;&#1045;&#1053;&#1048;&#1045;"/>
+ <l:gentext key="Caution" text="&#1055;&#1088;&#1077;&#1076;&#1086;&#1089;&#1090;&#1077;&#1088;&#1077;&#1078;&#1077;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="caution" text="&#1055;&#1088;&#1077;&#1076;&#1086;&#1089;&#1090;&#1077;&#1088;&#1077;&#1078;&#1077;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="Chapter" text="&#1043;&#1083;&#1072;&#1074;&#1072;"/>
+ <l:gentext key="chapter" text="&#1075;&#1083;&#1072;&#1074;&#1072;"/>
+ <l:gentext key="Chapter.abr" text="&#1043;&#1083;."/>
+ <l:gentext key="chapter.abr" text="&#1043;&#1083;."/>
+ <l:gentext key="Colophon" text="Colophon"/>
+ <l:gentext key="colophon" text="Colophon"/>
+ <l:gentext key="Copyright" text="Copyright"/>
+ <l:gentext key="copyright" text="Copyright"/>
+ <l:gentext key="Dedication" text="&#1055;&#1086;&#1089;&#1074;&#1103;&#1097;&#1077;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="dedication" text="&#1055;&#1086;&#1089;&#1074;&#1103;&#1097;&#1077;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="Edition" text="&#1056;&#1077;&#1076;&#1072;&#1082;&#1094;&#1080;&#1103;"/>
+ <l:gentext key="edition" text="&#1056;&#1077;&#1076;&#1072;&#1082;&#1094;&#1080;&#1103;"/>
+ <l:gentext key="Equation" text="&#1060;&#1086;&#1088;&#1084;&#1091;&#1083;&#1072;"/>
+ <l:gentext key="equation" text="&#1060;&#1086;&#1088;&#1084;&#1091;&#1083;&#1072;"/>
+ <l:gentext key="Equation.abr" text="&#1060;."/>
+ <l:gentext key="equation.abr" text="&#1060;."/>
+ <l:gentext key="Example" text="&#1055;&#1088;&#1080;&#1084;&#1077;&#1088;"/>
+ <l:gentext key="example" text="&#1055;&#1088;&#1080;&#1084;&#1077;&#1088;"/>
+ <l:gentext key="Example.abr" text="&#1055;&#1088;&#1080;&#1084;."/>
+ <l:gentext key="example.abr" text="&#1055;&#1088;&#1080;&#1084;."/>
+ <l:gentext key="Figure" text="&#1056;&#1080;&#1089;&#1091;&#1085;&#1086;&#1082;"/>
+ <l:gentext key="figure" text="&#1056;&#1080;&#1089;&#1091;&#1085;&#1086;&#1082;"/>
+ <l:gentext key="Figure.abr" text="&#1056;&#1080;&#1089;."/>
+ <l:gentext key="figure.abr" text="&#1056;&#1080;&#1089;."/>
+ <l:gentext key="Glossary" text="&#1043;&#1083;&#1086;&#1089;&#1089;&#1072;&#1088;&#1080;&#1081;"/>
+ <l:gentext key="glossary" text="&#1043;&#1083;&#1086;&#1089;&#1089;&#1072;&#1088;&#1080;&#1081;"/>
+ <l:gentext key="GlossSee" text="&#1057;&#1084;."/>
+ <l:gentext key="glosssee" text="&#1057;&#1084;."/>
+ <l:gentext key="GlossSeeAlso" text="&#1057;&#1084;. &#1090;&#1072;&#1082;&#1078;&#1077;"/>
+ <l:gentext key="glossseealso" text="&#1057;&#1084;. &#1090;&#1072;&#1082;&#1078;&#1077;"/>
+ <l:gentext key="IMPORTANT" text="&#1042;&#1040;&#1046;&#1053;&#1054;"/>
+ <l:gentext key="Important" text="&#1042;&#1072;&#1078;&#1085;&#1086;"/>
+ <l:gentext key="important" text="&#1042;&#1072;&#1078;&#1085;&#1086;"/>
+ <l:gentext key="Index" text="&#1055;&#1088;&#1077;&#1076;&#1084;&#1077;&#1090;&#1085;&#1099;&#1081; &#1091;&#1082;&#1072;&#1079;&#1072;&#1090;&#1077;&#1083;&#1100;"/>
+ <l:gentext key="index" text="&#1055;&#1088;&#1077;&#1076;&#1084;&#1077;&#1090;&#1085;&#1099;&#1081; &#1091;&#1082;&#1072;&#1079;&#1072;&#1090;&#1077;&#1083;&#1100;"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text="&#1040;&#1074;&#1090;&#1086;&#1088;&#1089;&#1082;&#1080;&#1077; &#1087;&#1088;&#1072;&#1074;&#1072;"/>
+ <l:gentext key="legalnotice" text="&#1040;&#1074;&#1090;&#1086;&#1088;&#1089;&#1082;&#1080;&#1077; &#1087;&#1088;&#1072;&#1074;&#1072;"/>
+ <l:gentext key="Level" text="&#1059;&#1088;&#1086;&#1074;&#1077;&#1085;&#1100;"/>
+ <l:gentext key="level" text="&#1059;&#1088;&#1086;&#1074;&#1077;&#1085;&#1100;"/>
+ <l:gentext key="MsgAud" text="Audience"/>
+ <l:gentext key="msgaud" text="Audience"/>
+ <l:gentext key="MsgLevel" text="Level"/>
+ <l:gentext key="msglevel" text="Level"/>
+ <l:gentext key="MsgOrig" text="Origin"/>
+ <l:gentext key="msgorig" text="Origin"/>
+ <l:gentext key="Name" text="&#1048;&#1084;&#1103;"/>
+ <l:gentext key="name" text="&#1048;&#1084;&#1103;"/>
+ <l:gentext key="NOTE" text="&#1047;&#1040;&#1052;&#1045;&#1063;&#1040;&#1053;&#1048;&#1045;"/>
+ <l:gentext key="Note" text="&#1047;&#1072;&#1084;&#1077;&#1095;&#1072;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="note" text="&#1047;&#1072;&#1084;&#1077;&#1095;&#1072;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="Origin" text="&#1048;&#1089;&#1090;&#1086;&#1095;&#1085;&#1080;&#1082;"/>
+ <l:gentext key="origin" text="&#1048;&#1089;&#1090;&#1086;&#1095;&#1085;&#1080;&#1082;"/>
+ <l:gentext key="Part" text="&#1063;&#1072;&#1089;&#1090;&#1100;"/>
+ <l:gentext key="part" text="&#1063;&#1072;&#1089;&#1090;&#1100;"/>
+ <l:gentext key="Part.abr" text="&#1063;."/>
+ <l:gentext key="part.abr" text="&#1063;."/>
+ <l:gentext key="Preface" text="&#1055;&#1088;&#1077;&#1076;&#1080;&#1089;&#1083;&#1086;&#1074;&#1080;&#1077;"/>
+ <l:gentext key="preface" text="&#1055;&#1088;&#1077;&#1076;&#1080;&#1089;&#1083;&#1086;&#1074;&#1080;&#1077;"/>
+ <l:gentext key="Procedure" text="&#1055;&#1088;&#1086;&#1094;&#1077;&#1076;&#1091;&#1088;&#1072;"/>
+ <l:gentext key="procedure" text="&#1055;&#1088;&#1086;&#1094;&#1077;&#1076;&#1091;&#1088;&#1072;"/>
+ <l:gentext key="Procedure.abr" text="&#1055;&#1088;&#1086;&#1094;."/>
+ <l:gentext key="procedure.abr" text="&#1055;&#1088;&#1086;&#1094;."/>
+ <l:gentext key="ProductionSet" text="Production"/>
+ <l:gentext key="Published" text="&#1054;&#1087;&#1091;&#1073;&#1083;&#1080;&#1082;&#1086;&#1074;&#1072;&#1085;&#1086;"/>
+ <l:gentext key="published" text="&#1054;&#1087;&#1091;&#1073;&#1083;&#1080;&#1082;&#1086;&#1074;&#1072;&#1085;&#1086;"/>
+ <l:gentext key="Question" text="&#1042;:"/>
+ <l:gentext key="question" text="&#1042;:"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="&#1057;&#1089;&#1099;&#1083;&#1082;&#1072;"/>
+ <l:gentext key="reference" text="&#1057;&#1089;&#1099;&#1083;&#1082;&#1072;"/>
+ <l:gentext key="RefName" text="&#1053;&#1072;&#1079;&#1074;&#1072;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="refname" text="&#1053;&#1072;&#1079;&#1074;&#1072;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="RefSection" text=""/>
+ <l:gentext key="refsection" text=""/>
+ <l:gentext key="RefSynopsisDiv" text="&#1057;&#1080;&#1085;&#1090;&#1072;&#1082;&#1089;&#1080;&#1089;"/>
+ <l:gentext key="refsynopsisdiv" text="&#1057;&#1080;&#1085;&#1090;&#1072;&#1082;&#1089;&#1080;&#1089;"/>
+ <l:gentext key="RevHistory" text="&#1048;&#1089;&#1090;&#1086;&#1088;&#1080;&#1103; &#1087;&#1077;&#1088;&#1077;&#1080;&#1079;&#1076;&#1072;&#1085;&#1080;&#1103;"/>
+ <l:gentext key="revhistory" text="&#1048;&#1089;&#1090;&#1086;&#1088;&#1080;&#1103; &#1087;&#1077;&#1088;&#1077;&#1080;&#1079;&#1076;&#1072;&#1085;&#1080;&#1103;"/>
+ <l:gentext key="Revision" text="&#1048;&#1079;&#1076;&#1072;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="revision" text="&#1048;&#1079;&#1076;&#1072;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="sect1" text="&#1056;&#1072;&#1079;&#1076;&#1077;&#1083;"/>
+ <l:gentext key="sect2" text="&#1056;&#1072;&#1079;&#1076;&#1077;&#1083;"/>
+ <l:gentext key="sect3" text="&#1056;&#1072;&#1079;&#1076;&#1077;&#1083;"/>
+ <l:gentext key="sect4" text="&#1056;&#1072;&#1079;&#1076;&#1077;&#1083;"/>
+ <l:gentext key="sect5" text="&#1056;&#1072;&#1079;&#1076;&#1077;&#1083;"/>
+ <l:gentext key="Section" text="&#1056;&#1072;&#1079;&#1076;&#1077;&#1083;"/>
+ <l:gentext key="section" text="&#1056;&#1072;&#1079;&#1076;&#1077;&#1083;"/>
+ <l:gentext key="Section.abr" text="&#1056;&#1072;&#1079;&#1076;."/>
+ <l:gentext key="section.abr" text="&#1056;&#1072;&#1079;&#1076;."/>
+ <l:gentext key="See" text="&#1057;&#1084;."/>
+ <l:gentext key="see" text="&#1057;&#1084;."/>
+ <l:gentext key="SeeAlso" text="&#1057;&#1084;. &#1090;&#1072;&#1082;&#1078;&#1077;"/>
+ <l:gentext key="Seealso" text="&#1057;&#1084;. &#1090;&#1072;&#1082;&#1078;&#1077;"/>
+ <l:gentext key="seealso" text="&#1057;&#1084;. &#1090;&#1072;&#1082;&#1078;&#1077;"/>
+ <l:gentext key="Set" text="&#1055;&#1086;&#1076;&#1073;&#1086;&#1088;&#1082;&#1072;"/>
+ <l:gentext key="set" text="&#1055;&#1086;&#1076;&#1073;&#1086;&#1088;&#1082;&#1072;"/>
+ <l:gentext key="SetIndex" text="&#1048;&#1085;&#1076;&#1077;&#1082;&#1089; &#1087;&#1086;&#1076;&#1073;&#1086;&#1088;&#1082;&#1080;"/>
+ <l:gentext key="setindex" text="&#1048;&#1085;&#1076;&#1077;&#1082;&#1089; &#1087;&#1086;&#1076;&#1073;&#1086;&#1088;&#1082;&#1080;"/>
+ <l:gentext key="Sidebar" text="&#1042;&#1099;&#1076;&#1077;&#1083;&#1077;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="sidebar" text="&#1074;&#1099;&#1076;&#1077;&#1083;&#1077;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="Step" text="&#1064;&#1072;&#1075;"/>
+ <l:gentext key="step" text="&#1096;&#1072;&#1075;"/>
+ <l:gentext key="Table" text="&#1058;&#1072;&#1073;&#1083;&#1080;&#1094;&#1072;"/>
+ <l:gentext key="table" text="&#1058;&#1072;&#1073;&#1083;&#1080;&#1094;&#1072;"/>
+ <l:gentext key="Table.abr" text="&#1058;&#1072;&#1073;&#1083;."/>
+ <l:gentext key="table.abr" text="&#1058;&#1072;&#1073;&#1083;."/>
+ <l:gentext key="TIP" text="&#1055;&#1054;&#1044;&#1057;&#1050;&#1040;&#1047;&#1050;&#1040;"/>
+ <l:gentext key="Tip" text="&#1055;&#1086;&#1076;&#1089;&#1082;&#1072;&#1079;&#1082;&#1072;"/>
+ <l:gentext key="tip" text="&#1055;&#1086;&#1076;&#1089;&#1082;&#1072;&#1079;&#1082;&#1072;"/>
+ <l:gentext key="WARNING" text="&#1042;&#1053;&#1048;&#1052;&#1040;&#1053;&#1048;&#1045;"/>
+ <l:gentext key="Warning" text="&#1042;&#1085;&#1080;&#1084;&#1072;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="warning" text="&#1042;&#1085;&#1080;&#1084;&#1072;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="and" text=""/>
+ <l:gentext key="by" text=""/>
+ <l:gentext key="called" text=""/>
+ <l:gentext key="edited" text="&#1055;&#1086;&#1076; &#1088;&#1077;&#1076;&#1072;&#1082;&#1094;&#1080;&#1077;&#1081;"/>
+ <l:gentext key="Edited" text="&#1055;&#1086;&#1076; &#1088;&#1077;&#1076;&#1072;&#1082;&#1094;&#1080;&#1077;&#1081;"/>
+ <l:gentext key="Editedby" text="&#1055;&#1086;&#1076; &#1088;&#1077;&#1076;&#1072;&#1082;&#1094;&#1080;&#1077;&#1081;"/>
+ <l:gentext key="editedby" text="&#1055;&#1086;&#1076; &#1088;&#1077;&#1076;&#1072;&#1082;&#1094;&#1080;&#1077;&#1081;"/>
+ <l:gentext key="in" text="&#1074;"/>
+ <l:gentext key="TableofContents" text="&#1057;&#1086;&#1076;&#1077;&#1088;&#1078;&#1072;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="tableofcontents" text="&#1057;&#1086;&#1076;&#1077;&#1088;&#1078;&#1072;&#1085;&#1080;&#1077;"/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="Notes" text="&#1055;&#1088;&#1080;&#1084;&#1077;&#1095;&#1072;&#1085;&#1080;&#1103;"/>
+ <l:gentext key="notes" text="&#1055;&#1088;&#1080;&#1084;&#1077;&#1095;&#1072;&#1085;&#1080;&#1103;"/>
+ <l:gentext key="TableNotes" text="&#1055;&#1088;&#1080;&#1084;&#1077;&#1095;&#1072;&#1085;&#1080;&#1103;"/>
+ <l:gentext key="tablenotes" text="&#1055;&#1088;&#1080;&#1084;&#1077;&#1095;&#1072;&#1085;&#1080;&#1103;"/>
+ <l:gentext key="nonexistantelement" text="non-existant element"/>
+ <l:gentext key="pgs" text="&#1057;&#1090;&#1088;."/>
+ <l:gentext key="Pgs" text="&#1057;&#1090;&#1088;."/>
+ <l:gentext key="Revisedby" text="Revised by: "/>
+ <l:gentext key="revisedby" text="Revised by: "/>
+ <l:gentext key="the" text=""/>
+ <l:gentext key="unexpectedelementname" text="unexpected element name"/>
+ <l:gentext key="unsupported" text="unsupported"/>
+ <l:gentext key="xrefto" text="xref to"/>
+ <l:gentext key="listofequations" text="&#1057;&#1087;&#1080;&#1089;&#1086;&#1082; &#1092;&#1086;&#1088;&#1084;&#1091;&#1083;"/>
+ <l:gentext key="ListofEquations" text="&#1057;&#1087;&#1080;&#1089;&#1086;&#1082; &#1092;&#1086;&#1088;&#1084;&#1091;&#1083;"/>
+ <l:gentext key="ListofExamples" text="&#1057;&#1087;&#1080;&#1089;&#1086;&#1082; &#1087;&#1088;&#1080;&#1084;&#1077;&#1088;&#1086;&#1074;"/>
+ <l:gentext key="listofexamples" text="&#1057;&#1087;&#1080;&#1089;&#1086;&#1082; &#1087;&#1088;&#1080;&#1084;&#1077;&#1088;&#1086;&#1074;"/>
+ <l:gentext key="ListofFigures" text="&#1057;&#1087;&#1080;&#1089;&#1086;&#1082; &#1080;&#1083;&#1083;&#1102;&#1089;&#1090;&#1088;&#1072;&#1094;&#1080;&#1081;"/>
+ <l:gentext key="listoffigures" text="&#1057;&#1087;&#1080;&#1089;&#1086;&#1082; &#1080;&#1083;&#1083;&#1102;&#1089;&#1090;&#1088;&#1072;&#1094;&#1080;&#1081;"/>
+ <l:gentext key="listoftables" text="&#1057;&#1087;&#1080;&#1089;&#1086;&#1082; &#1090;&#1072;&#1073;&#1083;&#1080;&#1094;"/>
+ <l:gentext key="ListofTables" text="&#1057;&#1087;&#1080;&#1089;&#1086;&#1082; &#1090;&#1072;&#1073;&#1083;&#1080;&#1094;"/>
+ <l:gentext key="ListofUnknown" text="&#1053;&#1077;&#1086;&#1087;&#1088;&#1077;&#1076;&#1077;&#1083;&#1077;&#1085;&#1085;&#1099;&#1081; &#1089;&#1087;&#1080;&#1089;&#1086;&#1082;"/>
+ <l:gentext key="listofunknown" text="&#1053;&#1077;&#1086;&#1087;&#1088;&#1077;&#1076;&#1077;&#1083;&#1077;&#1085;&#1085;&#1099;&#1081; &#1089;&#1087;&#1080;&#1089;&#1086;&#1082;"/>
+ <l:gentext key="nav-next" text="&#1057;&#1083;&#1077;&#1076;."/>
+ <l:gentext key="nav-next-sibling" text="&#1057;&#1083;&#1077;&#1076;. &#1087;&#1086;&#1076;&#1088;&#1072;&#1079;&#1076;&#1077;&#1083;"/>
+ <l:gentext key="nav-prev" text="&#1055;&#1088;&#1077;&#1076;."/>
+ <l:gentext key="nav-prev-sibling" text="&#1055;&#1088;&#1077;&#1076;. &#1087;&#1086;&#1076;&#1088;&#1072;&#1079;&#1076;&#1077;&#1083;"/>
+ <l:gentext key="x-nav-next" text="&#1057;&#1083;&#1077;&#1076;."/>
+ <l:gentext key="nav-home" text="&#1053;&#1072;&#1095;&#1072;&#1083;&#1086;"/>
+ <l:gentext key="nav-up" text="&#1059;&#1088;&#1086;&#1074;&#1077;&#1085;&#1100; &#1074;&#1099;&#1096;&#1077;"/>
+ <l:gentext key="sectioncalled" text="the section called"/>
+ <l:gentext key="Draft" text="&#1063;&#1077;&#1088;&#1085;&#1086;&#1074;&#1080;&#1082;"/>
+ <l:gentext key="above" text="&#1074;&#1099;&#1096;&#1077;"/>
+ <l:gentext key="below" text="&#1085;&#1080;&#1078;&#1077;"/>
+ <l:gentext key="index symbols" text="Symbols"/>
+ <l:gentext key="lowercase.alpha" text="&#1072;&#1073;&#1074;&#1075;&#1076;&#1077;&#1105;&#1078;&#1079;&#1080;&#1081;&#1082;&#1083;&#1084;&#1085;&#1086;&#1087;&#1088;&#1089;&#1090;&#1091;&#1092;&#1093;&#1094;&#1095;&#1096;&#1097;&#1098;&#1099;&#1100;&#1101;&#1102;&#1103;"/>
+ <l:gentext key="uppercase.alpha" text="&#1040;&#1041;&#1042;&#1043;&#1044;&#1045;&#1025;&#1046;&#1047;&#1048;&#1049;&#1050;&#1051;&#1052;&#1053;&#1054;&#1055;&#1056;&#1057;&#1058;&#1059;&#1060;&#1061;&#1062;&#1063;&#1064;&#1065;&#1066;&#1067;&#1068;&#1069;&#1070;&#1071;"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1082;&#1080; &#1087;&#1088;&#1080;&#1083;&#1086;&#1078;&#1077;&#1085;&#1080;&#1103; (&#1086;&#1090;&#1089;&#1091;&#1090;&#1089;&#1090;&#1074;&#1091;&#1102;&#1090;)"/>
+ <l:template name="article" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1082;&#1080; &#1089;&#1090;&#1072;&#1090;&#1100;&#1080; (&#1086;&#1090;&#1089;&#1091;&#1090;&#1089;&#1090;&#1074;&#1091;&#1102;&#1090;)"/>
+ <l:template name="bibliodiv" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1082;&#1080; &#1073;&#1080;&#1073;&#1083;&#1080;&#1086;&#1075;&#1088;&#1072;&#1092;&#1080;&#1080; (&#1086;&#1090;&#1089;&#1091;&#1090;&#1089;&#1090;&#1074;&#1091;&#1102;&#1090;)"/>
+ <l:template name="book" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1082;&#1080; &#1082;&#1085;&#1080;&#1075;&#1080; (&#1086;&#1090;&#1089;&#1091;&#1090;&#1089;&#1090;&#1074;&#1091;&#1102;&#1090;)"/>
+ <l:template name="chapter" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1082;&#1080; &#1075;&#1083;&#1072;&#1074;&#1099; (&#1086;&#1090;&#1089;&#1091;&#1090;&#1089;&#1090;&#1074;&#1091;&#1102;&#1090;)"/>
+ <l:template name="columns" text="&#1057;&#1090;&#1086;&#1083;&#1073;&#1094;&#1099;"/>
+ <l:template name="draftarea" text="&#1055;&#1088;&#1077;&#1076;&#1074;&#1072;&#1088;&#1080;&#1090;&#1077;&#1083;&#1100;&#1085;&#1086;&#1077; &#1088;&#1077;&#1076;&#1072;&#1082;&#1090;&#1080;&#1088;&#1086;&#1074;&#1072;&#1085;&#1080;&#1077; &#1084;&#1077;&#1090;&#1072;&#1076;&#1072;&#1085;&#1085;&#1099;&#1093;"/>
+ <l:template name="edit-attrs" text="&#1088;&#1077;&#1076;&#1072;&#1082;&#1090;&#1080;&#1088;&#1091;&#1081;&#1090;&#1077; &#1072;&#1090;&#1090;&#1088;&#1080;&#1073;&#1091;&#1090;&#1099; &#1089;&#1086;&#1086;&#1090;&#1074;&#1077;&#1090;&#1089;&#1090;&#1074;&#1091;&#1102;&#1097;&#1080;&#1093; &#1101;&#1083;&#1077;&#1084;&#1077;&#1085;&#1090;&#1086;&#1074;"/>
+ <l:template name="footnote" text="&#1057;&#1085;&#1086;&#1089;&#1082;&#1072;"/>
+ <l:template name="metainfo" text=""/>
+ <l:template name="preface" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1082;&#1080; &#1087;&#1088;&#1077;&#1076;&#1080;&#1089;&#1083;&#1086;&#1074;&#1080;&#1103; (&#1086;&#1090;&#1089;&#1091;&#1090;&#1089;&#1090;&#1074;&#1091;&#1102;&#1090;)"/>
+ <l:template name="part" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1082;&#1080; &#1095;&#1072;&#1089;&#1090;&#1080; (&#1086;&#1090;&#1089;&#1091;&#1090;&#1089;&#1090;&#1074;&#1091;&#1102;&#1090;)"/>
+ <l:template name="section" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1082;&#1080; &#1088;&#1072;&#1079;&#1076;&#1077;&#1083;&#1072; (&#1086;&#1090;&#1089;&#1091;&#1090;&#1089;&#1090;&#1074;&#1091;&#1102;&#1090;)"/>
+ <l:template name="sect1" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1082;&#1080; &#1088;&#1072;&#1079;&#1076;&#1077;&#1083;&#1072; (&#1086;&#1090;&#1089;&#1091;&#1090;&#1089;&#1090;&#1074;&#1091;&#1102;&#1090;)"/>
+ <l:template name="sect2" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1082;&#1080; &#1088;&#1072;&#1079;&#1076;&#1077;&#1083;&#1072; (&#1086;&#1090;&#1089;&#1091;&#1090;&#1089;&#1090;&#1074;&#1091;&#1102;&#1090;)"/>
+ <l:template name="sect3" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1082;&#1080; &#1088;&#1072;&#1079;&#1076;&#1077;&#1083;&#1072; (&#1086;&#1090;&#1089;&#1091;&#1090;&#1089;&#1090;&#1074;&#1091;&#1102;&#1090;)"/>
+ <l:template name="sect4" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1082;&#1080; &#1088;&#1072;&#1079;&#1076;&#1077;&#1083;&#1072; (&#1086;&#1090;&#1089;&#1091;&#1090;&#1089;&#1090;&#1074;&#1091;&#1102;&#1090;)"/>
+ <l:template name="sect5" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1082;&#1080; &#1088;&#1072;&#1079;&#1076;&#1077;&#1083;&#1072; (&#1086;&#1090;&#1089;&#1091;&#1090;&#1089;&#1090;&#1074;&#1091;&#1102;&#1090;)"/>
+ <l:template name="set" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1082;&#1080; &#1087;&#1086;&#1076;&#1073;&#1086;&#1088;&#1082;&#1080; (&#1086;&#1090;&#1089;&#1091;&#1090;&#1089;&#1090;&#1074;&#1091;&#1102;&#1090;)"/>
+ <l:template name="title" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1086;&#1082;: "/>
+ <l:template name="titles" text="&#1069;&#1083;&#1077;&#1084;&#1077;&#1085;&#1090;&#1099; &#1079;&#1072;&#1075;&#1083;&#1072;&#1074;&#1085;&#1086;&#1081; &#1089;&#1090;&#1088;&#1072;&#1085;&#1080;&#1094;&#1099; &#1086;&#1090;&#1089;&#1091;&#1090;&#1089;&#1090;&#1074;&#1091;&#1102;&#1090;"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ <l:template name="reference" text="Reference (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="&#1055;&#1088;&#1080;&#1083;&#1086;&#1078;&#1077;&#1085;&#1080;&#1077; %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="&#1043;&#1083;&#1072;&#1074;&#1072; %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="&#1060;&#1086;&#1088;&#1084;&#1091;&#1083;&#1072; %n. %t"/>
+ <l:template name="example" text="&#1055;&#1088;&#1080;&#1084;&#1077;&#1088; %n. %t"/>
+ <l:template name="figure" text="&#1056;&#1080;&#1089;&#1091;&#1085;&#1086;&#1082; %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="&#1063;&#1072;&#1089;&#1090;&#1100; %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="&#1055;&#1088;&#1086;&#1094;&#1077;&#1076;&#1091;&#1088;&#1072;&#160;%n.&#160;%t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Production&#160;%n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="&#1058;&#1072;&#1073;&#1083;&#1080;&#1094;&#1072; %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="&#1055;&#1088;&#1080;&#1083;&#1086;&#1078;&#1077;&#1085;&#1080;&#1077; %n. %t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="&#1043;&#1083;&#1072;&#1074;&#1072; %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%n. %t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="&#1054;:&#160;%n"/>
+ <l:template name="appendix" text="&#1055;&#1088;&#1080;&#1083;&#1086;&#1078;&#1077;&#1085;&#1080;&#1077; %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="&#1043;&#1083;&#1072;&#1074;&#1072; %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="&#1060;&#1086;&#1088;&#1084;&#1091;&#1083;&#1072;&#160;%n"/>
+ <l:template name="example" text="&#1055;&#1088;&#1080;&#1084;&#1077;&#1088; %n. %t"/>
+ <l:template name="figure" text="&#1056;&#1080;&#1089;&#1091;&#1085;&#1086;&#1082; %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="&#1063;&#1072;&#1089;&#1090;&#1100; %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="&#1055;&#1088;&#1086;&#1094;&#1077;&#1076;&#1091;&#1088;&#1072;&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="&#1042;:&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="&#1042;:&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="&#1058;&#1072;&#1073;&#1083;&#1080;&#1094;&#1072; %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#8220;%t&#8221;"/>
+ <l:template name="sect2" text="&#8220;%t&#8221;"/>
+ <l:template name="sect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect4" text="&#8220;%t&#8221;"/>
+ <l:template name="sect5" text="&#8220;%t&#8221;"/>
+ <l:template name="section" text="&#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#1056;&#1072;&#1079;&#1076;&#1077;&#1083; %n"/>
+ <l:template name="sect2" text="&#1056;&#1072;&#1079;&#1076;&#1077;&#1083; %n"/>
+ <l:template name="sect3" text="&#1056;&#1072;&#1079;&#1076;&#1077;&#1083; %n"/>
+ <l:template name="sect4" text="&#1056;&#1072;&#1079;&#1076;&#1077;&#1083; %n"/>
+ <l:template name="sect5" text="&#1056;&#1072;&#1079;&#1076;&#1077;&#1083; %n"/>
+ <l:template name="section" text="&#1056;&#1072;&#1079;&#1076;&#1077;&#1083; %n"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" "/>
+ <l:template name="seplast" text=", "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="&#1057;&#1084;. "/>
+ <l:template name="seealso" text="&#1057;&#1084;. &#1090;&#1072;&#1082;&#1078;&#1077; "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="Audience: "/>
+ <l:template name="MsgLevel" text="Level: "/>
+ <l:template name="MsgOrig" text="Origin: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/sk.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/sk.xml
new file mode 100644
index 0000000..3bccd32
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/sk.xml
@@ -0,0 +1,454 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="sk" english-language-name="Slovak">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="Obsah"/>
+ <l:gentext key="abstract" text="Obsah"/>
+ <l:gentext key="Answer" text="A:"/>
+ <l:gentext key="answer" text="A:"/>
+ <l:gentext key="Appendix" text="Dodatok"/>
+ <l:gentext key="appendix" text="dodatok"/>
+ <l:gentext key="Article" text="&#268;l&#225;nok"/>
+ <l:gentext key="article" text="&#268;l&#225;nok"/>
+ <l:gentext key="Bibliography" text="Bibliografia"/>
+ <l:gentext key="bibliography" text="Bibliografia"/>
+ <l:gentext key="Book" text="Kniha"/>
+ <l:gentext key="book" text="Kniha"/>
+ <l:gentext key="CAUTION" text="V&#221;STRAHA"/>
+ <l:gentext key="Caution" text="V&#253;straha"/>
+ <l:gentext key="caution" text="V&#253;straha"/>
+ <l:gentext key="Chapter" text="Kapitola"/>
+ <l:gentext key="chapter" text="kapitola"/>
+ <l:gentext key="Colophon" text="Tir&#225;&#382;"/>
+ <l:gentext key="colophon" text="Tir&#225;&#382;"/>
+ <l:gentext key="Copyright" text="Copyright"/>
+ <l:gentext key="copyright" text="Copyright"/>
+ <l:gentext key="Dedication" text="Venovanie"/>
+ <l:gentext key="dedication" text="Venovanie"/>
+ <l:gentext key="Edition" text="Vydanie"/>
+ <l:gentext key="edition" text="Vydanie"/>
+ <l:gentext key="Equation" text="Rovnice"/>
+ <l:gentext key="equation" text="Rovnice"/>
+ <l:gentext key="Example" text="Pr&#237;klad"/>
+ <l:gentext key="example" text="Pr&#237;klad"/>
+ <l:gentext key="Figure" text="Obr&#225;zok"/>
+ <l:gentext key="figure" text="Obr&#225;zok"/>
+ <l:gentext key="Glossary" text="Slovn&#237;k"/>
+ <l:gentext key="glossary" text="Slovn&#237;k"/>
+ <l:gentext key="GlossSee" text="Pozri"/>
+ <l:gentext key="glosssee" text="Pozri"/>
+ <l:gentext key="GlossSeeAlso" text="Pozri tie&#382;"/>
+ <l:gentext key="glossseealso" text="Pozri tie&#382;"/>
+ <l:gentext key="IMPORTANT" text="D&#212;LE&#381;IT&#201;"/>
+ <l:gentext key="Important" text="D&#244;le&#382;it&#233;"/>
+ <l:gentext key="important" text="D&#244;le&#382;it&#233;"/>
+ <l:gentext key="Index" text="Zoznam"/>
+ <l:gentext key="index" text="Zoznam"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text="Pr&#225;vna pozn&#225;mka"/>
+ <l:gentext key="legalnotice" text="Pr&#225;vna pozn&#225;mka"/>
+ <l:gentext key="MsgAud" text="Publikum"/>
+ <l:gentext key="msgaud" text="Publikum"/>
+ <l:gentext key="MsgLevel" text="&#218;rove&#328;"/>
+ <l:gentext key="msglevel" text="&#218;rove&#328;"/>
+ <l:gentext key="MsgOrig" text="P&#244;vod"/>
+ <l:gentext key="msgorig" text="P&#244;vod"/>
+ <l:gentext key="NOTE" text="POZN&#193;MKA"/>
+ <l:gentext key="Note" text="Pozn&#225;mka"/>
+ <l:gentext key="note" text="Pozn&#225;mka"/>
+ <l:gentext key="Part" text="&#268;as&#357;"/>
+ <l:gentext key="part" text="&#268;as&#357;"/>
+ <l:gentext key="Preface" text="&#218;vod"/>
+ <l:gentext key="preface" text="&#218;vod"/>
+ <l:gentext key="Procedure" text="Postup"/>
+ <l:gentext key="procedure" text="Postup"/>
+ <l:gentext key="ProductionSet" text="Production"/>
+ <l:gentext key="Published" text="Vydan&#233;"/>
+ <l:gentext key="published" text="Vydan&#233;"/>
+ <l:gentext key="Question" text="Q:"/>
+ <l:gentext key="question" text="Q:"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="Odkaz"/>
+ <l:gentext key="reference" text="Odkaz"/>
+ <l:gentext key="RefName" text="Meno"/>
+ <l:gentext key="refname" text="Meno"/>
+ <l:gentext key="RefSection" text=""/>
+ <l:gentext key="refsection" text=""/>
+ <l:gentext key="RefSynopsisDiv" text="Preh&#318;ad"/>
+ <l:gentext key="refsynopsisdiv" text="Preh&#318;ad"/>
+ <l:gentext key="RevHistory" text="Preh&#318;ad rev&#237;zi&#237;"/>
+ <l:gentext key="revhistory" text="Preh&#318;ad rev&#237;zi&#237;"/>
+ <l:gentext key="Revision" text="Rev&#237;zia"/>
+ <l:gentext key="revision" text="Rev&#237;zia"/>
+ <l:gentext key="sect1" text="Section"/>
+ <l:gentext key="sect2" text="Section"/>
+ <l:gentext key="sect3" text="Section"/>
+ <l:gentext key="sect4" text="Section"/>
+ <l:gentext key="sect5" text="Section"/>
+ <l:gentext key="Section" text="Oddiel"/>
+ <l:gentext key="section" text="oddiel"/>
+ <l:gentext key="See" text="Pozri"/>
+ <l:gentext key="see" text="Pozri"/>
+ <l:gentext key="SeeAlso" text="Pozri tie&#382;"/>
+ <l:gentext key="Seealso" text="Pozri tie&#382;"/>
+ <l:gentext key="seealso" text="Pozri tie&#382;"/>
+ <l:gentext key="Set" text="Nastavi&#357;"/>
+ <l:gentext key="set" text="Nastavi&#357;"/>
+ <l:gentext key="SetIndex" text="Nastavi&#357; index"/>
+ <l:gentext key="setindex" text="Nastavi&#357; index"/>
+ <l:gentext key="Sidebar" text=""/>
+ <l:gentext key="sidebar" text="bo&#269;n&#237; li&#353;ta"/>
+ <l:gentext key="Step" text="Krok"/>
+ <l:gentext key="step" text="krok"/>
+ <l:gentext key="Table" text="Tabu&#318;ka"/>
+ <l:gentext key="table" text="Tabu&#318;ka"/>
+ <l:gentext key="TIP" text="TIP"/>
+ <l:gentext key="Tip" text="Tip"/>
+ <l:gentext key="tip" text="Tip"/>
+ <l:gentext key="WARNING" text="VAROVANIE"/>
+ <l:gentext key="Warning" text="Varovanie"/>
+ <l:gentext key="warning" text="Varovanie"/>
+ <l:gentext key="and" text="a"/>
+ <l:gentext key="by" text=""/>
+ <l:gentext key="Edited" text="Vydan&#233;"/>
+ <l:gentext key="edited" text="Vydan&#233;"/>
+ <l:gentext key="Editedby" text="Vydan&#233;"/>
+ <l:gentext key="editedby" text="Vydan&#233;"/>
+ <l:gentext key="in" text="v"/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="neexistuj&#250;ci prvok"/>
+ <l:gentext key="notes" text="Pozn&#225;mky"/>
+ <l:gentext key="Notes" text="Pozn&#225;mky"/>
+ <l:gentext key="Pgs" text="Str."/>
+ <l:gentext key="pgs" text="Str."/>
+ <l:gentext key="Revisedby" text="Revised by: "/>
+ <l:gentext key="revisedby" text="Revised by: "/>
+ <l:gentext key="TableNotes" text="Pozn&#225;mky"/>
+ <l:gentext key="tablenotes" text="Pozn&#225;mky"/>
+ <l:gentext key="TableofContents" text="Obsah"/>
+ <l:gentext key="tableofcontents" text="Obsah"/>
+ <l:gentext key="unexpectedelementname" text="Neo&#269;ak&#225;van&#233; meno prvku"/>
+ <l:gentext key="unsupported" text="nepodporovan&#253;"/>
+ <l:gentext key="xrefto" text="xref k"/>
+ <l:gentext key="listofequations" text="Zoznam rovn&#237;c"/>
+ <l:gentext key="ListofEquations" text="Zoznam rovn&#237;c"/>
+ <l:gentext key="ListofExamples" text="Zoznam pr&#237;kladov"/>
+ <l:gentext key="listofexamples" text="Zoznam pr&#237;kladov"/>
+ <l:gentext key="ListofFigures" text="Zoznam obr&#225;zkov"/>
+ <l:gentext key="listoffigures" text="Zoznam obr&#225;zkov"/>
+ <l:gentext key="listoftables" text="Zoznam tabuliek"/>
+ <l:gentext key="ListofTables" text="Zoznam tabuliek"/>
+ <l:gentext key="ListofUnknown" text="Zoznam nezn&#225;meho"/>
+ <l:gentext key="listofunknown" text="Zoznam nezn&#225;meho"/>
+ <l:gentext key="nav-home" text="Domov"/>
+ <l:gentext key="nav-next" text="Nasleduj&#250;ci"/>
+ <l:gentext key="nav-next-sibling" text="R&#253;chlo dopredu"/>
+ <l:gentext key="nav-prev" text="Predch&#225;dzaj&#250;ci"/>
+ <l:gentext key="nav-prev-sibling" text="R&#253;chlo nazp&#228;t"/>
+ <l:gentext key="nav-up" text="Hore"/>
+ <l:gentext key="sectioncalled" text="the section called"/>
+ <l:gentext key="Draft" text="Draft"/>
+ <l:gentext key="above" text="above"/>
+ <l:gentext key="below" text="below"/>
+ <l:gentext key="index symbols" text="Symbols"/>
+ <l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz"/>
+ <l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="Dodatok %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Kapitola %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Rovnice %n. %t"/>
+ <l:template name="example" text="Pr&#237;klad %n. %t"/>
+ <l:template name="figure" text="Obr&#225;zok %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="&#268;as&#357; %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="Postup&#160;%n.&#160;%t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Production&#160;%n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="Tabu&#318;ka %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="Dodatok %n. %t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="Kapitola %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%n. %t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="A:&#160;%n"/>
+ <l:template name="appendix" text="Dodatok %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Kapitola %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Rovnice&#160;%n"/>
+ <l:template name="example" text="Pr&#237;klad %n. %t"/>
+ <l:template name="figure" text="Obr&#225;zok %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="&#268;as&#357; %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="Postup&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="Q:&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="Q:&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="Tabu&#318;ka %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#8220;%t&#8221;"/>
+ <l:template name="sect2" text="&#8220;%t&#8221;"/>
+ <l:template name="sect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect4" text="&#8220;%t&#8221;"/>
+ <l:template name="sect5" text="&#8220;%t&#8221;"/>
+ <l:template name="section" text="&#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="Oddiel %n"/>
+ <l:template name="sect2" text="Oddiel %n"/>
+ <l:template name="sect3" text="Oddiel %n"/>
+ <l:template name="sect4" text="Oddiel %n"/>
+ <l:template name="sect5" text="Oddiel %n"/>
+ <l:template name="section" text="Oddiel %n"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" a "/>
+ <l:template name="seplast" text=", a "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="Pozri "/>
+ <l:template name="seealso" text="Pozri tie&#382; "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="Publikum: "/>
+ <l:template name="MsgLevel" text="&#218;rove&#328;: "/>
+ <l:template name="MsgOrig" text="P&#244;vod: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/sl.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/sl.xml
new file mode 100644
index 0000000..c4bf197
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/sl.xml
@@ -0,0 +1,451 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="sl" english-language-name="Slovenian">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="Povzetek"/>
+ <l:gentext key="abstract" text="Povzetek"/>
+ <l:gentext key="Answer" text="O:"/>
+ <l:gentext key="answer" text="O:"/>
+ <l:gentext key="Appendix" text="Dodatek"/>
+ <l:gentext key="appendix" text="dodatek"/>
+ <l:gentext key="Article" text="&#268;lanek"/>
+ <l:gentext key="article" text="&#268;lanek"/>
+ <l:gentext key="Bibliography" text="Literatura"/>
+ <l:gentext key="bibliography" text="Literatura"/>
+ <l:gentext key="Book" text="Knjiga"/>
+ <l:gentext key="book" text="Knjiga"/>
+ <l:gentext key="Caution" text="Opozorilo"/>
+ <l:gentext key="caution" text="Opozorilo"/>
+ <l:gentext key="CAUTION" text="OPOZORILO"/>
+ <l:gentext key="Chapter" text="Poglavje"/>
+ <l:gentext key="chapter" text="poglavje"/>
+ <l:gentext key="Colophon" text="Kolofon"/>
+ <l:gentext key="colophon" text="Kolofon"/>
+ <l:gentext key="Copyright" text="Pravna za&#353;&#269;ita"/>
+ <l:gentext key="copyright" text="Pravna za&#353;&#269;ita"/>
+ <l:gentext key="Dedication" text="Posvetilo"/>
+ <l:gentext key="dedication" text="Posvetilo"/>
+ <l:gentext key="Edition" text="Izdaja"/>
+ <l:gentext key="edition" text="Izdaja"/>
+ <l:gentext key="Equation" text="Ena&#269;ba"/>
+ <l:gentext key="equation" text="Ena&#269;ba"/>
+ <l:gentext key="Example" text="Primer"/>
+ <l:gentext key="example" text="Primer"/>
+ <l:gentext key="Figure" text="Slika"/>
+ <l:gentext key="figure" text="Slika"/>
+ <l:gentext key="Glossary" text="Slovar&#269;ek"/>
+ <l:gentext key="glossary" text="Slovar&#269;ek"/>
+ <l:gentext key="GlossSee" text="glej"/>
+ <l:gentext key="glosssee" text="glej"/>
+ <l:gentext key="GlossSeeAlso" text="glej tudi"/>
+ <l:gentext key="glossseealso" text="glej tudi"/>
+ <l:gentext key="IMPORTANT" text="POMEMBNO"/>
+ <l:gentext key="Important" text="Pomembno"/>
+ <l:gentext key="important" text="Pomembno"/>
+ <l:gentext key="Index" text="Stvarno kazalo"/>
+ <l:gentext key="index" text="Stvarno kazalo"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text="Pravno sporo&#269;ilo"/>
+ <l:gentext key="legalnotice" text="Pravno sporo&#269;ilo"/>
+ <l:gentext key="MsgAud" text="Ob&#269;instvo"/>
+ <l:gentext key="msgaud" text="Ob&#269;instvo"/>
+ <l:gentext key="MsgLevel" text="Raven"/>
+ <l:gentext key="msglevel" text="Raven"/>
+ <l:gentext key="MsgOrig" text="Izvor"/>
+ <l:gentext key="msgorig" text="Izvor"/>
+ <l:gentext key="note" text="Opomba"/>
+ <l:gentext key="NOTE" text="OPOMBA"/>
+ <l:gentext key="Note" text="Opomba"/>
+ <l:gentext key="Part" text="Del"/>
+ <l:gentext key="part" text="Del"/>
+ <l:gentext key="Preface" text="Predgovor"/>
+ <l:gentext key="preface" text="Predgovor"/>
+ <l:gentext key="Procedure" text="Postopek"/>
+ <l:gentext key="procedure" text="Postopek"/>
+ <l:gentext key="ProductionSet" text="Izdelava"/>
+ <l:gentext key="Published" text="Izdano"/>
+ <l:gentext key="published" text="Izdano"/>
+ <l:gentext key="Question" text="V:"/>
+ <l:gentext key="question" text="V:"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="Sklic"/>
+ <l:gentext key="reference" text="Sklic"/>
+ <l:gentext key="RefName" text="Ime"/>
+ <l:gentext key="refname" text="Ime"/>
+ <l:gentext key="RefSection" text=""/>
+ <l:gentext key="refsection" text=""/>
+ <l:gentext key="RefSynopsisDiv" text="Sinopsis"/>
+ <l:gentext key="refsynopsisdiv" text="Sinopsis"/>
+ <l:gentext key="RevHistory" text="Zgodovina razli&#269;ic"/>
+ <l:gentext key="revhistory" text="Zgodovina razli&#269;ic"/>
+ <l:gentext key="Revision" text="Razli&#269;ica"/>
+ <l:gentext key="revision" text="Razli&#269;ica"/>
+ <l:gentext key="sect1" text="Razdelek"/>
+ <l:gentext key="sect2" text="Razdelek"/>
+ <l:gentext key="sect3" text="Razdelek"/>
+ <l:gentext key="sect4" text="Razdelek"/>
+ <l:gentext key="sect5" text="Razdelek"/>
+ <l:gentext key="Section" text="Razdelek"/>
+ <l:gentext key="section" text="razdelek"/>
+ <l:gentext key="see" text="glej"/>
+ <l:gentext key="See" text="glej"/>
+ <l:gentext key="Seealso" text="Glej tudi"/>
+ <l:gentext key="seealso" text="glej tudi"/>
+ <l:gentext key="SeeAlso" text="glej tudi"/>
+ <l:gentext key="Set" text="Postavi"/>
+ <l:gentext key="set" text="Postavi"/>
+ <l:gentext key="SetIndex" text="Postavi stvarno kazalo"/>
+ <l:gentext key="setindex" text="Postavi stvarno kazalo"/>
+ <l:gentext key="Sidebar" text=""/>
+ <l:gentext key="sidebar" text="sidebar"/>
+ <l:gentext key="step" text="korak"/>
+ <l:gentext key="Step" text="Korak"/>
+ <l:gentext key="table" text="Tabela"/>
+ <l:gentext key="Table" text="Tabela"/>
+ <l:gentext key="TIP" text="NAMIG"/>
+ <l:gentext key="Tip" text="Namig"/>
+ <l:gentext key="tip" text="Namig"/>
+ <l:gentext key="WARNING" text="POZOR"/>
+ <l:gentext key="Warning" text="Pozor"/>
+ <l:gentext key="warning" text="Pozor"/>
+ <l:gentext key="and" text="in"/>
+ <l:gentext key="by" text="od"/>
+ <l:gentext key="Edited" text="Urejeno"/>
+ <l:gentext key="edited" text="Urejeno"/>
+ <l:gentext key="Editedby" text="Uredil"/>
+ <l:gentext key="editedby" text="Uredil"/>
+ <l:gentext key="in" text="v"/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="neobstoje&#269;i element"/>
+ <l:gentext key="Notes" text="Notes"/>
+ <l:gentext key="notes" text="Notes"/>
+ <l:gentext key="Pgs" text="Str."/>
+ <l:gentext key="pgs" text="Str."/>
+ <l:gentext key="Revisedby" text="Pregledal: "/>
+ <l:gentext key="revisedby" text="Pregledal: "/>
+ <l:gentext key="TableNotes" text="Notes"/>
+ <l:gentext key="tablenotes" text="Notes"/>
+ <l:gentext key="TableofContents" text="Kazalo"/>
+ <l:gentext key="tableofcontents" text="Kazalo"/>
+ <l:gentext key="unexpectedelementname" text="Nepri&#269;akovano ime elementa"/>
+ <l:gentext key="unsupported" text="nepodprto"/>
+ <l:gentext key="xrefto" text="xref na"/>
+ <l:gentext key="listofequations" text="Seznam ena&#269;b"/>
+ <l:gentext key="ListofEquations" text="Seznam ena&#269;b"/>
+ <l:gentext key="ListofExamples" text="Seznam primerov"/>
+ <l:gentext key="listofexamples" text="Seznam primerov"/>
+ <l:gentext key="ListofFigures" text="Seznam slik"/>
+ <l:gentext key="listoffigures" text="Seznam slik"/>
+ <l:gentext key="listoftables" text="Seznam tabel"/>
+ <l:gentext key="ListofTables" text="Seznam tabel"/>
+ <l:gentext key="ListofUnknown" text="Seznam neznanih stvari"/>
+ <l:gentext key="listofunknown" text="Seznam neznanih stvari"/>
+ <l:gentext key="nav-home" text="Domov"/>
+ <l:gentext key="nav-next" text="Naprej"/>
+ <l:gentext key="nav-next-sibling" text="Hitro naprej"/>
+ <l:gentext key="nav-prev" text="Nazaj"/>
+ <l:gentext key="nav-prev-sibling" text="Hitro nazaj"/>
+ <l:gentext key="nav-up" text="Gor"/>
+ <l:gentext key="sectioncalled" text="razdelek, imenovan"/>
+ <l:gentext key="Draft" text="Draft"/>
+ <l:gentext key="above" text="above"/>
+ <l:gentext key="below" text="below"/>
+ <l:gentext key="index symbols" text="Simboli"/>
+ <l:gentext key="lowercase.alpha" text="abc&#269;defghijklmnopqrs&#353;tuvwxyz&#382;"/>
+ <l:gentext key="uppercase.alpha" text="ABC&#268;DEFGHIJKLMNOPQRS&#352;TUVWXYZ&#381;"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="Dodatek %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Poglavje %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Ena&#269;ba %n. %t"/>
+ <l:template name="example" text="Primer %n. %t"/>
+ <l:template name="figure" text="Slika %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Del %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="Postopek %n. %t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Izdelava %n"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="Tabela %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text=""/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="Dodatek %n. %t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="Poglavje %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%n. %t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="O:&#160;%n"/>
+ <l:template name="appendix" text="Dodatek %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Poglavje %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Ena&#269;ba&#160;%n"/>
+ <l:template name="example" text="Primer %n. %t"/>
+ <l:template name="figure" text="Slika %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Del %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="Postopek&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="V:&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="V:&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="Tabela %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#8220;%t&#8221;"/>
+ <l:template name="sect2" text="&#8220;%t&#8221;"/>
+ <l:template name="sect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect4" text="&#8220;%t&#8221;"/>
+ <l:template name="sect5" text="&#8220;%t&#8221;"/>
+ <l:template name="section" text="&#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="Razdelek %n"/>
+ <l:template name="sect2" text="Razdelek %n"/>
+ <l:template name="sect3" text="Razdelek %n"/>
+ <l:template name="sect4" text="Razdelek %n"/>
+ <l:template name="sect5" text="Razdelek %n"/>
+ <l:template name="section" text="Razdelek %n"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" in "/>
+ <l:template name="seplast" text=", in "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="glej "/>
+ <l:template name="seealso" text="glej tudi "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="Ob&#269;instvo: "/>
+ <l:template name="MsgLevel" text="Raven: "/>
+ <l:template name="MsgOrig" text="Izvor: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/sr.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/sr.xml
new file mode 100644
index 0000000..86f92bd
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/sr.xml
@@ -0,0 +1,450 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="sr" english-language-name="Serbian">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="Pregled"/>
+ <l:gentext key="abstract" text="Pregled"/>
+ <l:gentext key="Answer" text="O:"/>
+ <l:gentext key="answer" text="O:"/>
+ <l:gentext key="Appendix" text="Dodatak"/>
+ <l:gentext key="appendix" text="dodatak"/>
+ <l:gentext key="Article" text="&#268;lanak"/>
+ <l:gentext key="article" text="&#268;lanak"/>
+ <l:gentext key="Bibliography" text="Literatura"/>
+ <l:gentext key="bibliography" text="Literatura"/>
+ <l:gentext key="Book" text="Knjiga"/>
+ <l:gentext key="book" text="Knjiga"/>
+ <l:gentext key="CAUTION" text="UPOZORENJE"/>
+ <l:gentext key="Caution" text="Upozorenje"/>
+ <l:gentext key="caution" text="Upozorenje"/>
+ <l:gentext key="Chapter" text="Poglavlje"/>
+ <l:gentext key="chapter" text="poglavlje"/>
+ <l:gentext key="Colophon" text="Kolofon"/>
+ <l:gentext key="colophon" text="Kolofon"/>
+ <l:gentext key="Copyright" text="Pravna za&#353;tita"/>
+ <l:gentext key="copyright" text="Pravna za&#353;tita"/>
+ <l:gentext key="Dedication" text="Posveta"/>
+ <l:gentext key="dedication" text="Posveta"/>
+ <l:gentext key="Edition" text="Izdanje"/>
+ <l:gentext key="edition" text="Izdanje"/>
+ <l:gentext key="Equation" text="Jedna&#269;ina"/>
+ <l:gentext key="equation" text="Jedna&#269;ina"/>
+ <l:gentext key="Example" text="Primer"/>
+ <l:gentext key="example" text="Primer"/>
+ <l:gentext key="Figure" text="Slika"/>
+ <l:gentext key="figure" text="Slika"/>
+ <l:gentext key="Glossary" text="Re&#269;nik"/>
+ <l:gentext key="glossary" text="Re&#269;nik"/>
+ <l:gentext key="GlossSee" text="Vidi"/>
+ <l:gentext key="glosssee" text="Vidi"/>
+ <l:gentext key="GlossSeeAlso" text="Vidi tako&#273;e"/>
+ <l:gentext key="glossseealso" text="Vidi tako&#273;e"/>
+ <l:gentext key="IMPORTANT" text="VA&#381;NO"/>
+ <l:gentext key="Important" text="Va&#382;no"/>
+ <l:gentext key="important" text="Va&#382;no"/>
+ <l:gentext key="Index" text="Indeks"/>
+ <l:gentext key="index" text="Indeks"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text="Pravno obave&#353;tenje"/>
+ <l:gentext key="legalnotice" text="Pravno obave&#353;tenje"/>
+ <l:gentext key="MsgAud" text="MsgAud"/>
+ <l:gentext key="msgaud" text="MsgAud"/>
+ <l:gentext key="MsgLevel" text="Nivo"/>
+ <l:gentext key="msglevel" text="Nivo"/>
+ <l:gentext key="MsgOrig" text="Izvor"/>
+ <l:gentext key="msgorig" text="Izvor"/>
+ <l:gentext key="NOTE" text="PRIMEDBA"/>
+ <l:gentext key="Note" text="Primedba"/>
+ <l:gentext key="note" text="Primedba"/>
+ <l:gentext key="Part" text="Deo"/>
+ <l:gentext key="part" text="Deo"/>
+ <l:gentext key="Preface" text="Predgovor"/>
+ <l:gentext key="preface" text="Predgovor"/>
+ <l:gentext key="Procedure" text="Postupak"/>
+ <l:gentext key="procedure" text="Postupak"/>
+ <l:gentext key="ProductionSet" text="Production"/>
+ <l:gentext key="Published" text="Izdato"/>
+ <l:gentext key="published" text="Izdato"/>
+ <l:gentext key="Question" text="P:"/>
+ <l:gentext key="question" text="P:"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="Referenca"/>
+ <l:gentext key="reference" text="Referenca"/>
+ <l:gentext key="RefName" text="Ime"/>
+ <l:gentext key="refname" text="Ime"/>
+ <l:gentext key="RefSection" text=""/>
+ <l:gentext key="refsection" text=""/>
+ <l:gentext key="RefSynopsisDiv" text="Sinopsis"/>
+ <l:gentext key="refsynopsisdiv" text="Sinopsis"/>
+ <l:gentext key="RevHistory" text="Istorija revizija"/>
+ <l:gentext key="revhistory" text="Istorija revizija"/>
+ <l:gentext key="Revision" text="Revizija"/>
+ <l:gentext key="revision" text="Revizija"/>
+ <l:gentext key="sect1" text="Section"/>
+ <l:gentext key="sect2" text="Section"/>
+ <l:gentext key="sect3" text="Section"/>
+ <l:gentext key="sect4" text="Section"/>
+ <l:gentext key="sect5" text="Section"/>
+ <l:gentext key="Section" text="Odeljak"/>
+ <l:gentext key="section" text="sekcija"/>
+ <l:gentext key="See" text="vidi"/>
+ <l:gentext key="see" text="vidi"/>
+ <l:gentext key="SeeAlso" text="vidi tako&#273;e"/>
+ <l:gentext key="Seealso" text="Vidi tako&#273;e"/>
+ <l:gentext key="seealso" text="vidi tako&#273;e"/>
+ <l:gentext key="Set" text="Postavi"/>
+ <l:gentext key="set" text="Postavi"/>
+ <l:gentext key="SetIndex" text="Postavi indeks"/>
+ <l:gentext key="setindex" text="Postavi indeks"/>
+ <l:gentext key="Sidebar" text=""/>
+ <l:gentext key="sidebar" text="sidebar"/>
+ <l:gentext key="Step" text="Korak"/>
+ <l:gentext key="step" text="korak"/>
+ <l:gentext key="Table" text="Tabela"/>
+ <l:gentext key="table" text="Tabela"/>
+ <l:gentext key="TIP" text="SAVET"/>
+ <l:gentext key="Tip" text="Savet"/>
+ <l:gentext key="tip" text="Savet"/>
+ <l:gentext key="WARNING" text="UPOZORENJE"/>
+ <l:gentext key="Warning" text="Upozorenje"/>
+ <l:gentext key="warning" text="Upozorenje"/>
+ <l:gentext key="and" text="i"/>
+ <l:gentext key="by" text="od"/>
+ <l:gentext key="Edited" text="Ure&#273;eno"/>
+ <l:gentext key="edited" text="Ure&#273;eno"/>
+ <l:gentext key="Editedby" text="Ure&#273;eno od"/>
+ <l:gentext key="editedby" text="Ure&#273;eno od"/>
+ <l:gentext key="in" text="u"/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="nepostoje&#263;i element"/>
+ <l:gentext key="notes" text="Notes"/>
+ <l:gentext key="Notes" text="Notes"/>
+ <l:gentext key="Pgs" text="Str."/>
+ <l:gentext key="pgs" text="Str."/>
+ <l:gentext key="Revisedby" text="Revised by: "/>
+ <l:gentext key="revisedby" text="Revised by: "/>
+ <l:gentext key="TableNotes" text="Notes"/>
+ <l:gentext key="tablenotes" text="Notes"/>
+ <l:gentext key="TableofContents" text="Sadr&#382;aj"/>
+ <l:gentext key="tableofcontents" text="Sadr&#382;aj"/>
+ <l:gentext key="unexpectedelementname" text="Neo&#269;ekivano ime elementa"/>
+ <l:gentext key="unsupported" text="nepodr&#382;ano"/>
+ <l:gentext key="xrefto" text="xref na"/>
+ <l:gentext key="listofequations" text="Spisak jedna&#269;ina"/>
+ <l:gentext key="ListofEquations" text="Spisak jedna&#269;ina"/>
+ <l:gentext key="ListofExamples" text="Spisak primera"/>
+ <l:gentext key="listofexamples" text="Spisak primera"/>
+ <l:gentext key="ListofFigures" text="Spisak slika"/>
+ <l:gentext key="listoffigures" text="Spisak slika"/>
+ <l:gentext key="listoftables" text="Spisak tabela"/>
+ <l:gentext key="ListofTables" text="Spisak tabela"/>
+ <l:gentext key="ListofUnknown" text="Spisak nepoznanica"/>
+ <l:gentext key="listofunknown" text="Spisak nepoznanica"/>
+ <l:gentext key="nav-home" text="Ku&#263;i"/>
+ <l:gentext key="nav-next" text="Napred"/>
+ <l:gentext key="nav-next-sibling" text="Brzo napred"/>
+ <l:gentext key="nav-prev" text="Nazad"/>
+ <l:gentext key="nav-prev-sibling" text="Brzo nazad"/>
+ <l:gentext key="nav-up" text="Gore"/>
+ <l:gentext key="sectioncalled" text="the section called"/>
+ <l:gentext key="Draft" text="Draft"/>
+ <l:gentext key="above" text="above"/>
+ <l:gentext key="below" text="below"/>
+ <l:gentext key="index symbols" text="Symbols"/>
+ <l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz"/>
+ <l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="Dodatak %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Poglavlje %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Jedna&#269;ina %n. %t"/>
+ <l:template name="example" text="Primer %n. %t"/>
+ <l:template name="figure" text="Slika %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Deo %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="Postupak&#160;%n.&#160;%t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Production&#160;%n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="Tabela %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="Dodatak %n. %t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="Poglavlje %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%n. %t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="O:&#160;%n"/>
+ <l:template name="appendix" text="Dodatak %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Poglavlje %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Jedna&#269;ina&#160;%n"/>
+ <l:template name="example" text="Primer %n. %t"/>
+ <l:template name="figure" text="Slika %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Deo %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="Postupak&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="P:&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="P:&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="Tabela %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#8220;%t&#8221;"/>
+ <l:template name="sect2" text="&#8220;%t&#8221;"/>
+ <l:template name="sect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect4" text="&#8220;%t&#8221;"/>
+ <l:template name="sect5" text="&#8220;%t&#8221;"/>
+ <l:template name="section" text="&#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="Odeljak %n"/>
+ <l:template name="sect2" text="Odeljak %n"/>
+ <l:template name="sect3" text="Odeljak %n"/>
+ <l:template name="sect4" text="Odeljak %n"/>
+ <l:template name="sect5" text="Odeljak %n"/>
+ <l:template name="section" text="Odeljak %n"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" i "/>
+ <l:template name="seplast" text=", i "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="Vidi "/>
+ <l:template name="seealso" text="Vidi tako&#273;e "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="MsgAud: "/>
+ <l:template name="MsgLevel" text="Nivo: "/>
+ <l:template name="MsgOrig" text="Izvor: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/sv.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/sv.xml
new file mode 100644
index 0000000..93a03c5
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/sv.xml
@@ -0,0 +1,451 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="sv" english-language-name="Swedish">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="Sammanfattning"/>
+ <l:gentext key="abstract" text="Sammanfattning"/>
+ <l:gentext key="Answer" text="A:"/>
+ <l:gentext key="answer" text="A:"/>
+ <l:gentext key="Appendix" text="Appendix"/>
+ <l:gentext key="appendix" text="appendix"/>
+ <l:gentext key="Article" text="Artikel"/>
+ <l:gentext key="article" text="Artikel"/>
+ <l:gentext key="Bibliography" text="Bibliografi"/>
+ <l:gentext key="bibliography" text="Bibliografi"/>
+ <l:gentext key="Book" text="Bok"/>
+ <l:gentext key="book" text="Bok"/>
+ <l:gentext key="CAUTION" text="OBSERVERA"/>
+ <l:gentext key="Caution" text="Observera"/>
+ <l:gentext key="caution" text="Observera"/>
+ <l:gentext key="Chapter" text="Kapitel"/>
+ <l:gentext key="chapter" text="kapitel"/>
+ <l:gentext key="Colophon" text="Colophon"/>
+ <l:gentext key="colophon" text="Colophon"/>
+ <l:gentext key="Copyright" text="Copyright"/>
+ <l:gentext key="copyright" text="Copyright"/>
+ <l:gentext key="Dedication" text="Dedikation"/>
+ <l:gentext key="dedication" text="Dedikation"/>
+ <l:gentext key="Edition" text="Utg&#229;va"/>
+ <l:gentext key="edition" text="Utg&#229;va"/>
+ <l:gentext key="Equation" text="Ekvation"/>
+ <l:gentext key="equation" text="Ekvation"/>
+ <l:gentext key="Example" text="Exempel"/>
+ <l:gentext key="example" text="Exempel"/>
+ <l:gentext key="Figure" text="Figur"/>
+ <l:gentext key="figure" text="Figur"/>
+ <l:gentext key="Glossary" text="Gloslista"/>
+ <l:gentext key="glossary" text="Gloslista"/>
+ <l:gentext key="GlossSee" text="Se"/>
+ <l:gentext key="glosssee" text="Se"/>
+ <l:gentext key="GlossSeeAlso" text="Se &#196;ven"/>
+ <l:gentext key="glossseealso" text="Se &#196;ven"/>
+ <l:gentext key="IMPORTANT" text="VIKTIGT"/>
+ <l:gentext key="Important" text="Viktigt"/>
+ <l:gentext key="important" text="Viktigt"/>
+ <l:gentext key="Index" text="Index"/>
+ <l:gentext key="index" text="Index"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text="Legal Notice"/>
+ <l:gentext key="legalnotice" text="Legal Notice"/>
+ <l:gentext key="MsgAud" text="M&#229;lgrupp"/>
+ <l:gentext key="msgaud" text="M&#229;lgrupp"/>
+ <l:gentext key="MsgLevel" text="Niv&#229;"/>
+ <l:gentext key="msglevel" text="Niv&#229;"/>
+ <l:gentext key="MsgOrig" text="Ursprung"/>
+ <l:gentext key="msgorig" text="Ursprung"/>
+ <l:gentext key="NOTE" text="NOT"/>
+ <l:gentext key="Note" text="Not"/>
+ <l:gentext key="note" text="Not"/>
+ <l:gentext key="Part" text="Del"/>
+ <l:gentext key="part" text="Del"/>
+ <l:gentext key="Preface" text="F&#246;retal"/>
+ <l:gentext key="preface" text="F&#246;retal"/>
+ <l:gentext key="Procedure" text="Procedur"/>
+ <l:gentext key="procedure" text="Procedur"/>
+ <l:gentext key="ProductionSet" text="Production"/>
+ <l:gentext key="Published" text="Publicerad"/>
+ <l:gentext key="published" text="Publicerad"/>
+ <l:gentext key="Question" text="Fr&#229;ga:"/>
+ <l:gentext key="question" text="Fr&#229;ga:"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="Referens"/>
+ <l:gentext key="reference" text="Referens"/>
+ <l:gentext key="RefName" text="Namn"/>
+ <l:gentext key="refname" text="Namn"/>
+ <l:gentext key="RefSection" text=""/>
+ <l:gentext key="refsection" text=""/>
+ <l:gentext key="RefSynopsisDiv" text="Synopsis"/>
+ <l:gentext key="refsynopsisdiv" text="Synopsis"/>
+ <l:gentext key="RevHistory" text="Revisions Historik;"/>
+ <l:gentext key="revhistory" text="Revisions Historik;"/>
+ <l:gentext key="Revision" text="Revision"/>
+ <l:gentext key="revision" text="Revision"/>
+ <l:gentext key="sect1" text="Section"/>
+ <l:gentext key="sect2" text="Section"/>
+ <l:gentext key="sect3" text="Section"/>
+ <l:gentext key="sect4" text="Section"/>
+ <l:gentext key="sect5" text="Section"/>
+ <l:gentext key="Section" text="Avsnitt"/>
+ <l:gentext key="section" text="avsnitt"/>
+ <l:gentext key="See" text="Se"/>
+ <l:gentext key="see" text="Se"/>
+ <l:gentext key="SeeAlso" text="Se &#196;ven"/>
+ <l:gentext key="seealso" text="Se &#196;ven"/>
+ <l:gentext key="Seealso" text="Se &#228;ven"/>
+ <l:gentext key="Set" text="Set"/>
+ <l:gentext key="set" text="Set"/>
+ <l:gentext key="SetIndex" text="Set Index"/>
+ <l:gentext key="setindex" text="Set Index"/>
+ <l:gentext key="Sidebar" text="Sidebar"/>
+ <l:gentext key="sidebar" text="sidebar"/>
+ <l:gentext key="Step" text="Steg"/>
+ <l:gentext key="step" text="steg"/>
+ <l:gentext key="Table" text="Tabell"/>
+ <l:gentext key="table" text="Tabell"/>
+ <l:gentext key="TIP" text="TIPS"/>
+ <l:gentext key="Tip" text="Tips"/>
+ <l:gentext key="tip" text="Tips"/>
+ <l:gentext key="WARNING" text="VARNING"/>
+ <l:gentext key="Warning" text="Varning"/>
+ <l:gentext key="warning" text="Varning"/>
+ <l:gentext key="and" text="och"/>
+ <l:gentext key="by" text="av"/>
+ <l:gentext key="called" text="kallas"/>
+ <l:gentext key="edited" text="Redigerad"/>
+ <l:gentext key="Edited" text="Redigerad"/>
+ <l:gentext key="Editedby" text="Redigerad av"/>
+ <l:gentext key="editedby" text="Redigerad av"/>
+ <l:gentext key="in" text="i"/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="non-existant element"/>
+ <l:gentext key="Notes" text="Noter"/>
+ <l:gentext key="notes" text="Noter"/>
+ <l:gentext key="Pgs" text="Sid."/>
+ <l:gentext key="pgs" text="Sid."/>
+ <l:gentext key="Revisedby" text="Reviderad av: "/>
+ <l:gentext key="revisedby" text="Reviderad av: "/>
+ <l:gentext key="TableNotes" text="Noter"/>
+ <l:gentext key="tablenotes" text="Noter"/>
+ <l:gentext key="TableofContents" text="Inneh&#229;llsf&#246;rteckning"/>
+ <l:gentext key="tableofcontents" text="Inneh&#229;llsf&#246;rteckning"/>
+ <l:gentext key="the" text=""/>
+ <l:gentext key="unexpectedelementname" text="Unexpected element name"/>
+ <l:gentext key="unsupported" text="unsupported"/>
+ <l:gentext key="xrefto" text="xref till"/>
+ <l:gentext key="listofequations" text="Ekvationsf&#246;rteckning"/>
+ <l:gentext key="ListofEquations" text="Ekvationsf&#246;rteckning"/>
+ <l:gentext key="ListofExamples" text="Exempelf&#246;rteckning"/>
+ <l:gentext key="listofexamples" text="Exempelf&#246;rteckning"/>
+ <l:gentext key="ListofFigures" text="Figurf&#246;rteckning"/>
+ <l:gentext key="listoffigures" text="Figurf&#246;rteckning"/>
+ <l:gentext key="listoftables" text="Tabellf&#246;rteckning"/>
+ <l:gentext key="ListofTables" text="Tabellf&#246;rteckning"/>
+ <l:gentext key="ListofUnknown" text="F&#246;rteckning av ok&#228;nda"/>
+ <l:gentext key="listofunknown" text="F&#246;rteckning av ok&#228;nda"/>
+ <l:gentext key="nav-home" text="Hem"/>
+ <l:gentext key="nav-next" text="N&#228;sta"/>
+ <l:gentext key="nav-next-sibling" text="Snabbt bak&#229;t"/>
+ <l:gentext key="nav-prev" text="F&#246;reg&#229;ende"/>
+ <l:gentext key="nav-prev-sibling" text="Snabbt fram&#229;t"/>
+ <l:gentext key="nav-up" text="Upp"/>
+ <l:gentext key="sectioncalled" text="the section called"/>
+ <l:gentext key="Draft" text="Draft"/>
+ <l:gentext key="above" text="above"/>
+ <l:gentext key="below" text="below"/>
+ <l:gentext key="index symbols" text="Symbols"/>
+ <l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz"/>
+ <l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="Appendix %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Kapitel %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Ekvation %n. %t"/>
+ <l:template name="example" text="Exempel %n. %t"/>
+ <l:template name="figure" text="Figur %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Del %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="Procedur&#160;%n.&#160;%t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Production&#160;%n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="Tabell %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="Appendix %n. %t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="Kapitel %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%n. %t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="A:&#160;%n"/>
+ <l:template name="appendix" text="Appendix %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Kapitel %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Ekvation&#160;%n"/>
+ <l:template name="example" text="Exempel %n. %t"/>
+ <l:template name="figure" text="Figur %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Del %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="Procedur&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="Fr&#229;ga:&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="Fr&#229;ga:&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="Tabell %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#8220;%t&#8221;"/>
+ <l:template name="sect2" text="&#8220;%t&#8221;"/>
+ <l:template name="sect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect4" text="&#8220;%t&#8221;"/>
+ <l:template name="sect5" text="&#8220;%t&#8221;"/>
+ <l:template name="section" text="&#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="Avsnitt %n"/>
+ <l:template name="sect2" text="Avsnitt %n"/>
+ <l:template name="sect3" text="Avsnitt %n"/>
+ <l:template name="sect4" text="Avsnitt %n"/>
+ <l:template name="sect5" text="Avsnitt %n"/>
+ <l:template name="section" text="Avsnitt %n"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" och "/>
+ <l:template name="seplast" text=", och "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="Se "/>
+ <l:template name="seealso" text="Se &#196;ven "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="M&#229;lgrupp: "/>
+ <l:template name="MsgLevel" text="Niv&#229;: "/>
+ <l:template name="MsgOrig" text="Ursprung: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/th.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/th.xml
new file mode 100644
index 0000000..8a78174
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/th.xml
@@ -0,0 +1,463 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="th" english-language-name="Thai">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="&#3610;&#3607;&#3588;&#3633;&#3604;&#3618;&#3656;&#3629;"/>
+ <l:gentext key="abstract" text="&#3610;&#3607;&#3588;&#3633;&#3604;&#3618;&#3656;&#3629;"/>
+ <l:gentext key="Answer" text="&#3605;&#3629;&#3610;:"/>
+ <l:gentext key="answer" text="&#3605;&#3629;&#3610;:"/>
+ <l:gentext key="Appendix" text="&#3616;&#3634;&#3588;&#3612;&#3609;&#3623;&#3585;"/>
+ <l:gentext key="appendix" text="&#3616;&#3634;&#3588;&#3612;&#3609;&#3623;&#3585;"/>
+ <l:gentext key="Article" text="&#3610;&#3607;&#3588;&#3623;&#3634;&#3617;"/>
+ <l:gentext key="article" text="&#3610;&#3607;&#3588;&#3623;&#3634;&#3617;"/>
+ <l:gentext key="Bibliography" text="&#3610;&#3619;&#3619;&#3603;&#3634;&#3609;&#3640;&#3585;&#3619;&#3617;"/>
+ <l:gentext key="bibliography" text="&#3610;&#3619;&#3619;&#3603;&#3634;&#3609;&#3640;&#3585;&#3619;&#3617;"/>
+ <l:gentext key="Book" text="&#3627;&#3609;&#3633;&#3591;&#3626;&#3639;&#3629;"/>
+ <l:gentext key="book" text="&#3627;&#3609;&#3633;&#3591;&#3626;&#3639;&#3629;"/>
+ <l:gentext key="CAUTION" text="&#3588;&#3635;&#3648;&#3605;&#3639;&#3629;&#3609;"/>
+ <l:gentext key="Caution" text="&#3588;&#3635;&#3648;&#3605;&#3639;&#3629;&#3609;"/>
+ <l:gentext key="caution" text="&#3588;&#3635;&#3648;&#3605;&#3639;&#3629;&#3609;"/>
+ <l:gentext key="Chapter" text="&#3610;&#3607;&#3607;&#3637;&#3656;"/>
+ <l:gentext key="chapter" text="&#3610;&#3607;&#3607;&#3637;&#3656;"/>
+ <l:gentext key="Colophon" text="&#3648;&#3610;&#3639;&#3657;&#3629;&#3591;&#3627;&#3621;&#3633;&#3591;"/>
+ <l:gentext key="colophon" text="&#3648;&#3610;&#3639;&#3657;&#3629;&#3591;&#3627;&#3621;&#3633;&#3591;"/>
+ <l:gentext key="Copyright" text="&#3626;&#3591;&#3623;&#3609;&#3626;&#3636;&#3586;&#3626;&#3636;&#3607;&#3608;&#3636;&#3660;"/>
+ <l:gentext key="copyright" text="&#3626;&#3591;&#3623;&#3609;&#3626;&#3636;&#3586;&#3626;&#3636;&#3607;&#3608;&#3636;&#3660;"/>
+ <l:gentext key="Dedication" text="&#3588;&#3635;&#3629;&#3640;&#3607;&#3636;&#3624;"/>
+ <l:gentext key="dedication" text="&#3588;&#3635;&#3629;&#3640;&#3607;&#3636;&#3624;"/>
+ <l:gentext key="Edition" text="&#3593;&#3610;&#3633;&#3610;"/>
+ <l:gentext key="edition" text="&#3593;&#3610;&#3633;&#3610;"/>
+ <l:gentext key="Equation" text="&#3626;&#3617;&#3585;&#3634;&#3619;"/>
+ <l:gentext key="equation" text="&#3626;&#3617;&#3585;&#3634;&#3619;"/>
+ <l:gentext key="Example" text="&#3605;&#3633;&#3623;&#3629;&#3618;&#3656;&#3634;&#3591;"/>
+ <l:gentext key="example" text="&#3605;&#3633;&#3623;&#3629;&#3618;&#3656;&#3634;&#3591;"/>
+ <l:gentext key="Figure" text="&#3619;&#3641;&#3611;"/>
+ <l:gentext key="figure" text="&#3619;&#3641;&#3611;"/>
+ <l:gentext key="Glossary" text="&#3629;&#3616;&#3636;&#3607;&#3634;&#3609;&#3624;&#3633;&#3614;&#3607;&#3660;"/>
+ <l:gentext key="glossary" text="&#3629;&#3616;&#3636;&#3607;&#3634;&#3609;&#3624;&#3633;&#3614;&#3607;&#3660;"/>
+ <l:gentext key="GlossSee" text="&#3604;&#3641;"/>
+ <l:gentext key="glosssee" text="&#3604;&#3641;"/>
+ <l:gentext key="GlossSeeAlso" text="&#3604;&#3641;&#3648;&#3614;&#3636;&#3656;&#3617;&#3648;&#3605;&#3636;&#3617;"/>
+ <l:gentext key="glossseealso" text="&#3604;&#3641;&#3648;&#3614;&#3636;&#3656;&#3617;&#3648;&#3605;&#3636;&#3617;"/>
+ <l:gentext key="IMPORTANT" text="&#3586;&#3657;&#3629;&#3588;&#3623;&#3619;&#3592;&#3635;"/>
+ <l:gentext key="important" text="&#3586;&#3657;&#3629;&#3588;&#3623;&#3619;&#3592;&#3635;"/>
+ <l:gentext key="Important" text="&#3586;&#3657;&#3629;&#3588;&#3623;&#3619;&#3592;&#3635;"/>
+ <l:gentext key="Index" text="&#3604;&#3619;&#3619;&#3594;&#3609;&#3637;"/>
+ <l:gentext key="index" text="&#3604;&#3619;&#3619;&#3594;&#3609;&#3637;"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text="&#3586;&#3657;&#3629;&#3612;&#3641;&#3585;&#3614;&#3633;&#3609;&#3605;&#3634;&#3617;&#3585;&#3598;&#3627;&#3617;&#3634;&#3618;"/>
+ <l:gentext key="legalnotice" text="&#3586;&#3657;&#3629;&#3612;&#3641;&#3585;&#3614;&#3633;&#3609;&#3605;&#3634;&#3617;&#3585;&#3598;&#3627;&#3617;&#3634;&#3618;"/>
+ <l:gentext key="MsgAud" text="&#3612;&#3641;&#3657;&#3629;&#3656;&#3634;&#3609;"/>
+ <l:gentext key="msgaud" text="&#3612;&#3641;&#3657;&#3629;&#3656;&#3634;&#3609;"/>
+ <l:gentext key="MsgLevel" text="&#3619;&#3632;&#3604;&#3633;&#3610;"/>
+ <l:gentext key="msglevel" text="&#3619;&#3632;&#3604;&#3633;&#3610;"/>
+ <l:gentext key="MsgOrig" text="&#3607;&#3637;&#3656;&#3617;&#3634;"/>
+ <l:gentext key="msgorig" text="&#3607;&#3637;&#3656;&#3617;&#3634;"/>
+ <l:gentext key="NOTE" text="&#3627;&#3617;&#3634;&#3618;&#3648;&#3627;&#3605;&#3640;"/>
+ <l:gentext key="Note" text="&#3627;&#3617;&#3634;&#3618;&#3648;&#3627;&#3605;&#3640;"/>
+ <l:gentext key="note" text="&#3627;&#3617;&#3634;&#3618;&#3648;&#3627;&#3605;&#3640;"/>
+ <l:gentext key="Part" text="&#3616;&#3634;&#3588;"/>
+ <l:gentext key="part" text="&#3616;&#3634;&#3588;"/>
+ <l:gentext key="Preface" text="&#3588;&#3635;&#3609;&#3635;"/>
+ <l:gentext key="preface" text="&#3588;&#3635;&#3609;&#3635;"/>
+ <l:gentext key="Procedure" text="&#3619;&#3632;&#3648;&#3610;&#3637;&#3618;&#3610;&#3585;&#3634;&#3619;"/>
+ <l:gentext key="procedure" text="&#3619;&#3632;&#3648;&#3610;&#3637;&#3618;&#3610;&#3585;&#3634;&#3619;"/>
+ <l:gentext key="ProductionSet" text="&#3612;&#3621;&#3636;&#3605;"/>
+ <l:gentext key="Published" text="&#3605;&#3637;&#3614;&#3636;&#3617;&#3614;&#3660;"/>
+ <l:gentext key="published" text="&#3605;&#3637;&#3614;&#3636;&#3617;&#3614;&#3660;"/>
+ <l:gentext key="Question" text="&#3606;&#3634;&#3617;:"/>
+ <l:gentext key="question" text="&#3606;&#3634;&#3617;:"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="&#3627;&#3609;&#3633;&#3591;&#3626;&#3639;&#3629;&#3629;&#3657;&#3634;&#3591;&#3629;&#3636;&#3591;"/>
+ <l:gentext key="reference" text="&#3627;&#3609;&#3633;&#3591;&#3626;&#3639;&#3629;&#3629;&#3657;&#3634;&#3591;&#3629;&#3636;&#3591;"/>
+ <l:gentext key="RefName" text="&#3594;&#3639;&#3656;&#3629;"/>
+ <l:gentext key="refname" text="&#3594;&#3639;&#3656;&#3629;"/>
+ <l:gentext key="RefSection" text=""/>
+ <l:gentext key="refsection" text=""/>
+ <l:gentext key="RefSynopsisDiv" text="&#3626;&#3634;&#3619;&#3632;&#3626;&#3635;&#3588;&#3633;&#3597;"/>
+ <l:gentext key="refsynopsisdiv" text="&#3626;&#3634;&#3619;&#3632;&#3626;&#3635;&#3588;&#3633;&#3597;"/>
+ <l:gentext key="RevHistory" text="&#3610;&#3633;&#3609;&#3607;&#3638;&#3585;&#3619;&#3640;&#3656;&#3609;"/>
+ <l:gentext key="revhistory" text="&#3610;&#3633;&#3609;&#3607;&#3638;&#3585;&#3619;&#3640;&#3656;&#3609;"/>
+ <l:gentext key="revision" text="&#3619;&#3640;&#3656;&#3609;&#3607;&#3637;&#3656;"/>
+ <l:gentext key="Revision" text="&#3619;&#3640;&#3656;&#3609;&#3607;&#3637;&#3656;"/>
+ <l:gentext key="sect1" text="&#3605;&#3629;&#3609;&#3607;&#3637;&#3656;"/>
+ <l:gentext key="sect2" text="&#3605;&#3629;&#3609;&#3607;&#3637;&#3656;"/>
+ <l:gentext key="sect3" text="&#3605;&#3629;&#3609;&#3607;&#3637;&#3656;"/>
+ <l:gentext key="sect4" text="&#3605;&#3629;&#3609;&#3607;&#3637;&#3656;"/>
+ <l:gentext key="sect5" text="&#3605;&#3629;&#3609;&#3607;&#3637;&#3656;"/>
+ <l:gentext key="section" text="&#3605;&#3629;&#3609;&#3607;&#3637;&#3656;"/>
+ <l:gentext key="Section" text="&#3605;&#3629;&#3609;&#3607;&#3637;&#3656;"/>
+ <l:gentext key="See" text="&#3604;&#3641;"/>
+ <l:gentext key="see" text="&#3604;&#3641;"/>
+ <l:gentext key="SeeAlso" text="&#3604;&#3641;&#3648;&#3614;&#3636;&#3656;&#3617;&#3648;&#3605;&#3636;&#3617;"/>
+ <l:gentext key="seealso" text="&#3604;&#3641;&#3648;&#3614;&#3636;&#3656;&#3617;&#3648;&#3605;&#3636;&#3617;"/>
+ <l:gentext key="Seealso" text="&#3604;&#3641;&#3648;&#3614;&#3636;&#3656;&#3617;&#3648;&#3605;&#3636;&#3617;"/>
+ <l:gentext key="set" text="&#3594;&#3640;&#3604;"/>
+ <l:gentext key="Set" text="&#3594;&#3640;&#3604;"/>
+ <l:gentext key="setindex" text="&#3626;&#3634;&#3619;&#3610;&#3633;&#3597;&#3594;&#3640;&#3604;"/>
+ <l:gentext key="SetIndex" text="&#3626;&#3634;&#3619;&#3610;&#3633;&#3597;&#3594;&#3640;&#3604;"/>
+ <l:gentext key="Sidebar" text=""/>
+ <l:gentext key="sidebar" text="sidebar"/>
+ <l:gentext key="step" text="&#3621;&#3635;&#3604;&#3633;&#3610;"/>
+ <l:gentext key="Step" text="&#3621;&#3635;&#3604;&#3633;&#3610;"/>
+ <l:gentext key="Table" text="&#3605;&#3634;&#3619;&#3634;&#3591;"/>
+ <l:gentext key="table" text="&#3605;&#3634;&#3619;&#3634;&#3591;"/>
+ <l:gentext key="tip" text="&#3588;&#3635;&#3649;&#3609;&#3632;&#3609;&#3635;"/>
+ <l:gentext key="TIP" text="&#3588;&#3635;&#3649;&#3609;&#3632;&#3609;&#3635;"/>
+ <l:gentext key="Tip" text="&#3588;&#3635;&#3649;&#3609;&#3632;&#3609;&#3635;"/>
+ <l:gentext key="Warning" text="&#3650;&#3611;&#3619;&#3604;&#3619;&#3632;&#3623;&#3633;&#3591;"/>
+ <l:gentext key="warning" text="&#3650;&#3611;&#3619;&#3604;&#3619;&#3632;&#3623;&#3633;&#3591;"/>
+ <l:gentext key="WARNING" text="&#3650;&#3611;&#3619;&#3604;&#3619;&#3632;&#3623;&#3633;&#3591;"/>
+ <l:gentext key="and" text="&#3649;&#3621;&#3632;"/>
+ <l:gentext key="by" text="&#3650;&#3604;&#3618;"/>
+ <l:gentext key="Edited" text="&#3648;&#3619;&#3637;&#3618;&#3610;&#3648;&#3619;&#3637;&#3618;&#3591;"/>
+ <l:gentext key="edited" text="&#3648;&#3619;&#3637;&#3618;&#3610;&#3648;&#3619;&#3637;&#3618;&#3591;"/>
+ <l:gentext key="Editedby" text="&#3648;&#3619;&#3637;&#3618;&#3610;&#3648;&#3619;&#3637;&#3618;&#3591;&#3650;&#3604;&#3610;"/>
+ <l:gentext key="editedby" text="&#3648;&#3619;&#3637;&#3618;&#3610;&#3648;&#3619;&#3637;&#3618;&#3591;&#3650;&#3604;&#3610;"/>
+ <l:gentext key="in" text="&#3651;&#3609;"/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="&#3652;&#3617;&#3656;&#3614;&#3610;&#3626;&#3656;&#3623;&#3609;&#3607;&#3637;&#3656;&#3605;&#3657;&#3629;&#3591;&#3585;&#3634;&#3619;"/>
+ <l:gentext key="notes" text="&#3627;&#3617;&#3634;&#3618;&#3648;&#3627;&#3605;&#3640;"/>
+ <l:gentext key="Notes" text="&#3627;&#3617;&#3634;&#3618;&#3648;&#3627;&#3605;&#3640;"/>
+ <l:gentext key="Pgs" text="&#3627;&#3609;&#3657;&#3634;"/>
+ <l:gentext key="pgs" text="&#3627;&#3609;&#3657;&#3634;"/>
+ <l:gentext key="Revisedby" text="&#3649;&#3585;&#3657;&#3652;&#3586;&#3611;&#3619;&#3633;&#3610;&#3611;&#3619;&#3640;&#3591;&#3650;&#3604;&#3618;: "/>
+ <l:gentext key="revisedby" text="&#3649;&#3585;&#3657;&#3652;&#3586;&#3611;&#3619;&#3633;&#3610;&#3611;&#3619;&#3640;&#3591;&#3650;&#3604;&#3618;: "/>
+ <l:gentext key="TableNotes" text="&#3627;&#3617;&#3634;&#3618;&#3648;&#3627;&#3605;&#3640;"/>
+ <l:gentext key="tablenotes" text="&#3627;&#3617;&#3634;&#3618;&#3648;&#3627;&#3605;&#3640;"/>
+ <l:gentext key="TableofContents" text="&#3626;&#3634;&#3619;&#3610;&#3633;&#3597;"/>
+ <l:gentext key="tableofcontents" text="&#3626;&#3634;&#3619;&#3610;&#3633;&#3597;"/>
+ <l:gentext key="unexpectedelementname" text="&#3614;&#3610;&#3626;&#3656;&#3623;&#3609;&#3607;&#3637;&#3656;&#3652;&#3617;&#3656;&#3605;&#3657;&#3629;&#3591;&#3585;&#3634;&#3619;"/>
+ <l:gentext key="unsupported" text="&#3652;&#3617;&#3656;&#3626;&#3609;&#3633;&#3610;&#3626;&#3609;&#3640;&#3609;"/>
+ <l:gentext key="xrefto" text="xref to"/>
+ <l:gentext key="listofequations" text="&#3626;&#3634;&#3619;&#3610;&#3633;&#3597;&#3626;&#3617;&#3585;&#3634;&#3619;"/>
+ <l:gentext key="ListofEquations" text="&#3626;&#3634;&#3619;&#3610;&#3633;&#3597;&#3626;&#3617;&#3585;&#3634;&#3619;"/>
+ <l:gentext key="ListofExamples" text="&#3626;&#3634;&#3619;&#3610;&#3633;&#3597;&#3605;&#3633;&#3623;&#3629;&#3618;&#3656;&#3634;&#3591;"/>
+ <l:gentext key="listofexamples" text="&#3626;&#3634;&#3619;&#3610;&#3633;&#3597;&#3605;&#3633;&#3623;&#3629;&#3618;&#3656;&#3634;&#3591;"/>
+ <l:gentext key="ListofFigures" text="&#3626;&#3634;&#3619;&#3610;&#3633;&#3597;&#3619;&#3641;&#3611;"/>
+ <l:gentext key="listoffigures" text="&#3626;&#3634;&#3619;&#3610;&#3633;&#3597;&#3619;&#3641;&#3611;"/>
+ <l:gentext key="listoftables" text="&#3626;&#3634;&#3619;&#3610;&#3633;&#3597;&#3605;&#3634;&#3619;&#3634;&#3591;"/>
+ <l:gentext key="ListofTables" text="&#3626;&#3634;&#3619;&#3610;&#3633;&#3597;&#3605;&#3634;&#3619;&#3634;&#3591;"/>
+ <l:gentext key="ListofUnknown" text="&#3626;&#3634;&#3619;&#3610;&#3633;&#3597;&#3629;&#3639;&#3656;&#3609; &#3654;"/>
+ <l:gentext key="listofunknown" text="&#3626;&#3634;&#3619;&#3610;&#3633;&#3597;&#3629;&#3639;&#3656;&#3609; &#3654;"/>
+ <l:gentext key="nav-home" text="&#3627;&#3609;&#3657;&#3634;&#3649;&#3619;&#3585;"/>
+ <l:gentext key="nav-next" text="&#3605;&#3656;&#3629;&#3652;&#3611;"/>
+ <l:gentext key="nav-next-sibling" text="&#3605;&#3656;&#3629;&#3652;&#3611;"/>
+ <l:gentext key="nav-prev" text="&#3585;&#3656;&#3629;&#3609;&#3627;&#3609;&#3657;&#3634;"/>
+ <l:gentext key="nav-prev-sibling" text="&#3585;&#3656;&#3629;&#3609;&#3627;&#3609;&#3657;&#3634;"/>
+ <l:gentext key="nav-up" text="&#3585;&#3621;&#3633;&#3610;"/>
+ <l:gentext key="sectioncalled" text="&#3605;&#3629;&#3609;&#3609;&#3637;&#3657;&#3648;&#3657;&#3619;&#3637;&#3618;&#3585;&#3623;&#3656;&#3634;"/>
+ <l:gentext key="Draft" text="Draft"/>
+ <l:gentext key="above" text="above"/>
+ <l:gentext key="below" text="below"/>
+ <l:gentext key="index symbols" text="&#3626;&#3633;&#3597;&#3621;&#3633;&#3585;&#3625;&#3603;&#3660;"/>
+ <l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz"/>
+ <l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="&#3616;&#3634;&#3588;&#3612;&#3609;&#3623;&#3585; %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="&#3610;&#3607;&#3607;&#3637;&#3656; %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="&#3626;&#3617;&#3585;&#3634;&#3619; %n. %t"/>
+ <l:template name="example" text="&#3605;&#3633;&#3623;&#3629;&#3618;&#3656;&#3634;&#3591; %n. %t"/>
+ <l:template name="figure" text="&#3619;&#3641;&#3611; %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="&#3616;&#3634;&#3588; %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="&#3619;&#3632;&#3648;&#3610;&#3637;&#3618;&#3610;&#3585;&#3634;&#3619; %n. %t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="&#3612;&#3621;&#3636;&#3605; %n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="&#3605;&#3634;&#3619;&#3634;&#3591; %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text=""/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="&#3616;&#3634;&#3588;&#3612;&#3609;&#3623;&#3585; %n. %t"/>
+ <l:template name="bridgehead" text="%n. %t"/>
+ <l:template name="chapter" text="&#3610;&#3607;&#3607;&#3637;&#3656; %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="&#3605;&#3629;&#3610;: %n"/>
+ <l:template name="answer" text="&#3605;&#3629;&#3610;:&#160;%n"/>
+ <l:template name="appendix" text="&#3616;&#3634;&#3588;&#3612;&#3609;&#3623;&#3585; %n"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="&#3610;&#3607;&#3607;&#3637;&#3656; %n"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="&#3626;&#3617;&#3585;&#3634;&#3619; %n"/>
+ <l:template name="equation" text="&#3626;&#3617;&#3585;&#3634;&#3619;&#160;%n"/>
+ <l:template name="example" text="&#3605;&#3633;&#3623;&#3629;&#3618;&#3656;&#3634;&#3591; %n"/>
+ <l:template name="figure" text="&#3619;&#3641;&#3611; %n"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="&#3616;&#3634;&#3588; %n"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="&#3619;&#3632;&#3648;&#3610;&#3637;&#3618;&#3610;&#3585;&#3634;&#3619; %n"/>
+ <l:template name="procedure" text="&#3619;&#3632;&#3648;&#3610;&#3637;&#3618;&#3610;&#3585;&#3634;&#3619;&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="&#3606;&#3634;&#3617;: %n"/>
+ <l:template name="qandaentry" text="&#3606;&#3634;&#3617;:&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="&#3606;&#3634;&#3617;: %n"/>
+ <l:template name="question" text="&#3606;&#3634;&#3617;:&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="&#3605;&#3634;&#3619;&#3634;&#3591; %n"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="&#3605;&#3629;&#3609;&#3609;&#3637;&#3657;&#3648;&#3657;&#3619;&#3637;&#3618;&#3585;&#3623;&#3656;&#3634; &#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#3605;&#3629;&#3609;&#3609;&#3637;&#3657;&#3648;&#3657;&#3619;&#3637;&#3618;&#3585;&#3623;&#3656;&#3634; &#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#3605;&#3629;&#3609;&#3609;&#3637;&#3657;&#3648;&#3657;&#3619;&#3637;&#3618;&#3585;&#3623;&#3656;&#3634; &#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#3605;&#3629;&#3609;&#3609;&#3637;&#3657;&#3648;&#3657;&#3619;&#3637;&#3618;&#3585;&#3623;&#3656;&#3634; &#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#3605;&#3629;&#3609;&#3609;&#3637;&#3657;&#3648;&#3657;&#3619;&#3637;&#3618;&#3585;&#3623;&#3656;&#3634; &#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#3605;&#3629;&#3609;&#3609;&#3637;&#3657;&#3648;&#3657;&#3619;&#3637;&#3618;&#3585;&#3623;&#3656;&#3634; &#8220;%t&#8221;"/>
+ <l:template name="sect2" text="&#3605;&#3629;&#3609;&#3609;&#3637;&#3657;&#3648;&#3657;&#3619;&#3637;&#3618;&#3585;&#3623;&#3656;&#3634; &#8220;%t&#8221;"/>
+ <l:template name="sect3" text="&#3605;&#3629;&#3609;&#3609;&#3637;&#3657;&#3648;&#3657;&#3619;&#3637;&#3618;&#3585;&#3623;&#3656;&#3634; &#8220;%t&#8221;"/>
+ <l:template name="sect4" text="&#3605;&#3629;&#3609;&#3609;&#3637;&#3657;&#3648;&#3657;&#3619;&#3637;&#3618;&#3585;&#3623;&#3656;&#3634; &#8220;%t&#8221;"/>
+ <l:template name="sect5" text="&#3605;&#3629;&#3609;&#3609;&#3637;&#3657;&#3648;&#3657;&#3619;&#3637;&#3618;&#3585;&#3623;&#3656;&#3634; &#8220;%t&#8221;"/>
+ <l:template name="section" text="&#3605;&#3629;&#3609;&#3609;&#3637;&#3657;&#3648;&#3657;&#3619;&#3637;&#3618;&#3585;&#3623;&#3656;&#3634; &#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="&#3605;&#3629;&#3609;&#3609;&#3637;&#3657;&#3648;&#3657;&#3619;&#3637;&#3618;&#3585;&#3623;&#3656;&#3634; &#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="&#3605;&#3629;&#3609;&#3607;&#3637;&#3656; %n"/>
+ <l:template name="refsection" text="&#3605;&#3629;&#3609;&#3609;&#3637;&#3657;&#3648;&#3657;&#3619;&#3637;&#3618;&#3585;&#3623;&#3656;&#3634; &#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#3605;&#3629;&#3609;&#3609;&#3637;&#3657;&#3648;&#3657;&#3619;&#3637;&#3618;&#3585;&#3623;&#3656;&#3634; &#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#3605;&#3629;&#3609;&#3609;&#3637;&#3657;&#3648;&#3657;&#3619;&#3637;&#3618;&#3585;&#3623;&#3656;&#3634; &#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#3605;&#3629;&#3609;&#3609;&#3637;&#3657;&#3648;&#3657;&#3619;&#3637;&#3618;&#3585;&#3623;&#3656;&#3634; &#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#3605;&#3629;&#3609;&#3607;&#3637;&#3656; %n"/>
+ <l:template name="sect2" text="&#3605;&#3629;&#3609;&#3607;&#3637;&#3656; %n"/>
+ <l:template name="sect3" text="&#3605;&#3629;&#3609;&#3607;&#3637;&#3656; %n"/>
+ <l:template name="sect4" text="&#3605;&#3629;&#3609;&#3607;&#3637;&#3656; %n"/>
+ <l:template name="sect5" text="&#3605;&#3629;&#3609;&#3607;&#3637;&#3656; %n"/>
+ <l:template name="section" text="&#3605;&#3629;&#3609;&#3607;&#3637;&#3656; %n"/>
+ <l:template name="simplesect" text="&#3605;&#3629;&#3609;&#3609;&#3637;&#3657;&#3648;&#3657;&#3619;&#3637;&#3618;&#3585;&#3623;&#3656;&#3634; &#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" &#3649;&#3621;&#3632; "/>
+ <l:template name="seplast" text=", &#3649;&#3621;&#3632; "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="&#3604;&#3641; "/>
+ <l:template name="seealso" text="&#3604;&#3641;&#3648;&#3614;&#3636;&#3656;&#3617;&#3648;&#3605;&#3636;&#3617; "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="&#3612;&#3641;&#3657;&#3629;&#3656;&#3634;&#3609;: "/>
+ <l:template name="MsgLevel" text="&#3619;&#3632;&#3604;&#3633;&#3610;: "/>
+ <l:template name="MsgOrig" text="&#3607;&#3637;&#3656;&#3617;&#3634;: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/tr.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/tr.xml
new file mode 100644
index 0000000..5fb397f
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/tr.xml
@@ -0,0 +1,458 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="tr" english-language-name="Turkish">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="&#214;zet"/>
+ <l:gentext key="abstract" text="&#214;zet"/>
+ <l:gentext key="Answer" text="Cevap:"/>
+ <l:gentext key="answer" text="Cevap:"/>
+ <l:gentext key="Appendix" text="Ek"/>
+ <l:gentext key="appendix" text="ek"/>
+ <l:gentext key="Article" text="Makale"/>
+ <l:gentext key="article" text="Makale"/>
+ <l:gentext key="Bibliography" text="Kaynak&#231;a"/>
+ <l:gentext key="bibliography" text="Kaynak&#231;a"/>
+ <l:gentext key="Book" text="Kitap"/>
+ <l:gentext key="book" text="Kitap"/>
+ <l:gentext key="CAUTION" text="D&#304;KKAT"/>
+ <l:gentext key="Caution" text="Dikkat"/>
+ <l:gentext key="caution" text="Dikkat"/>
+ <l:gentext key="Chapter" text="B&#246;l&#252;m"/>
+ <l:gentext key="chapter" text="b&#246;l&#252;m"/>
+ <l:gentext key="Colophon" text="Kitap hakk&#305;nda"/>
+ <l:gentext key="colophon" text="Kitap hakk&#305;nda"/>
+ <l:gentext key="Copyright" text="Telif Hakk&#305;"/>
+ <l:gentext key="copyright" text="Telif Hakk&#305;"/>
+ <l:gentext key="Dedication" text="&#304;thaf"/>
+ <l:gentext key="dedication" text="&#304;thaf"/>
+ <l:gentext key="Edition" text="Bask&#305;"/>
+ <l:gentext key="edition" text="Bask&#305;"/>
+ <l:gentext key="Equation" text="Denklem"/>
+ <l:gentext key="equation" text="Denklem"/>
+ <l:gentext key="Example" text="&#214;rnek"/>
+ <l:gentext key="example" text="&#214;rnek"/>
+ <l:gentext key="Figure" text="&#350;ekil"/>
+ <l:gentext key="figure" text="&#350;ekil"/>
+ <l:gentext key="Glossary" text="S&#246;zl&#252;k"/>
+ <l:gentext key="glossary" text="S&#246;zl&#252;k"/>
+ <l:gentext key="GlossSee" text="Bkz."/>
+ <l:gentext key="glosssee" text="Bkz."/>
+ <l:gentext key="GlossSeeAlso" text="Bkz."/>
+ <l:gentext key="glossseealso" text="Bkz."/>
+ <l:gentext key="IMPORTANT" text="&#214;NEML&#304;"/>
+ <l:gentext key="important" text="&#214;nemli"/>
+ <l:gentext key="Important" text="&#214;nemli"/>
+ <l:gentext key="Index" text="Dizin"/>
+ <l:gentext key="index" text="Dizin"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text="Yasal Uyar&#305;"/>
+ <l:gentext key="legalnotice" text="Yasal Uyar&#305;"/>
+ <l:gentext key="MsgAud" text="Hedef Okuyucu"/>
+ <l:gentext key="msgaud" text="Hedef Okuyucu"/>
+ <l:gentext key="MsgLevel" text="Level"/>
+ <l:gentext key="msglevel" text="D&#252;zey"/>
+ <l:gentext key="MsgOrig" text="D&#252;zey"/>
+ <l:gentext key="msgorig" text="Kaynak"/>
+ <l:gentext key="NOTE" text="NOT"/>
+ <l:gentext key="Note" text="Not"/>
+ <l:gentext key="note" text="Not"/>
+ <l:gentext key="Part" text="K&#305;s&#305;m"/>
+ <l:gentext key="part" text="K&#305;s&#305;m"/>
+ <l:gentext key="Preface" text="&#214;ns&#246;z"/>
+ <l:gentext key="preface" text="&#214;ns&#246;z"/>
+ <l:gentext key="Procedure" text="Y&#246;nerge"/>
+ <l:gentext key="procedure" text="Y&#246;nerge"/>
+ <l:gentext key="ProductionSet" text="Prod&#252;ksiyon"/>
+ <l:gentext key="Published" text="Yay&#305;mlanma"/>
+ <l:gentext key="published" text="Yay&#305;mlanma"/>
+ <l:gentext key="Question" text="Soru:"/>
+ <l:gentext key="question" text="Soru:"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="Referans"/>
+ <l:gentext key="reference" text="Referans"/>
+ <l:gentext key="RefName" text="Referans Ad&#305;"/>
+ <l:gentext key="refname" text="Referans Ad&#305;"/>
+ <l:gentext key="RefSection" text=""/>
+ <l:gentext key="refsection" text=""/>
+ <l:gentext key="RefSynopsisDiv" text="Synopsis"/>
+ <l:gentext key="refsynopsisdiv" text="Synopsis"/>
+ <l:gentext key="RevHistory" text="Bask&#305; Tarih&#231;esi"/>
+ <l:gentext key="revhistory" text="Bask&#305; Tarih&#231;esi"/>
+ <l:gentext key="revision" text="Bask&#305;"/>
+ <l:gentext key="Revision" text="Bask&#305;"/>
+ <l:gentext key="sect1" text="K&#305;s&#305;m"/>
+ <l:gentext key="sect2" text="K&#305;s&#305;m"/>
+ <l:gentext key="sect3" text="K&#305;s&#305;m"/>
+ <l:gentext key="sect4" text="K&#305;s&#305;m"/>
+ <l:gentext key="sect5" text="K&#305;s&#305;m"/>
+ <l:gentext key="section" text="K&#305;s&#305;m"/>
+ <l:gentext key="Section" text="K&#305;s&#305;m"/>
+ <l:gentext key="see" text="Bkz."/>
+ <l:gentext key="seealso" text="Bkz."/>
+ <l:gentext key="set" text="Tak&#305;m"/>
+ <l:gentext key="Set" text="Tak&#305;m"/>
+ <l:gentext key="setindex" text="Tak&#305;m Dizini"/>
+ <l:gentext key="SetIndex" text="Tak&#305;m Dizini"/>
+ <l:gentext key="Sidebar" text=""/>
+ <l:gentext key="sidebar" text=""/>
+ <l:gentext key="step" text="ad&#305;m"/>
+ <l:gentext key="Step" text="Ad&#305;m"/>
+ <l:gentext key="Table" text="Tablo"/>
+ <l:gentext key="table" text="Tablo"/>
+ <l:gentext key="tip" text="&#304;pucu"/>
+ <l:gentext key="TIP" text="&#304;PUCU"/>
+ <l:gentext key="Tip" text="&#304;pucu"/>
+ <l:gentext key="Warning" text="Uyar&#305;"/>
+ <l:gentext key="warning" text="Uyar&#305;"/>
+ <l:gentext key="WARNING" text="UYARI"/>
+ <l:gentext key="and" text="ve"/>
+ <l:gentext key="by" text=""/>
+ <l:gentext key="Edited" text="Yay&#305;na haz&#305;rlayan"/>
+ <l:gentext key="edited" text="yay&#305;na haz&#305;rlayan"/>
+ <l:gentext key="Editedby" text="Yay&#305;na haz&#305;rlayan"/>
+ <l:gentext key="editedby" text="yay&#305;na haz&#305;rlayan"/>
+ <l:gentext key="in" text=""/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="varolmayan eleman"/>
+ <l:gentext key="notes" text="Notlar"/>
+ <l:gentext key="Notes" text="Notlar"/>
+ <l:gentext key="Pgs" text="Sayfa"/>
+ <l:gentext key="pgs" text="Sayfa"/>
+ <l:gentext key="Revisedby" text="D&#252;zeltmeler: "/>
+ <l:gentext key="revisedby" text="D&#252;zeltmeler: "/>
+ <l:gentext key="TableNotes" text="Notlar"/>
+ <l:gentext key="tablenotes" text="Notlar"/>
+ <l:gentext key="TableofContents" text="&#304;&#231;indekiler"/>
+ <l:gentext key="tableofcontents" text="&#304;&#231;indekiler"/>
+ <l:gentext key="unexpectedelementname" text="Beklenmeyen eleman ad&#305;"/>
+ <l:gentext key="unsupported" text="desteklenmiyor"/>
+ <l:gentext key="xrefto" text="xref to"/>
+ <l:gentext key="listofequations" text="Denklemler"/>
+ <l:gentext key="ListofEquations" text="Denklemler"/>
+ <l:gentext key="ListofExamples" text="&#214;rnekler"/>
+ <l:gentext key="listofexamples" text="&#214;rnekler"/>
+ <l:gentext key="ListofFigures" text="&#350;ekiller"/>
+ <l:gentext key="listoffigures" text="&#350;ekiller"/>
+ <l:gentext key="listoftables" text="Tablolar"/>
+ <l:gentext key="ListofTables" text="Tablolar"/>
+ <l:gentext key="ListofProcedures" text="Y&#246;nergeler"/>
+ <l:gentext key="listofprocedures" text="Y&#246;nergeler"/>
+ <l:gentext key="ListofUnknown" text="Bilinmeyenler"/>
+ <l:gentext key="listofunknown" text="Bilinmeyenler"/>
+ <l:gentext key="nav-home" text="Ba&#351;lang&#305;&#231;"/>
+ <l:gentext key="nav-next" text="Sonraki"/>
+ <l:gentext key="nav-next-sibling" text="Sonraki B&#246;l&#252;m"/>
+ <l:gentext key="nav-prev" text="&#214;nceki"/>
+ <l:gentext key="nav-prev-sibling" text="&#214;nceki B&#246;l&#252;m"/>
+ <l:gentext key="nav-up" text="Yukar&#305;"/>
+ <l:gentext key="nav-toc" text="&#304;&#231;indekiler"/>
+ <l:gentext key="sectioncalled" text=""/>
+ <l:gentext key="Draft" text="Taslak"/>
+ <l:gentext key="above" text="&#252;st&#252;nde"/>
+ <l:gentext key="below" text="alt&#305;nda"/>
+ <l:gentext key="index symbols" text="Semboller"/>
+ <l:gentext key="lowercase.alpha" text="abc&#231;defg&#287;h&#305;ijklmno&#246;prs&#351;tu&#252;vyz"/>
+ <l:gentext key="uppercase.alpha" text="ABC&#199;DEFG&#286;HI&#304;JKLMNO&#214;PRS&#350;TU&#220;VYZ"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="Ek %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="B&#246;l&#252;m %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Denklem %n. %t"/>
+ <l:template name="example" text="&#214;rnek %n. %t"/>
+ <l:template name="figure" text="&#350;ekil %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="glossentry" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="K&#305;s&#305;m %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="Y&#246;nerge %n. %t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Prod&#252;ksiyon %n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="Tablo %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text=""/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="article/appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="Ek %n. %t"/>
+ <l:template name="article/appendix" text="%n.&#160;%t"/>
+ <l:template name="bridgehead" text="%n. %t"/>
+ <l:template name="chapter" text="B&#246;l&#252;m %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="Cevap: %n"/>
+ <l:template name="appendix" text="Ek %n"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="B&#246;l&#252;m %n"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Denklem %n"/>
+ <l:template name="example" text="&#214;rnek %n"/>
+ <l:template name="figure" text="&#350;ekil %n"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="K&#305;s&#305;m %n"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="Y&#246;nerge %n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="Soru: %n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="Soru: %n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="Tablo %n"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text=" &#8220;%t&#8221;"/>
+ <l:template name="refsection" text=" &#8220;%t&#8221;"/>
+ <l:template name="refsect1" text=" &#8220;%t&#8221;"/>
+ <l:template name="refsect2" text=" &#8220;%t&#8221;"/>
+ <l:template name="refsect3" text=" &#8220;%t&#8221;"/>
+ <l:template name="sect1" text=" &#8220;%t&#8221;"/>
+ <l:template name="sect2" text=" &#8220;%t&#8221;"/>
+ <l:template name="sect3" text=" &#8220;%t&#8221;"/>
+ <l:template name="sect4" text=" &#8220;%t&#8221;"/>
+ <l:template name="sect5" text=" &#8220;%t&#8221;"/>
+ <l:template name="section" text=" &#8220;%t&#8221;"/>
+ <l:template name="simplesect" text=" &#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="K&#305;s&#305;m %n"/>
+ <l:template name="refsection" text=" &#8220;%t&#8221;"/>
+ <l:template name="refsect1" text=" &#8220;%t&#8221;"/>
+ <l:template name="refsect2" text=" &#8220;%t&#8221;"/>
+ <l:template name="refsect3" text=" &#8220;%t&#8221;"/>
+ <l:template name="sect1" text="K&#305;s&#305;m %n"/>
+ <l:template name="sect2" text="K&#305;s&#305;m %n"/>
+ <l:template name="sect3" text="K&#305;s&#305;m %n"/>
+ <l:template name="sect4" text="K&#305;s&#305;m %n"/>
+ <l:template name="sect5" text="K&#305;s&#305;m %n"/>
+ <l:template name="section" text="K&#305;s&#305;m %n"/>
+ <l:template name="simplesect" text=" &#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" ve "/>
+ <l:template name="seplast" text=", ve "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="Bkz. "/>
+ <l:template name="seealso" text="Bkz. "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="Hedef Okuyucu: "/>
+ <l:template name="MsgLevel" text="Level: "/>
+ <l:template name="MsgOrig" text="D&#252;zey: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/uk.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/uk.xml
new file mode 100644
index 0000000..6acb421
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/uk.xml
@@ -0,0 +1,484 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="uk" english-language-name="Ukranian">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="&#1040;&#1085;&#1086;&#1090;&#1072;&#1094;&#1110;&#1103;"/>
+ <l:gentext key="abstract" text="&#1040;&#1085;&#1086;&#1090;&#1072;&#1094;&#1110;&#1103;"/>
+ <l:gentext key="Answer" text="&#1042;:"/>
+ <l:gentext key="answer" text="&#1074;:"/>
+ <l:gentext key="Appendix" text="&#1044;&#1086;&#1076;&#1072;&#1090;&#1086;&#1082;"/>
+ <l:gentext key="appendix" text="&#1076;&#1086;&#1076;&#1072;&#1090;&#1086;&#1082;"/>
+ <l:gentext key="Appendix.abr" text="&#1044;&#1086;&#1076;."/>
+ <l:gentext key="appendix.abr" text="&#1076;&#1086;&#1076;."/>
+ <l:gentext key="Article" text="&#1057;&#1090;&#1072;&#1090;&#1090;&#1103;"/>
+ <l:gentext key="article" text="&#1089;&#1090;&#1072;&#1090;&#1090;&#1103;"/>
+ <l:gentext key="Audience" text="&#1040;&#1091;&#1076;&#1080;&#1090;&#1086;&#1088;&#1110;&#1103;"/>
+ <l:gentext key="audience" text="&#1040;&#1091;&#1076;&#1080;&#1090;&#1086;&#1088;&#1110;&#1103;"/>
+ <l:gentext key="Bibliography" text="&#1051;&#1080;&#1090;&#1077;&#1088;&#1072;&#1090;&#1091;&#1088;&#1072;"/>
+ <l:gentext key="bibliography" text="&#1083;&#1080;&#1090;&#1077;&#1088;&#1072;&#1090;&#1091;&#1088;&#1072;"/>
+ <l:gentext key="Book" text="&#1050;&#1085;&#1080;&#1075;&#1072;"/>
+ <l:gentext key="book" text="&#1082;&#1085;&#1080;&#1075;&#1072;"/>
+ <l:gentext key="CAUTION" text="&#1047;&#1040;&#1057;&#1058;&#1045;&#1056;&#1045;&#1046;&#1045;&#1053;&#1053;&#1071;"/>
+ <l:gentext key="Caution" text="&#1047;&#1072;&#1089;&#1090;&#1077;&#1088;&#1077;&#1078;&#1077;&#1085;&#1085;&#1103;"/>
+ <l:gentext key="caution" text="&#1079;&#1072;&#1089;&#1090;&#1077;&#1088;&#1077;&#1078;&#1077;&#1085;&#1085;&#1103;"/>
+ <l:gentext key="Chapter" text="&#1056;&#1086;&#1079;&#1076;&#1110;&#1083;"/>
+ <l:gentext key="chapter" text="&#1088;&#1086;&#1079;&#1076;&#1110;&#1083;"/>
+ <l:gentext key="Chapter.abr" text="&#1056;&#1086;&#1079;&#1076;."/>
+ <l:gentext key="chapter.abr" text="&#1088;&#1086;&#1079;&#1076;."/>
+ <l:gentext key="Colophon" text="Colophon"/>
+ <l:gentext key="colophon" text="Colophon"/>
+ <l:gentext key="Copyright" text="&#1040;&#1074;&#1090;&#1086;&#1088;&#1089;&#1100;&#1082;&#1077; &#1087;&#1088;&#1072;&#1074;&#1086;"/>
+ <l:gentext key="copyright" text="&#1072;&#1074;&#1090;&#1086;&#1088;&#1089;&#1100;&#1082;&#1077; &#1087;&#1088;&#1072;&#1074;&#1086;"/>
+ <l:gentext key="Dedication" text="&#1055;&#1088;&#1080;&#1089;&#1074;&#1103;&#1095;&#1077;&#1085;&#1085;&#1103;"/>
+ <l:gentext key="dedication" text="&#1087;&#1088;&#1080;&#1089;&#1074;&#1103;&#1095;&#1077;&#1085;&#1085;&#1103;"/>
+ <l:gentext key="Edition" text="&#1042;&#1080;&#1076;&#1072;&#1085;&#1085;&#1103;"/>
+ <l:gentext key="edition" text="&#1074;&#1080;&#1076;&#1072;&#1085;&#1085;&#1103;"/>
+ <l:gentext key="Equation" text="&#1060;&#1086;&#1088;&#1084;&#1091;&#1083;&#1072;"/>
+ <l:gentext key="equation" text="&#1060;&#1086;&#1088;&#1084;&#1091;&#1083;&#1072;"/>
+ <l:gentext key="Equation.abr" text="&#1060;."/>
+ <l:gentext key="equation.abr" text="&#1060;."/>
+ <l:gentext key="Example" text="&#1055;&#1088;&#1080;&#1082;&#1083;&#1072;&#1076;"/>
+ <l:gentext key="example" text="&#1087;&#1088;&#1080;&#1082;&#1083;&#1072;&#1076;"/>
+ <l:gentext key="Example.abr" text="&#1055;&#1088;&#1080;&#1082;&#1083;."/>
+ <l:gentext key="example.abr" text="&#1087;&#1088;&#1080;&#1082;&#1083;."/>
+ <l:gentext key="Figure" text="&#1056;&#1080;&#1089;&#1091;&#1085;&#1086;&#1082;"/>
+ <l:gentext key="figure" text="&#1056;&#1080;&#1089;&#1091;&#1085;&#1086;&#1082;"/>
+ <l:gentext key="Figure.abr" text="&#1056;&#1080;&#1089;."/>
+ <l:gentext key="figure.abr" text="&#1056;&#1080;&#1089;."/>
+ <l:gentext key="Glossary" text="&#1043;&#1083;&#1086;&#1089;&#1072;&#1088;&#1110;&#1081;"/>
+ <l:gentext key="glossary" text="&#1075;&#1083;&#1086;&#1089;&#1072;&#1088;&#1110;&#1081;"/>
+ <l:gentext key="GlossSee" text="&#1044;&#1080;&#1074;."/>
+ <l:gentext key="glosssee" text="&#1076;&#1080;&#1074;."/>
+ <l:gentext key="GlossSeeAlso" text="&#1044;&#1080;&#1074;. &#1090;&#1072;&#1082;&#1086;&#1078;"/>
+ <l:gentext key="glossSeeAlso" text="&#1076;&#1080;&#1074;. &#1090;&#1072;&#1082;&#1086;&#1078;"/>
+ <l:gentext key="glossseealso" text="&#1076;&#1080;&#1074;. &#1090;&#1072;&#1082;&#1086;&#1078;"/>
+ <l:gentext key="IMPORTANT" text="&#1042;&#1040;&#1046;&#1051;&#1048;&#1042;&#1054;"/>
+ <l:gentext key="Important" text="&#1042;&#1072;&#1078;&#1083;&#1080;&#1074;&#1086;"/>
+ <l:gentext key="important" text="&#1074;&#1072;&#1078;&#1083;&#1080;&#1074;&#1086;"/>
+ <l:gentext key="Index" text="&#1055;&#1088;&#1077;&#1076;&#1084;&#1077;&#1090;&#1085;&#1099;&#1081; &#1087;&#1086;&#1082;&#1072;&#1078;chcy;&#1080;&#1082;"/>
+ <l:gentext key="index" text="&#1087;&#1088;&#1077;&#1076;&#1084;&#1077;&#1090;&#1085;&#1099;&#1081; &#1087;&#1086;&#1082;&#1072;&#1078;chcy;&#1080;&#1082;"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text="&#1055;&#1088;&#1072;&#1074;&#1086;&#1074;&#1072; &#1087;&#1088;&#1080;&#1084;&#1110;&#1090;&#1082;&#1072;"/>
+ <l:gentext key="legalnotice" text="&#1087;&#1088;&#1072;&#1074;&#1086;&#1074;&#1072; &#1087;&#1088;&#1080;&#1084;&#1110;&#1090;&#1082;&#1072;"/>
+ <l:gentext key="Level" text="&#1056;&#1110;&#1074;&#1077;&#1085;&#1100;"/>
+ <l:gentext key="level" text="&#1088;&#1110;&#1074;&#1077;&#1085;&#1100;"/>
+ <l:gentext key="MsgAud" text="&#1040;&#1091;&#1076;&#1080;&#1090;&#1086;&#1088;&#1110;&#1103;"/>
+ <l:gentext key="msgaud" text="&#1072;&#1091;&#1076;&#1080;&#1090;&#1086;&#1088;&#1110;&#1103;"/>
+ <l:gentext key="MsgLevel" text="&#1056;&#1110;&#1074;&#1077;&#1085;&#1100;"/>
+ <l:gentext key="msglevel" text="&#1088;&#1110;&#1074;&#1077;&#1085;&#1100;"/>
+ <l:gentext key="MsgOrig" text="&#1044;&#1078;&#1077;&#1088;&#1077;&#1083;&#1086;"/>
+ <l:gentext key="msgorig" text="&#1076;&#1078;&#1077;&#1088;&#1077;&#1083;&#1086;"/>
+ <l:gentext key="Name" text="&#1030;&#1084;';&#1103;"/>
+ <l:gentext key="name" text="&#1110;&#1084;';&#1103;"/>
+ <l:gentext key="NOTE" text="&#1055;&#1056;&#1048;&#1052;&#1030;&#1058;&#1050;&#1040;"/>
+ <l:gentext key="Note" text="&#1055;&#1088;&#1080;&#1084;&#1110;&#1090;&#1082;&#1072;"/>
+ <l:gentext key="note" text="&#1087;&#1088;&#1080;&#1084;&#1110;&#1090;&#1082;&#1072;"/>
+ <l:gentext key="Origin" text="&#1044;&#1078;&#1077;&#1088;&#1077;&#1083;&#1086;"/>
+ <l:gentext key="origin" text="&#1076;&#1078;&#1077;&#1088;&#1077;&#1083;&#1086;"/>
+ <l:gentext key="Part" text="&#1063;&#1072;&#1089;&#1090;&#1080;&#1085;&#1072;"/>
+ <l:gentext key="part" text="&#1095;&#1072;&#1089;&#1090;&#1080;&#1085;&#1072;"/>
+ <l:gentext key="Part.abr" text="&#1063;."/>
+ <l:gentext key="part.abr" text="&#1063;."/>
+ <l:gentext key="Preface" text="&#1055;&#1077;&#1088;&#1077;&#1076;&#1084;&#1086;&#1074;&#1072;"/>
+ <l:gentext key="preface" text="&#1087;&#1077;&#1088;&#1077;&#1076;&#1084;&#1086;&#1074;&#1072;"/>
+ <l:gentext key="Procedure" text="&#1055;&#1088;&#1086;&#1094;&#1077;&#1076;&#1091;&#1088;&#1072;"/>
+ <l:gentext key="procedure" text="&#1055;&#1088;&#1086;&#1094;&#1077;&#1076;&#1091;&#1088;&#1072;"/>
+ <l:gentext key="Procedure.abr" text="&#1055;&#1088;&#1086;&#1094;."/>
+ <l:gentext key="procedure.abr" text="&#1055;&#1088;&#1086;&#1094;."/>
+ <l:gentext key="ProductionSet" text="Production"/>
+ <l:gentext key="Published" text="&#1054;&#1087;&#1091;&#1073;&#1083;&#1110;&#1082;&#1086;&#1074;&#1072;&#1085;&#1086;"/>
+ <l:gentext key="published" text="&#1086;&#1087;&#1091;&#1073;&#1083;&#1110;&#1082;&#1086;&#1074;&#1072;&#1085;&#1086;"/>
+ <l:gentext key="Question" text="&#1055;"/>
+ <l:gentext key="question" text="&#1087;"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="&#1055;&#1086;&#1089;&#1080;&#1083;&#1072;&#1085;&#1085;&#1103;"/>
+ <l:gentext key="reference" text="&#1087;&#1086;&#1089;&#1080;&#1083;&#1072;&#1085;&#1085;&#1103;"/>
+ <l:gentext key="RefName" text="Name"/>
+ <l:gentext key="refname" text="Name"/>
+ <l:gentext key="RefSection" text=""/>
+ <l:gentext key="refsection" text=""/>
+ <l:gentext key="RefSynopsisDiv" text="&#1050;&#1086;&#1088;&#1086;&#1090;&#1082;&#1080;&#1081; &#1086;&#1075;&#1083;&#1103;&#1076;"/>
+ <l:gentext key="refsynopsisdiv" text="&#1082;&#1086;&#1088;&#1086;&#1090;&#1082;&#1080;&#1081; &#1086;&#1075;&#1083;&#1103;&#1076;"/>
+ <l:gentext key="RevHistory" text="&#1054;&#1087;&#1080;&#1089; zcy;&#1084;&#1110;&#1085;"/>
+ <l:gentext key="revhistory" text="&#1086;&#1087;&#1080;&#1089; zcy;&#1084;&#1110;&#1085;"/>
+ <l:gentext key="Revision" text="&#1055;&#1077;&#1088;&#1077;&#1075;&#1083;&#1103;&#1076;"/>
+ <l:gentext key="revision" text="&#1087;&#1077;&#1088;&#1077;&#1075;&#1083;&#1103;&#1076;"/>
+ <l:gentext key="sect1" text="Section"/>
+ <l:gentext key="sect2" text="Section"/>
+ <l:gentext key="sect3" text="Section"/>
+ <l:gentext key="sect4" text="Section"/>
+ <l:gentext key="sect5" text="Section"/>
+ <l:gentext key="Section" text="&#1055;&#1072;&#1088;&#1072;&#1075;&#1088;&#1072;&#1092;"/>
+ <l:gentext key="section" text="&#1087;&#1072;&#1088;&#1072;&#1075;&#1088;&#1072;&#1092;"/>
+ <l:gentext key="Section.abr" text="&#1055;&#1072;&#1088;."/>
+ <l:gentext key="section.abr" text="&#1087;&#1072;&#1088;."/>
+ <l:gentext key="See" text="&#1044;&#1080;&#1074;."/>
+ <l:gentext key="see" text="&#1076;&#1080;&#1074;."/>
+ <l:gentext key="SeeAlso" text="&#1044;&#1080;&#1074;. tcy;&#1072;&#1082;&#1086;&#1078;"/>
+ <l:gentext key="Seealso" text="&#1044;&#1080;&#1074;. tcy;&#1072;&#1082;&#1086;&#1078;"/>
+ <l:gentext key="seealso" text="&#1089;&#1080;&#1074;. tcy;&#1072;&#1082;&#1086;&#1078;"/>
+ <l:gentext key="Set" text="&#1042;&#1080;&#1073;&#1110;&#1088;&#1082;&#1072;"/>
+ <l:gentext key="set" text="&#1074;&#1080;&#1073;&#1110;&#1088;&#1082;&#1072;"/>
+ <l:gentext key="SetIndex" text="&#1048;&#1085;&#1076;&#1077;&#1082;&#1089; &#1074;&#1080;&#1073;&#1110;&#1088;&#1082;&#1080;"/>
+ <l:gentext key="setindex" text="&#1080;&#1085;&#1076;&#1077;&#1082;&#1089; &#1074;&#1080;&#1073;&#1110;&#1088;&#1082;&#1080;"/>
+ <l:gentext key="Sidebar" text="&#1042;&#1099;&#1076;&#1110;&#1083;&#1077;&#1085;&#1085;&#1103;"/>
+ <l:gentext key="sidebar" text="&#1074;&#1099;&#1076;&#1110;&#1083;&#1077;&#1085;&#1085;&#1103;"/>
+ <l:gentext key="Step" text="&#1050;&#1088;&#1086;&#1082;"/>
+ <l:gentext key="step" text="&#1082;&#1088;&#1086;&#1082;"/>
+ <l:gentext key="Table" text="&#1058;&#1072;&#1073;&#1083;&#1080;&#1094;&#1103;"/>
+ <l:gentext key="table" text="&#1090;&#1072;&#1073;&#1083;&#1080;&#1094;&#1103;"/>
+ <l:gentext key="Table.abr" text="&#1058;&#1072;&#1073;&#1083;."/>
+ <l:gentext key="table.abr" text="&#1090;&#1072;&#1073;&#1083;."/>
+ <l:gentext key="TIP" text="&#1055;&#1030;&#1044;&#1050;&#1040;&#1047;&#1050;&#1040;"/>
+ <l:gentext key="Tip" text="&#1055;&#1110;&#1076;&#1082;&#1072;&#1079;&#1082;&#1072;"/>
+ <l:gentext key="tip" text="&#1087;&#1110;&#1076;&#1082;&#1072;&#1079;&#1082;&#1072;"/>
+ <l:gentext key="WARNING" text="&#1047;&#1040;&#1057;&#1058;&#1045;&#1056;&#1045;&#1046;&#1045;&#1053;&#1053;&#1071;"/>
+ <l:gentext key="Warning" text="&#1047;&#1072;&#1089;&#1090;&#1077;&#1088;&#1077;&#1078;&#1077;&#1085;&#1085;&#1103;"/>
+ <l:gentext key="warning" text="&#1079;&#1072;&#1089;&#1090;&#1077;&#1088;&#1077;&#1078;&#1077;&#1085;&#1085;&#1103;"/>
+ <l:gentext key="and" text=""/>
+ <l:gentext key="by" text=""/>
+ <l:gentext key="called" text=""/>
+ <l:gentext key="edited" text="&#1087;&#1080;&#1076; &#1088;&#1077;&#1076;&#1072;&#1082;&#1094;&#1110;&#1108;&#1102;"/>
+ <l:gentext key="Edited" text="&#1055;&#1080;&#1076; &#1088;&#1077;&#1076;&#1072;&#1082;&#1094;&#1110;&#1108;&#1102;"/>
+ <l:gentext key="Editedby" text="&#1055;&#1080;&#1076; &#1088;&#1077;&#1076;&#1072;&#1082;&#1094;&#1110;&#1108;&#1102;"/>
+ <l:gentext key="editedby" text="&#1087;&#1080;&#1076; &#1088;&#1077;&#1076;&#1072;&#1082;&#1094;&#1110;&#1108;&#1102;"/>
+ <l:gentext key="in" text="&#1074;"/>
+ <l:gentext key="TableofContents" text="&#1047;&#1084;&#1110;&#1089;&#1090;"/>
+ <l:gentext key="tableofcontents" text="&#1079;&#1084;&#1110;&#1089;&#1090;"/>
+ <l:gentext key="lastlistcomma" text="."/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="Notes" text="&#1055;&#1088;&#1080;&#1084;&#1110;&#1090;&#1082;&#1080;"/>
+ <l:gentext key="notes" text="&#1087;&#1088;&#1080;&#1084;&#1110;&#1090;&#1082;&#1080;"/>
+ <l:gentext key="TableNotes" text="&#1055;&#1088;&#1080;&#1084;&#1110;&#1090;&#1082;&#1080;"/>
+ <l:gentext key="tablenotes" text="&#1087;&#1088;&#1080;&#1084;&#1110;&#1090;&#1082;&#1080;"/>
+ <l:gentext key="nonexistantelement" text="non-existant element"/>
+ <l:gentext key="pgs" text="&#1089;&#1090;&#1086;&#1088;."/>
+ <l:gentext key="Pgs" text="&#1057;&#1090;&#1086;&#1088;."/>
+ <l:gentext key="Revisedby" text="&#1050;&#1086;&#1088;&#1077;&#1082;&#1090;&#1091;&#1088;&#1072;:;"/>
+ <l:gentext key="revisedby" text="&#1082;&#1086;&#1088;&#1077;&#1082;&#1090;&#1091;&#1088;&#1072;:;"/>
+ <l:gentext key="the" text=""/>
+ <l:gentext key="unexpectedelementname" text="unexpected element name"/>
+ <l:gentext key="unsupported" text="unsupported"/>
+ <l:gentext key="xrefto" text="xref to"/>
+ <l:gentext key="listofequations" text="&#1089;&#1087;&#1080;&#1089;&#1086;&#1082; &#1092;&#1086;&#1088;&#1084;&#1091;&#1083;"/>
+ <l:gentext key="ListofEquations" text="&#1057;&#1087;&#1080;&#1089;&#1086;&#1082; &#1092;&#1086;&#1088;&#1084;&#1091;&#1083;"/>
+ <l:gentext key="ListofExamples" text="&#1057;&#1087;&#1080;&#1089;&#1086;&#1082; &#1087;&#1088;&#1080;&#1082;&#1083;&#1072;&#1076;&#1110;&#1074;"/>
+ <l:gentext key="listofexamples" text="&#1089;&#1087;&#1080;&#1089;&#1086;&#1082; &#1087;&#1088;&#1080;&#1082;&#1083;&#1072;&#1076;&#1110;&#1074;"/>
+ <l:gentext key="ListofFigures" text="&#1057;&#1087;&#1080;&#1089;&#1086;&#1082; &#1110;&#1083;&#1102;&#1089;&#1090;&#1088;&#1072;&#1094;&#1110;&#1081;"/>
+ <l:gentext key="listoffigures" text="&#1057;&#1087;&#1080;&#1089;&#1086;&#1082; &#1110;&#1083;&#1102;&#1089;&#1090;&#1088;&#1072;&#1094;&#1110;&#1081;"/>
+ <l:gentext key="listoftables" text="&#1089;&#1087;&#1080;&#1089;&#1086;&#1082; &#1090;&#1072;&#1073;&#1083;&#1080;&#1094;&#1100;"/>
+ <l:gentext key="ListofTables" text="&#1057;&#1087;&#1080;&#1089;&#1086;&#1082; &#1090;&#1072;&#1073;&#1083;&#1080;&#1094;;&#1100;"/>
+ <l:gentext key="ListofUnknown" text="&#1053;&#1077;&#1074;&#1080;&#1079;&#1085;&#1072;&#1095;&#1077;&#1085;&#1080;&#1081; &#1089;&#1087;&#1080;&#1089;&#1086;&#1082;"/>
+ <l:gentext key="listofunknown" text="&#1085;&#1077;&#1074;&#1080;&#1079;&#1085;&#1072;&#1095;&#1077;&#1085;&#1080;&#1081; &#1089;&#1087;&#1080;&#1089;&#1086;&#1082;"/>
+ <l:gentext key="nav-next" text="&#1076;&#1072;&#1083;&#1110;"/>
+ <l:gentext key="nav-next-sibling" text="&#1076;&#1072;&#1083;&#1110; &#1087;&#1086; &#1088;&#1110;&#1074;&#1085;&#1102;"/>
+ <l:gentext key="nav-prev" text="&#1085;&#1072;&#1079;&#1072;&#1076;"/>
+ <l:gentext key="nav-prev-sibling" text="&#1085;&#1072;&#1079;&#1072;&#1076; &#1087;&#1086; &#1088;&#1110;&#1074;&#1085;&#1102;"/>
+ <l:gentext key="x-nav-next" text="&#1076;&#1072;&#1083;&#1110;"/>
+ <l:gentext key="nav-home" text="&#1055;&#1086;&#1095;&#1072;&#1090;&#1086;&#1082;"/>
+ <l:gentext key="nav-up" text="&#1044;&#1086;&#1075;&#1086;&#1088;&#1080;"/>
+ <l:gentext key="sectioncalled" text="the section called"/>
+ <l:gentext key="Draft" text="Draft"/>
+ <l:gentext key="above" text="above"/>
+ <l:gentext key="below" text="below"/>
+ <l:gentext key="index symbols" text="Symbols"/>
+ <l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz"/>
+ <l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1082;&#1080; &#1076;&#1086;&#1076;&#1072;&#1090;&#1082;&#1091; (&#1074;&#1110;&#1076;&#1089;&#1091;&#1090;&#1085;&#1110;)"/>
+ <l:template name="article" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1082;&#1080; &#1089;&#1090;&#1072;&#1090;&#1090;&#1110; (&#1074;&#1110;&#1076;&#1089;&#1091;&#1090;&#1085;&#1110;)"/>
+ <l:template name="bibliodiv" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1082;&#1080; &#1073;&#1110;&#1073;&#1083;&#1110;&#1086;&#1075;&#1088;&#1072;&#1092;&#1110;&#1111; (&#1074;&#1110;&#1076;&#1089;&#1091;&#1090;&#1085;&#1110;)"/>
+ <l:template name="book" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1082;&#1080; &#1082;&#1085;&#1080;&#1075;&#1080; (&#1074;&#1110;&#1076;&#1089;&#1091;&#1090;&#1085;&#1110;)"/>
+ <l:template name="chapter" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1082;&#1080; &#1075;&#1083;&#1072;&#1074;&#1080; (&#1074;&#1110;&#1076;&#1089;&#1091;&#1090;&#1085;&#1110;)"/>
+ <l:template name="columns" text="&#1057;&#1090;&#1086;&#1074;&#1087;&#1094;&#1110;"/>
+ <l:template name="draftarea" text="&#1055;&#1086;&#1087;&#1077;&#1088;&#1077;&#1076;&#1085;&#1108; &#1088;&#1077;&#1076;&#1072;&#1075;&#1091;&#1074;&#1072;&#1085;&#1085;&#1103; &#1084;&#1077;&#1090;&#1072;&#1076;&#1072;&#1085;&#1080;&#1093;"/>
+ <l:template name="edit-attrs" text="&#1088;&#1077;&#1076;&#1072;&#1075;&#1091;&#1081;&#1090;&#1077; &#1072;&#1090;&#1088;&#1080;&#1073;&#1091;&#1090;&#1080; &#1074;&#1110;&#1076;&#1087;&#1086;&#1074;&#1110;&#1076;&#1085;&#1080;&#1093; &#1077;&#1083;&#1077;&#1084;&#1077;&#1085;&#1090;&#1110;&#1074;"/>
+ <l:template name="footnote" text="&#1042;&#1080;&#1085;&#1086;&#1089;&#1082;&#1072;"/>
+ <l:template name="metainfo" text=""/>
+ <l:template name="preface" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1082;&#1080; &#1087;&#1077;&#1088;&#1077;&#1076;&#1084;&#1086;&#1074;&#1080; (&#1074;&#1110;&#1076;&#1089;&#1091;&#1090;&#1085;&#1110;)"/>
+ <l:template name="part" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1082;&#1080; &#1095;&#1072;&#1089;&#1090;&#1080;&#1085;&#1080; (&#1074;&#1110;&#1076;&#1089;&#1091;&#1090;&#1085;&#1110;)"/>
+ <l:template name="section" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1082;&#1080; &#1088;&#1086;&#1079;&#1076;&#1110;&#1083;&#1091; (&#1074;&#1110;&#1076;&#1089;&#1091;&#1090;&#1085;&#1110;)"/>
+ <l:template name="sect1" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1082;&#1080; &#1088;&#1086;&#1079;&#1076;&#1110;&#1083;&#1091; (&#1074;&#1110;&#1076;&#1089;&#1091;&#1090;&#1085;&#1110;)"/>
+ <l:template name="sect2" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1082;&#1080; &#1088;&#1086;&#1079;&#1076;&#1110;&#1083;&#1091; (&#1074;&#1110;&#1076;&#1089;&#1091;&#1090;&#1085;&#1110;)"/>
+ <l:template name="sect3" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1082;&#1080; &#1088;&#1086;&#1079;&#1076;&#1110;&#1083;&#1091; (&#1074;&#1110;&#1076;&#1089;&#1091;&#1090;&#1085;&#1110;)"/>
+ <l:template name="sect4" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1082;&#1080; &#1088;&#1086;&#1079;&#1076;&#1110;&#1083;&#1091; (&#1074;&#1110;&#1076;&#1089;&#1091;&#1090;&#1085;&#1110;)"/>
+ <l:template name="sect5" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1082;&#1080; &#1088;&#1086;&#1079;&#1076;&#1110;&#1083;&#1091; (&#1074;&#1110;&#1076;&#1089;&#1091;&#1090;&#1085;&#1110;)"/>
+ <l:template name="set" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1082;&#1080; &#1076;&#1086;&#1073;&#1110;&#1088;&#1082;&#1080; (&#1074;&#1110;&#1076;&#1089;&#1091;&#1090;&#1085;&#1110;)"/>
+ <l:template name="title" text="&#1047;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1086;&#1082;: "/>
+ <l:template name="titles" text="&#1045;&#1083;&#1077;&#1084;&#1077;&#1085;&#1090;&#1080; &#1079;&#1072;&#1075;&#1086;&#1083;&#1086;&#1074;&#1085;&#1086;&#1111; &#1089;&#1090;&#1086;&#1088;&#1110;&#1085;&#1082;&#1080; &#1074;&#1110;&#1076;&#1089;&#1091;&#1090;&#1085;&#1110;"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="&#1044;&#1086;&#1076;&#1072;&#1090;&#1086;&#1082; %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="&#1056;&#1086;&#1079;&#1076;&#1110;&#1083; %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="&#1060;&#1086;&#1088;&#1084;&#1091;&#1083;&#1072; %n. %t"/>
+ <l:template name="example" text="&#1055;&#1088;&#1080;&#1082;&#1083;&#1072;&#1076; %n. %t"/>
+ <l:template name="figure" text="&#1056;&#1080;&#1089;&#1091;&#1085;&#1086;&#1082; %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="&#1063;&#1072;&#1089;&#1090;&#1080;&#1085;&#1072; %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="&#1055;&#1088;&#1086;&#1094;&#1077;&#1076;&#1091;&#1088;&#1072;&#160;%n.&#160;%t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Production&#160;%n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="&#1058;&#1072;&#1073;&#1083;&#1080;&#1094;&#1103; %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="&#1044;&#1086;&#1076;&#1072;&#1090;&#1086;&#1082; %n. %t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="&#1056;&#1086;&#1079;&#1076;&#1110;&#1083; %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%n. %t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="&#1042;:&#160;%n"/>
+ <l:template name="appendix" text="&#1044;&#1086;&#1076;&#1072;&#1090;&#1086;&#1082; %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="&#1056;&#1086;&#1079;&#1076;&#1110;&#1083; %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="&#1060;&#1086;&#1088;&#1084;&#1091;&#1083;&#1072;&#160;%n"/>
+ <l:template name="example" text="&#1055;&#1088;&#1080;&#1082;&#1083;&#1072;&#1076; %n. %t"/>
+ <l:template name="figure" text="&#1056;&#1080;&#1089;&#1091;&#1085;&#1086;&#1082; %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="&#1063;&#1072;&#1089;&#1090;&#1080;&#1085;&#1072; %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="&#1055;&#1088;&#1086;&#1094;&#1077;&#1076;&#1091;&#1088;&#1072;&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="&#1055;&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="&#1055;&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="&#1058;&#1072;&#1073;&#1083;&#1080;&#1094;&#1103; %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#8220;%t&#8221;"/>
+ <l:template name="sect2" text="&#8220;%t&#8221;"/>
+ <l:template name="sect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect4" text="&#8220;%t&#8221;"/>
+ <l:template name="sect5" text="&#8220;%t&#8221;"/>
+ <l:template name="section" text="&#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsection" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#1055;&#1072;&#1088;&#1072;&#1075;&#1088;&#1072;&#1092; %n"/>
+ <l:template name="sect2" text="&#1055;&#1072;&#1088;&#1072;&#1075;&#1088;&#1072;&#1092; %n"/>
+ <l:template name="sect3" text="&#1055;&#1072;&#1088;&#1072;&#1075;&#1088;&#1072;&#1092; %n"/>
+ <l:template name="sect4" text="&#1055;&#1072;&#1088;&#1072;&#1075;&#1088;&#1072;&#1092; %n"/>
+ <l:template name="sect5" text="&#1055;&#1072;&#1088;&#1072;&#1075;&#1088;&#1072;&#1092; %n"/>
+ <l:template name="section" text="&#1055;&#1072;&#1088;&#1072;&#1075;&#1088;&#1072;&#1092; %n"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" "/>
+ <l:template name="seplast" text=". "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="&#1044;&#1080;&#1074;. "/>
+ <l:template name="seealso" text="&#1044;&#1080;&#1074;. &#1090;&#1072;&#1082;&#1086;&#1078; "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="&#1040;&#1091;&#1076;&#1080;&#1090;&#1086;&#1088;&#1110;&#1103;: "/>
+ <l:template name="MsgLevel" text="&#1056;&#1110;&#1074;&#1077;&#1085;&#1100;: "/>
+ <l:template name="MsgOrig" text="&#1044;&#1078;&#1077;&#1088;&#1077;&#1083;&#1086;: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/vi.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/vi.xml
new file mode 100644
index 0000000..8607488
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/vi.xml
@@ -0,0 +1,453 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="vi" english-language-name="Vietnamese">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="T&#7893;ng quan"/>
+ <l:gentext key="abstract" text="T&#7893;ng quan"/>
+ <l:gentext key="Answer" text="&#272;:"/>
+ <l:gentext key="answer" text="&#272;:"/>
+ <l:gentext key="Appendix" text="Ph&#7909; l&#7909;c"/>
+ <l:gentext key="appendix" text="ph&#7909; l&#7909;c"/>
+ <l:gentext key="Article" text="B&#224;i vi&#7871;t"/>
+ <l:gentext key="article" text="B&#224;i vi&#7871;t"/>
+ <l:gentext key="Bibliography" text="Th&#432; m&#7909;c"/>
+ <l:gentext key="bibliography" text="Th&#432; m&#7909;c"/>
+ <l:gentext key="Book" text="S&#225;ch"/>
+ <l:gentext key="book" text="S&#225;ch"/>
+ <l:gentext key="CAUTION" text="C&#7848;N TH&#7852;N"/>
+ <l:gentext key="Caution" text="C&#7849;n th&#7853;n"/>
+ <l:gentext key="caution" text="C&#7849;n th&#7853;n"/>
+ <l:gentext key="Chapter" text="Ch&#432;&#417;ng"/>
+ <l:gentext key="chapter" text="ch&#432;&#417;ng"/>
+ <l:gentext key="Colophon" text="Colophon"/>
+ <l:gentext key="colophon" text="Colophon"/>
+ <l:gentext key="Copyright" text="B&#7843;n quy&#7873;n"/>
+ <l:gentext key="copyright" text="B&#7843;n quy&#7873;n"/>
+ <l:gentext key="Dedication" text="T&#7863;ng"/>
+ <l:gentext key="dedication" text="T&#7863;ng"/>
+ <l:gentext key="Edition" text="Edition"/>
+ <l:gentext key="edition" text="Edition"/>
+ <l:gentext key="Equation" text="Ph&#432;&#417;ng tr&#236;nh"/>
+ <l:gentext key="equation" text="Ph&#432;&#417;ng tr&#236;nh"/>
+ <l:gentext key="Example" text="V&#237; d&#7909;"/>
+ <l:gentext key="example" text="V&#237; d&#7909;"/>
+ <l:gentext key="Figure" text="H&#236;nh"/>
+ <l:gentext key="figure" text="H&#236;nh"/>
+ <l:gentext key="Glossary" text="Thu&#7853;t ng&#7919;"/>
+ <l:gentext key="glossary" text="Thu&#7853;t ng&#7919;"/>
+ <l:gentext key="GlossSee" text="Xem"/>
+ <l:gentext key="glosssee" text="Xem"/>
+ <l:gentext key="GlossSeeAlso" text="Xem th&#234;m"/>
+ <l:gentext key="glossseealso" text="Xem th&#234;m"/>
+ <l:gentext key="IMPORTANT" text="QUAN TR&#7884;NG"/>
+ <l:gentext key="important" text="Quan tr&#7885;ng"/>
+ <l:gentext key="Important" text="Quan tr&#7885;ng"/>
+ <l:gentext key="Index" text="Ch&#7881; m&#7909;c"/>
+ <l:gentext key="index" text="Ch&#7881; m&#7909;c"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text="Legal Notice"/>
+ <l:gentext key="legalnotice" text="Legal Notice"/>
+ <l:gentext key="MsgAud" text="&#272;&#7885;c gi&#7843;"/>
+ <l:gentext key="msgaud" text="&#272;&#7885;c gi&#7843;"/>
+ <l:gentext key="MsgLevel" text="C&#7845;p"/>
+ <l:gentext key="msglevel" text="C&#7845;p"/>
+ <l:gentext key="MsgOrig" text="G&#7889;c"/>
+ <l:gentext key="msgorig" text="G&#7889;c"/>
+ <l:gentext key="NOTE" text="GHI CH&#218;"/>
+ <l:gentext key="Note" text="Ghi ch&#250;"/>
+ <l:gentext key="note" text="Ghi ch&#250;"/>
+ <l:gentext key="Part" text="Ph&#7847;n"/>
+ <l:gentext key="part" text="Ph&#7847;n"/>
+ <l:gentext key="Preface" text="M&#7903; &#273;&#7847;u"/>
+ <l:gentext key="preface" text="M&#7903; &#273;&#7847;u"/>
+ <l:gentext key="Procedure" text="Th&#7911; t&#7909;c"/>
+ <l:gentext key="procedure" text="Th&#7911; t&#7909;c"/>
+ <l:gentext key="ProductionSet" text="S&#7843;n ph&#7849;m"/>
+ <l:gentext key="Published" text="Xu&#7845;t b&#7843;n"/>
+ <l:gentext key="published" text="Xu&#7845;t b&#7843;n"/>
+ <l:gentext key="Question" text="H:"/>
+ <l:gentext key="question" text="H:"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="Tham kh&#7843;o"/>
+ <l:gentext key="reference" text="Tham kh&#7843;o"/>
+ <l:gentext key="RefName" text="T&#234;n"/>
+ <l:gentext key="refname" text="T&#234;n"/>
+ <l:gentext key="RefSection" text=""/>
+ <l:gentext key="refsection" text=""/>
+ <l:gentext key="RefSynopsisDiv" text="T&#243;m t&#7855;t"/>
+ <l:gentext key="refsynopsisdiv" text="T&#243;m t&#7855;t"/>
+ <l:gentext key="RevHistory" text="Revision History"/>
+ <l:gentext key="revhistory" text="Revision History"/>
+ <l:gentext key="revision" text="B&#7843;n hi&#7879;u ch&#7881;nh"/>
+ <l:gentext key="Revision" text="B&#7843;n hi&#7879;u ch&#7881;nh"/>
+ <l:gentext key="sect1" text="Ph&#7847;n"/>
+ <l:gentext key="sect2" text="Ph&#7847;n"/>
+ <l:gentext key="sect3" text="Ph&#7847;n"/>
+ <l:gentext key="sect4" text="Ph&#7847;n"/>
+ <l:gentext key="sect5" text="Ph&#7847;n"/>
+ <l:gentext key="section" text="Ph&#7847;n"/>
+ <l:gentext key="Section" text="Ph&#7847;n"/>
+ <l:gentext key="see" text="xem"/>
+ <l:gentext key="seealso" text="xem th&#234;m"/>
+ <l:gentext key="set" text="&#272;&#7863;t"/>
+ <l:gentext key="Set" text="&#272;&#7863;t"/>
+ <l:gentext key="setindex" text="&#272;&#7863;t ch&#7881; m&#7909;c"/>
+ <l:gentext key="SetIndex" text="&#272;&#7863;t ch&#7881; m&#7909;c"/>
+ <l:gentext key="Sidebar" text=""/>
+ <l:gentext key="sidebar" text="thanh b&#234;n"/>
+ <l:gentext key="step" text="b&#432;&#7899;c"/>
+ <l:gentext key="Step" text="B&#432;&#7899;c"/>
+ <l:gentext key="Table" text="B&#7843;ng"/>
+ <l:gentext key="table" text="B&#7843;ng"/>
+ <l:gentext key="tip" text="M&#7865;o"/>
+ <l:gentext key="TIP" text="M&#7864;O"/>
+ <l:gentext key="Tip" text="M&#7865;o"/>
+ <l:gentext key="Warning" text="C&#7843;nh b&#225;o"/>
+ <l:gentext key="warning" text="C&#7843;nh b&#225;o"/>
+ <l:gentext key="WARNING" text="C&#7842;NH B&#193;O"/>
+ <l:gentext key="and" text="v&#224;"/>
+ <l:gentext key="by" text="b&#7903;i"/>
+ <l:gentext key="Edited" text="&#272;&#432;&#7907;c bi&#234;n so&#7841;n"/>
+ <l:gentext key="edited" text="&#272;&#432;&#7907;c bi&#234;n so&#7841;n"/>
+ <l:gentext key="Editedby" text="&#272;&#432;&#7907;c bi&#234;n so&#7841;n b&#7903;i"/>
+ <l:gentext key="editedby" text="&#272;&#432;&#7907;c bi&#234;n so&#7841;n b&#7903;i"/>
+ <l:gentext key="in" text="trong"/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="ph&#7847;n t&#7917; kh&#244;ng c&#243;"/>
+ <l:gentext key="notes" text="Ghi ch&#250;"/>
+ <l:gentext key="Notes" text="Ghi ch&#250;"/>
+ <l:gentext key="Pgs" text="Pgs."/>
+ <l:gentext key="pgs" text="Pgs."/>
+ <l:gentext key="Revisedby" text="Hi&#7879;u ch&#7881;nh b&#7903;i: "/>
+ <l:gentext key="revisedby" text="Hi&#7879;u ch&#7881;nh b&#7903;i: "/>
+ <l:gentext key="TableNotes" text="Ghi ch&#250;"/>
+ <l:gentext key="tablenotes" text="Ghi ch&#250;"/>
+ <l:gentext key="TableofContents" text="M&#7909;c l&#7909;c"/>
+ <l:gentext key="tableofcontents" text="M&#7909;c l&#7909;c"/>
+ <l:gentext key="unexpectedelementname" text="T&#234;n ph&#7847;n t&#7917; kh&#244;ng &#273;&#250;ng"/>
+ <l:gentext key="unsupported" text="kh&#244;ng h&#7895; tr&#7907;"/>
+ <l:gentext key="xrefto" text="xref t&#7899;i"/>
+ <l:gentext key="listofequations" text="Danh s&#225;ch Ph&#432;&#417;ng tr&#236;nh"/>
+ <l:gentext key="ListofEquations" text="Danh s&#225;ch Ph&#432;&#417;ng tr&#236;nh"/>
+ <l:gentext key="ListofExamples" text="Danh s&#225;ch V&#237; d&#7909;"/>
+ <l:gentext key="listofexamples" text="Danh s&#225;ch V&#237; d&#7909;"/>
+ <l:gentext key="ListofFigures" text="Danh s&#225;ch H&#236;nh"/>
+ <l:gentext key="listoffigures" text="Danh s&#225;ch H&#236;nh"/>
+ <l:gentext key="listoftables" text="Danh s&#225;ch B&#7843;ng"/>
+ <l:gentext key="ListofTables" text="Danh s&#225;ch B&#7843;ng"/>
+ <l:gentext key="ListofUnknown" text="Danh s&#225;ch L&#7841;"/>
+ <l:gentext key="listofunknown" text="Danh s&#225;ch L&#7841;"/>
+ <l:gentext key="nav-home" text="&#272;&#7847;u"/>
+ <l:gentext key="nav-next" text="K&#7871; ti&#7871;p"/>
+ <l:gentext key="nav-next-sibling" text="T&#7899;i nhanh"/>
+ <l:gentext key="nav-prev" text="Tr&#432;&#7899;c &#273;&#243;"/>
+ <l:gentext key="nav-prev-sibling" text="L&#249;i nhanh"/>
+ <l:gentext key="nav-up" text="L&#234;n"/>
+ <l:gentext key="nav-toc" text="M&#7909;c l&#7909;c"/>
+ <l:gentext key="Draft" text="B&#7843;n th&#7843;o"/>
+ <l:gentext key="above" text="tr&#234;n"/>
+ <l:gentext key="below" text="d&#432;&#7899;i"/>
+ <l:gentext key="sectioncalled" text="ph&#7847;n"/>
+ <l:gentext key="index symbols" text="K&#253; hi&#7879;u"/>
+ <l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz"/>
+ <l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="last-first"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="Ph&#7909; l&#7909;c&#160;%n.&#160;%t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Ch&#432;&#417;ng&#160;%n.&#160;%t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Ph&#432;&#417;ng tr&#236;nh&#160;%n.&#160;%t"/>
+ <l:template name="example" text="V&#237; d&#7909;&#160;%n.&#160;%t"/>
+ <l:template name="figure" text="H&#236;nh&#160;%n.&#160;%t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Ph&#7847;n&#160;%n.&#160;%t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="Th&#7911; t&#7909;c&#160;%n.&#160;%t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="S&#7843;n ph&#7849;m&#160;%n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="B&#7843;ng&#160;%n.&#160;%t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text=""/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="Ph&#7909; l&#7909;c&#160;%n.&#160;%t"/>
+ <l:template name="bridgehead" text="%n.&#160;%t"/>
+ <l:template name="chapter" text="Ch&#432;&#417;ng&#160;%n.&#160;%t"/>
+ <l:template name="sect1" text="%n.&#160;%t"/>
+ <l:template name="sect2" text="%n.&#160;%t"/>
+ <l:template name="sect3" text="%n.&#160;%t"/>
+ <l:template name="sect4" text="%n.&#160;%t"/>
+ <l:template name="sect5" text="%n.&#160;%t"/>
+ <l:template name="section" text="%n.&#160;%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="&#272;:&#160;%n"/>
+ <l:template name="appendix" text="Ph&#7909; l&#7909;c&#160;%n"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Ch&#432;&#417;ng&#160;%n"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Ph&#432;&#417;ng tr&#236;nh&#160;%n"/>
+ <l:template name="example" text="V&#237; d&#7909;&#160;%n"/>
+ <l:template name="figure" text="H&#236;nh&#160;%n"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Ph&#7847;n&#160;%n"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="Th&#7911; t&#7909;c&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="H:&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="H:&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="B&#7843;ng&#160;%n"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="ph&#7847;n &#8220;%t&#8221;"/>
+ <l:template name="refsection" text="ph&#7847;n &#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="ph&#7847;n &#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="ph&#7847;n &#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="ph&#7847;n &#8220;%t&#8221;"/>
+ <l:template name="sect1" text="ph&#7847;n &#8220;%t&#8221;"/>
+ <l:template name="sect2" text="ph&#7847;n &#8220;%t&#8221;"/>
+ <l:template name="sect3" text="ph&#7847;n &#8220;%t&#8221;"/>
+ <l:template name="sect4" text="ph&#7847;n &#8220;%t&#8221;"/>
+ <l:template name="sect5" text="ph&#7847;n &#8220;%t&#8221;"/>
+ <l:template name="section" text="ph&#7847;n &#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="ph&#7847;n &#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="Ph&#7847;n&#160;%n"/>
+ <l:template name="refsection" text="ph&#7847;n &#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="ph&#7847;n &#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="ph&#7847;n &#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="ph&#7847;n &#8220;%t&#8221;"/>
+ <l:template name="sect1" text="Ph&#7847;n&#160;%n"/>
+ <l:template name="sect2" text="Ph&#7847;n&#160;%n"/>
+ <l:template name="sect3" text="Ph&#7847;n&#160;%n"/>
+ <l:template name="sect4" text="Ph&#7847;n&#160;%n"/>
+ <l:template name="sect5" text="Ph&#7847;n&#160;%n"/>
+ <l:template name="section" text="Ph&#7847;n&#160;%n"/>
+ <l:template name="simplesect" text="ph&#7847;n &#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" v&#224; "/>
+ <l:template name="seplast" text=", v&#224; "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="Xem "/>
+ <l:template name="seealso" text="Xem th&#234;m "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="&#272;&#7885;c gi&#7843;: "/>
+ <l:template name="MsgLevel" text="C&#7845;p: "/>
+ <l:template name="MsgOrig" text="G&#7889;c: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/xh.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/xh.xml
new file mode 100644
index 0000000..e296b5d
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/xh.xml
@@ -0,0 +1,456 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="xh" english-language-name="Xhosa">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="Isiqalo"/>
+ <l:gentext key="abstract" text="Isiqalo"/>
+ <l:gentext key="Answer" text="I:"/>
+ <l:gentext key="answer" text="I:"/>
+ <l:gentext key="Appendix" text="Isivalo"/>
+ <l:gentext key="appendix" text="isivalo"/>
+ <l:gentext key="Article" text="Umba"/>
+ <l:gentext key="article" text="Umba"/>
+ <l:gentext key="Bibliography" text="Ezobunzululwazi"/>
+ <l:gentext key="bibliography" text="Ezobunzululwazi"/>
+ <l:gentext key="Book" text="Incwadi"/>
+ <l:gentext key="book" text="Incwadi"/>
+ <l:gentext key="CAUTION" text="ISILUMKISO"/>
+ <l:gentext key="Caution" text="Isilumkiso"/>
+ <l:gentext key="caution" text="Isilumkiso"/>
+ <l:gentext key="Chapter" text="Isiqendu"/>
+ <l:gentext key="chapter" text="isiqendu"/>
+ <l:gentext key="Colophon" text="Ikolophon"/>
+ <l:gentext key="colophon" text="Ikolophon"/>
+ <l:gentext key="Copyright" text="Ushicilelo olusemthethweni"/>
+ <l:gentext key="copyright" text="Ushicilelo olusemthethweni"/>
+ <l:gentext key="Dedication" text="Ulwaziso"/>
+ <l:gentext key="dedication" text="Ulwaziso"/>
+ <l:gentext key="Edition" text="Uhlelo"/>
+ <l:gentext key="edition" text="Uhlelo"/>
+ <l:gentext key="Equation" text="Ulinganiselo"/>
+ <l:gentext key="equation" text="Ulinganiselo"/>
+ <l:gentext key="Example" text="Umzekelo"/>
+ <l:gentext key="example" text="Umzekelo"/>
+ <l:gentext key="Figure" text="Ulungu"/>
+ <l:gentext key="figure" text="Ulungu"/>
+ <l:gentext key="Glossary" text="Inkcazelo yamagama"/>
+ <l:gentext key="glossary" text="Inkcazelo yamagama"/>
+ <l:gentext key="GlossSee" text="Bona"/>
+ <l:gentext key="glosssee" text="Bona"/>
+ <l:gentext key="GlossSeeAlso" text="Bona Kwakhona"/>
+ <l:gentext key="glossseealso" text="Bona Kwakhona"/>
+ <l:gentext key="IMPORTANT" text="IBALULEKILE"/>
+ <l:gentext key="important" text="Ibalulekile"/>
+ <l:gentext key="Important" text="Ibalulekile"/>
+ <l:gentext key="Index" text="Isalathiso"/>
+ <l:gentext key="index" text="Isalathiso"/>
+ <l:gentext key="ISBN" text="iISBN"/>
+ <l:gentext key="isbn" text="iISBN"/>
+ <l:gentext key="LegalNotice" text="Isaziso Esesimthethweni"/>
+ <l:gentext key="legalnotice" text="Isaziso Esesimthethweni"/>
+ <l:gentext key="MsgAud" text="Ababhali"/>
+ <l:gentext key="msgaud" text="Ababhali"/>
+ <l:gentext key="MsgLevel" text="Umphakamo"/>
+ <l:gentext key="msglevel" text="Umphakamo"/>
+ <l:gentext key="MsgOrig" text="Uqobo"/>
+ <l:gentext key="msgorig" text="Uqobo"/>
+ <l:gentext key="NOTE" text="QAPHELA"/>
+ <l:gentext key="Note" text="Qaphela"/>
+ <l:gentext key="note" text="Qaphela"/>
+ <l:gentext key="Part" text="Inxenye"/>
+ <l:gentext key="part" text="Inxenye"/>
+ <l:gentext key="Preface" text="Isihloko"/>
+ <l:gentext key="preface" text="Isihloko"/>
+ <l:gentext key="Procedure" text="Inkqubo"/>
+ <l:gentext key="procedure" text="Inkqubo"/>
+ <l:gentext key="ProductionSet" text="Imveliso"/>
+ <l:gentext key="Published" text="Ipapashwe"/>
+ <l:gentext key="published" text="Ipapashwe"/>
+ <l:gentext key="Question" text="U:"/>
+ <l:gentext key="question" text="U:"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="Uthelekiso"/>
+ <l:gentext key="reference" text="Uthelekiso"/>
+ <l:gentext key="RefName" text="Igama lothelekiso"/>
+ <l:gentext key="refname" text="Igama lothelekiso"/>
+ <l:gentext key="RefSection" text=""/>
+ <l:gentext key="refsection" text=""/>
+ <l:gentext key="RefSynopsisDiv" text="Isinopsisi"/>
+ <l:gentext key="refsynopsisdiv" text="Isinopsisi"/>
+ <l:gentext key="RevHistory" text="Imbali yophindo"/>
+ <l:gentext key="revhistory" text="Imbali yophindo"/>
+ <l:gentext key="revision" text="Iphindo"/>
+ <l:gentext key="Revision" text="Iphindo"/>
+ <l:gentext key="sect1" text="Icandelo"/>
+ <l:gentext key="sect2" text="Icandelo"/>
+ <l:gentext key="sect3" text="Icandelo"/>
+ <l:gentext key="sect4" text="Icandelo"/>
+ <l:gentext key="sect5" text="Icandelo"/>
+ <l:gentext key="section" text="Icandelo"/>
+ <l:gentext key="Section" text="Icandelo"/>
+ <l:gentext key="See" text="Bona"/>
+ <l:gentext key="see" text="Bona"/>
+ <l:gentext key="SeeAlso" text="Bona Kwakhona"/>
+ <l:gentext key="seealso" text="Bona Kwakhona"/>
+ <l:gentext key="Seealso" text="Bona Kwakhona"/>
+ <l:gentext key="set" text="Cwangcisa"/>
+ <l:gentext key="Set" text="Cwangcisa"/>
+ <l:gentext key="setindex" text="Cwangcisa Isalathiso"/>
+ <l:gentext key="SetIndex" text="Cwangcisa Isalathiso"/>
+ <l:gentext key="Sidebar" text=""/>
+ <l:gentext key="sidebar" text="ibar esecaleni"/>
+ <l:gentext key="step" text="inqwanqwa"/>
+ <l:gentext key="Step" text="Inqwanqwa"/>
+ <l:gentext key="Table" text="Indlela Yokwenza Imigca"/>
+ <l:gentext key="table" text="Indlela Yokwenza Imigca"/>
+ <l:gentext key="tip" text="Incam"/>
+ <l:gentext key="TIP" text="INCAM"/>
+ <l:gentext key="Tip" text="Incam"/>
+ <l:gentext key="Warning" text="Isilumkiso"/>
+ <l:gentext key="warning" text="Isilumkiso"/>
+ <l:gentext key="WARNING" text="ISILUMKISO"/>
+ <l:gentext key="and" text="no"/>
+ <l:gentext key="by" text="by"/>
+ <l:gentext key="Edited" text="Ihleliwe"/>
+ <l:gentext key="edited" text="Ihleliwe"/>
+ <l:gentext key="Editedby" text="Ihlelwe"/>
+ <l:gentext key="editedby" text="Ihlelwe"/>
+ <l:gentext key="in" text="in"/>
+ <l:gentext key="lastlistcomma" text=", "/>
+ <l:gentext key="listcomma" text=", "/>
+ <l:gentext key="nonexistantelement" text="isiqalelo esingekhayo"/>
+ <l:gentext key="notes" text="Iziqaphelo"/>
+ <l:gentext key="Notes" text="Iziqaphelo"/>
+ <l:gentext key="Pgs" text="Amaphepha"/>
+ <l:gentext key="pgs" text="Amaphepha"/>
+ <l:gentext key="Revisedby" text="Iphindwe ngu: "/>
+ <l:gentext key="revisedby" text="Iphindwe ngu:"/>
+ <l:gentext key="TableNotes" text="Iziqaphelo"/>
+ <l:gentext key="tablenotes" text="Iziqaphelo"/>
+ <l:gentext key="TableofContents" text="Imigca Yemixholo"/>
+ <l:gentext key="tableofcontents" text="Imigca Yemixholo"/>
+ <l:gentext key="unexpectedelementname" text="Igama lesiqalelo esingalindelwanga"/>
+ <l:gentext key="unsupported" text="ayixhaswanga"/>
+ <l:gentext key="xrefto" text="thelekiso ku"/>
+ <l:gentext key="listofequations" text="Uluhlu Lemilinganiselo"/>
+ <l:gentext key="ListofEquations" text="Uluhlu Lemilinganiselo"/>
+ <l:gentext key="ListofExamples" text="Uluhlu Lemizekelo"/>
+ <l:gentext key="listofexamples" text="Uluhlu Lemizekelo"/>
+ <l:gentext key="ListofFigures" text="Uluhlu Lamalungu"/>
+ <l:gentext key="listoffigures" text="Uluhlu Lamalungu"/>
+ <l:gentext key="listoftables" text="Uluhlu Lendlela Yokwenza Imigca"/>
+ <l:gentext key="ListofTables" text="Uluhlu Lendlela Yokwenza Imigca"/>
+ <l:gentext key="ListofUnknown" text="Uluhlu Lokungaziwayo"/>
+ <l:gentext key="listofunknown" text="Uluhlu Lokungaziwayo"/>
+ <l:gentext key="nav-home" text="Ikhaya"/>
+ <l:gentext key="nav-next" text="Elandelayo"/>
+ <l:gentext key="nav-next-sibling" text="Yisa Phambili"/>
+ <l:gentext key="nav-prev" text="Edlulileyo"/>
+ <l:gentext key="nav-prev-sibling" text="Yisa Emva"/>
+ <l:gentext key="nav-up" text="Phezulu"/>
+ <l:gentext key="sectioncalled" text="icandelo libizwa ngokuba"/>
+ <l:gentext key="Draft" text="Draft"/>
+ <l:gentext key="above" text="above"/>
+ <l:gentext key="below" text="below"/>
+ <l:gentext key="index symbols" text="Iimpawu"/>
+ <l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz"/>
+ <l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/>
+ <l:dingbat key="startquote" text="&#8220;"/>
+ <l:dingbat key="endquote" text="&#8221;"/>
+ <l:dingbat key="nestedstartquote" text="&#8216;"/>
+ <l:dingbat key="nestedendquote" text="&#8217;"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="Isivalo %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Isiqendu %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Ulinganiselo %n. %t"/>
+ <l:template name="example" text="Umzekelo %n. %t"/>
+ <l:template name="figure" text="Ulungu %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Inxenye %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="Inkqubo %n. %t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Imveliso %n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="Indlela Yokwenza Imigca %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text=""/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="Isivalo %n. %t"/>
+ <l:template name="bridgehead" text="%n. %t"/>
+ <l:template name="chapter" text="Isiqendu %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsection" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="I:&#160;%n"/>
+ <l:template name="appendix" text="Isivalo %n"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="Isiqendu %n"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="Ulinganiselo&#160;%n"/>
+ <l:template name="example" text="Umzekelo %n"/>
+ <l:template name="figure" text="Ulungu %n"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="Inxenye %n"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="Inkqubo&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="U:&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="U:&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsection" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="Indlela Yokwenza Imigca %n"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="icandelo libizwa ngokuba &#8220;%t&#8221;"/>
+ <l:template name="refsection" text="icandelo libizwa ngokuba &#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="icandelo libizwa ngokuba &#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="icandelo libizwa ngokuba &#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="icandelo libizwa ngokuba &#8220;%t&#8221;"/>
+ <l:template name="sect1" text="icandelo libizwa ngokuba &#8220;%t&#8221;"/>
+ <l:template name="sect2" text="icandelo libizwa ngokuba &#8220;%t&#8221;"/>
+ <l:template name="sect3" text="icandelo libizwa ngokuba &#8220;%t&#8221;"/>
+ <l:template name="sect4" text="icandelo libizwa ngokuba &#8220;%t&#8221;"/>
+ <l:template name="sect5" text="icandelo libizwa ngokuba &#8220;%t&#8221;"/>
+ <l:template name="section" text="icandelo libizwa ngokuba &#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="icandelo libizwa ngokuba &#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="Icandelo %n"/>
+ <l:template name="refsection" text="icandelo libizwa ngokuba &#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="icandelo libizwa ngokuba &#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="icandelo libizwa ngokuba &#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="icandelo libizwa ngokuba &#8220;%t&#8221;"/>
+ <l:template name="sect1" text="Icandelo %n"/>
+ <l:template name="sect2" text="Icandelo %n"/>
+ <l:template name="sect3" text="Icandelo %n"/>
+ <l:template name="sect4" text="Icandelo %n"/>
+ <l:template name="sect5" text="Icandelo %n"/>
+ <l:template name="section" text="Icandelo %n"/>
+ <l:template name="simplesect" text="icandelo libizwa ngokuba &#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=" no "/>
+ <l:template name="sep2" text=" no "/>
+ <l:template name="seplast" text=" no "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="Bona "/>
+ <l:template name="seealso" text="Bona Kwakhona "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="Ababhali: "/>
+ <l:template name="MsgLevel" text="Umphakamo: "/>
+ <l:template name="MsgOrig" text="Uqobo: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/zh_cn.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/zh_cn.xml
new file mode 100644
index 0000000..6754a62
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/zh_cn.xml
@@ -0,0 +1,447 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="zh_cn" english-language-name="Chinese (Continental)">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="&#25688;&#35201;"/>
+ <l:gentext key="abstract" text="&#25688;&#35201;"/>
+ <l:gentext key="Answer" text="&#31572;:"/>
+ <l:gentext key="answer" text="&#31572;:"/>
+ <l:gentext key="Appendix" text="&#38468;&#24405;"/>
+ <l:gentext key="appendix" text="&#38468;&#24405;"/>
+ <l:gentext key="Article" text="&#25991;&#31456;"/>
+ <l:gentext key="article" text="&#25991;&#31456;"/>
+ <l:gentext key="Bibliography" text="&#21442;&#32771;&#20070;&#30446;"/>
+ <l:gentext key="bibliography" text="&#21442;&#32771;&#20070;&#30446;"/>
+ <l:gentext key="Book" text="&#20070;&#30446;"/>
+ <l:gentext key="book" text="&#20070;&#30446;"/>
+ <l:gentext key="CAUTION" text="&#27880;&#24847;"/>
+ <l:gentext key="Caution" text="&#27880;&#24847;"/>
+ <l:gentext key="caution" text="&#27880;&#24847;"/>
+ <l:gentext key="Chapter" text="&#31456;"/>
+ <l:gentext key="chapter" text="&#31456;"/>
+ <l:gentext key="Colophon" text="Colophon"/>
+ <l:gentext key="colophon" text="Colophon"/>
+ <l:gentext key="Copyright" text="&#29256;&#26435;"/>
+ <l:gentext key="copyright" text="&#29256;&#26435;"/>
+ <l:gentext key="Dedication" text="&#22857;&#29486;"/>
+ <l:gentext key="dedication" text="&#22857;&#29486;"/>
+ <l:gentext key="Edition" text="&#29256;"/>
+ <l:gentext key="edition" text="&#29256;"/>
+ <l:gentext key="Equation" text="&#26041;&#31243;"/>
+ <l:gentext key="equation" text="&#26041;&#31243;"/>
+ <l:gentext key="Example" text="&#20363;&#23376;"/>
+ <l:gentext key="example" text="&#20363;&#23376;"/>
+ <l:gentext key="Figure" text="&#22270;&#24418;"/>
+ <l:gentext key="figure" text="&#22270;&#24418;"/>
+ <l:gentext key="Glossary" text="&#26415;&#35821;&#34920;"/>
+ <l:gentext key="glossary" text="&#26415;&#35821;&#34920;"/>
+ <l:gentext key="GlossSee" text="&#35265;"/>
+ <l:gentext key="glosssee" text="&#35265;"/>
+ <l:gentext key="GlossSeeAlso" text="&#21478;&#35265;"/>
+ <l:gentext key="glossseealso" text="&#21478;&#35265;"/>
+ <l:gentext key="IMPORTANT" text="&#37325;&#35201;"/>
+ <l:gentext key="Important" text="&#37325;&#35201;"/>
+ <l:gentext key="important" text="&#37325;&#35201;"/>
+ <l:gentext key="Index" text="&#32034;&#24341;"/>
+ <l:gentext key="index" text="&#32034;&#24341;"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text="&#27861;&#24459;&#24067;&#21578;"/>
+ <l:gentext key="legalnotice" text="&#27861;&#24459;&#24067;&#21578;"/>
+ <l:gentext key="MsgAud" text="&#35835;&#32773;"/>
+ <l:gentext key="msgaud" text="&#35835;&#32773;"/>
+ <l:gentext key="MsgLevel" text="&#38590;&#24230;"/>
+ <l:gentext key="msglevel" text="&#38590;&#24230;"/>
+ <l:gentext key="MsgOrig" text="&#20986;&#22788;"/>
+ <l:gentext key="msgorig" text="&#20986;&#22788;"/>
+ <l:gentext key="NOTE" text="&#27880;"/>
+ <l:gentext key="Note" text="&#27880;"/>
+ <l:gentext key="note" text="&#27880;"/>
+ <l:gentext key="Part" text="&#37096;&#20998;"/>
+ <l:gentext key="part" text="&#37096;&#20998;"/>
+ <l:gentext key="Preface" text="&#21069;&#35328;"/>
+ <l:gentext key="preface" text="&#21069;&#35328;"/>
+ <l:gentext key="Procedure" text="&#36807;&#31243;"/>
+ <l:gentext key="procedure" text="&#36807;&#31243;"/>
+ <l:gentext key="ProductionSet" text="Production"/>
+ <l:gentext key="Published" text="&#20986;&#29256;"/>
+ <l:gentext key="published" text="&#20986;&#29256;"/>
+ <l:gentext key="Question" text="&#38382;:"/>
+ <l:gentext key="question" text="&#38382;:"/>
+ <l:gentext key="RefEntry" text=""/>
+ <l:gentext key="refentry" text=""/>
+ <l:gentext key="Reference" text="&#21442;&#32771;"/>
+ <l:gentext key="reference" text="&#21442;&#32771;"/>
+ <l:gentext key="RefName" text="&#21517;&#23383;"/>
+ <l:gentext key="refname" text="&#21517;&#23383;"/>
+ <l:gentext key="RefSection" text=""/>
+ <l:gentext key="refsection" text=""/>
+ <l:gentext key="RefSynopsisDiv" text="&#22823;&#32434;"/>
+ <l:gentext key="refsynopsisdiv" text="&#22823;&#32434;"/>
+ <l:gentext key="RevHistory" text="&#20462;&#35746;&#21382;&#21490;"/>
+ <l:gentext key="revhistory" text="&#20462;&#35746;&#21382;&#21490;"/>
+ <l:gentext key="Revision" text="&#20462;&#35746;"/>
+ <l:gentext key="revision" text="&#20462;&#35746;"/>
+ <l:gentext key="sect1" text="Section"/>
+ <l:gentext key="sect2" text="Section"/>
+ <l:gentext key="sect3" text="Section"/>
+ <l:gentext key="sect4" text="Section"/>
+ <l:gentext key="sect5" text="Section"/>
+ <l:gentext key="Section" text="&#33410;"/>
+ <l:gentext key="section" text="&#33410;"/>
+ <l:gentext key="See" text="&#35265;"/>
+ <l:gentext key="see" text="&#35265;"/>
+ <l:gentext key="SeeAlso" text="&#21478;&#35265;"/>
+ <l:gentext key="Seealso" text="&#21478;&#35265;"/>
+ <l:gentext key="seealso" text="&#21478;&#35265;"/>
+ <l:gentext key="Set" text="Set"/>
+ <l:gentext key="set" text="Set"/>
+ <l:gentext key="SetIndex" text="Set Index"/>
+ <l:gentext key="setindex" text="Set Index"/>
+ <l:gentext key="Sidebar" text=""/>
+ <l:gentext key="sidebar" text="sidebar"/>
+ <l:gentext key="Step" text="&#27493;&#39588;"/>
+ <l:gentext key="step" text="&#27493;&#39588;"/>
+ <l:gentext key="Table" text="&#34920;&#26684;"/>
+ <l:gentext key="table" text="&#34920;&#26684;"/>
+ <l:gentext key="TIP" text="&#25552;&#31034;"/>
+ <l:gentext key="Tip" text="&#25552;&#31034;"/>
+ <l:gentext key="tip" text="&#25552;&#31034;"/>
+ <l:gentext key="WARNING" text="&#35686;&#21578;"/>
+ <l:gentext key="Warning" text="&#35686;&#21578;"/>
+ <l:gentext key="warning" text="&#35686;&#21578;"/>
+ <l:gentext key="and" text="&#21644;"/>
+ <l:gentext key="by" text="&#30001;"/>
+ <l:gentext key="Edited" text="&#32534;&#36753;"/>
+ <l:gentext key="edited" text="&#32534;&#36753;"/>
+ <l:gentext key="Editedby" text="&#32534;&#36753;"/>
+ <l:gentext key="editedby" text="&#32534;&#36753;"/>
+ <l:gentext key="in" text="&#22312;"/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="&#19981;&#23384;&#22312;&#30340;&#20803;&#32032;"/>
+ <l:gentext key="Notes" text="&#27880;"/>
+ <l:gentext key="notes" text="&#27880;"/>
+ <l:gentext key="Pgs" text="&#39029;"/>
+ <l:gentext key="pgs" text="&#39029;"/>
+ <l:gentext key="Revisedby" text="&#20462;&#35746;"/>
+ <l:gentext key="revisedby" text="&#20462;&#35746;"/>
+ <l:gentext key="TableNotes" text="&#27880;"/>
+ <l:gentext key="tablenotes" text="&#27880;"/>
+ <l:gentext key="TableofContents" text="&#30446;&#24405;"/>
+ <l:gentext key="tableofcontents" text="&#30446;&#24405;"/>
+ <l:gentext key="unexpectedelementname" text="&#26410;&#39044;&#26009;&#21040;&#30340;&#20803;&#32032;&#21517;"/>
+ <l:gentext key="unsupported" text="&#19981;&#25903;&#25345;"/>
+ <l:gentext key="xrefto" text="&#21442;&#29031;"/>
+ <l:gentext key="ListofEquations" text="&#26041;&#31243;&#24335;&#21015;&#34920;"/>
+ <l:gentext key="listofequations" text="&#26041;&#31243;&#24335;&#21015;&#34920;"/>
+ <l:gentext key="ListofExamples" text="&#31034;&#20363;&#21015;&#34920;"/>
+ <l:gentext key="listofexamples" text="&#31034;&#20363;&#21015;&#34920;"/>
+ <l:gentext key="ListofFigures" text="&#22270;&#24418;&#21015;&#34920;"/>
+ <l:gentext key="listoffigures" text="&#22270;&#24418;&#21015;&#34920;"/>
+ <l:gentext key="ListofTables" text="&#34920;&#26684;&#21015;&#34920;"/>
+ <l:gentext key="listoftables" text="&#34920;&#26684;&#21015;&#34920;"/>
+ <l:gentext key="ListofUnknown" text="&#20854;&#20182;&#20869;&#23481;&#21015;&#34920;"/>
+ <l:gentext key="listofunknown" text="&#20854;&#20182;&#20869;&#23481;&#21015;&#34920;"/>
+ <l:gentext key="nav-home" text="&#36215;&#28857;"/>
+ <l:gentext key="nav-next" text="&#21069;&#36827;"/>
+ <l:gentext key="nav-next-sibling" text="&#24555;&#36895;&#21069;&#36827;"/>
+ <l:gentext key="nav-prev" text="&#21518;&#36864;"/>
+ <l:gentext key="nav-prev-sibling" text="&#24555;&#36895;&#21518;&#36864;"/>
+ <l:gentext key="nav-up" text="&#19978;&#19968;&#32423;"/>
+ <l:gentext key="sectioncalled" text="the section called"/>
+ <l:gentext key="Draft" text="Draft"/>
+ <l:gentext key="above" text="above"/>
+ <l:gentext key="below" text="below"/>
+ <l:gentext key="index symbols" text="Symbols"/>
+ <l:dingbat key="startquote" text="&#34;"/>
+ <l:dingbat key="endquote" text="&#34;"/>
+ <l:dingbat key="nestedstartquote" text="'"/>
+ <l:dingbat key="nestedendquote" text="'"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="&#38468;&#24405; %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="&#31456; %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="&#26041;&#31243; %n. %t"/>
+ <l:template name="example" text="&#20363;&#23376; %n. %t"/>
+ <l:template name="figure" text="&#22270;&#24418; %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="&#37096;&#20998; %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="&#36807;&#31243;&#160;%n.&#160;%t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Production&#160;%n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="&#34920;&#26684; %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="&#38468;&#24405; %n. %t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="&#31456; %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%n. %t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="&#31572;:&#160;%n"/>
+ <l:template name="appendix" text="&#38468;&#24405; %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="&#31456; %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="&#26041;&#31243;&#160;%n"/>
+ <l:template name="example" text="&#20363;&#23376; %n. %t"/>
+ <l:template name="figure" text="&#22270;&#24418; %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="&#37096;&#20998; %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="&#36807;&#31243;&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="&#38382;:&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="&#38382;:&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="&#34920;&#26684; %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#8220;%t&#8221;"/>
+ <l:template name="sect2" text="&#8220;%t&#8221;"/>
+ <l:template name="sect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect4" text="&#8220;%t&#8221;"/>
+ <l:template name="sect5" text="&#8220;%t&#8221;"/>
+ <l:template name="section" text="&#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#33410; %n"/>
+ <l:template name="sect2" text="&#33410; %n"/>
+ <l:template name="sect3" text="&#33410; %n"/>
+ <l:template name="sect4" text="&#33410; %n"/>
+ <l:template name="sect5" text="&#33410; %n"/>
+ <l:template name="section" text="&#33410; %n"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" &#21644; "/>
+ <l:template name="seplast" text=", &#21644; "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="&#35265; "/>
+ <l:template name="seealso" text="&#21478;&#35265; "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="&#35835;&#32773;: "/>
+ <l:template name="MsgLevel" text="&#38590;&#24230;: "/>
+ <l:template name="MsgOrig" text="&#20986;&#22788;: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/zh_tw.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/zh_tw.xml
new file mode 100644
index 0000000..13a24af
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/l10n/zh_tw.xml
@@ -0,0 +1,448 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="zh_tw" english-language-name="Chinese (Traditional)">
+
+<!-- This file is generated automatically. -->
+<!-- Do not edit this file by hand! -->
+<!-- See http://docbook.sourceforge.net/ -->
+<!-- To update this file: edit the corresponding document at -->
+<!-- http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/docbook/gentext/locale/ -->
+
+ <l:gentext key="Abstract" text="&#25688;&#35201;"/>
+ <l:gentext key="abstract" text="&#25688;&#35201;"/>
+ <l:gentext key="Answer" text="&#31572;&#65306;"/>
+ <l:gentext key="answer" text="&#31572;&#65306;"/>
+ <l:gentext key="Appendix" text="&#38468;&#37636;"/>
+ <l:gentext key="appendix" text="&#38468;&#37636;"/>
+ <l:gentext key="Article" text="&#25991;&#31456;"/>
+ <l:gentext key="article" text="&#25991;&#31456;"/>
+ <l:gentext key="Bibliography" text="&#21443;&#32771;&#25991;&#29563;"/>
+ <l:gentext key="bibliography" text="&#21443;&#32771;&#25991;&#29563;"/>
+ <l:gentext key="Book" text="&#26360;&#30446;"/>
+ <l:gentext key="book" text="&#26360;&#30446;"/>
+ <l:gentext key="CAUTION" text="&#27880;&#24847;"/>
+ <l:gentext key="Caution" text="&#27880;&#24847;"/>
+ <l:gentext key="caution" text="&#27880;&#24847;"/>
+ <l:gentext key="Chapter" text="&#31456;"/>
+ <l:gentext key="chapter" text="&#31456;"/>
+ <l:gentext key="Colophon" text="&#29256;&#26412;&#35352;&#37636;"/>
+ <l:gentext key="colophon" text="&#29256;&#26412;&#35352;&#37636;"/>
+ <l:gentext key="Copyright" text="&#29256;&#27402;"/>
+ <l:gentext key="copyright" text="&#29256;&#27402;"/>
+ <l:gentext key="Dedication" text="&#22857;&#29563;"/>
+ <l:gentext key="dedication" text="&#22857;&#29563;"/>
+ <l:gentext key="Edition" text="&#29256;"/>
+ <l:gentext key="edition" text="&#29256;"/>
+ <l:gentext key="Equation" text="&#26041;&#31243;&#24335;"/>
+ <l:gentext key="equation" text="&#26041;&#31243;&#24335;"/>
+ <l:gentext key="Example" text="&#31684;&#20363;"/>
+ <l:gentext key="example" text="&#31684;&#20363;"/>
+ <l:gentext key="Figure" text="&#22294;&#24418;"/>
+ <l:gentext key="figure" text="&#22294;&#24418;"/>
+ <l:gentext key="Glossary" text="&#23567;&#36781;&#24409;"/>
+ <l:gentext key="glossary" text="&#23567;&#36781;&#24409;"/>
+ <l:gentext key="GlossSee" text="&#21443;&#35211;"/>
+ <l:gentext key="glosssee" text="&#21443;&#35211;"/>
+ <l:gentext key="GlossSeeAlso" text="&#21478;&#21443;&#35211;"/>
+ <l:gentext key="glossseealso" text="&#21478;&#21443;&#35211;"/>
+ <l:gentext key="IMPORTANT" text="&#37325;&#35201;"/>
+ <l:gentext key="Important" text="&#37325;&#35201;"/>
+ <l:gentext key="important" text="&#37325;&#35201;"/>
+ <l:gentext key="Index" text="&#32034;&#24341;"/>
+ <l:gentext key="index" text="&#32034;&#24341;"/>
+ <l:gentext key="ISBN" text="ISBN"/>
+ <l:gentext key="isbn" text="ISBN"/>
+ <l:gentext key="LegalNotice" text="&#27861;&#24459;&#32882;&#26126;"/>
+ <l:gentext key="legalnotice" text="&#27861;&#24459;&#32882;&#26126;"/>
+ <l:gentext key="MsgAud" text="&#35712;&#32773;"/>
+ <l:gentext key="msgaud" text="&#35712;&#32773;"/>
+ <l:gentext key="MsgLevel" text="&#31243;&#24230;"/>
+ <l:gentext key="msglevel" text="&#31243;&#24230;"/>
+ <l:gentext key="MsgOrig" text="&#20986;&#34389;"/>
+ <l:gentext key="msgorig" text="&#20986;&#34389;"/>
+ <l:gentext key="NOTE" text="&#27880;"/>
+ <l:gentext key="Note" text="&#27880;"/>
+ <l:gentext key="note" text="&#27880;"/>
+ <l:gentext key="Part" text="&#37096;"/>
+ <l:gentext key="part" text="&#37096;"/>
+ <l:gentext key="Preface" text="&#24207;&#35328;"/>
+ <l:gentext key="preface" text="&#24207;&#35328;"/>
+ <l:gentext key="Procedure" text="&#36942;&#31243;"/>
+ <l:gentext key="procedure" text="&#36942;&#31243;"/>
+ <l:gentext key="ProductionSet" text="Production"/>
+ <l:gentext key="Published" text="&#20986;&#29256;"/>
+ <l:gentext key="published" text="&#20986;&#29256;"/>
+ <l:gentext key="Question" text="&#21839;&#65306;"/>
+ <l:gentext key="question" text="&#21839;&#65306;"/>
+ <l:gentext key="RefEntry" text="&#21443;&#29031;&#38917;&#30446;"/>
+ <l:gentext key="refentry" text="&#21443;&#29031;&#38917;&#30446;"/>
+ <l:gentext key="Reference" text="&#21443;&#32771;"/>
+ <l:gentext key="reference" text="&#21443;&#32771;"/>
+ <l:gentext key="RefName" text="&#21443;&#32771;&#21517;"/>
+ <l:gentext key="refname" text="&#21443;&#32771;&#21517;"/>
+ <l:gentext key="RefSection" text="&#21443;&#29031;&#31456;&#31680;"/>
+ <l:gentext key="refsection" text="&#21443;&#29031;&#31456;&#31680;"/>
+ <l:gentext key="RefSynopsisDiv" text="&#22823;&#32177;"/>
+ <l:gentext key="refsynopsisdiv" text="&#22823;&#32177;"/>
+ <l:gentext key="RevHistory" text="&#20462;&#35330;&#35352;&#37636;"/>
+ <l:gentext key="revhistory" text="&#20462;&#35330;&#35352;&#37636;"/>
+ <l:gentext key="Revision" text="&#20462;&#35330;"/>
+ <l:gentext key="revision" text="&#20462;&#35330;"/>
+ <l:gentext key="sect1" text="Section"/>
+ <l:gentext key="sect2" text="Section"/>
+ <l:gentext key="sect3" text="Section"/>
+ <l:gentext key="sect4" text="Section"/>
+ <l:gentext key="sect5" text="Section"/>
+ <l:gentext key="Section" text="&#31680;"/>
+ <l:gentext key="section" text="&#31680;"/>
+ <l:gentext key="See" text="&#35211;"/>
+ <l:gentext key="see" text="&#35211;"/>
+ <l:gentext key="SeeAlso" text="&#21478;&#35211;"/>
+ <l:gentext key="Seealso" text="&#21478;&#35211;"/>
+ <l:gentext key="seealso" text="&#21478;&#35211;"/>
+ <l:gentext key="Set" text="Set"/>
+ <l:gentext key="set" text="Set"/>
+ <l:gentext key="SetIndex" text="Set Index"/>
+ <l:gentext key="setindex" text="Set Index"/>
+ <l:gentext key="Sidebar" text=""/>
+ <l:gentext key="sidebar" text=""/>
+ <l:gentext key="Step" text="&#27493;&#39519;"/>
+ <l:gentext key="step" text="&#27493;&#39519;"/>
+ <l:gentext key="Table" text="&#34920;&#26684;"/>
+ <l:gentext key="table" text="&#34920;&#26684;"/>
+ <l:gentext key="TIP" text="&#25552;&#31034;"/>
+ <l:gentext key="Tip" text="&#25552;&#31034;"/>
+ <l:gentext key="tip" text="&#25552;&#31034;"/>
+ <l:gentext key="WARNING" text="&#35686;&#21578;"/>
+ <l:gentext key="Warning" text="&#35686;&#21578;"/>
+ <l:gentext key="warning" text="&#35686;&#21578;"/>
+ <l:gentext key="edited" text="&#32232;&#36655;"/>
+ <l:gentext key="Edited" text="&#32232;&#36655;"/>
+ <l:gentext key="editedby" text="&#32232;&#36655;"/>
+ <l:gentext key="Editedby" text="&#32232;&#36655;"/>
+ <l:gentext key="Notes" text="&#27880;"/>
+ <l:gentext key="notes" text="&#27880;"/>
+ <l:gentext key="Pgs" text="&#38913;"/>
+ <l:gentext key="pgs" text="&#38913;"/>
+ <l:gentext key="Revisedby" text="&#20462;&#35330;"/>
+ <l:gentext key="revisedby" text="&#20462;&#35330;"/>
+ <l:gentext key="TableNotes" text="&#27880;&#37323;"/>
+ <l:gentext key="tablenotes" text="&#27880;&#37323;"/>
+ <l:gentext key="TableofContents" text="&#20839;&#23481;&#30446;&#37636;"/>
+ <l:gentext key="tableofcontents" text="&#20839;&#23481;&#30446;&#37636;"/>
+ <l:gentext key="and" text="&#19988;"/>
+ <l:gentext key="by" text="&#30001;"/>
+ <l:gentext key="in" text="&#22312;"/>
+ <l:gentext key="lastlistcomma" text=","/>
+ <l:gentext key="listcomma" text=","/>
+ <l:gentext key="nonexistantelement" text="&#19981;&#23384;&#22312;&#30340;&#20803;&#32032;"/>
+ <l:gentext key="page.citation" text="&#38913;"/>
+ <l:gentext key="unexpectedelementname" text="&#38750;&#38928;&#26399;&#30340;&#20803;&#32032;&#21517;"/>
+ <l:gentext key="unsupported" text="&#26410;&#25903;&#25588;"/>
+ <l:gentext key="xrefto" text="&#21443;&#29031;"/>
+ <l:gentext key="ListofEquations" text="&#20844;&#24335;&#30446;&#37636;"/>
+ <l:gentext key="listofequations" text="&#20844;&#24335;&#30446;&#37636;"/>
+ <l:gentext key="ListofExamples" text="&#31684;&#20363;&#30446;&#37636;"/>
+ <l:gentext key="listofexamples" text="&#31684;&#20363;&#30446;&#37636;"/>
+ <l:gentext key="ListofFigures" text="&#38468;&#22294;&#30446;&#37636;"/>
+ <l:gentext key="listoffigures" text="&#38468;&#22294;&#30446;&#37636;"/>
+ <l:gentext key="ListofTables" text="&#38468;&#34920;&#30446;&#37636;"/>
+ <l:gentext key="listoftables" text="&#38468;&#34920;&#30446;&#37636;"/>
+ <l:gentext key="ListofUnknown" text="&#20854;&#23427;&#20839;&#23481;&#30446;&#37636;"/>
+ <l:gentext key="listofunknown" text="&#20854;&#23427;&#20839;&#23481;&#30446;&#37636;"/>
+ <l:gentext key="nav-home" text="&#20839;&#23481;"/>
+ <l:gentext key="nav-next" text="&#19979;&#19968;&#38913;"/>
+ <l:gentext key="nav-next-sibling" text="&#24555;&#36895;&#21521;&#24460;"/>
+ <l:gentext key="nav-prev" text="&#21069;&#19968;&#38913;"/>
+ <l:gentext key="nav-prev-sibling" text="&#24555;&#36895;&#21521;&#21069;"/>
+ <l:gentext key="nav-up" text="&#19978;&#19968;&#23652;"/>
+ <l:gentext key="sectioncalled" text="the section called"/>
+ <l:gentext key="Draft" text="Draft"/>
+ <l:gentext key="above" text="above"/>
+ <l:gentext key="below" text="below"/>
+ <l:gentext key="index symbols" text="Symbols"/>
+ <l:dingbat key="startquote" text="&#34;"/>
+ <l:dingbat key="endquote" text="&#34;"/>
+ <l:dingbat key="nestedstartquote" text="'"/>
+ <l:dingbat key="nestedendquote" text="'"/>
+ <l:dingbat key="bullet" text="&#8226;"/>
+
+ <l:gentext key="itemizedlist" text=""/>
+ <l:gentext key="variablelist" text=""/>
+ <l:gentext key="procedure" text=""/>
+
+ <l:context name="empty">
+ <l:template name="appendix" text="Appendix Titles (empty)"/>
+ <l:template name="article" text="Article Titles (empty)"/>
+ <l:template name="bibliodiv" text="Bibliodiv Titles (empty)"/>
+ <l:template name="book" text="Book Titles (empty)"/>
+ <l:template name="chapter" text="Chapter Titles (empty)"/>
+ <l:template name="columns" text="Columns"/>
+ <l:template name="draftarea" text="Draft area for"/>
+ <l:template name="edit-attrs" text="edit attributes of corresponding elements"/>
+ <l:template name="footnote" text="Footnote"/>
+ <l:template name="metainfo" text="metainfo"/>
+ <l:template name="preface" text="Preface Titles (empty)"/>
+ <l:template name="part" text="Part Titles (empty)"/>
+ <l:template name="section" text="Section Titles (empty)"/>
+ <l:template name="sect1" text="Section Titles (empty)"/>
+ <l:template name="sect2" text="Section Titles (empty)"/>
+ <l:template name="sect3" text="Section Titles (empty)"/>
+ <l:template name="sect4" text="Section Titles (empty)"/>
+ <l:template name="sect5" text="Section Titles (empty)"/>
+ <l:template name="set" text="Set Titles (empty)"/>
+ <l:template name="title" text="Title: "/>
+ <l:template name="titles" text="No Titlepage Elements"/>
+ <l:template name="glossary" text="Glossary Titles (empty)"/>
+ </l:context>
+
+ <l:context name="styles">
+ <l:template name="person-name" text="first-last"/>
+ </l:context>
+
+ <l:context name="title">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="%t"/>
+ <l:template name="appendix" text="&#38468;&#37636; %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="biblioentry" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomixed" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="&#31456; %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="&#26041;&#31243;&#24335; %n. %t"/>
+ <l:template name="example" text="&#31684;&#20363; %n. %t"/>
+ <l:template name="figure" text="&#22294;&#24418; %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text=""/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="&#37096; %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="%t"/>
+ <l:template name="procedure.formal" text="&#36942;&#31243;&#160;%n.&#160;%t"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="productionset.formal" text="Production&#160;%n"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="%t"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="%t"/>
+ <l:template name="refentry" text="%t"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="refsynopsisdivinfo" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="step" text="%t"/>
+ <l:template name="table" text="&#34920;&#26684; %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="warning" text="%t"/>
+ </l:context>
+
+ <l:context name="title-unnumbered">
+ <l:template name="appendix" text="%t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="%t"/>
+ <l:template name="sect1" text="%t"/>
+ <l:template name="sect2" text="%t"/>
+ <l:template name="sect3" text="%t"/>
+ <l:template name="sect4" text="%t"/>
+ <l:template name="sect5" text="%t"/>
+ <l:template name="section" text="%t"/>
+ <l:template name="simplesect" text="%t"/>
+ </l:context>
+
+ <l:context name="title-numbered">
+ <l:template name="appendix" text="&#38468;&#37636; %n. %t"/>
+ <l:template name="bridgehead" text="%t"/>
+ <l:template name="chapter" text="&#31456; %n. %t"/>
+ <l:template name="sect1" text="%n. %t"/>
+ <l:template name="sect2" text="%n. %t"/>
+ <l:template name="sect3" text="%n. %t"/>
+ <l:template name="sect4" text="%n. %t"/>
+ <l:template name="sect5" text="%n. %t"/>
+ <l:template name="section" text="%n. %t"/>
+ <l:template name="simplesect" text="%n. %t"/>
+ </l:context>
+
+ <l:context name="subtitle">
+ <l:template name="appendix" text="%s"/>
+ <l:template name="article" text="%s"/>
+ <l:template name="bibliodiv" text="%s"/>
+ <l:template name="biblioentry" text="%s"/>
+ <l:template name="bibliography" text="%s"/>
+ <l:template name="bibliomixed" text="%s"/>
+ <l:template name="bibliomset" text="%s"/>
+ <l:template name="biblioset" text="%s"/>
+ <l:template name="book" text="%s"/>
+ <l:template name="chapter" text="%s"/>
+ <l:template name="colophon" text="%s"/>
+ <l:template name="dedication" text="%s"/>
+ <l:template name="glossary" text="%s"/>
+ <l:template name="glossdiv" text="%s"/>
+ <l:template name="index" text="%s"/>
+ <l:template name="indexdiv" text="%s"/>
+ <l:template name="lot" text="%s"/>
+ <l:template name="part" text="%s"/>
+ <l:template name="partintro" text="%s"/>
+ <l:template name="preface" text="%s"/>
+ <l:template name="refentry" text="%s"/>
+ <l:template name="reference" text="%s"/>
+ <l:template name="refsect1" text="%s"/>
+ <l:template name="refsect2" text="%s"/>
+ <l:template name="refsect3" text="%s"/>
+ <l:template name="refsynopsisdiv" text="%s"/>
+ <l:template name="sect1" text="%s"/>
+ <l:template name="sect2" text="%s"/>
+ <l:template name="sect3" text="%s"/>
+ <l:template name="sect4" text="%s"/>
+ <l:template name="sect5" text="%s"/>
+ <l:template name="section" text="%s"/>
+ <l:template name="set" text="%s"/>
+ <l:template name="setindex" text="%s"/>
+ <l:template name="sidebar" text="%s"/>
+ <l:template name="simplesect" text="%s"/>
+ <l:template name="toc" text="%s"/>
+ </l:context>
+
+ <l:context name="xref">
+ <l:template name="abstract" text="%t"/>
+ <l:template name="answer" text="&#31572;&#65306;&#160;%n"/>
+ <l:template name="appendix" text="&#38468;&#37636; %n. %t"/>
+ <l:template name="article" text="%t"/>
+ <l:template name="authorblurb" text="%t"/>
+ <l:template name="bibliodiv" text="%t"/>
+ <l:template name="bibliography" text="%t"/>
+ <l:template name="bibliomset" text="%t"/>
+ <l:template name="biblioset" text="%t"/>
+ <l:template name="blockquote" text="%t"/>
+ <l:template name="book" text="%t"/>
+ <l:template name="calloutlist" text="%t"/>
+ <l:template name="caution" text="%t"/>
+ <l:template name="chapter" text="&#31456; %n. %t"/>
+ <l:template name="colophon" text="%t"/>
+ <l:template name="constraintdef" text="%t"/>
+ <l:template name="dedication" text="%t"/>
+ <l:template name="equation" text="&#26041;&#31243;&#24335;&#160;%n"/>
+ <l:template name="example" text="&#31684;&#20363; %n. %t"/>
+ <l:template name="figure" text="&#22294;&#24418; %n. %t"/>
+ <l:template name="formalpara" text="%t"/>
+ <l:template name="glossary" text="%t"/>
+ <l:template name="glossdiv" text="%t"/>
+ <l:template name="important" text="%t"/>
+ <l:template name="index" text="%t"/>
+ <l:template name="indexdiv" text="%t"/>
+ <l:template name="itemizedlist" text="%t"/>
+ <l:template name="legalnotice" text="%t"/>
+ <l:template name="listitem" text="%n"/>
+ <l:template name="lot" text="%t"/>
+ <l:template name="msg" text="%t"/>
+ <l:template name="msgexplan" text="%t"/>
+ <l:template name="msgmain" text="%t"/>
+ <l:template name="msgrel" text="%t"/>
+ <l:template name="msgset" text="%t"/>
+ <l:template name="msgsub" text="%t"/>
+ <l:template name="note" text="%t"/>
+ <l:template name="orderedlist" text="%t"/>
+ <l:template name="part" text="&#37096; %n. %t"/>
+ <l:template name="partintro" text="%t"/>
+ <l:template name="preface" text="%t"/>
+ <l:template name="procedure" text="&#36942;&#31243;&#160;%n"/>
+ <l:template name="productionset" text="%t"/>
+ <l:template name="qandadiv" text="%t"/>
+ <l:template name="qandaentry" text="&#21839;&#65306;&#160;%n"/>
+ <l:template name="qandaset" text="%t"/>
+ <l:template name="question" text="&#21839;&#65306;&#160;%n"/>
+ <l:template name="reference" text="%t"/>
+ <l:template name="refsect1" text="%t"/>
+ <l:template name="refsect2" text="%t"/>
+ <l:template name="refsect3" text="%t"/>
+ <l:template name="refsynopsisdiv" text="%t"/>
+ <l:template name="segmentedlist" text="%t"/>
+ <l:template name="set" text="%t"/>
+ <l:template name="setindex" text="%t"/>
+ <l:template name="sidebar" text="%t"/>
+ <l:template name="table" text="&#34920;&#26684; %n. %t"/>
+ <l:template name="tip" text="%t"/>
+ <l:template name="toc" text="%t"/>
+ <l:template name="variablelist" text="%t"/>
+ <l:template name="varlistentry" text="%n"/>
+ <l:template name="warning" text="%t"/>
+ <l:template name="page.citation" text=" [%p]"/>
+ </l:context>
+
+ <l:context name="section-xref">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#8220;%t&#8221;"/>
+ <l:template name="sect2" text="&#8220;%t&#8221;"/>
+ <l:template name="sect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect4" text="&#8220;%t&#8221;"/>
+ <l:template name="sect5" text="&#8220;%t&#8221;"/>
+ <l:template name="section" text="&#8220;%t&#8221;"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="section-xref-numbered">
+ <l:template name="bridgehead" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect1" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect2" text="&#8220;%t&#8221;"/>
+ <l:template name="refsect3" text="&#8220;%t&#8221;"/>
+ <l:template name="sect1" text="&#31680; %n"/>
+ <l:template name="sect2" text="&#31680; %n"/>
+ <l:template name="sect3" text="&#31680; %n"/>
+ <l:template name="sect4" text="&#31680; %n"/>
+ <l:template name="sect5" text="&#31680; %n"/>
+ <l:template name="section" text="&#31680; %n"/>
+ <l:template name="simplesect" text="&#8220;%t&#8221;"/>
+ </l:context>
+
+ <l:context name="authorgroup">
+ <l:template name="sep" text=", "/>
+ <l:template name="sep2" text=" &#19988; "/>
+ <l:template name="seplast" text=", &#19988; "/>
+ </l:context>
+
+ <l:context name="glossary">
+ <l:template name="see" text="&#21443;&#35211; "/>
+ <l:template name="seealso" text="&#21478;&#21443;&#35211; "/>
+ </l:context>
+
+ <l:context name="msgset">
+ <l:template name="MsgAud" text="&#35712;&#32773;: "/>
+ <l:template name="MsgLevel" text="&#31243;&#24230;: "/>
+ <l:template name="MsgOrig" text="&#20986;&#34389;: "/>
+ </l:context>
+</l:l10n>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/lists.xsl b/doc/editor_configs/serna/scons/docbook-xsl-serna/lists.xsl
new file mode 100644
index 0000000..c1fd19c
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/lists.xsl
@@ -0,0 +1,803 @@
+<?xml version='1.0'?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ xmlns:xse="http://www.syntext.com/Extensions/XSLT-1.0"
+ xmlns:dtm="http://syntext.com/Extensions/DocumentTypeMetadata-1.0"
+ extension-element-prefixes="xse dtm"
+ version='1.0'>
+
+ <!-- TODO: move to params -->
+ <xsl:variable name="label-width">1.5em</xsl:variable>
+ <xsl:variable name="presentation"></xsl:variable>
+ <xsl:variable name="term-width">10em</xsl:variable>
+
+ <!-- TODO: Move to common -->
+<dtm:doc dtm:idref="next.itemsymbol"/>
+<xsl:template name="next.itemsymbol" dtm:id="next.itemsymbol">
+ <xsl:param name="itemsymbol" select="'default'"/>
+ <xsl:choose>
+ <!-- Change this list if you want to change the order of symbols -->
+ <xsl:when test="$itemsymbol = 'disc'">circle</xsl:when>
+ <xsl:when test="$itemsymbol = 'round'">square</xsl:when>
+ <xsl:otherwise>disc</xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="list.itemsymbol"/>
+<xsl:template name="list.itemsymbol" dtm:id="list.itemsymbol">
+ <xsl:param name="node" select="."/>
+
+ <xsl:choose>
+ <xsl:when test="$node/@mark">
+ <xsl:value-of select="$node/@mark"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:choose>
+ <xsl:when test="$node/ancestor::itemizedlist">
+ <xsl:call-template name="next.itemsymbol">
+ <xsl:with-param name="itemsymbol">
+ <xsl:call-template name="list.itemsymbol">
+ <xsl:with-param name="node" select="$node/ancestor::itemizedlist[1]"/>
+ </xsl:call-template>
+ </xsl:with-param>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="next.itemsymbol"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="next.numeration"/>
+<xsl:template name="next.numeration" dtm:id="next.numeration">
+ <xsl:param name="numeration" select="'default'"/>
+ <xsl:choose>
+ <!-- Change this list if you want to change the order of numerations -->
+ <xsl:when test="$numeration = 'arabic'">loweralpha</xsl:when>
+ <xsl:when test="$numeration = 'loweralpha'">lowerroman</xsl:when>
+ <xsl:when test="$numeration = 'lowerroman'">upperalpha</xsl:when>
+ <xsl:when test="$numeration = 'upperalpha'">upperroman</xsl:when>
+ <xsl:when test="$numeration = 'upperroman'">arabic</xsl:when>
+ <xsl:otherwise>arabic</xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="list.numeration"/>
+<xsl:template name="list.numeration" dtm:id="list.numeration">
+ <xsl:param name="node" select="."/>
+
+ <xsl:choose>
+ <xsl:when test="$node/@numeration">
+ <xsl:value-of select="$node/@numeration"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:choose>
+ <xsl:when test="$node/ancestor::orderedlist">
+ <xsl:call-template name="next.numeration">
+ <xsl:with-param name="numeration">
+ <xsl:call-template name="list.numeration">
+ <xsl:with-param name="node" select="$node/ancestor::orderedlist[1]"/>
+ </xsl:call-template>
+ </xsl:with-param>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="next.numeration"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="itemizedlist"/>
+<xsl:template match="itemizedlist" dtm:id="itemizedlist">
+ <fo:block xsl:use-attribute-sets="list.block.spacing">
+ <xsl:apply-templates
+ select="title[not(self::processing-instruction('se:choice'))]"
+ mode="plain.formal.title.mode"/>
+
+ <xsl:variable name="itemsymbol">
+ <xsl:call-template name="list.itemsymbol">
+ <xsl:with-param name="node" select="."/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <xsl:variable name="itemchar">
+ <xsl:choose>
+ <xsl:when test="$itemsymbol='disc'">&#x2022;</xsl:when>
+ <xsl:when test="$itemsymbol='bullet'">&#x2022;</xsl:when>
+ <!-- why do these symbols not work? -->
+ <!--
+ <xsl:when test="$itemsymbol='circle'">&#x2218;</xsl:when>
+ <xsl:when test="$itemsymbol='round'">&#x2218;</xsl:when>
+ <xsl:when test="$itemsymbol='square'">&#x2610;</xsl:when>
+ <xsl:when test="$itemsymbol='box'">&#x2610;</xsl:when>
+ -->
+ <xsl:otherwise>&#x2022;</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:apply-templates select="*[not(self::listitem or self::title)]"/>
+
+ <fo:list-block provisional-label-separation="0.2em"
+ provisional-distance-between-starts="{$label-width}">
+ <xsl:apply-templates select="listitem">
+ <xsl:with-param name="itemsymbol" select="$itemchar"/>
+ </xsl:apply-templates>
+ </fo:list-block>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="title.lists"/>
+<xsl:template match="itemizedlist/title|orderedlist/title" dtm:id="title.lists"/>
+
+<dtm:doc dtm:idref="listitem.itemizedlist"/>
+<xsl:template match="itemizedlist/listitem" dtm:id="listitem.itemizedlist">
+ <xsl:param name="itemsymbol"/>
+
+ <xsl:choose>
+ <xsl:when test="parent::*/@spacing = 'compact'">
+ <fo:list-item xsl:use-attribute-sets="compact.list.item.spacing">
+ <xsl:call-template name="itemizedlist.item.contents">
+ <xsl:with-param name="itemsymbol" select="$itemsymbol"/>
+ </xsl:call-template>
+ </fo:list-item>
+ </xsl:when>
+ <xsl:otherwise>
+ <fo:list-item xsl:use-attribute-sets="list.item.spacing">
+ <xsl:call-template name="itemizedlist.item.contents">
+ <xsl:with-param name="itemsymbol" select="$itemsymbol"/>
+ </xsl:call-template>
+ </fo:list-item>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="itemizedlist.item.contents"/>
+<xsl:template name="itemizedlist.item.contents" dtm:id="itemizedlist.item.contents">
+ <xsl:param name="itemsymbol"/>
+ <fo:list-item-label end-indent="label-end()">
+ <fo:block>
+ <xsl:value-of select="$itemsymbol"/>
+ </fo:block>
+ </fo:list-item-label>
+ <fo:list-item-body start-indent="body-start()">
+ <fo:block>
+ <xsl:apply-templates/>
+ </fo:block>
+ </fo:list-item-body>
+</xsl:template>
+
+<dtm:doc dtm:idref="orderedlist"/>
+<xsl:template match="orderedlist" dtm:id="orderedlist">
+ <fo:block>
+ <xsl:apply-templates
+ select="title[not(self::processing-instruction('se:choice'))]"
+ mode="plain.formal.title.mode"/>
+
+ <xsl:variable name="starting.number">
+ <xsl:call-template name="orderedlist-starting-number"/>
+ </xsl:variable>
+
+ <xsl:apply-templates select="*[not(self::listitem or self::title)]"/>
+
+ <xsl:variable name="numeration">
+ <xsl:call-template name="list.numeration">
+ <xsl:with-param name="node" select="."/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <fo:list-block xsl:use-attribute-sets="list.block.spacing"
+ provisional-label-separation="0.2em"
+ provisional-distance-between-starts="{$label-width}">
+ <xsl:if test="$numeration='upperroman'">
+ <xsl:attribute name="provisional-distance-between-starts">
+ <xsl:value-of select="concat($label-width, '+1em')"/>
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates select="listitem">
+ <xsl:with-param name="starting.number" select="$starting.number"/>
+ <xsl:with-param name="numeration" select="$numeration"/>
+ </xsl:apply-templates>
+ </fo:list-block>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="listitem.orderedlist.item-number"/>
+<xsl:template match="orderedlist/listitem" mode="item-number" dtm:id="listitem.orderedlist.item-number">
+ <xsl:param name="starting.number"/>
+ <xsl:param name="numeration"/>
+
+ <xsl:variable name="item-number">
+ <xsl:choose>
+ <xsl:when test="$use-serna-extensions">
+ <xsl:value-of
+ select="xse:docbook-orderedlist-itemnumber($starting.number)"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="orderedlist-item-number">
+ <xsl:with-param name="starting.number" select="$starting.number"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:if test="parent::orderedlist/@inheritnum='inherit'
+ and ancestor::listitem[parent::orderedlist]">
+ <xsl:apply-templates select="ancestor::listitem[parent::orderedlist][1]"
+ mode="item-number">
+ <xsl:with-param name="starting.number" select="$starting.number"/>
+ <xsl:with-param name="numeration" select="$numeration"/>
+ </xsl:apply-templates>
+ </xsl:if>
+
+ <xsl:choose>
+ <xsl:when test="$numeration='arabic'">
+ <xsl:number value="$item-number" format="1."/>
+ </xsl:when>
+ <xsl:when test="$numeration='loweralpha'">
+ <xsl:number value="$item-number" format="a."/>
+ </xsl:when>
+ <xsl:when test="$numeration='lowerroman'">
+ <xsl:number value="$item-number" format="i."/>
+ </xsl:when>
+ <xsl:when test="$numeration='upperalpha'">
+ <xsl:number value="$item-number" format="A."/>
+ </xsl:when>
+ <xsl:when test="$numeration='upperroman'">
+ <xsl:number value="$item-number" format="I."/>
+ </xsl:when>
+ <!-- What!? This should never happen -->
+ <xsl:otherwise>
+ <xsl:text>Unexpected: </xsl:text>
+ <xsl:value-of select="$numeration"/>
+ <xsl:value-of select="1."/>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="listitem.orderedlist"/>
+<xsl:template match="orderedlist/listitem" dtm:id="listitem.orderedlist">
+ <xsl:param name="starting.number"/>
+ <xsl:param name="numeration"/>
+
+ <xsl:choose>
+ <xsl:when test="parent::*/@spacing = 'compact'">
+ <fo:list-item xsl:use-attribute-sets="compact.list.item.spacing">
+ <fo:list-item-label end-indent="label-end()">
+ <fo:block>
+ <xsl:apply-templates select="." mode="item-number">
+ <xsl:with-param name="starting.number"
+ select="$starting.number"/>
+ <xsl:with-param name="numeration" select="$numeration"/>
+ </xsl:apply-templates>
+ </fo:block>
+ </fo:list-item-label>
+ <fo:list-item-body start-indent="body-start()">
+ <xsl:apply-templates/>
+ </fo:list-item-body>
+ </fo:list-item>
+ </xsl:when>
+ <xsl:otherwise>
+ <fo:list-item xsl:use-attribute-sets="list.item.spacing">
+ <fo:list-item-label end-indent="label-end()">
+ <fo:block>
+ <xsl:apply-templates select="." mode="item-number">
+ <xsl:with-param name="starting.number"
+ select="$starting.number"/>
+ <xsl:with-param name="numeration" select="$numeration"/>
+ </xsl:apply-templates>
+ </fo:block>
+ </fo:list-item-label>
+ <fo:list-item-body start-indent="body-start()">
+ <xsl:apply-templates/>
+ </fo:list-item-body>
+ </fo:list-item>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="orderedlist-starting-number"/>
+<xsl:template name="orderedlist-starting-number" dtm:id="orderedlist-starting-number">
+ <xsl:param name="list" select="."/>
+ <xsl:choose>
+ <xsl:when test="not($list/@continuation = 'continues')">1</xsl:when>
+ <xsl:otherwise>
+ <xsl:variable name="prevlist"
+ select="$list/preceding::orderedlist[1]"/>
+ <xsl:choose>
+ <xsl:when test="count($prevlist) = 0">2</xsl:when>
+ <xsl:otherwise>
+ <xsl:variable name="prevlength" select="count($prevlist/listitem)"/>
+ <xsl:variable name="prevstart">
+ <xsl:call-template name="orderedlist-starting-number">
+ <xsl:with-param name="list" select="$prevlist"/>
+ </xsl:call-template>
+ </xsl:variable>
+ <xsl:value-of select="$prevstart + $prevlength + 1"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="orderedlist-item-number"/>
+<xsl:template name="orderedlist-item-number" dtm:id="orderedlist-item-number">
+ <!-- context node must be a listitem in an orderedlist -->
+ <xsl:param name="node" select="."/>
+ <xsl:param name="starting.number"/>
+
+ <xsl:choose>
+ <xsl:when test="$node/@override">
+ <xsl:value-of select="$node/@override"/>
+ </xsl:when>
+ <xsl:when test="$node/preceding-sibling::listitem">
+ <xsl:variable name="pnum">
+ <xsl:call-template name="orderedlist-item-number">
+ <xsl:with-param name="node"
+ select="$node/preceding-sibling::listitem[1]"/>
+ <xsl:with-param name="starting.number" select="$starting.number"/>
+ </xsl:call-template>
+ </xsl:variable>
+ <xsl:value-of select="$pnum + 1"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$starting.number"/>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="variablelist"/>
+<xsl:template match="variablelist" dtm:id="variablelist">
+ <xsl:choose>
+ <xsl:when test="$presentation = 'list'">
+ <xsl:apply-templates select="." mode="vl.as.list"/>
+ </xsl:when>
+ <xsl:when test="$presentation = 'blocks'">
+ <xsl:apply-templates select="." mode="vl.as.blocks"/>
+ </xsl:when>
+ <xsl:when test="$variablelist.as.blocks">
+ <xsl:apply-templates select="." mode="vl.as.blocks"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="." mode="vl.as.list"/>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="title.variablelist.vl-as-list"/>
+<xsl:template match="variablelist/title" mode="vl.as.list" dtm:id="title.variablelist.vl-as-list"/>
+
+<dtm:doc dtm:idref="title.variablelist.vl-as-blocks"/>
+<xsl:template match="variablelist/title" mode="vl.as.blocks" dtm:id="title.variablelist.vl-as-blocks"/>
+
+<dtm:doc dtm:idref="variablelist.vl-as-list"/>
+<xsl:template match="variablelist" mode="vl.as.list" dtm:id="variablelist.vl-as-list">
+ <xsl:variable name="termlength">
+ <xsl:choose>
+ <xsl:when test="$term-width != ''">
+ <xsl:value-of select="$term-width"/>
+ </xsl:when>
+ <xsl:when test="@termlength">
+ <xsl:variable name="termlength.is.number">
+ <xsl:value-of select="@termlength + 0"/>
+ </xsl:variable>
+ <xsl:choose>
+ <xsl:when test="$termlength.is.number = 'NaN'">
+ <!-- if the term length isn't just a number, assume it's a measurement -->
+ <xsl:value-of select="@termlength"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="@termlength"/>
+ <xsl:text>em</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:when>
+ <xsl:otherwise>
+ <!-- FIXME: this should be a parameter! -->
+ <xsl:call-template name="longest.term">
+ <xsl:with-param name="terms" select="varlistentry/term"/>
+ <xsl:with-param name="maxlength" select="12"/>
+ </xsl:call-template>
+ <xsl:text>em</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <fo:block>
+ <xsl:if test="title[not(self::processing-instruction('se:choice'))]">
+ <xsl:apply-templates select="title" mode="list.title.mode"/>
+ </xsl:if>
+
+ <fo:list-block provisional-distance-between-starts="{$termlength}"
+ provisional-label-separation="0.25in"
+ xsl:use-attribute-sets="list.block.spacing">
+ <xsl:apply-templates mode="vl.as.list"/>
+ </fo:list-block>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="longest.term"/>
+<xsl:template name="longest.term" dtm:id="longest.term">
+ <xsl:param name="longest" select="0"/>
+ <xsl:param name="terms" select="."/>
+ <xsl:param name="maxlength" select="-1"/>
+
+ <xsl:choose>
+ <xsl:when test="$longest &gt; $maxlength and $maxlength &gt; 0">
+ <xsl:value-of select="$maxlength"/>
+ </xsl:when>
+ <xsl:when test="not($terms)">
+ <xsl:value-of select="$longest"/>
+ </xsl:when>
+ <xsl:when test="string-length($terms[1]) &gt; $longest">
+ <xsl:call-template name="longest.term">
+ <xsl:with-param name="longest" select="string-length($terms[1])"/>
+ <xsl:with-param name="maxlength" select="$maxlength"/>
+ <xsl:with-param name="terms" select="$terms[position() &gt; 1]"/>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="longest.term">
+ <xsl:with-param name="longest" select="$longest"/>
+ <xsl:with-param name="maxlength" select="$maxlength"/>
+ <xsl:with-param name="terms" select="$terms[position() &gt; 1]"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="varlistentry.vl-as-list"/>
+<xsl:template match="varlistentry" mode="vl.as.list" dtm:id="varlistentry.vl-as-list">
+ <fo:list-item xsl:use-attribute-sets="list.item.spacing">
+ <fo:list-item-label end-indent="label-end()" text-align="start">
+ <fo:block>
+ <xsl:apply-templates select="term"/>
+ </fo:block>
+ </fo:list-item-label>
+ <fo:list-item-body start-indent="body-start()">
+ <fo:block>
+ <xsl:apply-templates select="listitem"/>
+ </fo:block>
+ </fo:list-item-body>
+ </fo:list-item>
+</xsl:template>
+
+<dtm:doc dtm:idref="variablelist.vl-as-blocks"/>
+<xsl:template match="variablelist" mode="vl.as.blocks" dtm:id="variablelist.vl-as-blocks">
+ <fo:block>
+ <xsl:if test="title[not(self::processing-instruction('se:choice'))]">
+ <xsl:apply-templates select="title" mode="list.title.mode"/>
+ </xsl:if>
+
+ <fo:block xsl:use-attribute-sets="list.block.spacing">
+ <xsl:apply-templates mode="vl.as.blocks"/>
+ </fo:block>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="varlistentry.vl-as-blocks"/>
+<xsl:template match="varlistentry" mode="vl.as.blocks" dtm:id="varlistentry.vl-as-blocks">
+ <fo:block>
+ <fo:block xsl:use-attribute-sets="list.item.spacing"
+ keep-together.within-column="always"
+ keep-with-next.within-column="always">
+ <xsl:apply-templates select="term[not(self::processing-instruction('se:choice'))]"/>
+ </fo:block>
+ <fo:block start-indent="0.25in">
+ <xsl:apply-templates select="listitem"/>
+ </fo:block>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="term.varlistentry"/>
+<xsl:template match="varlistentry/term" dtm:id="term.varlistentry">
+ <xsl:choose>
+ <xsl:when test="not(position() = last()) and not(following-sibling::*[1][self::processing-instruction('se:choice')])">
+ <fo:inline><xsl:apply-templates/></fo:inline><xsl:text>, </xsl:text>
+ </xsl:when>
+ <xsl:otherwise>
+ <fo:inline><xsl:apply-templates/></fo:inline>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="listitem.varlistentry"/>
+<xsl:template match="varlistentry/listitem" dtm:id="listitem.varlistentry">
+ <fo:block>
+ <xsl:apply-templates/>
+ </fo:block>
+</xsl:template>
+
+<!-- ==================================================================== -->
+
+<dtm:doc dtm:idref="title.list-title-mode"/>
+<xsl:template match="title" mode="list.title.mode" dtm:id="title.list-title-mode">
+ <xsl:call-template name="formal.object.heading">
+ <xsl:with-param name="object" select=".."/>
+ </xsl:call-template>
+</xsl:template>
+
+<dtm:doc dtm:idref="procedure"/>
+<xsl:template match="procedure" dtm:id="procedure">
+
+ <xsl:variable name="param.placement"
+ select="substring-after(normalize-space($formal.title.placement),
+ concat(local-name(.), ' '))"/>
+
+ <xsl:variable name="placement">
+ <xsl:choose>
+ <xsl:when test="contains($param.placement, ' ')">
+ <xsl:value-of select="substring-before($param.placement, ' ')"/>
+ </xsl:when>
+ <xsl:when test="$param.placement = ''">before</xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$param.placement"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:variable name="preamble"
+ select="*[not(self::step or self::title)]"/>
+
+ <fo:block xsl:use-attribute-sets="list.block.spacing">
+ <xsl:if test="./title and $placement = 'before'">
+ <!-- n.b. gentext code tests for $formal.procedures and may make an "informal" -->
+ <!-- heading even though we called formal.object.heading. odd but true. -->
+ <xsl:call-template name="formal.object.heading"/>
+ </xsl:if>
+
+ <xsl:apply-templates select="$preamble"/>
+
+ <fo:list-block xsl:use-attribute-sets="list.block.spacing"
+ provisional-distance-between-starts="2em"
+ provisional-label-separation="0.2em">
+ <xsl:apply-templates select="step"/>
+ </fo:list-block>
+
+ <xsl:if test="./title and $placement != 'before'">
+ <!-- n.b. gentext code tests for $formal.procedures and may make an "informal" -->
+ <!-- heading even though we called formal.object.heading. odd but true. -->
+ <xsl:call-template name="formal.object.heading"/>
+ </xsl:if>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="title.procedure"/>
+<xsl:template match="procedure/title" dtm:id="title.procedure">
+</xsl:template>
+
+<dtm:doc dtm:idref="substeps"/>
+<xsl:template match="substeps" dtm:id="substeps">
+ <fo:list-block xsl:use-attribute-sets="list.block.spacing"
+ provisional-distance-between-starts="2em"
+ provisional-label-separation="0.2em">
+ <xsl:apply-templates/>
+ </fo:list-block>
+</xsl:template>
+
+<dtm:doc dtm:idref="step"/>
+<xsl:template match="step" dtm:id="step">
+ <fo:list-item xsl:use-attribute-sets="list.item.spacing">
+ <fo:list-item-label end-indent="label-end()">
+ <fo:block>
+ <!-- dwc: fix for one step procedures. Use a bullet if there's no step 2 -->
+ <xsl:choose>
+ <xsl:when test="count(../step) = 1">
+ <xsl:text>&#x2022;</xsl:text>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="." mode="number">
+ <xsl:with-param name="recursive" select="0"/>
+ </xsl:apply-templates>.
+ </xsl:otherwise>
+ </xsl:choose>
+ </fo:block>
+ </fo:list-item-label>
+ <fo:list-item-body start-indent="body-start()">
+ <xsl:apply-templates/>
+ </fo:list-item-body>
+ </fo:list-item>
+</xsl:template>
+
+<dtm:doc dtm:idref="step.number"/>
+<xsl:template match="step" mode="number" dtm:id="step.number">
+
+ <xsl:param name="rest" select="''"/>
+ <xsl:param name="recursive" select="1"/>
+ <xsl:variable name="format">
+ <xsl:call-template name="procedure.step.numeration"/>
+ </xsl:variable>
+ <xsl:variable name="num">
+ <xsl:number count="step" format="{$format}"/>
+ </xsl:variable>
+ <xsl:choose>
+ <xsl:when test="$recursive != 0 and ancestor::step">
+ <xsl:apply-templates select="ancestor::step[1]" mode="number">
+ <xsl:with-param name="rest" select="concat('.', $num, $rest)"/>
+ </xsl:apply-templates>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="concat($num, $rest)"/>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<xsl:param name="procedure.step.numeration.formats" select="'1aiAI'"/>
+
+<dtm:doc dtm:idref="procedure.step.numeration"/>
+<xsl:template name="procedure.step.numeration" dtm:id="procedure.step.numeration">
+ <xsl:param name="context" select="."/>
+ <xsl:variable name="format.length"
+ select="string-length($procedure.step.numeration.formats)"/>
+ <xsl:choose>
+ <xsl:when test="local-name($context) = 'substeps'">
+ <xsl:variable name="ssdepth"
+ select="count($context/ancestor::substeps)"/>
+ <xsl:variable name="sstype" select="($ssdepth mod $format.length)+2"/>
+ <xsl:choose>
+ <xsl:when test="$sstype &gt; $format.length">
+ <xsl:value-of select="substring($procedure.step.numeration.formats,1,1)"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="substring($procedure.step.numeration.formats,$sstype,1)"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:when>
+ <xsl:when test="local-name($context) = 'step'">
+ <xsl:variable name="sdepth"
+ select="count($context/ancestor::substeps)"/>
+ <xsl:variable name="stype" select="($sdepth mod $format.length)+1"/>
+ <xsl:value-of select="substring($procedure.step.numeration.formats,$stype,1)"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:message>
+ <xsl:text>Unexpected context in procedure.step.numeration: </xsl:text>
+ <xsl:value-of select="local-name($context)"/>
+ </xsl:message>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="title.step"/>
+<xsl:template match="step/title" dtm:id="title.step">
+ <fo:block font-weight="bold">
+ <xsl:apply-templates/>
+ </fo:block>
+</xsl:template>
+
+<!-- ==================================================================== -->
+<dtm:doc dtm:idref="simplelist"/>
+<xsl:template match="simplelist" dtm:id="simplelist">
+ <xsl:variable name="cols">
+ <xsl:choose>
+ <xsl:when test="@columns">
+ <xsl:value-of select="@columns"/>
+ </xsl:when>
+ <xsl:otherwise>1</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+ <fo:table xsl:use-attribute-sets="normal.para.spacing">
+ <xsl:call-template name="simplelist.table.columns">
+ <xsl:with-param name="cols" select="$cols"/>
+ </xsl:call-template>
+ <fo:table-body>
+ <xsl:choose>
+ <xsl:when test="@type='horiz'">
+ <xsl:for-each select="member">
+ <xsl:if test="(position() + $cols - 1) mod $cols = 0">
+ <xsl:variable name="from" select="position()"/>
+ <xsl:variable name="to" select="$from + $cols"/>
+ <fo:table-row>
+ <xsl:apply-templates select="../member[(position() &gt;= $from) and (position() &lt; $to)]"/>
+ </fo:table-row>
+ </xsl:if>
+ </xsl:for-each>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:variable name="rows" select="floor((count(member)+$cols - 1) div $cols)"/>
+ <xsl:for-each select="member">
+ <xsl:if test="position() &lt;= $rows">
+ <xsl:variable name="pos" select="position()-1"/>
+ <fo:table-row>
+ <xsl:apply-templates select="../member[(position() - $pos + $rows - 1) mod $rows = 0]"/>
+ </fo:table-row>
+ </xsl:if>
+ </xsl:for-each>
+ </xsl:otherwise>
+ </xsl:choose>
+ </fo:table-body>
+ </fo:table>
+</xsl:template>
+
+<dtm:doc dtm:idref="inline.simplelist"/>
+<xsl:template match="simplelist[@type='inline']" dtm:id="inline.simplelist">
+ <fo:inline><xsl:apply-templates/></fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:idref="simplelist.table.columns"/>
+<xsl:template name="simplelist.table.columns" dtm:id="simplelist.table.columns">
+ <xsl:param name="cols" select="1"/>
+ <xsl:param name="curcol" select="1"/>
+ <fo:table-column column-number="{$curcol}"/>
+ <xsl:if test="$curcol &lt; $cols">
+ <xsl:call-template name="simplelist.table.columns">
+ <xsl:with-param name="cols" select="$cols"/>
+ <xsl:with-param name="curcol" select="$curcol + 1"/>
+ </xsl:call-template>
+ </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:idref="member-seg"/>
+<xsl:template match="member|seg" dtm:id="member-seg">
+ <fo:table-cell>
+ <fo:block>
+ <xsl:apply-templates/>
+ </fo:block>
+ </fo:table-cell>
+</xsl:template>
+
+<dtm:doc dtm:idref="member.inlinesimplelist"/>
+<xsl:template match="simplelist[@type='inline']/member" dtm:id="member.inlinesimplelist">
+ <fo:inline>
+ <xsl:apply-templates/>
+ <xsl:text>, </xsl:text>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:idref="lastmember.inlinesimplelist"/>
+<xsl:template match="simplelist[@type='inline']/member[position()=last()]"
+ priority="2" dtm:id="lastmember.inlinesimplelist">
+ <fo:inline>
+ <xsl:apply-templates/>
+ </fo:inline>
+</xsl:template>
+
+<!-- ==================================================================== -->
+<dtm:doc dtm:idref="segmentedlist"/>
+<xsl:template match="segmentedlist" dtm:id="segmentedlist">
+ <fo:block>
+ <xsl:apply-templates
+ select="title[not(self::processing-instruction('se:choice'))]"
+ mode="plain.formal.title.mode"/>
+ <xsl:choose>
+ <xsl:when test="segtitle[not(self::processing-instruction('se:choice'))]">
+ <fo:table xsl:use-attribute-sets="normal.para.spacing">
+ <xsl:call-template name="simplelist.table.columns">
+ <xsl:with-param name="cols" select="count(segtitle)"/>
+ </xsl:call-template>
+ <fo:table-body>
+ <fo:table-row>
+ <xsl:apply-templates select="segtitle[not(self::processing-instruction('se:choice'))]"/>
+ </fo:table-row>
+ <xsl:for-each select="seglistitem[not(self::processing-instruction('se:choice'))]">
+ <fo:table-row>
+ <xsl:apply-templates select="seg"/>
+ </fo:table-row>
+ </xsl:for-each>
+ </fo:table-body>
+ </fo:table>
+ </xsl:when>
+ <xsl:when test="title[not(self::processing-instruction('se:choice'))]">
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="node()"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="segtitle"/>
+<xsl:template match="segtitle" dtm:id="segtitle">
+ <fo:table-cell>
+ <fo:block font-weight="bold">
+ <xsl:apply-templates select="*[not(self::processing-instruction('se:choice'))]"/>
+ </fo:block>
+ </fo:table-cell>
+</xsl:template>
+
+<!-- ==================================================================== -->
+</xsl:stylesheet>
+
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/parameters.xsl b/doc/editor_configs/serna/scons/docbook-xsl-serna/parameters.xsl
new file mode 100644
index 0000000..f558ee2
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/parameters.xsl
@@ -0,0 +1,435 @@
+<?xml version="1.0" encoding="utf-8"?>
+<xsl:stylesheet
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:xse="http://www.syntext.com/Extensions/XSLT-1.0"
+ version="1.0">
+ <!--XSLT Params-->
+ <xsl:param name="show.preamble.editing" select="1" xse:type="numeric"
+ xse:annotation="Show draft areas?"/>
+ <xsl:param name="appendix.autolabel" select="1" xse:type="numeric"
+ xse:annotation="Are Appendixes automatically enumerated?"/>
+ <xsl:param name="chapter.autolabel" select="1" xse:type="numeric"
+ xse:annotation="Are chapters automatically enumerated?"/>
+ <xsl:param name="part.autolabel" select="1" xse:type="numeric"
+ xse:annotation="Are parts and references enumerated?"/>
+ <xsl:param name="preface.autolabel" select="0" xse:type="numeric"
+ xse:annotation="Are prefaces enumerated?"/>
+ <xsl:param name="qandadiv.autolabel" select="1" xse:type="numeric"
+ xse:annotation="Are divisions in QAndASets enumerated?"/>
+ <xsl:param name="label.from.part" select="'1'" xse:type="numeric"
+ xse:annotation="Renumber chapters in each part?"/>
+ <xsl:param name="section.autolabel" select="1" xse:type="numeric"
+ xse:annotation="Are sections enumerated?"/>
+ <xsl:param name="section.label.includes.component.label" select="1" xse:type="numeric"
+ xse:annotation="Do section labels include the component label?"/>
+ <xsl:param name="formal.title.placement" select="'
+ figure before
+ example before
+ equation before
+ table before
+ procedure before'" xse:type="string"
+ xse:annotation="Specifies where formal object titles should occur"/>
+ <xsl:param name="toc.indent.width" select="24" xse:type="numeric"
+ xse:annotation="Amount of indentation for TOC entries"/>
+ <xsl:param name="toc.section.depth" select="5" xse:type="numeric"
+ xse:annotation="How deep should recursive sections appear in the TOC?"/>
+ <xsl:param name="autotoc.label.separator" select="'. '" xse:type="string"
+ xse:annotation="Separator between labels and titles in the ToC"/>
+ <xsl:param name="qanda.defaultlabel" select="'number'"
+ xse:annotation="What labels do qanda entries have?" xse:type="string"/>
+ <xsl:param name="qanda.inherit.numeration" select="1" xse:type="numeric"
+ xse:annotation="Does enumeration of QandASet components inherit the numeration of parent elements?"/>
+ <xsl:param name="variablelist.as.blocks" select="1" xse:type="numeric"
+ xse:annotation="Format variablelists lists as blocks?"/>
+ <!-- TOC generation table. After division keyword (e.g "part") there
+ should be a list of non-whitespace separated tokens (like "toc,lot"),
+ that state what will be shown in the division. -->
+
+ <xsl:param name="generate.toc" select="normalize-space('
+ set toc
+ book toc
+ part toc
+ ')" xse:type="string"
+ xse:annotation="Control generation of ToCs and LoTs"/>
+
+ <!-- General -->
+
+ <xsl:variable name="default.indent.shift" select="'20'"/>
+ <xsl:param name="default.units" select="'pt'"/>
+ <xsl:param name="show.remarks" select="'1'"/>
+ <xsl:param name="make.single.year.ranges" select="0"/>
+ <xsl:param name="make.year.ranges" select="0"/>
+ <xsl:param name="punct.honorific" select="'.'"/>
+ <xsl:param name="author.othername.in.middle" select="1"/>
+ <xsl:param name="ignore.image.scaling" select="0"/>
+ <xsl:param name="l10n.gentext.default.language" select="'en'"/>
+ <xsl:param name="l10n.gentext.language" select="''"/>
+ <xsl:param name="l10n.gentext.use.xref.language" select="0"/>
+ <xsl:param name="formal.procedures" select="1"/>
+
+ <xsl:param name="body.margin.bottom" select="'0.5in'"/>
+ <xsl:param name="body.margin.top" select="'0.5in'"/>
+ <xsl:param name="page.margin.bottom" select="'0.5in'"/>
+ <xsl:param name="page.margin.inner" select="'1in'"/>
+ <xsl:param name="page.margin.outer" select="'1in'"/>
+ <xsl:param name="page.margin.top" select="'0.5in'"/>
+ <xsl:param name="page.margin.left" select="'1in'"/>
+ <xsl:param name="page.margin.right" select="'1in'"/>
+ <xsl:param name="page.orientation" select="'portrait'"/>
+ <xsl:param name="paper.type" select="'A4'"/>
+
+ <xsl:param name="body.font.size">
+ <xsl:value-of select="$body.font.master"/><xsl:text>pt</xsl:text>
+ </xsl:param>
+
+ <xsl:param name="title1.font.size">
+ <xsl:value-of select="$body.font.master * 2.07"/><xsl:text>pt</xsl:text>
+ </xsl:param>
+ <xsl:param name="title2.font.size">
+ <xsl:value-of select="$body.font.master * 1.73"/><xsl:text>pt</xsl:text>
+ </xsl:param>
+ <xsl:param name="title3.font.size">
+ <xsl:value-of select="$body.font.master * 1.2"/><xsl:text>pt</xsl:text>
+ </xsl:param>
+ <xsl:param name="footnote.font.size">
+ <xsl:value-of select="$body.font.master * 0.7"/><xsl:text>pt</xsl:text>
+ </xsl:param>
+
+ <xsl:attribute-set name="root">
+ <xsl:attribute name="font-family"><xsl:value-of select="$body.font.family"/></xsl:attribute>
+ <xsl:attribute name="font-size"><xsl:value-of select="$body.font.size"/></xsl:attribute>
+ </xsl:attribute-set>
+
+ <!-- Title General -->
+ <xsl:param name="title.margin.left" select="'-2pc'"/>
+
+ <xsl:attribute-set name="title.content.properties">
+ <xsl:attribute name="font-family">
+ <xsl:value-of select="$title.font.family"/>
+ </xsl:attribute>
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
+ <xsl:attribute name="text-align">center</xsl:attribute>
+ <xsl:attribute name="margin-left">
+ <xsl:value-of select="$title.margin.left"/>
+ </xsl:attribute>
+ <xsl:attribute name="margin-right">
+ <xsl:value-of select="$title.margin.left"/>
+ </xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="titlepage.verso.style">
+ <xsl:attribute name="font-size">
+ <xsl:value-of select="$body.font.master * 0.8"/>
+ <xsl:text>pt</xsl:text>
+ </xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="preamble.attributes">
+ <xsl:attribute name="border-style">solid</xsl:attribute>
+ <xsl:attribute name="border-top-width">1pt</xsl:attribute>
+ <xsl:attribute name="border-left-width">1pt</xsl:attribute>
+ <xsl:attribute name="border-right-width">1pt</xsl:attribute>
+ <xsl:attribute name="border-bottom-width">1pt</xsl:attribute>
+ <xsl:attribute name="border-top-color">#000000</xsl:attribute>
+ <xsl:attribute name="border-bottom-color">#000000</xsl:attribute>
+ <xsl:attribute name="border-left-color">#000000</xsl:attribute>
+ <xsl:attribute name="border-right-color">#000000</xsl:attribute>
+ <xsl:attribute name="background-color">#e0e0e0</xsl:attribute>
+ <xsl:attribute name="font-size">
+ <xsl:value-of select="$body.font.master * 0.8"/>
+ <xsl:text>pt</xsl:text>
+ </xsl:attribute>
+ </xsl:attribute-set>
+
+ <!-- Divisions -->
+
+ <xsl:param name="division.title.font.master">
+ <xsl:value-of select="$body.font.master * 2.8"/>
+ </xsl:param>
+
+ <xsl:attribute-set name="division.title.properties">
+ <xsl:attribute name="font-size">
+ <xsl:value-of select="$division.title.font.master"/><xsl:text>pt</xsl:text>
+ </xsl:attribute>
+ <xsl:attribute name="padding-bottom">
+ <xsl:value-of select="$division.title.font.master * 0.5"/><xsl:text>pt</xsl:text>
+ </xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="division.subtitle.properties">
+ <xsl:attribute name="font-size">
+ <xsl:value-of select="$division.title.font.master * 0.96"/><xsl:text>pt</xsl:text>
+ </xsl:attribute>
+ <xsl:attribute name="padding-bottom">
+ <xsl:value-of select="$division.title.font.master * 0.5"/><xsl:text>pt</xsl:text>
+ </xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="book.titlepage.recto.style">
+ <xsl:attribute name="font-family">
+ <xsl:value-of select="$title.font.family"/>
+ </xsl:attribute>
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
+ <xsl:attribute name="font-size">
+ <xsl:value-of select="$body.font.master"/>
+ <xsl:text>pt</xsl:text>
+ </xsl:attribute>
+ </xsl:attribute-set>
+
+ <!-- Components -->
+
+ <xsl:param name="component.title.font.master">
+ <xsl:value-of select="$body.font.master * 2.4"/>
+ </xsl:param>
+
+ <xsl:attribute-set name="component.title.properties">
+ <xsl:attribute name="font-size">
+ <xsl:value-of select="$component.title.font.master"/><xsl:text>pt</xsl:text>
+ </xsl:attribute>
+ <xsl:attribute name="padding-bottom">
+ <xsl:value-of select="$component.title.font.master * 0.7"/><xsl:text>pt</xsl:text>
+ </xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="component.block.properties">
+ <xsl:attribute name="padding-bottom">
+ <xsl:value-of select="0"/><xsl:text>pt</xsl:text>
+ </xsl:attribute>
+ </xsl:attribute-set>
+
+ <!-- Sections -->
+
+ <xsl:attribute-set name="section.block.properties">
+ <xsl:attribute name="padding">0.2em</xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="section.title.level1.properties">
+ <xsl:attribute name="font-size">
+ <xsl:value-of select="$body.font.master * 2.0736"/>
+ <xsl:text>pt</xsl:text>
+ </xsl:attribute>
+ <xsl:attribute name="padding-bottom">
+ <xsl:value-of select="$body.font.master"/>
+ <xsl:text>pt</xsl:text>
+ </xsl:attribute>
+ </xsl:attribute-set>
+ <xsl:attribute-set name="section.title.level2.properties">
+ <xsl:attribute name="font-size">
+ <xsl:value-of select="$body.font.master * 1.728"/>
+ <xsl:text>pt</xsl:text>
+ </xsl:attribute>
+ </xsl:attribute-set>
+ <xsl:attribute-set name="section.title.level3.properties">
+ <xsl:attribute name="font-size">
+ <xsl:value-of select="$body.font.master * 1.44"/>
+ <xsl:text>pt</xsl:text>
+ </xsl:attribute>
+ </xsl:attribute-set>
+ <xsl:attribute-set name="section.title.level4.properties">
+ <xsl:attribute name="font-size">
+ <xsl:value-of select="$body.font.master * 1.2"/>
+ <xsl:text>pt</xsl:text>
+ </xsl:attribute>
+ </xsl:attribute-set>
+ <xsl:attribute-set name="section.title.level5.properties">
+ <xsl:attribute name="font-size">
+ <xsl:value-of select="$body.font.master"/>
+ <xsl:text>pt</xsl:text>
+ </xsl:attribute>
+ </xsl:attribute-set>
+ <xsl:attribute-set name="section.title.level6.properties">
+ <xsl:attribute name="font-size">
+ <xsl:value-of select="$body.font.master"/>
+ <xsl:text>pt</xsl:text>
+ </xsl:attribute>
+ </xsl:attribute-set>
+
+ <!-- Glossary -->
+
+ <xsl:param name="glossary.presentation" select="'lists'"/>
+ <xsl:param name="glossary.as.blocks" select="0"/>
+ <xsl:param name="glossary.collection" select="''"/>
+ <xsl:param name="glossentry.show.acronym" select="'yes'"/>
+ <xsl:param name="glosslist.as.blocks" select="0"/>
+ <xsl:param name="glossterm.auto.link" select="'0'"/>
+ <xsl:param name="glossterm.separation" select="'0.25in'"/>
+ <xsl:param name="glossterm.width" select="'2in'"/>
+
+
+ <!-- Refentry & Synopsis -->
+
+ <xsl:param name="refentry.generate.name" select="1"/>
+ <xsl:param name="refentry.generate.title" select="0"/>
+ <xsl:attribute-set name="refentry.title.properties">
+ <xsl:attribute name="font-family">
+ <xsl:value-of select="$title.font.family"/>
+ </xsl:attribute>
+ <xsl:attribute name="font-size">
+ <xsl:value-of select="$body.font.master * 1.5"/>
+ <xsl:text>pt</xsl:text>
+ </xsl:attribute>
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
+ <xsl:attribute name="hyphenate">false</xsl:attribute>
+ <xsl:attribute name="keep-with-next.within-column">always</xsl:attribute>
+ <xsl:attribute name="padding-bottom">0.5em</xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:param name="funcsynopsis.decoration" select="1"/>
+ <xsl:param name="funcsynopsis.style">kr</xsl:param>
+
+ <!-- Blocks -->
+
+ <xsl:attribute-set name="sidebar.properties" use-attribute-sets="formal.object.properties">
+ <xsl:attribute name="border-style">solid</xsl:attribute>
+ <xsl:attribute name="border-width">1pt</xsl:attribute>
+ <xsl:attribute name="border-color">black</xsl:attribute>
+ <xsl:attribute name="background-color">#e0e0e0</xsl:attribute>
+ <xsl:attribute name="padding-left">12pt</xsl:attribute>
+ <xsl:attribute name="padding-right">12pt</xsl:attribute>
+ <xsl:attribute name="padding-bottom">6pt</xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="normal.para.properties">
+ <xsl:attribute name="padding-bottom">0.5em</xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="blockquote.properties">
+ <xsl:attribute name="start-indent">0.5in</xsl:attribute>
+ <xsl:attribute name="end-indent">0.5in</xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="note.properties">
+ <xsl:attribute name="padding-bottom">1em</xsl:attribute>
+ <xsl:attribute name="start-indent">0.5in</xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="list.block.properties">
+ <xsl:attribute name="padding-bottom">1em</xsl:attribute>
+ </xsl:attribute-set>
+ <xsl:attribute-set name="list.item.properties">
+ <xsl:attribute name="padding-bottom">1em</xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="admonition.title.properties">
+ <xsl:attribute name="font-size">
+ <xsl:value-of select="$body.font.master * 1.2"/>
+ <xsl:text>pt</xsl:text>
+ </xsl:attribute>
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="verbatim.properties">
+ <xsl:attribute name="border-top-width">1em</xsl:attribute>
+ <xsl:attribute name="border-bottom-width">1em</xsl:attribute>
+ <xsl:attribute name="font-family">
+ <xsl:value-of select="$monospace.font.family"/>
+ </xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="monospace.verbatim.properties"
+ use-attribute-sets="verbatim.properties monospace.properties">
+ <xsl:attribute name="text-align">start</xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="shade.verbatim.style">
+ <xsl:attribute name="background-color">#E0E0E0</xsl:attribute>
+ </xsl:attribute-set>
+
+ <!-- Formals -->
+
+ <xsl:attribute-set name="equation.properties" use-attribute-sets="formal.object.properties"/>
+ <xsl:attribute-set name="example.properties" use-attribute-sets="formal.object.properties"/>
+ <xsl:attribute-set name="figure.properties" use-attribute-sets="formal.object.properties"/>
+ <xsl:attribute-set name="table.properties" use-attribute-sets="formal.object.properties"/>
+ <xsl:attribute-set name="procedure.properties" use-attribute-sets="formal.object.properties"/>
+
+ <xsl:attribute-set name="formal.title.properties">
+ <xsl:attribute name="font-size">
+ <xsl:value-of select="$body.font.master * 1.2"/>
+ <xsl:text>pt</xsl:text>
+ </xsl:attribute>
+ <xsl:attribute name="padding-bottom">
+ <xsl:value-of select="$body.font.master * 0.5"/><xsl:text>pt</xsl:text>
+ </xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="formal.object.properties">
+ <xsl:attribute name="padding-bottom">1em</xsl:attribute>
+ </xsl:attribute-set>
+
+ <!-- TOC -->
+ <xsl:attribute-set name="toc.margin.properties">
+ <xsl:attribute name="padding-bottom">1em</xsl:attribute>
+ </xsl:attribute-set>
+
+ <!-- Tables -->
+ <xsl:param name="table.cell.border.color" select="'#000000'"/>
+ <xsl:param name="table.cell.border.style" select="'solid'"/>
+ <xsl:param name="table.cell.border.thickness" select="'1px'"/>
+ <xsl:attribute-set name="table.cell.padding">
+ <xsl:attribute name="padding-left">2pt</xsl:attribute>
+ <xsl:attribute name="padding-right">2pt</xsl:attribute>
+ <xsl:attribute name="padding-top">2pt</xsl:attribute>
+ <xsl:attribute name="padding-bottom">2pt</xsl:attribute>
+ </xsl:attribute-set>
+
+
+ <xsl:param name="default.table.width" select="''"/>
+ <xsl:param name="table.footnote.number.format" select="'a'"/>
+ <xsl:param name="table.footnote.number.symbols" select="''"/>
+
+ <xsl:param name="table.frame.border.color" select="'#000000'"/>
+ <xsl:param name="table.frame.border.style" select="'solid'"/>
+ <xsl:param name="table.frame.border.thickness" select="'1px'"/>
+ <xsl:attribute-set name="table.properties" use-attribute-sets="formal.object.properties"/>
+
+ <!-- Misc -->
+ <xsl:param name="bibliography.collection" select="''"/>
+
+
+ <xsl:param name="menuchoice.menu.separator" select="'-&gt;'"/>
+ <xsl:param name="menuchoice.separator" select="'+'"/>
+
+ <xsl:param name="shade.verbatim" select="1"/>
+
+ <xsl:attribute-set name="shade.verbatim.style">
+ <xsl:attribute name="background-color">#E0E0E0</xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="monospace.properties">
+ <xsl:attribute name="font-family">
+ <xsl:value-of select="$monospace.font.family"/>
+ </xsl:attribute>
+ <xsl:attribute name="font-size">
+ <xsl:value-of select="$body.font.master * 0.9"/>
+ <xsl:text>pt</xsl:text>
+ </xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:param name="title.end.punct" select="'.!?:'"/>
+ <xsl:param name="default.title.end.punct" select="'.'"/>
+
+ <xsl:param name="biblioentry.item.separator">. </xsl:param>
+ <xsl:param name="bibliography.numbered" select="0"/>
+
+ <xsl:attribute-set name="list.block.spacing">
+ <xsl:attribute name="padding-bottom">0.5em</xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="list.item.spacing">
+ <xsl:attribute name="padding-top">0.3em</xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="compact.list.item.spacing">
+ <xsl:attribute name="padding-top">0.3em</xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="normal.para.spacing">
+ <xsl:attribute name="padding-bottom">0.5em</xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="xref.properties"/>
+ <xsl:param name="use.role.as.xrefstyle" select="1"/>
+ <xsl:param name="xref.with.number.and.title" select="1"/>
+ <xsl:param name="insert.xref.page.number" select="0"/>
+</xsl:stylesheet>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/qandaset.xsl b/doc/editor_configs/serna/scons/docbook-xsl-serna/qandaset.xsl
new file mode 100644
index 0000000..46de980
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/qandaset.xsl
@@ -0,0 +1,216 @@
+<?xml version='1.0'?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:dtm="http://syntext.com/Extensions/DocumentTypeMetadata-1.0"
+ xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ extension-element-prefixes="dtm"
+ version='1.0'>
+
+<!-- ==================================================================== -->
+
+<dtm:doc dtm:idref="qandqset"/>
+<xsl:template match="qandaset" dtm:id="qandqset">
+
+ <fo:block>
+ <xsl:apply-templates
+ select="title[not(self::processing-instruction('se:choice'))]"/>
+
+ <xsl:apply-templates
+ select="*[not(self::title or self::qandadiv or self::qandaentry
+ or self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates
+ select="qandadiv[not(self::processing-instruction('se:choice'))]"/>
+
+ <xsl:if test="qandaentry">
+ <fo:list-block xsl:use-attribute-sets="list.block.spacing"
+ provisional-distance-between-starts="2.5em"
+ provisional-label-separation="0.2em">
+ <xsl:apply-templates select="qandaentry"/>
+ </fo:list-block>
+ </xsl:if>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="title.qandqset"/>
+<xsl:template match="qandaset/title" dtm:id="title.qandqset">
+ <xsl:variable name="enclsect" select="(ancestor::section
+ | ancestor::simplesect
+ | ancestor::sect5
+ | ancestor::sect4
+ | ancestor::sect3
+ | ancestor::sect2
+ | ancestor::sect1
+ | ancestor::refsect3
+ | ancestor::refsect2
+ | ancestor::refsect1)[last()]"/>
+ <xsl:variable name="sect.level">
+ <xsl:call-template name="section.level">
+ <xsl:with-param name="parent" select="$enclsect">
+ </xsl:with-param>
+ </xsl:call-template>
+ </xsl:variable>
+ <fo:block
+ font-family="{$title.font.family}"
+ xsl:use-attribute-sets="component.title.properties">
+ <xsl:apply-templates select="." mode="section.titles.mode">
+ <xsl:with-param name="level" select="$sect.level + 1"/>
+ <xsl:with-param name="heading" select="''">
+ </xsl:with-param>
+ </xsl:apply-templates>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="qandadiv"/>
+<xsl:template match="qandadiv" dtm:id="qandadiv">
+ <fo:block>
+ <xsl:apply-templates
+ select="title[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates
+ select="*[not(self::title or self::qandadiv or self::qandaentry
+ or self::processing-instruction('se:choice'))]"/>
+ <fo:block start-indent="{count(ancestor::qandadiv)*2}pc">
+ <xsl:apply-templates
+ select="qandadiv"/>
+
+ <xsl:if test="qandaentry[not(self::processing-instruction('se:choice'))]">
+ <fo:list-block xsl:use-attribute-sets="list.block.spacing"
+ provisional-distance-between-starts="4em"
+ provisional-label-separation="0.2em">
+ <xsl:apply-templates select="qandaentry"/>
+ </fo:list-block>
+ </xsl:if>
+ </fo:block>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="title.qandadiv"/>
+<xsl:template match="qandadiv/title" dtm:id="title.qandadiv">
+ <xsl:variable name="enclsect" select="(ancestor::section
+ | ancestor::simplesect
+ | ancestor::sect5
+ | ancestor::sect4
+ | ancestor::sect3
+ | ancestor::sect2
+ | ancestor::sect1
+ | ancestor::refsect3
+ | ancestor::refsect2
+ | ancestor::refsect1)[last()]"/>
+
+ <xsl:variable name="sect.level">
+ <xsl:call-template name="section.level">
+ <xsl:with-param name="parent" select="$enclsect">
+ </xsl:with-param>
+ </xsl:call-template>
+ </xsl:variable>
+ <fo:block
+ font-family="{$title.font.family}"
+ xsl:use-attribute-sets="component.title.properties">
+ <xsl:apply-templates select="." mode="section.titles.mode">
+ <xsl:with-param name="level" select="$sect.level + 1 + count(ancestor::qandadiv)"/>
+ <xsl:with-param name="heading" select="''">
+ </xsl:with-param>
+ </xsl:apply-templates>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="qandaentry"/>
+<xsl:template match="qandaentry" dtm:id="qandaentry">
+ <!-- We wrap the result into a block if we use Serna to see it in
+ within one tag -->
+ <xsl:choose>
+ <xsl:when test="$use-serna-extensions">
+ <fo:block>
+ <xsl:apply-templates select="question"/>
+ <xsl:apply-templates select="answer"/>
+ </fo:block>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="question"/>
+ <xsl:apply-templates select="answer"/>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="question"/>
+<xsl:template match="question" dtm:id="question">
+ <xsl:variable name="deflabel">
+ <xsl:choose>
+ <xsl:when test="ancestor-or-self::*[@defaultlabel]">
+ <xsl:value-of select="(ancestor-or-self::*[@defaultlabel])[last()]
+ /@defaultlabel"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="qanda.defaultlabel"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <fo:list-item xsl:use-attribute-sets="list.item.spacing">
+ <fo:list-item-label end-indent="label-end()">
+ <xsl:choose>
+ <xsl:when test="$deflabel = 'none'">
+ <fo:block> </fo:block>
+ </xsl:when>
+ <xsl:otherwise>
+ <fo:block padding-bottom="1pt">
+ <xsl:apply-templates
+ select="self::*[not(self::processing-instruction('se:choice'))]"
+ mode="label.markup"/>
+ <xsl:if test="$deflabel = 'number'">
+ <xsl:text>.</xsl:text>
+ </xsl:if>
+ <xsl:text> </xsl:text>
+ </fo:block>
+ </xsl:otherwise>
+ </xsl:choose>
+ </fo:list-item-label>
+ <fo:list-item-body start-indent="body-start()">
+ <fo:block font-weight="bold" padding-top="0pt">
+ <xsl:apply-templates select="*[local-name(.)!='label']"/>
+ </fo:block>
+ </fo:list-item-body>
+ </fo:list-item>
+</xsl:template>
+
+<dtm:doc dtm:idref="answer"/>
+<xsl:template match="answer" dtm:id="answer">
+ <xsl:variable name="deflabel">
+ <xsl:choose>
+ <xsl:when test="ancestor-or-self::*[@defaultlabel]">
+ <xsl:value-of select="(ancestor-or-self::*[@defaultlabel])[last()]
+ /@defaultlabel"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="qanda.defaultlabel"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <fo:list-item xsl:use-attribute-sets="list.item.spacing">
+ <fo:list-item-label end-indent="label-end()">
+ <xsl:choose>
+ <xsl:when test="$deflabel = 'none'">
+ </xsl:when>
+ <xsl:otherwise>
+ <fo:block padding-bottom="1pt">
+ <xsl:apply-templates select="." mode="label.markup"/>
+ <xsl:if test="$deflabel = 'number'">
+ <xsl:text>.</xsl:text>
+ </xsl:if>
+ </fo:block>
+ </xsl:otherwise>
+ </xsl:choose>
+ </fo:list-item-label>
+ <fo:list-item-body start-indent="body-start()">
+ <fo:block>
+ <xsl:apply-templates select="*[not(self::label)]"/>
+ </fo:block>
+ </fo:list-item-body>
+ </fo:list-item>
+</xsl:template>
+
+<dtm:doc dtm:idref="label"/>
+<xsl:template match="label" dtm:id="label">
+ <fo:inline><xsl:apply-templates/></fo:inline>
+</xsl:template>
+
+</xsl:stylesheet>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/refentry.xsl b/doc/editor_configs/serna/scons/docbook-xsl-serna/refentry.xsl
new file mode 100644
index 0000000..178709c
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/refentry.xsl
@@ -0,0 +1,189 @@
+<?xml version='1.0'?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ xmlns:dtm="http://syntext.com/Extensions/DocumentTypeMetadata-1.0"
+ extension-element-prefixes="dtm"
+ version='1.0'>
+
+<dtm:doc dtm:idref="reference"/>
+<xsl:template match="reference" dtm:id="reference">
+ <xsl:variable name="preamble"
+ select="docinfo|title|subtitle|titleabbrev|partintro"/>
+ <xsl:variable name="content"
+ select="*[not(self::docinfo or self::title or self::subtitle
+ or self::titleabbrev or self::partintro)]"/>
+ <fo:block
+ xsl:use-attribute-sets="component.block.properties">
+ <xsl:call-template name="handle.empty">
+ <xsl:with-param name="titles">
+ <xsl:call-template name="reference.titlepage"/>
+ </xsl:with-param>
+ <xsl:with-param name="preamble" select="$preamble"/>
+ <xsl:with-param name="content" select="$content"/>
+ </xsl:call-template>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="refentryinfo.refentry"/>
+<xsl:template match="refentry/refentryinfo" dtm:id="refentryinfo.refentry"></xsl:template>
+
+ <dtm:doc dtm:idref="partintro.reference"/>
+ <xsl:template match="reference/partintro" dtm:id="partintro.reference">
+ <fo:block>
+ <xsl:if test="title">
+ <xsl:call-template name="partintro.titlepage"/>
+ </xsl:if>
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:template>
+
+<dtm:doc dtm:idref="refentry.refmeta"/>
+<xsl:template match="refentry|refmeta" dtm:id="refentry.refmeta">
+ <fo:block>
+ <xsl:apply-templates/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="manvolnum"/>
+<xsl:template match="manvolnum" dtm:id="manvolnum">
+ <fo:inline>
+ <xsl:text>(</xsl:text>
+ <xsl:apply-templates/>
+ <xsl:text>)</xsl:text>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:idref="refmiscinfo"/>
+<xsl:template match="refmiscinfo" dtm:id="refmiscinfo">
+</xsl:template>
+
+<dtm:doc dtm:idref="refentrytitle"/>
+<xsl:template match="refentrytitle" dtm:id="refentrytitle">
+ <xsl:call-template name="inline.charseq"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="refnamediv"/>
+<xsl:template match="refnamediv" dtm:id="refnamediv">
+ <fo:block>
+ <xsl:choose>
+ <xsl:when test="$refentry.generate.name != 0">
+ <fo:block xsl:use-attribute-sets="refentry.title.properties">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'refname'"/>
+ </xsl:call-template>
+ </fo:block>
+ </xsl:when>
+
+ <xsl:when test="$refentry.generate.title != 0">
+ <fo:block xsl:use-attribute-sets="refentry.title.properties">
+ <xsl:choose>
+ <xsl:when test="../refmeta/refentrytitle">
+ <xsl:apply-templates
+ select="../refmeta/refentrytitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates
+ select="refname[not(self::processing-instruction('se:choice'))][1]"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </fo:block>
+ </xsl:when>
+ </xsl:choose>
+ <fo:block space-after="1em">
+ <xsl:choose>
+ <xsl:when test="../refmeta/refentrytitle">
+ <xsl:apply-templates
+ select="../refmeta/refentrytitle"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates
+ select="refname[1]"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:apply-templates select="refpurpose"/>
+ </fo:block>
+ <xsl:if test="string-length(refname) and count(refname) > 1">
+ <fo:block>
+ <xsl:for-each select="refname[not(self::processing-instruction('se:choice'))]">
+ <xsl:apply-templates select="."/>
+ <xsl:if test="following-sibling::refname[not(self::processing-instruction('se:choice'))][1]">
+ <xsl:text>, </xsl:text>
+ </xsl:if>
+ </xsl:for-each>
+ </fo:block>
+ </xsl:if>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="refname"/>
+<xsl:template match="refname" dtm:id="refname">
+ <fo:inline><xsl:apply-templates/></fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:idref="refpurpose"/>
+<xsl:template match="refpurpose" dtm:id="refpurpose">
+ <fo:inline>
+ <xsl:if test="node()">
+ <xsl:text> </xsl:text>
+ <xsl:call-template name="dingbat">
+ <xsl:with-param name="dingbat">em-dash</xsl:with-param>
+ </xsl:call-template>
+ <xsl:text> </xsl:text>
+ </xsl:if>
+ <xsl:apply-templates/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:idref="refdescriptor"/>
+<xsl:template match="refdescriptor" dtm:id="refdescriptor">
+ <!-- todo: finish this -->
+</xsl:template>
+
+<dtm:doc dtm:idref="refclass"/>
+<xsl:template match="refclass" dtm:id="refclass">
+ <fo:block font-weight="bold">
+ <xsl:if test="@role">
+ <xsl:value-of select="@role"/>
+ <xsl:text>: </xsl:text>
+ </xsl:if>
+ <xsl:apply-templates/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="refsynopsisdiv"/>
+<xsl:template match="refsynopsisdiv" dtm:id="refsynopsisdiv">
+ <xsl:variable name="preamble"
+ select="title|subtitle|titleabbrev"/>
+ <xsl:variable name="content"
+ select="*[not(self::title or self::subtitle or self::titleabbrev)]"/>
+ <fo:block
+ xsl:use-attribute-sets="section.block.properties">
+ <xsl:call-template name="handle.empty">
+ <xsl:with-param name="titles">
+ <xsl:call-template name="refsynopsisdiv.titlepage"/>
+ </xsl:with-param>
+ <xsl:with-param name="preamble" select="$preamble"/>
+ <xsl:with-param name="content" select="$content"/>
+ </xsl:call-template>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="refsections"/>
+<xsl:template match="refsection|refsect1|refsect2|refsect3" dtm:id="refsections">
+ <xsl:variable name="preamble"
+ select="title|subtitle|titleabbrev"/>
+ <xsl:variable name="content"
+ select="*[not(self::title or self::subtitle or self::titleabbrev)]"/>
+ <fo:block
+ xsl:use-attribute-sets="section.block.properties">
+ <xsl:call-template name="handle.empty">
+ <xsl:with-param name="titles">
+ <xsl:call-template name="refsection.titlepage"/>
+ </xsl:with-param>
+ <xsl:with-param name="preamble" select="$preamble"/>
+ <xsl:with-param name="content" select="$content"/>
+ </xsl:call-template>
+ </fo:block>
+</xsl:template>
+
+</xsl:stylesheet>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/serna-table.xsl b/doc/editor_configs/serna/scons/docbook-xsl-serna/serna-table.xsl
new file mode 100644
index 0000000..ba08994
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/serna-table.xsl
@@ -0,0 +1,641 @@
+<?xml version='1.0'?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ xmlns:xse="http://www.syntext.com/Extensions/XSLT-1.0"
+ xmlns:dtm="http://syntext.com/Extensions/DocumentTypeMetadata-1.0"
+ extension-element-prefixes="xse dtm"
+ version='1.0'>
+
+<dtm:doc dtm:idref="tables"/>
+<xsl:template match="table|informaltable" dtm:id="tables">
+ <xsl:variable name="param.placement"
+ select="substring-after(normalize-space($formal.title.placement),
+ concat(local-name(.), ' '))"/>
+ <xsl:variable name="placement">
+ <xsl:choose>
+ <xsl:when test="contains($param.placement, ' ')">
+ <xsl:value-of select="substring-before($param.placement, ' ')"/>
+ </xsl:when>
+ <xsl:when test="$param.placement = ''">before</xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$param.placement"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+ <fo:block>
+ <xsl:attribute name="span">
+ <xsl:choose>
+ <xsl:when test="@pgwide=1">all</xsl:when>
+ <xsl:otherwise>none</xsl:otherwise>
+ </xsl:choose>
+ </xsl:attribute>
+
+ <fo:block xsl:use-attribute-sets="formal.object.properties">
+ <xsl:if test="$placement = 'before' and not(self::informaltable)">
+ <xsl:call-template name="formal.object.heading">
+ <xsl:with-param name="placement" select="$placement"/>
+ </xsl:call-template>
+ </xsl:if>
+
+ <xsl:apply-templates/>
+
+ <xsl:if test="$placement != 'before' and not(self::informaltable)">
+ <xsl:call-template name="formal.object.heading">
+ <xsl:with-param name="placement" select="$placement"/>
+ </xsl:call-template>
+ </xsl:if>
+ </fo:block>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="tgroups"/>
+<xsl:template match="table/tgroup|informaltable/tgroup" dtm:id="tgroups">
+ <xsl:if test="$show.preamble.editing">
+ <fo:block xsl:use-attribute-sets="preamble.attributes">
+ <fo:block background-color="transparent"
+ xsl:use-attribute-sets="title.content.properties
+ formal.title.properties">
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="name" select="'draftarea'"/>
+ <xsl:with-param name="context" select="'empty'"/>
+ </xsl:call-template>
+ <xsl:text> "</xsl:text>
+ <xsl:value-of select="local-name(.)"/>
+ <xsl:text>" </xsl:text>
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="name" select="'metainfo'"/>
+ <xsl:with-param name="context" select="'empty'"/>
+ </xsl:call-template>
+ <xsl:text>. </xsl:text>
+ <xsl:if test="@cols">
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="name" select="'columns'"/>
+ <xsl:with-param name="context" select="'empty'"/>
+ </xsl:call-template>
+ <xsl:text>: </xsl:text>
+ <xsl:value-of select="@cols"/>
+ </xsl:if>
+ <xsl:text>. (</xsl:text>
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="name" select="'edit-attrs'"/>
+ <xsl:with-param name="context" select="'empty'"/>
+ </xsl:call-template>
+ <xsl:text>)</xsl:text>
+ </fo:block>
+ <xsl:apply-templates select="colspec|spanspec" mode="cals-table-specs"/>
+ </fo:block>
+ </xsl:if>
+ <fo:table border-collapse="collapse">
+ <xsl:call-template name="table.frame"/>
+ <xsl:if test="following-sibling::tgroup">
+ <xsl:attribute name="border-bottom-width">0pt</xsl:attribute>
+ <xsl:attribute name="border-bottom-style">none</xsl:attribute>
+ <xsl:attribute name="padding-bottom">0pt</xsl:attribute>
+ <xsl:attribute name="margin-bottom">0pt</xsl:attribute>
+ <xsl:attribute name="space-after">0pt</xsl:attribute>
+ <xsl:attribute name="space-after.minimum">0pt</xsl:attribute>
+ <xsl:attribute name="space-after.optimum">0pt</xsl:attribute>
+ <xsl:attribute name="space-after.maximum">0pt</xsl:attribute>
+ </xsl:if>
+ <xsl:if test="preceding-sibling::tgroup">
+ <xsl:attribute name="border-top-width">0pt</xsl:attribute>
+ <xsl:attribute name="border-top-style">none</xsl:attribute>
+ <xsl:attribute name="padding-top">0pt</xsl:attribute>
+ <xsl:attribute name="margin-top">0pt</xsl:attribute>
+ <xsl:attribute name="space-before">0pt</xsl:attribute>
+ <xsl:attribute name="space-before.minimum">0pt</xsl:attribute>
+ <xsl:attribute name="space-before.optimum">0pt</xsl:attribute>
+ <xsl:attribute name="space-before.maximum">0pt</xsl:attribute>
+ </xsl:if>
+ <xsl:if test="(colspec|thead/colspec|tfoot/colspec|tbody/colspec)[contains(@colwidth, '*')]">
+ <xsl:attribute name="table-layout">fixed</xsl:attribute>
+ </xsl:if>
+ <xse:cals-table-group>
+ <xsl:call-template name="tgroup"/>
+ </xse:cals-table-group>
+ </fo:table>
+</xsl:template>
+
+<dtm:doc dtm:idref="specs.cals-table-specs"/>
+<xsl:template match="colspec|spanspec" mode="cals-table-specs" dtm:id="specs.cals-table-specs">
+ <fo:block white-space-treatment='preserve' white-space-collapse='false'>
+ <xsl:value-of select="concat(translate(local-name(.),
+ 'colspean', 'COLSPEAN'), ': ')"/>
+ <fo:inline font-style="italic">
+ <xsl:for-each select="@*">
+ <xsl:value-of select="concat(local-name(.), '=', ., ' ')"/>
+ </xsl:for-each>
+ </fo:inline>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="table.frame"/>
+<xsl:template name="table.frame" dtm:id="table.frame">
+ <xsl:variable name="frame">
+ <xsl:choose>
+ <xsl:when test="../@frame">
+ <xsl:value-of select="../@frame"/>
+ </xsl:when>
+ <xsl:otherwise>all</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+ <xsl:choose>
+ <xsl:when test="$frame='all'">
+ <xsl:attribute name="border-left-style">
+ <xsl:value-of select="$table.frame.border.style"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-right-style">
+ <xsl:value-of select="$table.frame.border.style"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-top-style">
+ <xsl:value-of select="$table.frame.border.style"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-bottom-style">
+ <xsl:value-of select="$table.frame.border.style"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-left-width">
+ <xsl:value-of select="$table.frame.border.thickness"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-right-width">
+ <xsl:value-of select="$table.frame.border.thickness"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-top-width">
+ <xsl:value-of select="$table.frame.border.thickness"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-bottom-width">
+ <xsl:value-of select="$table.frame.border.thickness"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-left-color">
+ <xsl:value-of select="$table.frame.border.color"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-right-color">
+ <xsl:value-of select="$table.frame.border.color"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-top-color">
+ <xsl:value-of select="$table.frame.border.color"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-bottom-color">
+ <xsl:value-of select="$table.frame.border.color"/>
+ </xsl:attribute>
+ </xsl:when>
+ <xsl:when test="$frame='bottom'">
+ <xsl:attribute name="border-left-style">none</xsl:attribute>
+ <xsl:attribute name="border-right-style">none</xsl:attribute>
+ <xsl:attribute name="border-top-style">none</xsl:attribute>
+ <xsl:attribute name="border-bottom-style">
+ <xsl:value-of select="$table.frame.border.style"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-bottom-width">
+ <xsl:value-of select="$table.frame.border.thickness"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-bottom-color">
+ <xsl:value-of select="$table.frame.border.color"/>
+ </xsl:attribute>
+ </xsl:when>
+ <xsl:when test="$frame='sides'">
+ <xsl:attribute name="border-left-style">
+ <xsl:value-of select="$table.frame.border.style"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-right-style">
+ <xsl:value-of select="$table.frame.border.style"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-top-style">none</xsl:attribute>
+ <xsl:attribute name="border-bottom-style">none</xsl:attribute>
+ <xsl:attribute name="border-left-width">
+ <xsl:value-of select="$table.frame.border.thickness"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-right-width">
+ <xsl:value-of select="$table.frame.border.thickness"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-left-color">
+ <xsl:value-of select="$table.frame.border.color"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-right-color">
+ <xsl:value-of select="$table.frame.border.color"/>
+ </xsl:attribute>
+ </xsl:when>
+ <xsl:when test="$frame='top'">
+ <xsl:attribute name="border-left-style">none</xsl:attribute>
+ <xsl:attribute name="border-right-style">none</xsl:attribute>
+ <xsl:attribute name="border-top-style">
+ <xsl:value-of select="$table.frame.border.style"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-bottom-style">none</xsl:attribute>
+ <xsl:attribute name="border-top-width">
+ <xsl:value-of select="$table.frame.border.thickness"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-top-color">
+ <xsl:value-of select="$table.frame.border.color"/>
+ </xsl:attribute>
+ </xsl:when>
+ <xsl:when test="$frame='topbot'">
+ <xsl:attribute name="border-left-style">none</xsl:attribute>
+ <xsl:attribute name="border-right-style">none</xsl:attribute>
+ <xsl:attribute name="border-top-style">
+ <xsl:value-of select="$table.frame.border.style"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-bottom-style">
+ <xsl:value-of select="$table.frame.border.style"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-top-width">
+ <xsl:value-of select="$table.frame.border.thickness"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-bottom-width">
+ <xsl:value-of select="$table.frame.border.thickness"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-top-color">
+ <xsl:value-of select="$table.frame.border.color"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-bottom-color">
+ <xsl:value-of select="$table.frame.border.color"/>
+ </xsl:attribute>
+ </xsl:when>
+ <xsl:when test="$frame='none'">
+ <xsl:attribute name="border-left-style">none</xsl:attribute>
+ <xsl:attribute name="border-right-style">none</xsl:attribute>
+ <xsl:attribute name="border-top-style">none</xsl:attribute>
+ <xsl:attribute name="border-bottom-style">none</xsl:attribute>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:attribute name="border-left-style">none</xsl:attribute>
+ <xsl:attribute name="border-right-style">none</xsl:attribute>
+ <xsl:attribute name="border-top-style">none</xsl:attribute>
+ <xsl:attribute name="border-bottom-style">none</xsl:attribute>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="cals-table-empty-cell"/>
+<xsl:template name="cals-table-empty-cell" dtm:id="cals-table-empty-cell">
+ <xsl:variable name="rowsep" select="xse:cals-attribute('rowsep', '1')"/>
+ <xsl:variable name="colsep" select="xse:cals-attribute('colsep', '1')"/>
+ <xsl:variable name="colnum" select="xse:cals-attribute('cals:colnum')"/>
+
+ <fo:table-cell text-align="center"
+ display-align="center"
+ xsl:use-attribute-sets="table.cell.padding">
+ <xsl:if test="$rowsep &gt; 0">
+ <xsl:call-template name="border">
+ <xsl:with-param name="side" select="'bottom'"/>
+ </xsl:call-template>
+ </xsl:if>
+
+ <xsl:if test="$colsep &gt; 0 and $colnum &lt; ancestor::tgroup/@cols">
+ <xsl:call-template name="border">
+ <xsl:with-param name="side" select="'right'"/>
+ </xsl:call-template>
+ </xsl:if>
+ <!-- fo:table-cell should not be empty -->
+ <fo:block>
+ <xsl:text> </xsl:text>
+ </fo:block>
+ </fo:table-cell>
+</xsl:template>
+
+<!-- ==================================================================== -->
+<dtm:doc dtm:idref="border"/>
+<xsl:template name="border" dtm:id="border">
+ <xsl:param name="side" select="'left'"/>
+
+ <xsl:attribute name="border-{$side}-width">
+ <xsl:value-of select="$table.cell.border.thickness"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-{$side}-style">
+ <xsl:value-of select="$table.cell.border.style"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-{$side}-color">
+ <xsl:value-of select="$table.cell.border.color"/>
+ </xsl:attribute>
+</xsl:template>
+
+<!-- ==================================================================== -->
+<dtm:doc dtm:idref="tgroup"/>
+<xsl:template name="tgroup" dtm:id="tgroup">
+ <xsl:variable name="cols">
+ <xsl:variable name="ncols" select='number(@cols)'/>
+ <xsl:choose>
+ <xsl:when test="$ncols = 'NaN' or (floor($ncols) - $ncols != 0)
+ or $ncols &lt; 1 or $ncols &gt; 100">
+ <!--xsl:message>Bad COLS attribute value</xsl:message -->
+ <xsl:text>1</xsl:text>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$ncols"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:if test="position() = 1">
+ <!-- If this is the first tgroup, output the width attribute for the -->
+ <!-- surrounding fo:table. (If this isn't the first tgroup, trying -->
+ <!-- to output the attribute will cause an error.) -->
+ <xsl:attribute name="width">
+ <xsl:choose>
+ <xsl:when test="$default.table.width = ''">
+ <xsl:text>100%</xsl:text>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$default.table.width"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:attribute>
+ </xsl:if>
+
+ <xsl:call-template name="generate.colgroup">
+ <xsl:with-param name="cols" select="$cols"/>
+ </xsl:call-template>
+
+ <xsl:apply-templates select="thead|tbody|
+ processing-instruction('se:choice')" mode="cals-table-head"/>
+ <xsl:apply-templates select="tfoot|
+ processing-instruction('se:choice')" mode="cals-table-head"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="thead.cals-table-head"/>
+<xsl:template match="thead" mode="cals-table-head">
+ <fo:table-header>
+ <xsl:apply-templates select="row|processing-instruction('se:choice')"
+ mode="cals-table-row"/>
+ </fo:table-header>
+</xsl:template>
+
+<dtm:doc dtm:idref="tfoot.cals-table-head"/>
+<xsl:template match="tfoot" mode="cals-table-head" dtm:id="tfoot.cals-table-head">
+ <fo:table-footer>
+ <xsl:apply-templates select="row|processing-instruction('se:choice')"
+ mode="cals-table-row"/>
+ </fo:table-footer>
+</xsl:template>
+
+<dtm:doc dtm:idref="tbody.cals-table-head"/>
+<xsl:template match="tbody" mode="cals-table-head" dtm:id="tbody.cals-table-head">
+ <fo:table-body start-indent="0pt">
+ <xsl:apply-templates select="row|processing-instruction('se:choice')"
+ mode="cals-table-row"/>
+ </fo:table-body>
+</xsl:template>
+
+<dtm:doc dtm:idref="row.cals-table-row"/>
+<xsl:template match="row" mode="cals-table-row" dtm:id="row.cals-table-head">
+ <!-- Build current row with the incoming mnemonic row in "span" -->
+ <fo:table-row>
+ <xse:cals-table-row>
+ <xsl:apply-templates select="entry|entrytbl|
+ processing-instruction('se:choice')" mode="cals-table-entry"/>
+ </xse:cals-table-row>
+ </fo:table-row>
+</xsl:template>
+
+<dtm:doc dtm:idref="entry.cals-table-entry"/>
+<xsl:template match="entry|entrytbl" mode="cals-table-entry" dtm:id="entry.cals-table-entry">
+
+ <xse:cals-table-cell>
+ <xsl:variable name="rowsep" select="xse:cals-attribute('rowsep', '1')"/>
+ <xsl:variable name="colsep" select="xse:cals-attribute('colsep', '1')"/>
+ <xsl:variable name="valign" select="xse:cals-attribute('valign', '')"/>
+ <xsl:variable name="align" select="xse:cals-attribute('align', '')"/>
+ <xsl:variable name="char" select="xse:cals-attribute('char', '')"/>
+ <xsl:variable name="colspan" select="xse:cals-attribute('cals:colspan')"/>
+
+ <fo:table-cell xsl:use-attribute-sets="table.cell.padding">
+ <xsl:if test="$rowsep &gt; 0">
+ <xsl:call-template name="border">
+ <xsl:with-param name="side" select="'bottom'"/>
+ </xsl:call-template>
+ </xsl:if>
+
+ <xsl:if test="$colsep &gt; 0 and
+ xse:cals-attribute('cals:colnum') &lt; ancestor::tgroup/@cols">
+ <xsl:call-template name="border">
+ <xsl:with-param name="side" select="'right'"/>
+ </xsl:call-template>
+ </xsl:if>
+
+ <xsl:if test="$colspan &gt; 1">
+ <xsl:attribute name="number-columns-spanned">
+ <xsl:value-of select="$colspan"/>
+ </xsl:attribute>
+ </xsl:if>
+
+ <xsl:if test="@morerows">
+ <xsl:attribute name="number-rows-spanned">
+ <xsl:value-of select="@morerows+1"/>
+ </xsl:attribute>
+ </xsl:if>
+
+ <xsl:if test="$valign != ''">
+ <xsl:attribute name="display-align">
+ <xsl:choose>
+ <xsl:when test="$valign='top'">before</xsl:when>
+ <xsl:when test="$valign='middle'">center</xsl:when>
+ <xsl:when test="$valign='bottom'">after</xsl:when>
+ <xsl:otherwise>
+ <xsl:text>center</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:attribute>
+ </xsl:if>
+
+ <xsl:if test="$align != ''">
+ <xsl:attribute name="text-align">
+ <xsl:value-of select="$align"/>
+ </xsl:attribute>
+ </xsl:if>
+
+ <xsl:if test="$char != ''">
+ <xsl:attribute name="text-align">
+ <xsl:value-of select="$char"/>
+ </xsl:attribute>
+ </xsl:if>
+
+ <fo:block>
+ <!-- highlight this entry? -->
+ <xsl:if test="ancestor::thead">
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
+ </xsl:if>
+
+ <!-- are we missing any indexterms? -->
+ <xsl:if test="not(preceding-sibling::entry)
+ and not(parent::row/preceding-sibling::row)">
+ <!-- this is the first entry of the first row -->
+ <xsl:if test="ancestor::thead or
+ (ancestor::tbody
+ and not(ancestor::tbody/preceding-sibling::thead
+ or ancestor::tbody/preceding-sibling::tbody))">
+ <!-- of the thead or the first tbody -->
+ <xsl:apply-templates select="ancestor::tgroup/preceding-sibling::indexterm"/>
+ </xsl:if>
+ </xsl:if>
+
+ <xsl:choose>
+ <!-- Generate whitespace if no children -->
+ <xsl:when test="not(node())">
+ <xsl:text>&#160;</xsl:text>
+ </xsl:when>
+
+ <!-- Generate table if it is entrytbl -->
+ <xsl:when test="self::entrytbl">
+ <fo:table border-collapse="collapse">
+ <xsl:if test="(colspec|thead/colspec|tbody/colspec)[contains(@colwidth, '*')]">
+ <xsl:attribute name="table-layout">fixed</xsl:attribute>
+ </xsl:if>
+ <xse:cals-table-group>
+ <xsl:call-template name="tgroup"/>
+ </xse:cals-table-group>
+ </fo:table>
+ </xsl:when>
+
+ <!-- Otherwise build the content -->
+ <xsl:otherwise>
+ <xsl:apply-templates/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </fo:block>
+ </fo:table-cell>
+ </xse:cals-table-cell>
+</xsl:template>
+
+<xsl:template name="generate.colgroup">
+ <xsl:param name="cols" select="1"/>
+ <xsl:param name="count" select="1"/>
+
+ <xsl:choose>
+ <xsl:when test="$count>$cols"></xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="generate.col">
+ <xsl:with-param name="countcol" select="$count"/>
+ <xsl:with-param name="colspecs" select="colspec"/>
+ </xsl:call-template>
+ <xsl:call-template name="generate.colgroup">
+ <xsl:with-param name="cols" select="$cols"/>
+ <xsl:with-param name="count" select="$count+1"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="generate.col"/>
+<xsl:template name="generate.col" dtm:id="generate.col">
+ <!-- generate the table-column for column countcol -->
+ <xsl:param name="countcol">1</xsl:param>
+ <xsl:param name="colspecs"/>
+ <xsl:param name="count">1</xsl:param>
+ <xsl:param name="colnum">1</xsl:param>
+
+ <xsl:choose>
+ <xsl:when test="$count>count($colspecs)">
+ <fo:table-column column-number="{$countcol}">
+ <xsl:variable name="colwidth">
+ <xsl:call-template name="calc.column.width"/>
+ </xsl:variable>
+ <xsl:if test="$colwidth != 'proportional-column-width(1)'">
+ <xsl:attribute name="column-width">
+ <xsl:value-of select="$colwidth"/>
+ </xsl:attribute>
+ </xsl:if>
+ </fo:table-column>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:variable name="colspec" select="$colspecs[$count=position()]"/>
+
+ <xsl:variable name="colspec.colnum">
+ <xsl:choose>
+ <xsl:when test="$colspec/@colnum">
+ <xsl:value-of select="$colspec/@colnum"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$colnum"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:variable name="colspec.colwidth">
+ <xsl:choose>
+ <xsl:when test="$colspec/@colwidth">
+ <xsl:value-of select="$colspec/@colwidth"/>
+ </xsl:when>
+ <xsl:otherwise>1*</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:choose>
+ <xsl:when test="$colspec.colnum=$countcol">
+ <fo:table-column column-number="{$countcol}">
+ <xsl:variable name="colwidth">
+ <xsl:call-template name="calc.column.width">
+ <xsl:with-param name="colwidth">
+ <xsl:value-of select="$colspec.colwidth"/>
+ </xsl:with-param>
+ </xsl:call-template>
+ </xsl:variable>
+ <xsl:if test="$colwidth != 'proportional-column-width(1)'">
+ <xsl:attribute name="column-width">
+ <xsl:value-of select="$colwidth"/>
+ </xsl:attribute>
+ </xsl:if>
+ </fo:table-column>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="generate.col">
+ <xsl:with-param name="countcol" select="$countcol"/>
+ <xsl:with-param name="colspecs" select="$colspecs"/>
+ <xsl:with-param name="count" select="$count+1"/>
+ <xsl:with-param name="colnum">
+ <xsl:choose>
+ <xsl:when test="$colspec/@colnum">
+ <xsl:value-of select="$colspec/@colnum + 1"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$colnum + 1"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:with-param>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="calc.column.width"/>
+<xsl:template name="calc.column.width" dtm:id="calc.column.width">
+ <xsl:param name="colwidth">1*</xsl:param>
+
+ <xsl:if test="contains($colwidth, '*')">
+ <xsl:text>proportional-column-width(</xsl:text>
+ <xsl:value-of select="substring-before($colwidth, '*')"/>
+ <xsl:text>)</xsl:text>
+ </xsl:if>
+
+ <xsl:variable name="width-units">
+ <xsl:choose>
+ <xsl:when test="contains($colwidth, '*')">
+ <xsl:value-of
+ select="normalize-space(substring-after($colwidth, '*'))"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="normalize-space($colwidth)"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:variable name="width"
+ select="normalize-space(translate($width-units,
+ '+-0123456789.abcdefghijklmnopqrstuvwxyz',
+ '+-0123456789.'))"/>
+
+ <xsl:variable name="units"
+ select="normalize-space(translate($width-units,
+ 'abcdefghijklmnopqrstuvwxyz+-0123456789.',
+ 'abcdefghijklmnopqrstuvwxyz'))"/>
+
+ <xsl:value-of select="$width"/>
+
+ <xsl:choose>
+ <xsl:when test="$units = 'pi'">pc</xsl:when>
+ <xsl:when test="$units = '' and $width != ''">pt</xsl:when>
+ <xsl:otherwise><xsl:value-of select="$units"/></xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+</xsl:stylesheet>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/synopsis.xsl b/doc/editor_configs/serna/scons/docbook-xsl-serna/synopsis.xsl
new file mode 100644
index 0000000..c6ae2cb
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/synopsis.xsl
@@ -0,0 +1,998 @@
+<?xml version='1.0'?>
+<!DOCTYPE xsl:stylesheet [
+<!ENTITY RE "&#10;">
+<!ENTITY nbsp "&#160;">
+]>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:dtm="http://syntext.com/Extensions/DocumentTypeMetadata-1.0"
+ xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ extension-element-prefixes="dtm"
+ version='1.0'>
+
+<dtm:doc dtm:idref="cmdsynopsis"/>
+<xsl:template match="cmdsynopsis" dtm:id="cmdsynopsis">
+ <fo:block>
+ <xsl:apply-templates/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="cmdsynopsis.command"/>
+<xsl:template match="cmdsynopsis/command" dtm:id="cmdsynopsis.command">
+ <xsl:call-template name="inline.monoseq"/>
+ <xsl:text> </xsl:text>
+</xsl:template>
+
+<dtm:doc dtm:idref="cmdsynopsis.command[1]"/>
+<xsl:template match="cmdsynopsis/command[1]" priority="2" dtm:id="cmdsynopsis.command[1]">
+ <xsl:call-template name="inline.monoseq"/>
+ <xsl:text> </xsl:text>
+</xsl:template>
+
+<dtm:doc dtm:idref="grouporarg"/>
+<xsl:template match="group|arg" name="group-or-arg" dtm:id="grouporarg">
+ <xsl:variable name="choice" select="@choice"/>
+ <xsl:variable name="rep" select="@rep"/>
+ <xsl:variable name="sepchar">
+ <xsl:choose>
+ <xsl:when test="ancestor-or-self::*/@sepchar">
+ <xsl:value-of select="ancestor-or-self::*/@sepchar"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text> </xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <fo:inline>
+ <xsl:if test="node()">
+ <xsl:if test="position()>1"><xsl:value-of select="$sepchar"/></xsl:if>
+ <xsl:choose>
+ <xsl:when test="$choice='plain'">
+ <xsl:value-of select="$arg.choice.plain.open.str"/>
+ </xsl:when>
+ <xsl:when test="$choice='req'">
+ <xsl:value-of select="$arg.choice.req.open.str"/>
+ </xsl:when>
+ <xsl:when test="$choice='opt'">
+ <xsl:value-of select="$arg.choice.opt.open.str"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$arg.choice.def.open.str"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:apply-templates/>
+ <xsl:choose>
+ <xsl:when test="$rep='repeat'">
+ <xsl:value-of select="$arg.rep.repeat.str"/>
+ </xsl:when>
+ <xsl:when test="$rep='norepeat'">
+ <xsl:value-of select="$arg.rep.norepeat.str"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$arg.rep.def.str"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:choose>
+ <xsl:when test="$choice='plain'">
+ <xsl:value-of select="$arg.choice.plain.close.str"/>
+ </xsl:when>
+ <xsl:when test="$choice='req'">
+ <xsl:value-of select="$arg.choice.req.close.str"/>
+ </xsl:when>
+ <xsl:when test="$choice='opt'">
+ <xsl:value-of select="$arg.choice.opt.close.str"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$arg.choice.def.close.str"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:if>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:idref="arg.group"/>
+<xsl:template match="group/arg" dtm:id="arg.group">
+ <xsl:variable name="choice" select="@choice"/>
+ <xsl:variable name="rep" select="@rep"/>
+ <fo:inline>
+ <xsl:if test="node()">
+ <xsl:if test="position()>1"><xsl:value-of select="$arg.or.sep"/></xsl:if>
+ </xsl:if>
+ <xsl:call-template name="group-or-arg"/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:idref="sbr"/>
+<xsl:template match="sbr" dtm:id="sbr">
+ <fo:block><xsl:text> </xsl:text></fo:block>
+</xsl:template>
+
+<!-- ==================================================================== -->
+
+<dtm:doc dtm:idref="synopfragmentref"/>
+<xsl:template match="synopfragmentref" dtm:id="synopfragmentref">
+ <xsl:variable name="ref" select="id(@linkend)"/>
+ <fo:inline font-style="italic">
+ <xsl:for-each select="$ref/parent::*[1]/synopfragment">
+ <xsl:if test="self::synopfragment/@id = $ref/@id">
+ <xsl:text>(</xsl:text>
+ <xsl:value-of select="position()"/>
+ <xsl:text>)</xsl:text>
+ </xsl:if>
+ </xsl:for-each>
+ <xsl:text>&#160;</xsl:text>
+ <xsl:apply-templates/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="synopfragment" mode="synopfragment.number" dtm:id="synopfragment.number">
+ <xsl:number format="1"/>
+</xsl:template>
+
+<dtm:doc dtm:elements="synopfragment" dtm:idref="synopfragment synopfragment.number"/>
+<xsl:template match="synopfragment" dtm:id="synopfragment">
+ <xsl:variable name="snum">
+ <xsl:apply-templates select="." mode="synopfragment.number"/>
+ </xsl:variable>
+ <fo:block>
+ <xsl:text>(</xsl:text>
+ <xsl:value-of select="$snum"/>
+ <xsl:text>)</xsl:text>
+ <xsl:text> </xsl:text>
+ <xsl:apply-templates/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="funcsynopsis"/>
+<xsl:template match="funcsynopsis" dtm:id="funcsynopsis">
+ <xsl:call-template name="informal.object"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="funcsynopsisinfo"/>
+<xsl:template match="funcsynopsisinfo" dtm:id="funcsynopsisinfo">
+ <fo:block padding-bottom="1em">
+ <xsl:apply-templates/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="funcprototype"/>
+<xsl:template match="funcprototype" dtm:id="funcprototype">
+ <fo:block font-family="{$monospace.font.family}">
+ <xsl:apply-templates/>
+ <xsl:if test="$funcsynopsis.style='kr'">
+ <xsl:apply-templates select="./paramdef" mode="kr-funcsynopsis-mode"/>
+ </xsl:if>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="funcdef"/>
+<xsl:template match="funcdef" dtm:id="funcdef">
+ <fo:inline font-family="{$monospace.font.family}">
+ <xsl:apply-templates/>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:idref="funcdef.function"/>
+<xsl:template match="funcdef/function" dtm:id="funcdef.function">
+ <xsl:choose>
+ <xsl:when test="$funcsynopsis.decoration != 0">
+ <fo:inline font-weight="bold">
+ <xsl:apply-templates/>
+ </fo:inline>
+ </xsl:when>
+ <xsl:otherwise>
+ <fo:inline><xsl:apply-templates/></fo:inline>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="void"/>
+<xsl:template match="void" dtm:id="void">
+ <xsl:choose>
+ <xsl:when test="$funcsynopsis.style='ansi'">
+ <xsl:text>(void);</xsl:text>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text>();</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="varargs"/>
+<xsl:template match="varargs" dtm:id="varargs">
+ <xsl:text>(...);</xsl:text>
+</xsl:template>
+
+<dtm:doc dtm:idref="paramdef paramdef.funcsynopsys.mode"/>
+<xsl:template match="paramdef" dtm:id="paramdef">
+ <xsl:variable name="paramnum">
+ <xsl:number count="paramdef" format="1"/>
+ </xsl:variable>
+ <fo:inline>
+ <xsl:if test="node()">
+ <xsl:if test="$paramnum=1">(</xsl:if>
+ <xsl:choose>
+ <xsl:when test="$funcsynopsis.style='ansi'">
+ <xsl:apply-templates/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="./parameter"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:choose>
+ <xsl:when test="following-sibling::paramdef">
+ <xsl:text>, </xsl:text>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text>);</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:if>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:idref="paramdef.parameter"/>
+<xsl:template match="paramdef/parameter" dtm:id="paramdef.parameter">
+ <fo:inline>
+ <xsl:choose>
+ <xsl:when test="$funcsynopsis.decoration != 0">
+ <xsl:apply-templates/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates/>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:if test="following-sibling::parameter">
+ <xsl:text>, </xsl:text>
+ </xsl:if>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="paramdef" mode="kr-funcsynopsis-mode" dtm:id="paramdef.funcsynopsys.mode">
+ <fo:block>
+ <xsl:apply-templates/>
+ <xsl:text>;</xsl:text>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="funcparams"/>
+<xsl:template match="funcparams" dtm:id="funcparams">
+ <fo:inline>
+ <xsl:if test="node()">
+ <xsl:text>(</xsl:text>
+ <xsl:apply-templates/>
+ <xsl:text>)</xsl:text>
+ </xsl:if>
+ </fo:inline>
+</xsl:template>
+
+<!-- ==================================================================== -->
+
+<xsl:variable name="default-classsynopsis-language">java</xsl:variable>
+
+<dtm:doc dtm:idref="synopsises"/>
+<xsl:template match="classsynopsis
+ |fieldsynopsis
+ |methodsynopsis
+ |constructorsynopsis
+ |destructorsynopsis" dtm:id="synopsises">
+ <xsl:param name="language">
+ <xsl:choose>
+ <xsl:when test="@language">
+ <xsl:value-of select="@language"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$default-classsynopsis-language"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:param>
+ <xsl:choose>
+ <xsl:when test="$language='java'">
+ <xsl:apply-templates select="." mode="java"/>
+ </xsl:when>
+ <xsl:when test="$language='perl'">
+ <xsl:apply-templates select="." mode="perl"/>
+ </xsl:when>
+ <xsl:when test="$language='idl'">
+ <xsl:apply-templates select="." mode="idl"/>
+ </xsl:when>
+ <xsl:when test="$language='cpp'">
+ <xsl:apply-templates select="." mode="cpp"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <fo:block>
+ <xsl:text>Unrecognized language on </xsl:text>
+ <xsl:value-of select="name(.)"/>
+ <xsl:text>: </xsl:text>
+ <xsl:value-of select="$language"/>
+
+ <xsl:apply-templates select=".">
+ <xsl:with-param name="language"
+ select="$default-classsynopsis-language"/>
+ </xsl:apply-templates>
+ </fo:block>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<xsl:template name="synop-break">
+ <xsl:if test="(parent::classsynopsis
+ or (following-sibling::fieldsynopsis
+ |following-sibling::methodsynopsis
+ |following-sibling::constructorsynopsis
+ |following-sibling::destructorsynopsis)) and node()">
+ <xsl:text>&RE;</xsl:text>
+ </xsl:if>
+</xsl:template>
+
+<!-- ===== Java ======================================================== -->
+
+<dtm:doc dtm:elements="classsynopsis" dtm:idref="classsynopsis.java classsynopsis.cpp classsynopsis.idl classsynopsis.perl"/>
+<xsl:template match="classsynopsis" mode="java" dtm:id="classsynopsis.java">
+ <fo:block
+ white-space-collapse='false'
+ linefeed-treatment="preserve"
+ xsl:use-attribute-sets="monospace.verbatim.properties">
+ <xsl:apply-templates select="ooclass[1]" mode="java"/>
+ <xsl:if test="ooclass[position() &gt; 1]">
+ <xsl:text> extends</xsl:text>
+ <xsl:apply-templates select="ooclass[position() &gt; 1]" mode="java"/>
+ <xsl:if test="oointerface|ooexception">
+ <xsl:text>&RE;&nbsp;&nbsp;&nbsp;&nbsp;</xsl:text>
+ </xsl:if>
+ </xsl:if>
+ <xsl:if test="oointerface">
+ <xsl:text>implements</xsl:text>
+ <xsl:apply-templates select="oointerface" mode="java"/>
+ <xsl:if test="ooexception">
+ <xsl:text>&RE;&nbsp;&nbsp;&nbsp;&nbsp;</xsl:text>
+ </xsl:if>
+ </xsl:if>
+ <xsl:if test="ooexception">
+ <xsl:text>throws</xsl:text>
+ <xsl:apply-templates select="ooexception" mode="java"/>
+ </xsl:if>
+ <xsl:text>&nbsp;{&RE;</xsl:text>
+ <xsl:apply-templates select="classname
+ |extends
+ |implements
+ |indexterm
+ |members
+ |modifiers
+ |throws
+ |type
+ |constructorsynopsis
+ |destructorsynopsis
+ |fieldsynopsis
+ |methodsynopsis
+ |classsynopsisinfo
+ |processing-instruction('se:choice')" mode="java"/>
+ <xsl:text>}</xsl:text>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:elements="classsynopsisinfo" dtm:idref="classsynopsisinfo.java classsynopsisinfo.cpp classsynopsisinfo.idl classsynopsisinfo.perl"/>
+<xsl:template match="classsynopsisinfo" mode="java" dtm:id="classsynopsisinfo.java">
+ <fo:block>
+ <xsl:apply-templates mode="java"/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:elements="ooclass|oointerface|ooexception" dtm:idref="ooelements.java ooelements.cpp ooelements.idl ooelements.perl"/>
+<xsl:template match="ooclass|oointerface|ooexception" mode="java" dtm:id="ooelements.java">
+ <fo:inline>
+ <xsl:if test="node()">
+ <xsl:choose>
+ <xsl:when test="position() &gt; 1">
+ <xsl:text>, </xsl:text>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text> </xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:apply-templates mode="java"/>
+ </xsl:if>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:idref="meitt.java"/>
+<xsl:template match="modifiers|extends|implements|throws|type" mode="java" dtm:id="meitt.java">
+ <fo:inline>
+ <xsl:apply-templates mode="java"/>
+ <xsl:text>&nbsp;</xsl:text>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="classname" dtm:idref="classname.java classname.cpp classname.idl classname.perl"/>
+<xsl:template match="classname" mode="java" dtm:id="classname.java">
+ <fo:inline>
+ <xsl:if test="node()">
+ <xsl:if test="name(preceding-sibling::*[1]) = 'classname'">
+ <xsl:text>, </xsl:text>
+ </xsl:if>
+ <xsl:apply-templates mode="java"/>
+ </xsl:if>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="interfacename" dtm:idref="interfacename.java interfacename.cpp interfacename.idl interfacename.perl"/>
+<xsl:template match="interfacename" mode="java" dtm:id="interfacename.java">
+ <fo:inline>
+ <xsl:if test="node()">
+ <xsl:if test="name(preceding-sibling::*[1]) = 'interfacename'">
+ <xsl:text>, </xsl:text>
+ </xsl:if>
+ <xsl:apply-templates mode="java"/>
+ </xsl:if>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="exceptionname" dtm:idref="exceptionname.java exceptionname.cpp exceptionname.idl exceptionname.perl"/>
+<xsl:template match="exceptionname" mode="java" dtm:id="exceptionname.java">
+ <fo:inline>
+ <xsl:if test="node()">
+ <xsl:if test="name(preceding-sibling::*[1]) = 'exceptionname'">
+ <xsl:text>, </xsl:text>
+ </xsl:if>
+ <xsl:apply-templates mode="java"/>
+ </xsl:if>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="fieldsynopsis" dtm:idref="fieldsynopsis.java fieldsynopsis.cpp fieldsynopsis.idl fieldsynopsis.perl"/>
+<xsl:template match="fieldsynopsis" mode="java" dtm:id="fieldsynopsis.java">
+ <fo:block
+ white-space-collapse='false'
+ linefeed-treatment="preserve"
+ xsl:use-attribute-sets="monospace.verbatim.properties">
+ <xsl:text>&nbsp;&nbsp;</xsl:text>
+ <xsl:apply-templates mode="java"/>
+ <xsl:text>;</xsl:text>
+ <xsl:call-template name="synop-break"/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:elements="varname" dtm:idref="varname.java varname.cpp varname.idl varname.perl"/>
+<xsl:template match="varname" mode="java" dtm:id="varname.java">
+ <xsl:apply-templates mode="java"/>
+ <xsl:text>&nbsp;</xsl:text>
+</xsl:template>
+
+<dtm:doc dtm:elements="initializer" dtm:idref="initializer.java initializer.cpp initializer.idl initializer.perl"/>
+<xsl:template match="initializer" mode="java" dtm:id="initializer.java">
+ <xsl:text>=&nbsp;</xsl:text>
+ <xsl:apply-templates mode="java"/>
+</xsl:template>
+
+<dtm:doc dtm:elements="void" dtm:idref="void.java void.cpp void.idl void.perl"/>
+<xsl:template match="void" mode="java" dtm:id="void.java">
+ <xsl:text>void&nbsp;</xsl:text>
+</xsl:template>
+
+<dtm:doc dtm:elements="methodname" dtm:idref="methodname.java methodname.cpp methodname.idl methodname.perl"/>
+<xsl:template match="methodname" mode="java" dtm:id="methodname.java">
+ <xsl:apply-templates mode="java"/>
+</xsl:template>
+
+<dtm:doc dtm:elements="methodparam" dtm:idref="methodparam.java methodparam.cpp methodparam.idl methodparam.perl"/>
+<xsl:template match="methodparam" mode="java" dtm:id="methodparam.java">
+ <xsl:param name="indent">0</xsl:param>
+ <xsl:if test="position() &gt; 1">
+ <xsl:text>,&RE;</xsl:text>
+ <xsl:if test="$indent &gt; 0">
+ <xsl:call-template name="copy-string">
+ <xsl:with-param name="string">&nbsp;</xsl:with-param>
+ <xsl:with-param name="count" select="$indent + 1"/>
+ </xsl:call-template>
+ </xsl:if>
+ </xsl:if>
+ <xsl:apply-templates mode="java"/>
+</xsl:template>
+
+<dtm:doc dtm:elements="parameter" dtm:idref="parameter.java parameter.cpp parameter.idl parameter.perl"/>
+<xsl:template match="parameter" mode="java" dtm:id="parameter.java">
+ <xsl:apply-templates mode="java"/>
+</xsl:template>
+
+<dtm:doc dtm:elements="constructorsynopsis|destructorsynopsis|methodsynopsis" dtm:idref="synopsises.java synopsises.cpp synopsises.idl synopsises.perl"/>
+<xsl:template mode="java"
+ match="constructorsynopsis|destructorsynopsis|methodsynopsis" dtm:id="synopsises.java">
+ <xsl:variable name="modifiers" select="modifier"/>
+ <xsl:variable name="notmod" select="*[name(.) != 'modifier']"/>
+ <xsl:variable name="decl">
+ <xsl:text> </xsl:text>
+ <xsl:apply-templates select="$modifiers" mode="java"/>
+
+ <!-- type -->
+ <xsl:if test="name($notmod[1]) != 'methodname'">
+ <xsl:apply-templates select="$notmod[1]" mode="java"/>
+ </xsl:if>
+
+ <xsl:apply-templates select="methodname" mode="java"/>
+ </xsl:variable>
+
+ <fo:block
+ white-space-collapse='false'
+ linefeed-treatment="preserve"
+ xsl:use-attribute-sets="monospace.verbatim.properties">
+ <xsl:copy-of select="$decl"/>
+ <xsl:text>(</xsl:text>
+ <xsl:apply-templates select="methodparam" mode="java">
+ <xsl:with-param name="indent" select="string-length($decl)"/>
+ </xsl:apply-templates>
+ <xsl:text>)</xsl:text>
+ <xsl:if test="exceptionname">
+ <xsl:text>&RE;&nbsp;&nbsp;&nbsp;&nbsp;throws&nbsp;</xsl:text>
+ <xsl:apply-templates select="exceptionname" mode="java"/>
+ </xsl:if>
+ <xsl:text>;</xsl:text>
+ </fo:block>
+ <xsl:call-template name="synop-break"/>
+</xsl:template>
+
+<!-- ===== C++ ========================================================= -->
+
+<xsl:template match="classsynopsis" mode="cpp" dtm:id="classsynopsis.cpp">
+ <fo:block
+ white-space-collapse='false'
+ linefeed-treatment="preserve"
+ xsl:use-attribute-sets="monospace.verbatim.properties">
+ <xsl:apply-templates select="ooclass[1]" mode="cpp"/>
+ <xsl:if test="ooclass[position() &gt; 1]">
+ <xsl:text>: </xsl:text>
+ <xsl:apply-templates select="ooclass[position() &gt; 1]" mode="cpp"/>
+ <xsl:if test="oointerface|ooexception">
+ <xsl:text>&RE;&nbsp;&nbsp;&nbsp;&nbsp;</xsl:text>
+ </xsl:if>
+ </xsl:if>
+ <xsl:if test="oointerface">
+ <xsl:text> implements</xsl:text>
+ <xsl:apply-templates select="oointerface" mode="cpp"/>
+ <xsl:if test="ooexception">
+ <xsl:text>&RE;&nbsp;&nbsp;&nbsp;&nbsp;</xsl:text>
+ </xsl:if>
+ </xsl:if>
+ <xsl:if test="ooexception">
+ <xsl:text> throws</xsl:text>
+ <xsl:apply-templates select="ooexception" mode="cpp"/>
+ </xsl:if>
+ <xsl:if test="constructorsynopsis
+ |destructorsynopsis
+ |fieldsynopsis
+ |methodsynopsis
+ |classsynopsisinfo">
+ <xsl:text>&nbsp;{&RE;</xsl:text>
+ <xsl:apply-templates select="constructorsynopsis
+ |destructorsynopsis
+ |fieldsynopsis
+ |methodsynopsis
+ |classsynopsisinfo" mode="cpp"/>
+ <xsl:text>}</xsl:text>
+ </xsl:if>
+ </fo:block>
+</xsl:template>
+
+<xsl:template match="classsynopsisinfo" mode="cpp" dtm:id="classsynopsisinfo.cpp">
+ <xsl:apply-templates mode="cpp"/>
+</xsl:template>
+
+<xsl:template match="ooclass|oointerface|ooexception" mode="cpp" dtm:id="ooelements.cpp">
+ <fo:inline>
+ <xsl:if test="node()">
+ <xsl:if test="position() &gt; 1">
+ <xsl:text>, </xsl:text>
+ </xsl:if>
+ <xsl:apply-templates mode="cpp"/>
+ </xsl:if>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:elements="modifier" dtm:idref="modifier.cpp modifier.idl modifier.perl"/>
+<xsl:template match="modifier" mode="cpp" dtm:id="modifier.cpp">
+ <fo:inline>
+ <xsl:if test="node()">
+ <xsl:apply-templates mode="cpp"/>
+ <xsl:text>&nbsp;</xsl:text>
+ </xsl:if>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="classname" mode="cpp" dtm:id="classname.cpp">
+ <fo:inline>
+ <xsl:if test="node()">
+ <xsl:if test="name(preceding-sibling::*[1]) = 'classname'">
+ <xsl:text>, </xsl:text>
+ </xsl:if>
+ <xsl:apply-templates mode="cpp"/>
+ </xsl:if>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="interfacename" mode="cpp" dtm:id="interfacename.cpp">
+ <xsl:if test="name(preceding-sibling::*[1]) = 'interfacename'">
+ <xsl:text>, </xsl:text>
+ </xsl:if>
+ <xsl:apply-templates mode="cpp"/>
+</xsl:template>
+
+<xsl:template match="exceptionname" mode="cpp" dtm:id="exceptionname.cpp">
+ <xsl:if test="name(preceding-sibling::*[1]) = 'exceptionname'">
+ <xsl:text>, </xsl:text>
+ </xsl:if>
+ <xsl:apply-templates mode="cpp"/>
+</xsl:template>
+
+<xsl:template match="fieldsynopsis" mode="cpp" dtm:id="fieldsynopsis.cpp">
+ <fo:block
+ white-space-collapse='false'
+ linefeed-treatment="preserve"
+ xsl:use-attribute-sets="monospace.verbatim.properties">
+ <xsl:text>&nbsp;&nbsp;</xsl:text>
+ <xsl:apply-templates mode="cpp"/>
+ <xsl:text>;</xsl:text>
+ </fo:block>
+ <xsl:call-template name="synop-break"/>
+</xsl:template>
+
+<dtm:doc dtm:elements="type" dtm:idref="type.cpp type.idl type.perl"/>
+<xsl:template match="type" mode="cpp" dtm:id="type.cpp">
+<fo:inline>
+ <xsl:if test="node()">
+ <xsl:apply-templates mode="cpp"/>
+ <xsl:text>&nbsp;</xsl:text>
+ </xsl:if>
+</fo:inline>
+</xsl:template>
+
+<xsl:template match="varname" mode="cpp" dtm:id="varname.cpp">
+ <xsl:apply-templates mode="cpp"/>
+ <xsl:text>&nbsp;</xsl:text>
+</xsl:template>
+
+<xsl:template match="initializer" mode="cpp" dtm:id="initializer.cpp">
+<fo:inline>
+ <xsl:if test="node()">
+ <xsl:text>=&nbsp;</xsl:text>
+ <xsl:apply-templates mode="cpp"/>
+ </xsl:if>
+</fo:inline>
+</xsl:template>
+
+<xsl:template match="void" mode="cpp" dtm:id="void.cpp">
+ <fo:inline><xsl:text>void&nbsp;</xsl:text></fo:inline>
+</xsl:template>
+
+<xsl:template match="methodname" mode="cpp" dtm:id="methodname.cpp">
+ <fo:inline><xsl:apply-templates mode="cpp"/></fo:inline>
+</xsl:template>
+
+<xsl:template match="methodparam" mode="cpp" dtm:id="methodparam.cpp">
+ <fo:inline>
+ <xsl:if test="(position() &gt; 1) and node()">
+ <xsl:text>, </xsl:text>
+ </xsl:if>
+ <xsl:apply-templates mode="cpp"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template match="parameter" mode="cpp" dtm:id="parameter.cpp">
+ <fo:inline>
+ <xsl:apply-templates mode="cpp"/>
+ </fo:inline>
+</xsl:template>
+
+<xsl:template mode="cpp"
+ match="constructorsynopsis|destructorsynopsis|methodsynopsis" dtm:id="synopsises.cpp">
+ <xsl:variable name="modifiers" select="modifier"/>
+ <xsl:variable name="notmod" select="*[name(.) != 'modifier']"/>
+
+ <fo:block
+ white-space-collapse='false'
+ linefeed-treatment="preserve"
+ xsl:use-attribute-sets="monospace.verbatim.properties">
+ <xsl:if test="node()">
+ <xsl:text> </xsl:text>
+ </xsl:if>
+ <xsl:apply-templates select="$modifiers" mode="cpp"/>
+
+ <!-- type -->
+ <xsl:if test="name($notmod[1]) != 'methodname'">
+ <xsl:apply-templates select="$notmod[1]" mode="cpp"/>
+ </xsl:if>
+
+ <xsl:apply-templates select="methodname" mode="cpp"/>
+ <xsl:if test="methodparam">
+ <xsl:text>(</xsl:text>
+ <xsl:apply-templates select="methodparam" mode="cpp"/>
+ <xsl:text>)</xsl:text>
+ </xsl:if>
+ <xsl:if test="exceptionname">
+ <xsl:text>&RE;&nbsp;&nbsp;&nbsp;&nbsp;throws&nbsp;</xsl:text>
+ <xsl:apply-templates select="exceptionname" mode="cpp"/>
+ </xsl:if>
+ <xsl:if test="node()">
+ <xsl:text>;</xsl:text>
+ </xsl:if>
+ <xsl:call-template name="synop-break"/>
+ </fo:block>
+</xsl:template>
+
+<!-- ===== IDL ========================================================= -->
+
+<xsl:template match="classsynopsis" mode="idl" dtm:id="classsynopsis.idl">
+ <fo:block
+ white-space-collapse='false'
+ linefeed-treatment="preserve"
+ xsl:use-attribute-sets="monospace.verbatim.properties">
+ <xsl:text>interface </xsl:text>
+ <xsl:apply-templates select="ooclass[1]" mode="idl"/>
+ <xsl:if test="ooclass[position() &gt; 1]">
+ <xsl:text>: </xsl:text>
+ <xsl:apply-templates select="ooclass[position() &gt; 1]" mode="idl"/>
+ <xsl:if test="oointerface|ooexception">
+ <xsl:text>&RE;&nbsp;&nbsp;&nbsp;&nbsp;</xsl:text>
+ </xsl:if>
+ </xsl:if>
+ <xsl:if test="oointerface">
+ <xsl:text> implements</xsl:text>
+ <xsl:apply-templates select="oointerface" mode="idl"/>
+ <xsl:if test="ooexception">
+ <xsl:text>&RE;&nbsp;&nbsp;&nbsp;&nbsp;</xsl:text>
+ </xsl:if>
+ </xsl:if>
+ <xsl:if test="ooexception">
+ <xsl:text> throws</xsl:text>
+ <xsl:apply-templates select="ooexception" mode="idl"/>
+ </xsl:if>
+ <xsl:text>&nbsp;{&RE;</xsl:text>
+ <xsl:apply-templates select="constructorsynopsis
+ |destructorsynopsis
+ |fieldsynopsis
+ |methodsynopsis
+ |classsynopsisinfo" mode="idl"/>
+ <xsl:text>}</xsl:text>
+ </fo:block>
+</xsl:template>
+
+<xsl:template match="classsynopsisinfo" mode="idl" dtm:id="classsynopsisinfo.idl">
+ <xsl:apply-templates mode="idl"/>
+</xsl:template>
+
+<xsl:template match="ooclass|oointerface|ooexception" mode="idl" dtm:id="ooelements.idl">
+ <xsl:if test="position() &gt; 1">
+ <xsl:text>, </xsl:text>
+ </xsl:if>
+ <xsl:apply-templates mode="idl"/>
+</xsl:template>
+
+<xsl:template match="modifier" mode="idl" dtm:id="modifier.idl">
+ <xsl:apply-templates mode="idl"/>
+ <xsl:text>&nbsp;</xsl:text>
+</xsl:template>
+
+<xsl:template match="classname" mode="idl" dtm:id="classname.idl">
+ <xsl:if test="name(preceding-sibling::*[1]) = 'classname'">
+ <xsl:text>, </xsl:text>
+ </xsl:if>
+ <xsl:apply-templates mode="idl"/>
+</xsl:template>
+
+<xsl:template match="interfacename" mode="idl" dtm:id="interfacename.idl">
+ <xsl:if test="name(preceding-sibling::*[1]) = 'interfacename'">
+ <xsl:text>, </xsl:text>
+ </xsl:if>
+ <xsl:apply-templates mode="idl"/>
+</xsl:template>
+
+<xsl:template match="exceptionname" mode="idl" dtm:id="exceptionname.idl">
+ <xsl:if test="name(preceding-sibling::*[1]) = 'exceptionname'">
+ <xsl:text>, </xsl:text>
+ </xsl:if>
+ <xsl:apply-templates mode="idl"/>
+</xsl:template>
+
+<xsl:template match="fieldsynopsis" mode="idl" dtm:id="fieldsynopsis.idl">
+ <fo:block
+ white-space-collapse='false'
+ linefeed-treatment="preserve"
+ xsl:use-attribute-sets="monospace.verbatim.properties">
+ <xsl:text>&nbsp;&nbsp;</xsl:text>
+ <xsl:apply-templates mode="idl"/>
+ <xsl:text>;</xsl:text>
+ </fo:block>
+ <xsl:call-template name="synop-break"/>
+</xsl:template>
+
+<xsl:template match="type" mode="idl" dtm:id="type.idl">
+ <xsl:apply-templates mode="idl"/>
+ <xsl:text>&nbsp;</xsl:text>
+</xsl:template>
+
+<xsl:template match="varname" mode="idl" dtm:id="varname.idl">
+ <xsl:apply-templates mode="idl"/>
+ <xsl:text>&nbsp;</xsl:text>
+</xsl:template>
+
+<xsl:template match="initializer" mode="idl" dtm:id="initializer.idl">
+ <xsl:text>=&nbsp;</xsl:text>
+ <xsl:apply-templates mode="idl"/>
+</xsl:template>
+
+<xsl:template match="void" mode="idl" dtm:id="void.idl">
+ <xsl:text>void&nbsp;</xsl:text>
+</xsl:template>
+
+<xsl:template match="methodname" mode="idl" dtm:id="methodname.idl">
+ <xsl:apply-templates mode="idl"/>
+</xsl:template>
+
+<xsl:template match="methodparam" mode="idl" dtm:id="methodparam.idl">
+ <xsl:if test="position() &gt; 1">
+ <xsl:text>, </xsl:text>
+ </xsl:if>
+ <xsl:apply-templates mode="idl"/>
+</xsl:template>
+
+<xsl:template match="parameter" mode="idl" dtm:id="parameter.idl">
+ <xsl:apply-templates mode="idl"/>
+</xsl:template>
+
+<xsl:template mode="idl"
+ match="constructorsynopsis|destructorsynopsis|methodsynopsis" dtm:id="synopsises.idl">
+ <xsl:variable name="modifiers" select="modifier"/>
+ <xsl:variable name="notmod" select="*[name(.) != 'modifier']"/>
+
+ <fo:block
+ white-space-collapse='false'
+ linefeed-treatment="preserve"
+ xsl:use-attribute-sets="monospace.verbatim.properties">
+ <xsl:text> </xsl:text>
+ <xsl:apply-templates select="$modifiers" mode="idl"/>
+
+ <!-- type -->
+ <xsl:if test="name($notmod[1]) != 'methodname'">
+ <xsl:apply-templates select="$notmod[1]" mode="idl"/>
+ </xsl:if>
+
+ <xsl:apply-templates select="methodname" mode="idl"/>
+ <xsl:text>(</xsl:text>
+ <xsl:apply-templates select="methodparam" mode="idl"/>
+ <xsl:text>)</xsl:text>
+ <xsl:if test="exceptionname">
+ <xsl:text>&RE;&nbsp;&nbsp;&nbsp;&nbsp;raises(</xsl:text>
+ <xsl:apply-templates select="exceptionname" mode="idl"/>
+ <xsl:text>)</xsl:text>
+ </xsl:if>
+ <xsl:text>;</xsl:text>
+ </fo:block>
+ <xsl:call-template name="synop-break"/>
+</xsl:template>
+
+<!-- ===== Perl ======================================================== -->
+
+<xsl:template match="classsynopsis" mode="perl" dtm:id="classsynopses.perl">
+ <fo:block
+ white-space-collapse='false'
+ linefeed-treatment="preserve"
+ xsl:use-attribute-sets="monospace.verbatim.properties">
+ <xsl:text>package </xsl:text>
+ <xsl:apply-templates select="ooclass[1]" mode="perl"/>
+ <xsl:text>;&RE;</xsl:text>
+
+ <xsl:if test="ooclass[position() &gt; 1]">
+ <xsl:text>@ISA = (</xsl:text>
+ <xsl:apply-templates select="ooclass[position() &gt; 1]" mode="perl"/>
+ <xsl:text>);&RE;</xsl:text>
+ </xsl:if>
+
+ <xsl:apply-templates select="constructorsynopsis
+ |destructorsynopsis
+ |fieldsynopsis
+ |methodsynopsis
+ |classsynopsisinfo" mode="perl"/>
+ </fo:block>
+</xsl:template>
+
+<xsl:template match="classsynopsisinfo" mode="perl" dtm:id="classsynopsesinfo.perl">
+ <xsl:apply-templates mode="perl"/>
+</xsl:template>
+
+<xsl:template match="ooclass|oointerface|ooexception" mode="perl" dtm:id="ooelements.perl">
+ <xsl:if test="position() &gt; 1">
+ <xsl:text>, </xsl:text>
+ </xsl:if>
+ <xsl:apply-templates mode="perl"/>
+</xsl:template>
+
+<xsl:template match="modifier" mode="perl" dtm:id="modifier.perl">
+ <xsl:apply-templates mode="perl"/>
+ <xsl:text>&nbsp;</xsl:text>
+</xsl:template>
+
+<xsl:template match="classname" mode="perl" dtm:id="classname.perl">
+ <xsl:if test="name(preceding-sibling::*[1]) = 'classname'">
+ <xsl:text>, </xsl:text>
+ </xsl:if>
+ <xsl:apply-templates mode="perl"/>
+</xsl:template>
+
+<xsl:template match="interfacename" mode="perl" dtm:id="interfacename.perl">
+ <xsl:if test="name(preceding-sibling::*[1]) = 'interfacename'">
+ <xsl:text>, </xsl:text>
+ </xsl:if>
+ <xsl:apply-templates mode="perl"/>
+</xsl:template>
+
+<xsl:template match="exceptionname" mode="perl" dtm:id="exceptionname.perl">
+ <xsl:if test="name(preceding-sibling::*[1]) = 'exceptionname'">
+ <xsl:text>, </xsl:text>
+ </xsl:if>
+ <xsl:apply-templates mode="perl"/>
+</xsl:template>
+
+<xsl:template match="fieldsynopsis" mode="perl" dtm:id="fieldsynopsis.perl">
+ <fo:block
+ white-space-collapse='false'
+ linefeed-treatment="preserve"
+ xsl:use-attribute-sets="monospace.verbatim.properties">
+ <xsl:text>&nbsp;&nbsp;</xsl:text>
+ <xsl:apply-templates mode="perl"/>
+ <xsl:text>;</xsl:text>
+ </fo:block>
+ <xsl:call-template name="synop-break"/>
+</xsl:template>
+
+<xsl:template match="type" mode="perl" dtm:id="type.perl">
+ <xsl:apply-templates mode="perl"/>
+ <xsl:text>&nbsp;</xsl:text>
+</xsl:template>
+
+<xsl:template match="varname" mode="perl" dtm:id="varname.perl">
+ <xsl:apply-templates mode="perl"/>
+ <xsl:text>&nbsp;</xsl:text>
+</xsl:template>
+
+<xsl:template match="initializer" mode="perl" dtm:id="initializer.perl">
+ <xsl:text>=&nbsp;</xsl:text>
+ <xsl:apply-templates mode="perl"/>
+</xsl:template>
+
+<xsl:template match="void" mode="perl" dtm:id="void.perl">
+ <xsl:text>void&nbsp;</xsl:text>
+</xsl:template>
+
+<xsl:template match="methodname" mode="perl" dtm:id="methodname.perl">
+ <xsl:apply-templates mode="perl"/>
+</xsl:template>
+
+<xsl:template match="methodparam" mode="perl" dtm:id="methodparam.perl">
+ <xsl:if test="position() &gt; 1">
+ <xsl:text>, </xsl:text>
+ </xsl:if>
+ <xsl:apply-templates mode="perl"/>
+</xsl:template>
+
+<xsl:template match="parameter" mode="perl" dtm:id="parameter.perl">
+ <xsl:apply-templates mode="perl"/>
+</xsl:template>
+
+<xsl:template mode="perl"
+ match="constructorsynopsis|destructorsynopsis|methodsynopsis" dtm:id="synopsises.perl">
+ <xsl:variable name="modifiers" select="modifier"/>
+ <xsl:variable name="notmod" select="*[name(.) != 'modifier']"/>
+
+ <fo:block
+ white-space-collapse='false'
+ linefeed-treatment="preserve"
+ xsl:use-attribute-sets="monospace.verbatim.properties">
+ <xsl:text>sub </xsl:text>
+
+ <xsl:apply-templates select="methodname" mode="perl"/>
+ <xsl:text> { ... };</xsl:text>
+ <xsl:call-template name="synop-break"/>
+ </fo:block>
+</xsl:template>
+
+<!-- ==================================================================== -->
+
+</xsl:stylesheet>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/table.xsl b/doc/editor_configs/serna/scons/docbook-xsl-serna/table.xsl
new file mode 100644
index 0000000..f4f192c
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/table.xsl
@@ -0,0 +1,1103 @@
+<?xml version='1.0'?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ xmlns:xse="http://www.syntext.com/Extensions/XSLT-1.0"
+ xmlns:dtm="http://syntext.com/Extensions/DocumentTypeMetadata-1.0"
+ extension-element-prefixes="xse dtm"
+ version='1.0'>
+
+<xsl:include href="common-table.xsl"/>
+
+<dtm:doc dtm:idref="tables"/>
+<xsl:template match="table|informaltable" dtm:id="tables">
+ <xsl:variable name="param.placement"
+ select="substring-after(normalize-space($formal.title.placement),
+ concat(local-name(.), ' '))"/>
+ <xsl:variable name="placement">
+ <xsl:choose>
+ <xsl:when test="contains($param.placement, ' ')">
+ <xsl:value-of select="substring-before($param.placement, ' ')"/>
+ </xsl:when>
+ <xsl:when test="$param.placement = ''">before</xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$param.placement"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+ <fo:block>
+ <xsl:attribute name="span">
+ <xsl:choose>
+ <xsl:when test="@pgwide=1">all</xsl:when>
+ <xsl:otherwise>none</xsl:otherwise>
+ </xsl:choose>
+ </xsl:attribute>
+
+ <fo:block xsl:use-attribute-sets="formal.object.properties">
+ <xsl:if test="$placement = 'before' and not(self::informaltable)">
+ <xsl:call-template name="formal.object.heading">
+ <xsl:with-param name="placement" select="$placement"/>
+ </xsl:call-template>
+ </xsl:if>
+
+ <xsl:apply-templates select="tgroup" mode="main"/>
+
+ <xsl:if test="$placement != 'before' and not(self::informaltable)">
+ <xsl:call-template name="formal.object.heading">
+ <xsl:with-param name="placement" select="$placement"/>
+ </xsl:call-template>
+ </xsl:if>
+ </fo:block>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="tgroup.main"/>
+<xsl:template match="tgroup" mode="main" dtm:id="tgroup.main">
+ <xsl:if test="$show.preamble.editing">
+ <fo:block xsl:use-attribute-sets="preamble.attributes">
+ <fo:block background-color="transparent"
+ xsl:use-attribute-sets="title.content.properties formal.title.properties">
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="name" select="'draftarea'"/>
+ <xsl:with-param name="context" select="'empty'"/>
+ </xsl:call-template>
+ <xsl:text> "</xsl:text>
+ <xsl:value-of select="local-name(.)"/>
+ <xsl:text>" </xsl:text>
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="name" select="'metainfo'"/>
+ <xsl:with-param name="context" select="'empty'"/>
+ </xsl:call-template>
+ <xsl:text>. </xsl:text>
+ <xsl:if test="@cols">
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="name" select="'columns'"/>
+ <xsl:with-param name="context" select="'empty'"/>
+ </xsl:call-template>
+ <xsl:text>: </xsl:text>
+ <xsl:value-of select="@cols"/>
+ </xsl:if>
+ <xsl:text>. (</xsl:text>
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="name" select="'edit-attrs'"/>
+ <xsl:with-param name="context" select="'empty'"/>
+ </xsl:call-template>
+ <xsl:text>)</xsl:text>
+ </fo:block>
+ <xsl:apply-templates select="colspec|spanspec"/>
+ </fo:block>
+ </xsl:if>
+ <fo:table border-collapse="collapse">
+ <xsl:call-template name="table.frame"/>
+ <xsl:if test="following-sibling::tgroup">
+ <xsl:attribute name="border-bottom-width">0pt</xsl:attribute>
+ <xsl:attribute name="border-bottom-style">none</xsl:attribute>
+ <xsl:attribute name="padding-bottom">0pt</xsl:attribute>
+ <xsl:attribute name="margin-bottom">0pt</xsl:attribute>
+ <xsl:attribute name="space-after">0pt</xsl:attribute>
+ <xsl:attribute name="space-after.minimum">0pt</xsl:attribute>
+ <xsl:attribute name="space-after.optimum">0pt</xsl:attribute>
+ <xsl:attribute name="space-after.maximum">0pt</xsl:attribute>
+ </xsl:if>
+ <xsl:if test="preceding-sibling::tgroup">
+ <xsl:attribute name="border-top-width">0pt</xsl:attribute>
+ <xsl:attribute name="border-top-style">none</xsl:attribute>
+ <xsl:attribute name="padding-top">0pt</xsl:attribute>
+ <xsl:attribute name="margin-top">0pt</xsl:attribute>
+ <xsl:attribute name="space-before">0pt</xsl:attribute>
+ <xsl:attribute name="space-before.minimum">0pt</xsl:attribute>
+ <xsl:attribute name="space-before.optimum">0pt</xsl:attribute>
+ <xsl:attribute name="space-before.maximum">0pt</xsl:attribute>
+ </xsl:if>
+ <xsl:if test="(colspec|thead/colspec|tfoot/colspec|tbody/colspec)[contains(@colwidth, '*')]">
+ <xsl:attribute name="table-layout">fixed</xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates select="."/>
+ </fo:table>
+</xsl:template>
+
+<dtm:doc dtm:idref="specs"/>
+<xsl:template match="colspec|spanspec" dtm:id="specs">
+ <fo:block white-space-treatment='preserve' white-space-collapse='false'>
+ <xsl:value-of select="concat(translate(local-name(.),
+ 'colspean', 'COLSPEAN'), ': ')"/>
+ <fo:inline font-style="italic">
+ <xsl:for-each select="@*">
+ <xsl:value-of select="concat(local-name(.), '=', ., ' ')"/>
+ </xsl:for-each>
+ </fo:inline>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="table.frame"/>
+<xsl:template name="table.frame" dtm:id="table.frame">
+ <xsl:variable name="frame">
+ <xsl:choose>
+ <xsl:when test="../@frame">
+ <xsl:value-of select="../@frame"/>
+ </xsl:when>
+ <xsl:otherwise>all</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+ <xsl:choose>
+ <xsl:when test="$frame='all'">
+ <xsl:attribute name="border-left-style">
+ <xsl:value-of select="$table.frame.border.style"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-right-style">
+ <xsl:value-of select="$table.frame.border.style"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-top-style">
+ <xsl:value-of select="$table.frame.border.style"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-bottom-style">
+ <xsl:value-of select="$table.frame.border.style"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-left-width">
+ <xsl:value-of select="$table.frame.border.thickness"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-right-width">
+ <xsl:value-of select="$table.frame.border.thickness"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-top-width">
+ <xsl:value-of select="$table.frame.border.thickness"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-bottom-width">
+ <xsl:value-of select="$table.frame.border.thickness"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-left-color">
+ <xsl:value-of select="$table.frame.border.color"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-right-color">
+ <xsl:value-of select="$table.frame.border.color"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-top-color">
+ <xsl:value-of select="$table.frame.border.color"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-bottom-color">
+ <xsl:value-of select="$table.frame.border.color"/>
+ </xsl:attribute>
+ </xsl:when>
+ <xsl:when test="$frame='bottom'">
+ <xsl:attribute name="border-left-style">none</xsl:attribute>
+ <xsl:attribute name="border-right-style">none</xsl:attribute>
+ <xsl:attribute name="border-top-style">none</xsl:attribute>
+ <xsl:attribute name="border-bottom-style">
+ <xsl:value-of select="$table.frame.border.style"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-bottom-width">
+ <xsl:value-of select="$table.frame.border.thickness"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-bottom-color">
+ <xsl:value-of select="$table.frame.border.color"/>
+ </xsl:attribute>
+ </xsl:when>
+ <xsl:when test="$frame='sides'">
+ <xsl:attribute name="border-left-style">
+ <xsl:value-of select="$table.frame.border.style"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-right-style">
+ <xsl:value-of select="$table.frame.border.style"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-top-style">none</xsl:attribute>
+ <xsl:attribute name="border-bottom-style">none</xsl:attribute>
+ <xsl:attribute name="border-left-width">
+ <xsl:value-of select="$table.frame.border.thickness"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-right-width">
+ <xsl:value-of select="$table.frame.border.thickness"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-left-color">
+ <xsl:value-of select="$table.frame.border.color"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-right-color">
+ <xsl:value-of select="$table.frame.border.color"/>
+ </xsl:attribute>
+ </xsl:when>
+ <xsl:when test="$frame='top'">
+ <xsl:attribute name="border-left-style">none</xsl:attribute>
+ <xsl:attribute name="border-right-style">none</xsl:attribute>
+ <xsl:attribute name="border-top-style">
+ <xsl:value-of select="$table.frame.border.style"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-bottom-style">none</xsl:attribute>
+ <xsl:attribute name="border-top-width">
+ <xsl:value-of select="$table.frame.border.thickness"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-top-color">
+ <xsl:value-of select="$table.frame.border.color"/>
+ </xsl:attribute>
+ </xsl:when>
+ <xsl:when test="$frame='topbot'">
+ <xsl:attribute name="border-left-style">none</xsl:attribute>
+ <xsl:attribute name="border-right-style">none</xsl:attribute>
+ <xsl:attribute name="border-top-style">
+ <xsl:value-of select="$table.frame.border.style"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-bottom-style">
+ <xsl:value-of select="$table.frame.border.style"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-top-width">
+ <xsl:value-of select="$table.frame.border.thickness"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-bottom-width">
+ <xsl:value-of select="$table.frame.border.thickness"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-top-color">
+ <xsl:value-of select="$table.frame.border.color"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-bottom-color">
+ <xsl:value-of select="$table.frame.border.color"/>
+ </xsl:attribute>
+ </xsl:when>
+ <xsl:when test="$frame='none'">
+ <xsl:attribute name="border-left-style">none</xsl:attribute>
+ <xsl:attribute name="border-right-style">none</xsl:attribute>
+ <xsl:attribute name="border-top-style">none</xsl:attribute>
+ <xsl:attribute name="border-bottom-style">none</xsl:attribute>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:attribute name="border-left-style">none</xsl:attribute>
+ <xsl:attribute name="border-right-style">none</xsl:attribute>
+ <xsl:attribute name="border-top-style">none</xsl:attribute>
+ <xsl:attribute name="border-bottom-style">none</xsl:attribute>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="empty.table.cell"/>
+<xsl:template name="empty.table.cell" dtm:id="empty.table.cell">
+ <xsl:param name="colnum" select="0"/>
+
+ <xsl:variable name="rowsep">
+ <xsl:call-template name="inherited.table.attribute">
+ <xsl:with-param name="entry" select="NOT-AN-ELEMENT-NAME"/>
+ <xsl:with-param name="colnum" select="$colnum"/>
+ <xsl:with-param name="attribute" select="'rowsep'"/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <xsl:variable name="colsep">
+ <xsl:call-template name="inherited.table.attribute">
+ <xsl:with-param name="entry" select="NOT-AN-ELEMENT-NAME"/>
+ <xsl:with-param name="colnum" select="$colnum"/>
+ <xsl:with-param name="attribute" select="'colsep'"/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <fo:table-cell text-align="center"
+ display-align="center"
+ xsl:use-attribute-sets="table.cell.padding">
+ <xsl:if test="$rowsep &gt; 0">
+ <xsl:call-template name="border">
+ <xsl:with-param name="side" select="'bottom'"/>
+ </xsl:call-template>
+ </xsl:if>
+
+ <xsl:if test="$colsep &gt; 0 and $colnum &lt; ancestor::tgroup/@cols">
+ <xsl:call-template name="border">
+ <xsl:with-param name="side" select="'right'"/>
+ </xsl:call-template>
+ </xsl:if>
+
+ <!-- fo:table-cell should not be empty -->
+ <fo:block><xsl:text> </xsl:text></fo:block>
+ </fo:table-cell>
+</xsl:template>
+
+<!-- ==================================================================== -->
+<dtm:doc dtm:idref="border"/>
+<xsl:template name="border" dtm:id="border">
+ <xsl:param name="side" select="'left'"/>
+
+ <xsl:attribute name="border-{$side}-width">
+ <xsl:value-of select="$table.cell.border.thickness"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-{$side}-style">
+ <xsl:value-of select="$table.cell.border.style"/>
+ </xsl:attribute>
+ <xsl:attribute name="border-{$side}-color">
+ <xsl:value-of select="$table.cell.border.color"/>
+ </xsl:attribute>
+</xsl:template>
+
+<!-- ==================================================================== -->
+<dtm:doc dtm:idref="tgroup"/>
+<xsl:template match="tgroup" name="tgroup" dtm:id="tgroup">
+
+ <xsl:if test="$use-serna-extensions">
+ <xse:cals-process-tgroup/>
+ </xsl:if>
+
+ <xsl:variable name="cols">
+ <xsl:variable name="ncols" select='number(@cols)'/>
+ <xsl:choose>
+ <xsl:when test="$ncols = 'NaN' or (floor($ncols) - $ncols != 0)
+ or $ncols &lt; 1 or $ncols &gt; 100">
+ <!--xsl:message>Bad COLS attribute value</xsl:message -->
+ <xsl:text>1</xsl:text>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$ncols"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:if test="position() = 1">
+ <!-- If this is the first tgroup, output the width attribute for the -->
+ <!-- surrounding fo:table. (If this isn't the first tgroup, trying -->
+ <!-- to output the attribute will cause an error.) -->
+ <xsl:attribute name="width">
+ <xsl:choose>
+ <xsl:when test="$default.table.width = ''">
+ <xsl:text>100%</xsl:text>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$default.table.width"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:attribute>
+ </xsl:if>
+
+ <xsl:call-template name="generate.colgroup">
+ <xsl:with-param name="cols" select="$cols"/>
+ </xsl:call-template>
+
+ <xsl:apply-templates select="thead|tbody|tfoot"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="thead"/>
+<xsl:template match="thead" dtm:id="thead">
+ <fo:table-header>
+ <xsl:call-template name="row.holder"/>
+ </fo:table-header>
+</xsl:template>
+
+<dtm:doc dtm:idref="tfoot"/>
+<xsl:template match="tfoot" dtm:id="tfoot">
+ <fo:table-footer>
+ <xsl:call-template name="row.holder"/>
+ </fo:table-footer>
+</xsl:template>
+
+<dtm:doc dtm:idref="tbody"/>
+<xsl:template match="tbody" dtm:id="tbody">
+ <fo:table-body start-indent="0pt">
+ <xsl:call-template name="row.holder"/>
+ </fo:table-body>
+</xsl:template>
+
+<dtm:doc dtm:idref="row.holder"/>
+<xsl:template name="row.holder" dtm:id="row.holder">
+ <xsl:apply-templates select="row[1]" xse:sections="preserve-left">
+ <xsl:with-param name="spans">
+ <xsl:call-template name="blank.spans">
+ <xsl:with-param name="cols" select="../@cols"/>
+ </xsl:call-template>
+ </xsl:with-param>
+ </xsl:apply-templates>
+</xsl:template>
+
+<dtm:doc dtm:idref="row"/>
+<xsl:template match="row" dtm:id="row">
+ <xsl:param name="spans"/>
+
+ <!-- Build current row with the incoming mnemonic row in "span" -->
+ <fo:table-row>
+ <xsl:apply-templates select="(entry|entrytbl)[1]">
+ <xsl:with-param name="spans" select="$spans"/>
+ </xsl:apply-templates>
+ </fo:table-row>
+
+ <xsl:if test="following-sibling::row">
+ <!-- For the next row build mnemonics out of situation in the
+ current row... -->
+ <xsl:variable name="nextspans">
+ <xsl:apply-templates select="(entry|entrytbl)[1]" mode="span">
+ <xsl:with-param name="spans" select="$spans"/>
+ </xsl:apply-templates>
+ </xsl:variable>
+
+ <!-- And provide this mnemonics to the next row -->
+ <xsl:apply-templates select="following-sibling::row[1]"
+ xse:sections="preserve-left">
+ <xsl:with-param name="spans" select="$nextspans"/>
+ </xsl:apply-templates>
+ </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:idref="entry"/>
+<xsl:template match="entry|entrytbl" name="entry" dtm:id="entry">
+ <xsl:param name="col" select="1"/>
+ <xsl:param name="spans"/>
+
+ <xsl:variable name="named.colnum">
+ <xsl:call-template name="entry.colnum"/>
+ </xsl:variable>
+
+ <!-- Entry number will be the one explicitely stated in namest, or
+ the current column number (col) if explicitely was not stated. -->
+
+ <xsl:variable name="entry.colnum">
+ <xsl:choose>
+ <xsl:when test="$named.colnum &gt; 0">
+ <xsl:value-of select="$named.colnum"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$col"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <!-- Width of cell's span -->
+ <xsl:variable name="entry.colspan">
+ <xsl:choose>
+ <xsl:when test="@spanname or @namest">
+ <xsl:call-template name="calculate.colspan"/>
+ </xsl:when>
+ <xsl:otherwise>1</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <!-- Mnemonics for the rest of the cells in the row -->
+ <xsl:variable name="following.spans">
+ <xsl:call-template name="calculate.following.spans">
+ <xsl:with-param name="colspan" select="$entry.colspan"/>
+ <xsl:with-param name="spans" select="$spans"/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <xsl:choose>
+
+ <!-- If in the span mnemonics my cell is not 0 that means here is
+ vertical span from row above. Increase col number and try
+ rerendering this cell -->
+ <xsl:when test="$spans != '' and not(starts-with($spans,'0:'))">
+ <xsl:call-template name="entry">
+ <xsl:with-param name="col" select="$col+1"/>
+ <xsl:with-param name="spans" select="substring-after($spans,':')"/>
+ </xsl:call-template>
+ </xsl:when>
+
+ <!-- If the entry number is greater then current col number, then
+ generate an empty cell and try to generate this cell in new position. -->
+ <xsl:when test="$entry.colnum &gt; $col">
+ <xsl:call-template name="empty.table.cell">
+ <xsl:with-param name="colnum" select="$col"/>
+ </xsl:call-template>
+ <xsl:call-template name="entry">
+ <xsl:with-param name="col" select="$col+1"/>
+ <xsl:with-param name="spans" select="substring-after($spans,':')"/>
+ </xsl:call-template>
+ </xsl:when>
+
+ <!-- Otherwise go generating a cell -->
+ <xsl:otherwise>
+ <xsl:choose>
+ <xsl:when test="$use-serna-extensions">
+ <xsl:call-template name="make-cell">
+ <xsl:with-param
+ name="rowsep"
+ select="xse:cals-inherited-attribute(., $entry.colnum, 'rowsep', '1')"/>
+ <xsl:with-param
+ name="colsep"
+ select="xse:cals-inherited-attribute(., $entry.colnum, 'colsep', '1')"/>
+ <xsl:with-param
+ name="valign"
+ select="xse:cals-inherited-attribute(., $entry.colnum, 'valign', '')"/>
+ <xsl:with-param
+ name="align"
+ select="xse:cals-inherited-attribute(., $entry.colnum, 'align', '')"/>
+ <xsl:with-param
+ name="char"
+ select="xse:cals-inherited-attribute(., $entry.colnum, 'char', '')"/>
+ <xsl:with-param name="col" select="$col"/>
+ <xsl:with-param name="entry.colspan" select="$entry.colspan"/>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="make-cell">
+ <xsl:with-param name="rowsep">
+ <xsl:call-template name="inherited.table.attribute">
+ <xsl:with-param name="entry" select="."/>
+ <xsl:with-param name="colnum" select="$entry.colnum"/>
+ <xsl:with-param name="attribute" select="'rowsep'"/>
+ </xsl:call-template>
+ </xsl:with-param>
+ <xsl:with-param name="colsep">
+ <xsl:call-template name="inherited.table.attribute">
+ <xsl:with-param name="entry" select="."/>
+ <xsl:with-param name="colnum" select="$entry.colnum"/>
+ <xsl:with-param name="attribute" select="'colsep'"/>
+ </xsl:call-template>
+ </xsl:with-param>
+ <xsl:with-param name="valign">
+ <xsl:call-template name="inherited.table.attribute">
+ <xsl:with-param name="entry" select="."/>
+ <xsl:with-param name="colnum" select="$entry.colnum"/>
+ <xsl:with-param name="attribute" select="'valign'"/>
+ </xsl:call-template>
+ </xsl:with-param>
+ <xsl:with-param name="align">
+ <xsl:call-template name="inherited.table.attribute">
+ <xsl:with-param name="entry" select="."/>
+ <xsl:with-param name="colnum" select="$entry.colnum"/>
+ <xsl:with-param name="attribute" select="'align'"/>
+ </xsl:call-template>
+ </xsl:with-param>
+ <xsl:with-param name="char">
+ <xsl:call-template name="inherited.table.attribute">
+ <xsl:with-param name="entry" select="."/>
+ <xsl:with-param name="colnum" select="$entry.colnum"/>
+ <xsl:with-param name="attribute" select="'char'"/>
+ </xsl:call-template>
+ </xsl:with-param>
+ <xsl:with-param name="col" select="$col"/>
+ <xsl:with-param name="entry.colspan" select="$entry.colspan"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:choose>
+ <!-- Go generating next entries if there are any. -->
+ <xsl:when test="following-sibling::entry|following-sibling::entrytbl">
+ <xsl:apply-templates select="(following-sibling::entry
+ |following-sibling::entrytbl)[1]">
+ <xsl:with-param name="col" select="$col+$entry.colspan"/>
+ <xsl:with-param name="spans" select="$following.spans"/>
+ </xsl:apply-templates>
+ </xsl:when>
+ <!-- Or generate empty cells if span is not exhausted. -->
+ <xsl:otherwise>
+ <xsl:call-template name="finaltd">
+ <xsl:with-param name="spans" select="$following.spans"/>
+ <xsl:with-param name="col" select="$col+$entry.colspan"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="make-cell"/>
+<xsl:template name="make-cell" dtm:id="make-cell">
+ <xsl:param name="rowsep"/>
+ <xsl:param name="colsep"/>
+ <xsl:param name="valign"/>
+ <xsl:param name="align"/>
+ <xsl:param name="char"/>
+ <xsl:param name="col"/>
+ <xsl:param name="entry.colspan"/>
+
+ <fo:table-cell xsl:use-attribute-sets="table.cell.padding">
+ <xsl:if test="$rowsep &gt; 0">
+ <xsl:call-template name="border">
+ <xsl:with-param name="side" select="'bottom'"/>
+ </xsl:call-template>
+ </xsl:if>
+
+ <xsl:if test="$colsep &gt; 0 and $col &lt; ancestor::tgroup/@cols">
+ <xsl:call-template name="border">
+ <xsl:with-param name="side" select="'right'"/>
+ </xsl:call-template>
+ </xsl:if>
+
+ <xsl:if test="@morerows">
+ <xsl:attribute name="number-rows-spanned">
+ <xsl:value-of select="@morerows+1"/>
+ </xsl:attribute>
+ </xsl:if>
+
+ <xsl:if test="$entry.colspan &gt; 1">
+ <xsl:attribute name="number-columns-spanned">
+ <xsl:value-of select="$entry.colspan"/>
+ </xsl:attribute>
+ </xsl:if>
+
+ <xsl:if test="$valign != ''">
+ <xsl:attribute name="display-align">
+ <xsl:choose>
+ <xsl:when test="$valign='top'">before</xsl:when>
+ <xsl:when test="$valign='middle'">center</xsl:when>
+ <xsl:when test="$valign='bottom'">after</xsl:when>
+ <xsl:otherwise>
+ <xsl:text>center</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:attribute>
+ </xsl:if>
+
+ <xsl:if test="$align != ''">
+ <xsl:attribute name="text-align">
+ <xsl:value-of select="$align"/>
+ </xsl:attribute>
+ </xsl:if>
+
+ <xsl:if test="$char != ''">
+ <xsl:attribute name="text-align">
+ <xsl:value-of select="$char"/>
+ </xsl:attribute>
+ </xsl:if>
+
+ <fo:block>
+ <!-- highlight this entry? -->
+ <xsl:if test="ancestor::thead">
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
+ </xsl:if>
+
+ <!-- are we missing any indexterms? -->
+ <xsl:if test="not(preceding-sibling::entry)
+ and not(parent::row/preceding-sibling::row)">
+ <!-- this is the first entry of the first row -->
+ <xsl:if test="ancestor::thead or
+ (ancestor::tbody
+ and not(ancestor::tbody/preceding-sibling::thead
+ or ancestor::tbody/preceding-sibling::tbody))">
+ <!-- of the thead or the first tbody -->
+ <xsl:apply-templates select="ancestor::tgroup/preceding-sibling::indexterm"/>
+ </xsl:if>
+ </xsl:if>
+
+ <xsl:choose>
+ <!-- Generate whitespace if no children -->
+ <xsl:when test="not(node())">
+ <xsl:text>&#160;</xsl:text>
+ </xsl:when>
+
+ <!-- Generate table if it is entrytbl -->
+ <xsl:when test="self::entrytbl">
+ <fo:table border-collapse="collapse">
+ <xsl:if test="(colspec|thead/colspec|tbody/colspec)[contains(@colwidth, '*')]">
+ <xsl:attribute name="table-layout">fixed</xsl:attribute>
+ </xsl:if>
+ <xsl:call-template name="tgroup"/>
+ </fo:table>
+ </xsl:when>
+
+ <!-- Otherwise build the content -->
+ <xsl:otherwise>
+ <xsl:apply-templates/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </fo:block>
+ </fo:table-cell>
+</xsl:template>
+
+
+<!-- This template builds mnemonic row that designates spans valuable
+ for the next row -->
+<dtm:doc dtm:idref="sentry"/>
+<xsl:template match="entry|entrytbl" name="sentry" mode="span" dtm:id="sentry">
+ <xsl:param name="col" select="1"/>
+ <xsl:param name="spans"/>
+
+
+ <!-- Column number of the entry if explicitely stated in the entry -->
+ <xsl:variable name="entry.colnum">
+ <xsl:call-template name="entry.colnum"/>
+ </xsl:variable>
+
+ <!-- The width of the span of the entry -->
+ <xsl:variable name="entry.colspan">
+ <xsl:choose>
+ <xsl:when test="@spanname or @namest">
+ <xsl:call-template name="calculate.colspan"/>
+ </xsl:when>
+ <xsl:otherwise>1</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <!-- The rest of width of table (span) left in terms of "0:" -->
+ <xsl:variable name="following.spans">
+ <xsl:call-template name="calculate.following.spans">
+ <xsl:with-param name="colspan" select="$entry.colspan"/>
+ <xsl:with-param name="spans" select="$spans"/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <xsl:choose>
+ <!-- If spans is not exhausted and the first mnemonics has vertical span,
+ then decrease this span for 1. -->
+ <xsl:when test="$spans != '' and not(starts-with($spans,'0:'))">
+ <xsl:value-of select="substring-before($spans,':')-1"/>
+ <xsl:text>:</xsl:text>
+ <xsl:call-template name="sentry">
+ <xsl:with-param name="col" select="$col+1"/>
+ <xsl:with-param name="spans" select="substring-after($spans,':')"/>
+ </xsl:call-template>
+ </xsl:when>
+
+ <!-- If entry was explicitely shifted further then current col,
+ generate 0:, generate next mnemonic for col increased on
+ entry.colspan with span of the following spans. -->
+ <xsl:when test="$entry.colnum &gt; $col">
+ <xsl:text>0:</xsl:text>
+ <xsl:call-template name="sentry">
+ <xsl:with-param name="col" select="$col+$entry.colspan"/>
+ <xsl:with-param name="spans" select="$following.spans"/>
+ </xsl:call-template>
+ </xsl:when>
+
+ <xsl:otherwise>
+ <xsl:call-template name="copy-string">
+ <xsl:with-param name="count" select="$entry.colspan"/>
+ <xsl:with-param name="string">
+ <xsl:choose>
+ <!-- Create a mnemonic for vertical span row -->
+ <xsl:when test="@morerows">
+ <xsl:value-of select="@morerows"/>
+ </xsl:when>
+ <!-- Create a mnemonic for no vertical span row -->
+ <xsl:otherwise>0</xsl:otherwise>
+ </xsl:choose>
+ <xsl:text>:</xsl:text>
+ </xsl:with-param>
+ </xsl:call-template>
+
+ <xsl:choose>
+ <!-- Create a mnemonic for the next cell if it exist.
+ Its column number will be current column number +
+ current span length -->
+ <xsl:when test="following-sibling::entry|following-sibling::entrytbl">
+ <xsl:apply-templates select="(following-sibling::entry
+ |following-sibling::entrytbl)[1]"
+ mode="span">
+ <xsl:with-param name="col" select="$col+$entry.colspan"/>
+ <xsl:with-param name="spans" select="$following.spans"/>
+ </xsl:apply-templates>
+ </xsl:when>
+ <!-- If there is no next cell, but following spans left, then
+ the rest of mnemonics will be 1 morerow shorter. -->
+ <xsl:otherwise>
+ <xsl:call-template name="sfinaltd">
+ <xsl:with-param name="spans" select="$following.spans"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="generate.colgroup.raw"/>
+<xsl:template name="generate.colgroup.raw" dtm:id="generate.colgroup.raw">
+ <xsl:param name="cols" select="1"/>
+ <xsl:param name="count" select="1"/>
+
+ <xsl:choose>
+ <xsl:when test="$count>$cols"></xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="generate.col.raw">
+ <xsl:with-param name="countcol" select="$count"/>
+ </xsl:call-template>
+ <xsl:call-template name="generate.colgroup.raw">
+ <xsl:with-param name="cols" select="$cols"/>
+ <xsl:with-param name="count" select="$count+1"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="generate.colgroup"/>
+<xsl:template name="generate.colgroup" dtm:id="generate.colgroup">
+ <xsl:param name="cols" select="1"/>
+ <xsl:param name="count" select="1"/>
+
+ <xsl:choose>
+ <xsl:when test="$count>$cols"></xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="generate.col">
+ <xsl:with-param name="countcol" select="$count"/>
+ <xsl:with-param name="colspecs" select="colspec"/>
+ </xsl:call-template>
+ <xsl:call-template name="generate.colgroup">
+ <xsl:with-param name="cols" select="$cols"/>
+ <xsl:with-param name="count" select="$count+1"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="generate.col.raw"/>
+<xsl:template name="generate.col.raw" dtm:id="generate.col.raw">
+ <!-- generate the table-column for column countcol -->
+ <xsl:param name="countcol">1</xsl:param>
+ <xsl:param name="colspecs" select="./colspec"/>
+ <xsl:param name="count">1</xsl:param>
+ <xsl:param name="colnum">1</xsl:param>
+
+ <xsl:choose>
+ <xsl:when test="$count>count($colspecs)">
+ <fo:table-column column-number="{$countcol}"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:variable name="colspec" select="$colspecs[$count=position()]"/>
+
+ <xsl:variable name="colspec.colnum">
+ <xsl:choose>
+ <xsl:when test="$colspec/@colnum">
+ <xsl:value-of select="$colspec/@colnum"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$colnum"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:variable name="colspec.colwidth">
+ <xsl:choose>
+ <xsl:when test="$colspec/@colwidth">
+ <xsl:value-of select="$colspec/@colwidth"/>
+ </xsl:when>
+ <xsl:otherwise>1*</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:choose>
+ <xsl:when test="$colspec.colnum=$countcol">
+ <fo:table-column column-number="{$countcol}">
+ <xsl:attribute name="column-width">
+ <xsl:value-of select="$colspec.colwidth"/>
+ </xsl:attribute>
+ </fo:table-column>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="generate.col.raw">
+ <xsl:with-param name="countcol" select="$countcol"/>
+ <xsl:with-param name="colspecs" select="$colspecs"/>
+ <xsl:with-param name="count" select="$count+1"/>
+ <xsl:with-param name="colnum">
+ <xsl:choose>
+ <xsl:when test="$colspec/@colnum">
+ <xsl:value-of select="$colspec/@colnum + 1"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$colnum + 1"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:with-param>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="generate.col"/>
+<xsl:template name="generate.col" dtm:id="generate.col">
+ <!-- generate the table-column for column countcol -->
+ <xsl:param name="countcol">1</xsl:param>
+ <xsl:param name="colspecs"/>
+ <xsl:param name="count">1</xsl:param>
+ <xsl:param name="colnum">1</xsl:param>
+
+ <xsl:choose>
+ <xsl:when test="$count>count($colspecs)">
+ <fo:table-column column-number="{$countcol}">
+ <xsl:variable name="colwidth">
+ <xsl:call-template name="calc.column.width"/>
+ </xsl:variable>
+ <xsl:if test="$colwidth != 'proportional-column-width(1)'">
+ <xsl:attribute name="column-width">
+ <xsl:value-of select="$colwidth"/>
+ </xsl:attribute>
+ </xsl:if>
+ </fo:table-column>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:variable name="colspec" select="$colspecs[$count=position()]"/>
+
+ <xsl:variable name="colspec.colnum">
+ <xsl:choose>
+ <xsl:when test="$colspec/@colnum">
+ <xsl:value-of select="$colspec/@colnum"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$colnum"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:variable name="colspec.colwidth">
+ <xsl:choose>
+ <xsl:when test="$colspec/@colwidth">
+ <xsl:value-of select="$colspec/@colwidth"/>
+ </xsl:when>
+ <xsl:otherwise>1*</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:choose>
+ <xsl:when test="$colspec.colnum=$countcol">
+ <fo:table-column column-number="{$countcol}">
+ <xsl:variable name="colwidth">
+ <xsl:call-template name="calc.column.width">
+ <xsl:with-param name="colwidth">
+ <xsl:value-of select="$colspec.colwidth"/>
+ </xsl:with-param>
+ </xsl:call-template>
+ </xsl:variable>
+ <xsl:if test="$colwidth != 'proportional-column-width(1)'">
+ <xsl:attribute name="column-width">
+ <xsl:value-of select="$colwidth"/>
+ </xsl:attribute>
+ </xsl:if>
+ </fo:table-column>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="generate.col">
+ <xsl:with-param name="countcol" select="$countcol"/>
+ <xsl:with-param name="colspecs" select="$colspecs"/>
+ <xsl:with-param name="count" select="$count+1"/>
+ <xsl:with-param name="colnum">
+ <xsl:choose>
+ <xsl:when test="$colspec/@colnum">
+ <xsl:value-of select="$colspec/@colnum + 1"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$colnum + 1"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:with-param>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<!-- doc:template name="calc.column.width" xmlns="">
+<refpurpose>Calculate an XSL FO table column width specification from a
+CALS table column width specification.</refpurpose>
+
+<refdescription>
+<para>CALS expresses table column widths in the following basic
+forms:</para>
+
+<itemizedlist>
+<listitem>
+<para><emphasis>99.99units</emphasis>, a fixed length specifier.</para>
+</listitem>
+<listitem>
+<para><emphasis>99.99</emphasis>, a fixed length specifier without any units.</para>
+</listitem>
+<listitem>
+<para><emphasis>99.99*</emphasis>, a relative length specifier.</para>
+</listitem>
+<listitem>
+<para><emphasis>99.99*+99.99units</emphasis>, a combination of both.</para>
+</listitem>
+</itemizedlist>
+
+<para>The CALS units are points (pt), picas (pi), centimeters (cm),
+millimeters (mm), and inches (in). These are the same units as XSL,
+except that XSL abbreviates picas "pc" instead of "pi". If a length
+specifier has no units, the CALS default unit (pt) is assumed.</para>
+
+<para>Relative length specifiers are represented in XSL with the
+proportional-column-width() function.</para>
+
+<para>Here are some examples:</para>
+
+<itemizedlist>
+<listitem>
+<para>"36pt" becomes "36pt"</para>
+</listitem>
+<listitem>
+<para>"3pi" becomes "3pc"</para>
+</listitem>
+<listitem>
+<para>"36" becomes "36pt"</para>
+</listitem>
+<listitem>
+<para>"3*" becomes "proportional-column-width(3)"</para>
+</listitem>
+<listitem>
+<para>"3*+2pi" becomes "proportional-column-width(3)+2pc"</para>
+</listitem>
+<listitem>
+<para>"1*+2" becomes "proportional-column-width(1)+2pt"</para>
+</listitem>
+</itemizedlist>
+</refdescription>
+
+<refparameter>
+<variablelist>
+<varlistentry><term>colwidth</term>
+<listitem>
+<para>The CALS column width specification.</para>
+</listitem>
+</varlistentry>
+</variablelist>
+</refparameter>
+
+<refreturn>
+<para>The XSL column width specification.</para>
+</refreturn>
+</doc:template -->
+
+<dtm:doc dtm:idref="calc.column.width"/>
+<xsl:template name="calc.column.width" dtm:id="calc.column.width">
+ <xsl:param name="colwidth">1*</xsl:param>
+
+ <!-- Ok, the colwidth could have any one of the following forms: -->
+ <!-- 1* = proportional width -->
+ <!-- 1unit = 1.0 units wide -->
+ <!-- 1 = 1pt wide -->
+ <!-- 1*+1unit = proportional width + some fixed width -->
+ <!-- 1*+1 = proportional width + some fixed width -->
+
+ <!-- If it has a proportional width, translate it to XSL -->
+ <xsl:if test="contains($colwidth, '*')">
+ <xsl:text>proportional-column-width(</xsl:text>
+ <xsl:choose>
+ <xsl:when test="'*' = $colwidth">1</xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="substring-before($colwidth, '*')"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:text>)</xsl:text>
+ </xsl:if>
+
+ <!-- Now grab the non-proportional part of the specification -->
+ <xsl:variable name="width-units">
+ <xsl:choose>
+ <xsl:when test="contains($colwidth, '*')">
+ <xsl:value-of
+ select="normalize-space(substring-after($colwidth, '*'))"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="normalize-space($colwidth)"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <!-- Ok, now the width-units could have any one of the following forms: -->
+ <!-- = <empty string> -->
+ <!-- 1unit = 1.0 units wide -->
+ <!-- 1 = 1pt wide -->
+ <!-- with an optional leading sign -->
+
+ <!-- Grab the width part by blanking out the units part and discarding -->
+ <!-- whitespace. It's not pretty, but it works. -->
+ <xsl:variable name="width"
+ select="normalize-space(translate($width-units,
+ '+-0123456789.abcdefghijklmnopqrstuvwxyz',
+ '+-0123456789.'))"/>
+
+ <!-- Grab the units part by blanking out the width part and discarding -->
+ <!-- whitespace. It's not pretty, but it works. -->
+ <xsl:variable name="units"
+ select="normalize-space(translate($width-units,
+ 'abcdefghijklmnopqrstuvwxyz+-0123456789.',
+ 'abcdefghijklmnopqrstuvwxyz'))"/>
+
+ <!-- Output the width -->
+ <xsl:value-of select="$width"/>
+
+ <!-- Output the units, translated appropriately -->
+ <xsl:choose>
+ <xsl:when test="$units = 'pi'">pc</xsl:when>
+ <xsl:when test="$units = '' and $width != ''">pt</xsl:when>
+ <xsl:otherwise><xsl:value-of select="$units"/></xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+</xsl:stylesheet>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/titlepage.generator.xsl b/doc/editor_configs/serna/scons/docbook-xsl-serna/titlepage.generator.xsl
new file mode 100644
index 0000000..24e6719
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/titlepage.generator.xsl
@@ -0,0 +1,1218 @@
+<?xml version='1.0'?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:t="http://nwalsh.com/docbook/xsl/template/1.0"
+ xmlns:param="http://nwalsh.com/docbook/xsl/template/1.0/param"
+ xmlns:doc="http://nwalsh.com/xsl/documentation/1.0"
+ xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ xmlns:ax="http://www.w3.org/1999/XSL/TransformAlias"
+ xmlns:se="http://syntext.com/XSL/Format-1.0"
+ xmlns:dtm="http://syntext.com/Extensions/DocumentTypeMetadata-1.0"
+ extension-element-prefixes="dtm"
+ exclude-result-prefixes="doc t param"
+ version='1.0'>
+
+<!-- ********************************************************************
+
+ This file is part of the XSL DocBook Stylesheet distribution.
+ See ../README or http://nwalsh.com/docbook/xsl/ for copyright
+ and other information.
+
+ ******************************************************************** -->
+
+<!-- ==================================================================== -->
+
+<doc:reference xmlns="">
+<referenceinfo>
+<releaseinfo role="meta">
+
+</releaseinfo>
+<author><surname>Walsh</surname>
+<firstname>Norman</firstname></author>
+<copyright><year>1999</year><year>2000</year>
+<holder>Norman Walsh</holder>
+</copyright>
+</referenceinfo>
+<title>Template Stylesheet Reference</title>
+
+<partintro>
+<section><title>Introduction</title>
+
+<para>This is technical reference documentation for the DocBook XSL
+Stylesheets; it documents (some of) the parameters, templates, and
+other elements of the stylesheets.</para>
+
+<para>This is not intended to be <quote>user</quote> documentation.
+It is provided for developers writing customization layers for the
+stylesheets, and for anyone who's interested in <quote>how it
+works</quote>.</para>
+
+<para>Although I am trying to be thorough, this documentation is known
+to be incomplete. Don't forget to read the source, too :-)</para>
+</section>
+</partintro>
+
+</doc:reference>
+
+<!-- ==================================================================== -->
+
+<xsl:preserve-space elements="*"/>
+<xsl:strip-space elements="xsl:* t:*"/>
+
+<!-- ==================================================================== -->
+
+<doc:template match="t:templates" xmlns="">
+<refpurpose>Construct a stylesheet for the templates provided</refpurpose>
+
+<refdescription>
+<para>The <literal>t:templates</literal> element is the root of a
+set of templates. This template creates an appropriate
+<literal>xsl:stylesheet</literal> for the templates.</para>
+
+<para>If the <literal>t:templates</literal> element has a
+<literal>base-stylesheet</literal> attribute, an
+<literal>xsl:import</literal> statement is constructed for it.</para>
+</refdescription>
+</doc:template>
+
+<xsl:namespace-alias stylesheet-prefix="ax" result-prefix="xsl"/>
+
+<dtm:doc dtm:idref="t.templates"/>
+<xsl:template match="t:templates" dtm:id="t.templates">
+ <ax:stylesheet version="1.0">
+
+ <xsl:text>&#xA;&#xA;</xsl:text>
+ <xsl:comment>
+ <xsl:text> This stylesheet was created by </xsl:text>
+ <xsl:text>template/titlepage.xsl; </xsl:text>
+ <xsl:text>do not edit it by hand. </xsl:text>
+ </xsl:comment>
+
+ <xsl:if test="@t:base-stylesheet">
+ <xsl:text>&#xA;&#xA;</xsl:text>
+ <xsl:element name="xsl:import">
+ <xsl:attribute name="href">
+ <xsl:value-of select="@t:base-stylesheet"/>
+ </xsl:attribute>
+ </xsl:element>
+ </xsl:if>
+
+ <xsl:apply-templates/>
+
+ <xsl:text>&#xA;&#xA;</xsl:text>
+ </ax:stylesheet>
+</xsl:template>
+
+<!-- ==================================================================== -->
+
+<doc:template match="xsl:*" xmlns="">
+<refpurpose>Copy xsl: elements straight through</refpurpose>
+
+<refdescription>
+<para>This template simply copies the xsl: elements
+straight through into the result tree.</para>
+</refdescription>
+</doc:template>
+<dtm:doc dtm:idref="xslchilds"/>
+<xsl:template match="xsl:*" dtm:id="xslchilds">
+ <xsl:apply-templates select="." mode="copy"/>
+</xsl:template>
+
+<!-- ==================================================================== -->
+
+<doc:template match="t:titlepage" xmlns="">
+<refpurpose>Create the templates necessary to construct a title page</refpurpose>
+
+<refdescription>
+<para>The <literal>t:titlepage</literal> element creates a set of
+templates for processing the titlepage for an element. The
+<quote>root</quote> of this template set is the template named
+<quote><literal>wrapper.titlepage</literal></quote>. That is the
+template that should be called to generate the title page.
+</para>
+
+<para>The <literal>t:titlepage</literal> element has three attributes:
+
+<variablelist>
+<varlistentry><term>element</term>
+<listitem><para>The name of the source document element for which
+these templates apply. In other words, to make a title page for the
+<sgmltag>article</sgmltag> element, set the
+<sgmltag class="attribute">element</sgmltag> attribute to
+<quote><literal>article</literal></quote>. This attribute is required.
+</para></listitem>
+</varlistentry>
+<varlistentry><term>wrapper</term>
+<listitem><para>The entire title page can be wrapped with an element.
+This attribute identifies that element.
+</para></listitem>
+</varlistentry>
+<varlistentry><term>class</term>
+<listitem><para>If the <sgmltag class="attribute">class</sgmltag> attribute
+is set, a <sgmltag class="attribute">class</sgmltag> attribute with this
+value will be added to the wrapper element that surrounds the entire
+title page.
+</para></listitem>
+</varlistentry>
+</variablelist>
+</para>
+
+<para>Any other attributes are copied through literally to the
+wrapper element.</para>
+
+<para>The content of a <literal>t:titlepage</literal> is one or
+more <literal>t:titlepage-content</literal>,
+<literal>t:titlepage-separator</literal>, and
+<literal>t:titlepage-before</literal> elements.</para>
+
+<para>Each of these elements may be provided for the <quote>recto</quote>
+and <quote>verso</quote> sides of the title page.</para>
+
+</refdescription>
+</doc:template>
+<dtm:doc dtm:idref="t.titlepage"/>
+<xsl:template match="t:titlepage" dtm:id="t.titlepage">
+ <!-- process the children to make the templates for the content,
+ separator, and before elements -->
+ <xsl:apply-templates/>
+
+ <!-- output the title page template -->
+ <xsl:text>&#xA;&#xA;</xsl:text>
+ <xsl:element name="xsl:template">
+ <xsl:attribute name="name">
+ <xsl:value-of select="@t:element"/>
+ <xsl:text>.titlepage</xsl:text>
+ </xsl:attribute>
+ <xsl:text>&#xA; </xsl:text>
+
+ <ax:variable name="result">
+ <xsl:if test="t:titlepage-before[@t:side='recto']">
+ <xsl:element name="xsl:call-template">
+ <xsl:attribute name="name">
+ <xsl:value-of select="@t:element"/>
+ <xsl:text>.titlepage.before.recto</xsl:text>
+ </xsl:attribute>
+ </xsl:element>
+ </xsl:if>
+
+ <xsl:text>&#xA; </xsl:text>
+ <xsl:element name="xsl:call-template">
+ <xsl:attribute name="name">
+ <xsl:value-of select="@t:element"/>
+ <xsl:text>.titlepage.recto</xsl:text>
+ </xsl:attribute>
+ </xsl:element>
+
+ <xsl:text>&#xA; </xsl:text>
+
+ <!-- Added if to exlude extra pages templates if title-content|before
+ not used -->
+ <xsl:if test="t:titlepage-content[@t:side='verso']|t:titlepage-before[@t:side='verso']">
+ <xsl:text>&#xA; </xsl:text>
+
+ <xsl:if test="t:titlepage-before[@t:side='verso']">
+ <xsl:element name="xsl:call-template">
+ <xsl:attribute name="name">
+ <xsl:value-of select="@t:element"/>
+ <xsl:text>.titlepage.before.verso</xsl:text>
+ </xsl:attribute>
+ </xsl:element>
+ </xsl:if>
+
+ <xsl:text>&#xA; </xsl:text>
+ <xsl:element name="xsl:call-template">
+ <xsl:attribute name="name">
+ <xsl:value-of select="@t:element"/>
+ <xsl:text>.titlepage.verso</xsl:text>
+ </xsl:attribute>
+ </xsl:element>
+ <xsl:text>&#xA; </xsl:text>
+ </xsl:if>
+
+ <xsl:text>&#xA; </xsl:text>
+
+ <!-- Added if to exclude separator template if not used -->
+ <xsl:if test="t:titlepage-separator">
+ <xsl:element name="xsl:call-template">
+ <xsl:attribute name="name">
+ <xsl:value-of select="@t:element"/>
+ <xsl:text>.titlepage.separator</xsl:text>
+ </xsl:attribute>
+ </xsl:element>
+ <xsl:text>&#xA; </xsl:text>
+ </xsl:if>
+ </ax:variable>
+
+ <ax:if test="string-length($result)">
+ <xsl:element name="{@t:wrapper}">
+ <xsl:apply-templates select="@*" mode="copy.literal.atts"/>
+ <xsl:text>&#xA; </xsl:text>
+ <ax:copy-of select="$result"/>
+ </xsl:element>
+ </ax:if>
+
+ <xsl:text>&#xA;</xsl:text>
+ </xsl:element>
+
+ <!-- If we're not importing a base stylesheet, output a default rule
+ for the recto- and verso-mode elements. (If we are importing a
+ base stylesheet, don't do this since the *-rules in the stylesheet
+ will totally override the rules that would otherwise be imported.)
+ -->
+
+ <xsl:if test="not(../@t:base-stylesheet)">
+
+ <!-- output a fold template -->
+ <xsl:text>&#xA;&#xA;</xsl:text>
+ <xsl:element name="xsl:template">
+ <xsl:attribute name="match">
+ <xsl:value-of select="@t:element"/>
+ </xsl:attribute>
+ <xsl:attribute name="mode">serna.fold</xsl:attribute>
+ <xsl:text>&#xA; </xsl:text>
+ <fo:block se:fold="" color="gray">
+ <xsl:text>&#xA; </xsl:text>
+ <se:fold show-element-name="false"/>
+ <xsl:element name="xsl:apply-templates">
+ <xsl:attribute name="select">title</xsl:attribute>
+ <xsl:attribute name="mode">
+ <xsl:value-of select="@t:element"/>
+ <xsl:text>.titlepage.recto.auto.mode</xsl:text>
+ </xsl:attribute>
+ </xsl:element>
+ <xsl:text>&#xA; </xsl:text>
+ </fo:block>
+ <xsl:text>&#xA;</xsl:text>
+ </xsl:element>
+
+ <!-- output a default rule for the recto-modes elements -->
+ <xsl:text>&#xA;&#xA;</xsl:text>
+ <xsl:element name="xsl:template">
+ <xsl:attribute name="match">*</xsl:attribute>
+ <xsl:attribute name="mode">
+ <xsl:value-of select="@t:element"/>
+ <xsl:text>.titlepage.recto.mode</xsl:text>
+ </xsl:attribute>
+ <xsl:text>&#xA; </xsl:text>
+ <xsl:comment> if an element isn't found in this mode, </xsl:comment>
+ <xsl:text>&#xA; </xsl:text>
+ <xsl:comment> try the generic titlepage.mode </xsl:comment>
+ <xsl:text>&#xA; </xsl:text>
+ <xsl:element name="xsl:apply-templates">
+ <xsl:attribute name="select">.</xsl:attribute>
+ <xsl:attribute name="mode">titlepage.mode</xsl:attribute>
+ </xsl:element>
+ <xsl:text>&#xA;</xsl:text>
+ </xsl:element>
+
+ <!-- output a default rule for the verso-modes elements -->
+ <xsl:text>&#xA;&#xA;</xsl:text>
+ <xsl:element name="xsl:template">
+ <xsl:attribute name="match">*</xsl:attribute>
+ <xsl:attribute name="mode">
+ <xsl:value-of select="@t:element"/>
+ <xsl:text>.titlepage.verso.mode</xsl:text>
+ </xsl:attribute>
+ <xsl:text>&#xA; </xsl:text>
+ <xsl:comment> if an element isn't found in this mode, </xsl:comment>
+ <xsl:text>&#xA; </xsl:text>
+ <xsl:comment> try the generic titlepage.mode </xsl:comment>
+ <xsl:text>&#xA; </xsl:text>
+ <xsl:element name="xsl:apply-templates">
+ <xsl:attribute name="select">.</xsl:attribute>
+ <xsl:attribute name="mode">titlepage.mode</xsl:attribute>
+ </xsl:element>
+ <xsl:text>&#xA;</xsl:text>
+ </xsl:element>
+ </xsl:if>
+
+ <!-- output default templates for each of the elements listed in -->
+ <!-- the titlepage-content. If a template is suppressed or forced -->
+ <!-- to be off, or has already been output, don't output it. -->
+ <xsl:for-each select="t:titlepage-content/*">
+ <xsl:variable name="thisnode" select="."/>
+ <xsl:if test="(not(@t:suppress-template) or @t:suppress-template='0')
+ and (not(@t:force) or @t:force='0')
+ and (not(preceding-sibling::*[name(.)=name($thisnode)]))">
+ <xsl:text>&#xA;&#xA;</xsl:text>
+ <xsl:element name="xsl:template">
+ <xsl:attribute name="match">
+ <xsl:value-of select="name(.)"/>
+ </xsl:attribute>
+ <xsl:attribute name="mode">
+ <xsl:value-of select="../../@t:element"/>
+ <xsl:text>.titlepage.</xsl:text>
+ <xsl:value-of select="../@t:side"/>
+ <xsl:text>.auto.mode</xsl:text>
+ </xsl:attribute>
+ <xsl:text>&#xA;</xsl:text>
+ <xsl:element name="{../../@t:wrapper}">
+ <xsl:attribute name="xsl:use-attribute-sets">
+ <xsl:value-of select="../../@t:element"/>
+ <xsl:text>.titlepage.</xsl:text>
+ <xsl:value-of select="../@t:side"/>
+ <xsl:text>.style</xsl:text>
+ </xsl:attribute>
+ <xsl:for-each select="@*">
+ <xsl:if test="not(starts-with(namespace-uri(.),
+ 'http://nwalsh.com/docbook/xsl/template/1.0'))">
+ <xsl:attribute name="{name(.)}" namespace="{namespace-uri(.)}">
+ <xsl:value-of select="."/>
+ </xsl:attribute>
+ </xsl:if>
+ </xsl:for-each>
+ <xsl:text>&#xA;</xsl:text>
+
+ <xsl:choose>
+ <xsl:when test="@t:named-template">
+ <xsl:element name="xsl:call-template">
+ <xsl:attribute name="name">
+ <xsl:value-of select="@t:named-template"/>
+ </xsl:attribute>
+ <xsl:for-each select="@*">
+ <xsl:if test="namespace-uri(.)='http://nwalsh.com/docbook/xsl/template/1.0/param'">
+ <xsl:text>&#xA;</xsl:text>
+ <xsl:element name="xsl:with-param">
+ <xsl:attribute name="name">
+ <xsl:value-of select="local-name(.)"/>
+ </xsl:attribute>
+ <xsl:attribute name="select">
+ <xsl:value-of select="."/>
+ </xsl:attribute>
+ </xsl:element>
+ </xsl:if>
+ </xsl:for-each>
+ <xsl:text>&#xA;</xsl:text>
+ </xsl:element>
+ </xsl:when>
+ <xsl:when test="@t:named-mode">
+ <xsl:element name="xsl:apply-templates">
+ <xsl:attribute name="mode">
+ <xsl:value-of select="@t:named-mode"/>
+ </xsl:attribute>
+ <xsl:attribute name="select">.</xsl:attribute>
+ <xsl:text>&#xA;</xsl:text>
+ </xsl:element>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:element name="xsl:apply-templates">
+ <xsl:attribute name="select">.</xsl:attribute>
+ <xsl:attribute name="mode">
+ <xsl:value-of select="../../@t:element"/>
+ <xsl:text>.titlepage.</xsl:text>
+ <xsl:value-of select="../@t:side"/>
+ <xsl:text>.mode</xsl:text>
+ </xsl:attribute>
+ </xsl:element>
+ </xsl:otherwise>
+ </xsl:choose>
+
+ <xsl:text>&#xA;</xsl:text>
+ </xsl:element>
+ <xsl:text>&#xA;</xsl:text>
+ </xsl:element>
+ </xsl:if>
+ </xsl:for-each>
+</xsl:template>
+
+<doc:template match="@*" mode="copy.literal.atts" xmlns="">
+<refpurpose>Copy t:titlepage attributes</refpurpose>
+
+<refdescription>
+<para>This template copies all of the <quote>other</quote> attributes
+from a <literal>t:titlepage</literal> element onto the specified
+wrapper.</para>
+</refdescription>
+</doc:template>
+<dtm:doc dtm:idref="attrs.copy-literal-atts"/>
+<xsl:template match="@*" mode="copy.literal.atts" dtm:id="attrs.copy-literal-atts">
+ <xsl:if test="not(starts-with(namespace-uri(.),
+ 'http://nwalsh.com/docbook/xsl/template/1.0'))">
+ <xsl:attribute name="{name(.)}">
+ <xsl:value-of select="."/>
+ </xsl:attribute>
+ </xsl:if>
+</xsl:template>
+
+<!-- ==================================================================== -->
+
+<doc:template match="t:titlepage-content">
+<refpurpose>Create templates for the content of one side of a title page</refpurpose>
+
+<refdescription>
+<para>The title page content, that is, the elements from the source
+document that are rendered on the title page, can be controlled independently
+for the recto and verso sides of the title page.</para>
+
+<para>The <literal>t:titlepage-content</literal> element has two attributes:
+
+<variablelist>
+<varlistentry><term>side</term>
+<listitem><para>Identifies the side of the page to which this title
+page content applies. The
+<sgmltag class="attribute">side</sgmltag> attribute is required and
+must be set to either
+<quote><literal>recto</literal></quote> or
+<quote><literal>verso</literal></quote>. In addition, you must specify
+exactly one <literal>t:titlepage-content</literal> for each side
+within each <literal>t:titlepage</literal>.</para>
+</listitem>
+</varlistentry>
+<varlistentry><term>order</term>
+<listitem><para>Indicates how the order of the elements presented on
+the title page is determined. If the
+<sgmltag class="attribute">order</sgmltag> is
+<quote><literal>document</literal></quote>, the elements are presented
+in document order. Otherwise (if the
+<sgmltag class="attribute">order</sgmltag> is
+<quote><literal>stylesheet</literal></quote>), the elements are presented
+in the order that they appear in the template (and consequently in
+the stylesheet).</para>
+</listitem>
+</varlistentry>
+</variablelist>
+</para>
+
+<para>The content of a <literal>t:titlepage-content</literal> element is
+a list of element names. These names should be unqualified. They identify
+the elements in the source document that should appear on the title page.
+</para>
+
+<para>Each element may have a single attribute:
+<sgmltag class="attribute">predicate</sgmltag>. The value of this
+attribute is used as a predicate for the expression that matches
+the element on which it occurs.</para>
+
+<para>In other words, to put only the first three authors on the
+recto-side of a title
+page, you could specify:
+
+<screen><![CDATA[
+ <t:titlepage-contents side="recto">
+ <!-- other titlepage elements -->
+ <author predicate="[count(previous-sibling::author)<2]"/>
+ <!-- other titlepage elements -->
+ </t:titlepage-contents>
+]]></screen>
+</para>
+
+<para>Usually, the elements so named are empty. But it is possible to
+make one level of selection within them. Suppose that you want to
+process <literal>authorgroup</literal> elements on the title page, but
+you want to select only proper authors, editors, or corporate authors,
+not collaborators or other credited authors.</para>
+
+<para>In that case, you can put a <literal>t:or</literal> group inside
+the <literal>authorgroup</literal> element:
+
+<screen><![CDATA[
+ <t:titlepage-contents side="recto">
+ <!-- other titlepage elements -->
+ <authorgroup>
+ <t:or>
+ <author/>
+ <editor/>
+ <corpauthor/>
+ </t:or>
+ </authorgroup>
+ <!-- other titlepage elements -->
+ </t:titlepage-contents>
+]]></screen>
+</para>
+
+<para>This will have the effect of automatically generating a template
+for processing <literal>authorgroup</literal>s in the title page mode,
+selecting only the specified children. If you need more complex processing,
+you'll have to construct the templates by hand.</para>
+
+</refdescription>
+</doc:template>
+<dtm:doc dtm:idref="t.titlepage-content"/>
+<xsl:template match="t:titlepage-content" dtm:id="t.titlepage-content">
+
+ <xsl:variable name="wrapper" select="../@t:wrapper"/>
+
+ <xsl:variable name="side">
+ <xsl:choose>
+ <xsl:when test="@t:side='recto' or @t:side='verso'">
+ <xsl:value-of select="@t:side"/>
+ </xsl:when>
+ <xsl:when test="@t:side">
+ <xsl:message terminate="yes">
+ <xsl:text>Illegal value specified for @t:side </xsl:text>
+ <xsl:text>on t:titlepage-content: </xsl:text>
+ <xsl:value-of select="@t:side"/>
+ </xsl:message>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:message terminate="yes">
+ <xsl:text>The @t:side attribute is required on </xsl:text>
+ <xsl:text>t:titlepage-content.</xsl:text>
+ </xsl:message>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:variable name="mode">
+ <xsl:value-of select="../@t:element"/>
+ <xsl:text>.titlepage.</xsl:text>
+ <xsl:value-of select="$side"/>
+ <xsl:text>.auto.mode</xsl:text>
+ </xsl:variable>
+
+ <xsl:text>&#xA;&#xA;</xsl:text>
+ <xsl:element name="xsl:template">
+ <xsl:attribute name="name">
+ <xsl:value-of select="../@t:element"/>
+ <xsl:text>.titlepage.</xsl:text>
+ <xsl:value-of select="$side"/>
+ </xsl:attribute>
+
+ <xsl:text>&#xA; </xsl:text>
+
+ <ax:variable name="result">
+ <xsl:choose>
+ <!-- if document order is selected, make a huge select statement
+ on a single xsl:apply-templates to pick out the right elements
+ for the title page. -->
+ <xsl:when test="@t:order='document'">
+ <xsl:if test="count(child::*)&gt;0">
+ <xsl:element name="xsl:apply-templates">
+ <xsl:attribute name="mode">
+ <xsl:value-of select="$mode"/>
+ </xsl:attribute>
+ <xsl:attribute name="select">
+ <xsl:apply-templates mode="document.order"/>
+ </xsl:attribute>
+ </xsl:element>
+ </xsl:if>
+ </xsl:when>
+
+ <!-- otherwise, select each of the elements in the specified order -->
+ <xsl:otherwise>
+ <xsl:apply-templates mode="stylesheet.order"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </ax:variable>
+
+ <xsl:text>&#xA;&#xA; </xsl:text>
+ <ax:if test="string-length($result)">
+ <xsl:text>&#xA; </xsl:text>
+ <xsl:element name="{$wrapper}">
+ <xsl:apply-templates select="@*" mode="copy.literal.atts"/>
+ <ax:copy-of select="$result"/>
+ <xsl:text>&#xA; </xsl:text>
+ </xsl:element>
+ <xsl:text>&#xA; </xsl:text>
+ </ax:if>
+
+ <xsl:apply-templates mode="titlepage.specialrules"/>
+ <xsl:text>&#xA; </xsl:text>
+ </xsl:element>
+
+</xsl:template>
+
+<!-- ==================================================================== -->
+
+<doc:template match="t:titlepage-separator">
+<refpurpose>Create templates for the separator</refpurpose>
+
+<refdescription>
+<para>The title page is separated from the content which follows it by
+the markup specified in the <literal>t:titlepage-separator</literal>
+element.</para>
+</refdescription>
+</doc:template>
+<dtm:doc dtm:idref="t.titlepage-separator"/>
+<xsl:template match="t:titlepage-separator" dtm:id="t.titlepage-separator">
+ <xsl:text>&#xA;&#xA;</xsl:text>
+ <xsl:element name="xsl:template">
+ <xsl:attribute name="name">
+ <xsl:value-of select="../@t:element"/>
+ <xsl:text>.titlepage.separator</xsl:text>
+ </xsl:attribute>
+
+ <xsl:apply-templates mode="copy"/>
+ <xsl:text>&#xA;</xsl:text>
+ </xsl:element>
+</xsl:template>
+
+<!-- ==================================================================== -->
+
+<doc:template match="t:titlepage-before">
+<refpurpose>Create templates for what precedes a title page</refpurpose>
+
+<refdescription>
+<para>Each side of the title page is preceded by the markup specified
+in the <literal>t:titlepage-before</literal> element for that
+side.</para>
+</refdescription>
+</doc:template>
+<dtm:doc dtm:idref="t.titlepage-before"/>
+<xsl:template match="t:titlepage-before" dtm:id="t.titlepage-before">
+ <xsl:text>&#xA;&#xA;</xsl:text>
+ <xsl:element name="xsl:template">
+ <xsl:attribute name="name">
+ <xsl:value-of select="../@t:element"/>
+ <xsl:text>.titlepage.before.</xsl:text>
+ <xsl:value-of select="@t:side"/>
+ </xsl:attribute>
+
+ <xsl:apply-templates mode="copy"/>
+ <xsl:text>&#xA;</xsl:text>
+ </xsl:element>
+</xsl:template>
+
+<!-- ==================================================================== -->
+
+<doc:template match="*" mode="copy" xmlns="">
+<refpurpose>Copy elements</refpurpose>
+
+<refdescription>
+<para>This template simply copies the elements that it applies to
+straight through into the result tree.</para>
+</refdescription>
+</doc:template>
+<dtm:doc dtm:idref="all.copy"/>
+<xsl:template match="*" mode="copy" dtm:id="all.copy">
+ <xsl:element name="{name(.)}">
+ <xsl:apply-templates select="@*" mode="copy"/>
+ <xsl:apply-templates mode="copy"/>
+ </xsl:element>
+</xsl:template>
+
+<!-- ==================================================================== -->
+
+<doc:template match="@*" mode="copy" xmlns="">
+<refpurpose>Copy attributes</refpurpose>
+
+<refdescription>
+<para>This template simply copies the attributes that it applies to
+straight through into the result tree.</para>
+</refdescription>
+</doc:template>
+<dtm:doc dtm:idref="attrs.copy"/>
+<xsl:template match="@*" mode="copy" dtm:id="attrs.copy">
+ <xsl:attribute name="{name(.)}">
+ <xsl:value-of select="."/>
+ </xsl:attribute>
+</xsl:template>
+
+<!-- ==================================================================== -->
+
+<doc:template match="*" mode="document.order" xmlns="">
+<refpurpose>Create rules to process titlepage elements in document order</refpurpose>
+
+<refdescription>
+<para>This template is called to process all of the children of the
+<literal>t:titlepage-content</literal> element. It creates the hairy
+select expression necessary to process each of those elements in
+the title page.</para>
+
+<para>Note that this template automatically handles the case where
+some DocBook elements, like title and subtitle, can occur both inside
+the *info elements where metadata is usually stored and outside.
+</para>
+
+<para>It also automatically calculates the name for the *info container
+and handles elements that have historically had containers with different
+names.</para>
+
+</refdescription>
+</doc:template>
+<dtm:doc dtm:idref="all.document.order"/>
+<xsl:template match="*" mode="document.order" dtm:id="all.document.order">
+ <xsl:variable name="docinfo">
+ <xsl:value-of select="ancestor::t:titlepage/@t:element"/>
+ <xsl:text>info</xsl:text>
+ </xsl:variable>
+
+ <xsl:variable name="altinfo">
+ <xsl:choose>
+ <xsl:when test="ancestor::t:titlepage/@t:element='article'">
+ <xsl:text>artheader</xsl:text>
+ </xsl:when>
+ <xsl:when test="ancestor::t:titlepage/@t:element='section'"></xsl:when>
+ <xsl:when test="ancestor::t:titlepage/@t:element='sect1'"></xsl:when>
+ <xsl:when test="ancestor::t:titlepage/@t:element='sect2'"></xsl:when>
+ <xsl:when test="ancestor::t:titlepage/@t:element='sect3'"></xsl:when>
+ <xsl:when test="ancestor::t:titlepage/@t:element='sect4'"></xsl:when>
+ <xsl:when test="ancestor::t:titlepage/@t:element='sect5'"></xsl:when>
+ <xsl:when test="ancestor::t:titlepage/@t:element='book'"></xsl:when>
+ <xsl:when test="ancestor::t:titlepage/@t:element='set'"></xsl:when>
+ <xsl:otherwise>docinfo</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:variable name="side">
+ <xsl:choose>
+ <xsl:when test="ancestor::t:titlepage-content/@t:side">
+ <xsl:value-of select="ancestor::t:titlepage-content/@t:side"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text>recto</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:variable name="mode">
+ <xsl:value-of select="ancestor::t:titlepage/@t:element"/>
+ <xsl:text>.titlepage.</xsl:text>
+ <xsl:value-of select="$side"/>
+ <xsl:text>.auto.mode</xsl:text>
+ </xsl:variable>
+
+ <xsl:if test="preceding-sibling::*">
+ <xsl:text>|</xsl:text>
+ </xsl:if>
+
+ <xsl:value-of select="$docinfo"/>
+ <xsl:text>/</xsl:text>
+ <xsl:value-of select="name(.)"/>
+ <xsl:if test="@t:predicate">
+ <xsl:value-of select="@t:predicate"/>
+ </xsl:if>
+
+ <xsl:if test="$altinfo != ''">
+ <xsl:text>|</xsl:text>
+ <xsl:value-of select="$altinfo"/>
+ <xsl:text>/</xsl:text>
+ <xsl:value-of select="name(.)"/>
+ <xsl:if test="@t:predicate">
+ <xsl:value-of select="@t:predicate"/>
+ </xsl:if>
+ </xsl:if>
+
+ <xsl:if test="local-name(.) = 'title'
+ or local-name(.) = 'subtitle'
+ or local-name(.) = 'titleabbrev'">
+ <xsl:text>|</xsl:text>
+ <xsl:value-of select="name(.)"/>
+ <xsl:if test="@t:predicate">
+ <xsl:value-of select="@t:predicate"/>
+ </xsl:if>
+ </xsl:if>
+</xsl:template>
+
+<!-- ==================================================================== -->
+
+<doc:template match="*" mode="document.order" xmlns="">
+<refpurpose>Create rules to process titlepage elements in stylesheet order</refpurpose>
+
+<refdescription>
+<para>This template is called to process all of the children of the
+<literal>t:titlepage-content</literal> element. It creates the set
+of <literal>xsl:apply-templates</literal> elements necessary
+process each of those elements in the title page.</para>
+
+<para>Note that this template automatically handles the case where
+some DocBook elements, like title and subtitle, can occur both inside
+the *info elements where metadata is usually stored and outside.
+</para>
+
+<para>It also automatically calculates the name for the *info container
+and handles elements that have historically had containers with different
+names.</para>
+
+</refdescription>
+</doc:template>
+<dtm:doc dtm:idref="all.stylesheet.order"/>
+<xsl:template match="*" mode="stylesheet.order" dtm:id="all.stylesheet.order">
+ <xsl:variable name="docinfo">
+ <xsl:value-of select="ancestor::t:titlepage/@t:element"/>
+ <xsl:text>info</xsl:text>
+ </xsl:variable>
+
+ <xsl:variable name="altinfo">
+ <xsl:choose>
+ <xsl:when test="ancestor::t:titlepage/@t:element='article'">
+ <xsl:text>artheader</xsl:text>
+ </xsl:when>
+ <xsl:when test="ancestor::t:titlepage/@t:element='section'"></xsl:when>
+ <xsl:when test="ancestor::t:titlepage/@t:element='sect1'"></xsl:when>
+ <xsl:when test="ancestor::t:titlepage/@t:element='sect2'"></xsl:when>
+ <xsl:when test="ancestor::t:titlepage/@t:element='sect3'"></xsl:when>
+ <xsl:when test="ancestor::t:titlepage/@t:element='sect4'"></xsl:when>
+ <xsl:when test="ancestor::t:titlepage/@t:element='sect5'"></xsl:when>
+ <xsl:when test="ancestor::t:titlepage/@t:element='book'"></xsl:when>
+ <xsl:when test="ancestor::t:titlepage/@t:element='set'"></xsl:when>
+ <xsl:otherwise>docinfo</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:variable name="side">
+ <xsl:choose>
+ <xsl:when test="ancestor::t:titlepage-content/@t:side">
+ <xsl:value-of select="ancestor::t:titlepage-content/@t:side"/>
+ </xsl:when>
+ <xsl:otherwise>recto</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:variable name="mode">
+ <xsl:value-of select="ancestor::t:titlepage/@t:element"/>
+ <xsl:text>.titlepage.</xsl:text>
+ <xsl:value-of select="$side"/>
+ <xsl:text>.auto.mode</xsl:text>
+ </xsl:variable>
+
+ <xsl:text>&#xA; </xsl:text>
+
+ <xsl:choose>
+ <xsl:when test="@t:force and @t:force != '0'">
+ <xsl:choose>
+ <xsl:when test="@t:named-template">
+ <xsl:element name="{../../@t:wrapper}">
+ <xsl:attribute name="xsl:use-attribute-sets">
+ <xsl:value-of select="../../@t:element"/>
+ <xsl:text>.titlepage.</xsl:text>
+ <xsl:value-of select="../@t:side"/>
+ <xsl:text>.style</xsl:text>
+ </xsl:attribute>
+ <xsl:for-each select="@*">
+ <xsl:if test="not(starts-with(namespace-uri(.),
+ 'http://nwalsh.com/docbook/xsl/template/1.0'))">
+ <xsl:attribute name="{name(.)}" namespace="{namespace-uri(.)}">
+ <xsl:value-of select="."/>
+ </xsl:attribute>
+ </xsl:if>
+ </xsl:for-each>
+ <xsl:text>&#xA;</xsl:text>
+ <xsl:element name="xsl:call-template">
+ <xsl:attribute name="name">
+ <xsl:value-of select="@t:named-template"/>
+ </xsl:attribute>
+ <xsl:for-each select="@*">
+ <xsl:if test="namespace-uri(.)='http://nwalsh.com/docbook/xsl/template/1.0/param'">
+ <xsl:text>&#xA;</xsl:text>
+ <xsl:element name="xsl:with-param">
+ <xsl:attribute name="name">
+ <xsl:value-of select="local-name(.)"/>
+ </xsl:attribute>
+ <xsl:attribute name="select">
+ <xsl:value-of select="."/>
+ </xsl:attribute>
+ </xsl:element>
+ </xsl:if>
+ </xsl:for-each>
+ <xsl:text>&#xA;</xsl:text>
+ </xsl:element>
+ </xsl:element>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:message terminate="yes">
+ <xsl:text>Force can only be used with named-templates.</xsl:text>
+ </xsl:message>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:when>
+ <xsl:otherwise>
+
+ <xsl:choose>
+ <xsl:when test="local-name(.) = 'title'
+ or local-name(.) = 'subtitle'
+ or local-name(.) = 'titleabbrev'">
+ <!-- the title, subtitle, and titleabbrev elements are special -->
+ <xsl:element name="xsl:choose">
+ <xsl:text>&#xA; </xsl:text>
+ <xsl:element name="xsl:when">
+ <xsl:attribute name="test">
+ <xsl:value-of select="$docinfo"/>
+ <xsl:text>/</xsl:text>
+ <xsl:value-of select="name(.)"/>
+ </xsl:attribute>
+ <xsl:text>&#xA; </xsl:text>
+ <xsl:element name="xsl:apply-templates">
+ <xsl:attribute name="mode">
+ <xsl:value-of select="$mode"/>
+ </xsl:attribute>
+ <xsl:attribute name="select">
+ <xsl:value-of select="$docinfo"/>
+ <xsl:text>/</xsl:text>
+ <xsl:value-of select="name(.)"/>
+ <xsl:if test="@t:predicate">
+ <xsl:value-of select="@t:predicate"/>
+ </xsl:if>
+ <xsl:text>[not(self::processing-instruction('se:choice'))]</xsl:text>
+ </xsl:attribute>
+ </xsl:element>
+ <xsl:text>&#xA; </xsl:text>
+ </xsl:element>
+
+ <xsl:if test="$altinfo != ''">
+ <xsl:text>&#xA; </xsl:text>
+ <xsl:element name="xsl:when">
+ <xsl:attribute name="test">
+ <xsl:value-of select="$altinfo"/>
+ <xsl:text>/</xsl:text>
+ <xsl:value-of select="name(.)"/>
+ </xsl:attribute>
+ <xsl:text>&#xA; </xsl:text>
+ <xsl:element name="xsl:apply-templates">
+ <xsl:attribute name="mode">
+ <xsl:value-of select="$mode"/>
+ </xsl:attribute>
+ <xsl:attribute name="select">
+ <xsl:value-of select="$altinfo"/>
+ <xsl:text>/</xsl:text>
+ <xsl:value-of select="name(.)"/>
+ <xsl:if test="@t:predicate">
+ <xsl:value-of select="@t:predicate"/>
+ </xsl:if>
+ <xsl:text>[not(self::processing-instruction('se:choice'))]</xsl:text>
+ </xsl:attribute>
+ </xsl:element>
+ <xsl:text>&#xA; </xsl:text>
+ </xsl:element>
+ </xsl:if>
+
+ <xsl:text>&#xA; </xsl:text>
+ <xsl:element name="xsl:when">
+ <xsl:attribute name="test">
+ <xsl:value-of select="name(.)"/>
+ </xsl:attribute>
+ <xsl:text>&#xA; </xsl:text>
+ <xsl:element name="xsl:apply-templates">
+ <xsl:attribute name="mode">
+ <xsl:value-of select="$mode"/>
+ </xsl:attribute>
+ <xsl:attribute name="select">
+ <xsl:value-of select="name(.)"/>
+ <xsl:if test="@t:predicate">
+ <xsl:value-of select="@t:predicate"/>
+ </xsl:if>
+ <xsl:text>[not(self::processing-instruction('se:choice'))]</xsl:text>
+ </xsl:attribute>
+ </xsl:element>
+ <xsl:text>&#xA; </xsl:text>
+ </xsl:element>
+ <xsl:text>&#xA; </xsl:text>
+ </xsl:element>
+ <xsl:text>&#xA;</xsl:text>
+ </xsl:when>
+ <xsl:otherwise>
+
+ <!-- first take care of the $docinfo version -->
+ <xsl:element name="xsl:apply-templates">
+ <xsl:attribute name="mode">
+ <xsl:value-of select="$mode"/>
+ </xsl:attribute>
+ <xsl:attribute name="select">
+ <xsl:value-of select="$docinfo"/>
+ <xsl:text>/</xsl:text>
+ <xsl:value-of select="name(.)"/>
+ <xsl:if test="@t:predicate">
+ <xsl:value-of select="@t:predicate"/>
+ </xsl:if>
+ <xsl:text>[not(self::processing-instruction('se:choice'))]</xsl:text>
+ </xsl:attribute>
+ </xsl:element>
+
+ <!-- then take care of the $altinfo version -->
+ <xsl:if test="$altinfo != ''">
+ <xsl:text>&#xA; </xsl:text>
+ <xsl:element name="xsl:apply-templates">
+ <xsl:attribute name="mode">
+ <xsl:value-of select="$mode"/>
+ </xsl:attribute>
+ <xsl:attribute name="select">
+ <xsl:value-of select="$altinfo"/>
+ <xsl:text>/</xsl:text>
+ <xsl:value-of select="name(.)"/>
+ <xsl:if test="@t:predicate">
+ <xsl:value-of select="@t:predicate"/>
+ </xsl:if>
+ <xsl:text>[not(self::processing-instruction('se:choice'))]</xsl:text>
+ </xsl:attribute>
+ </xsl:element>
+ </xsl:if>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<!-- ==================================================================== -->
+
+<doc:template match="*" mode="titlepage.specialrules" xmlns="">
+<refpurpose>Create templates for special rules</refpurpose>
+
+<refdescription>
+<para>This template is called to process all of the descendants of the
+<literal>t:titlepage-content</literal> element that require special
+processing. At present, that's just <literal>t:or</literal> elements.
+</para>
+</refdescription>
+</doc:template>
+<dtm:doc dtm:idref="all.titlepage.specialrules"/>
+<xsl:template match="*" mode="titlepage.specialrules" dtm:id="all.titlepage.specialrules">
+ <xsl:variable name="side">
+ <xsl:choose>
+ <xsl:when test="ancestor::t:titlepage-content/@t:side">
+ <xsl:value-of select="ancestor::t:titlepage-content/@t:side"/>
+ </xsl:when>
+ <xsl:otherwise>recto</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:variable name="mode">
+ <xsl:value-of select="ancestor::t:titlepage/@t:element"/>
+ <xsl:text>.titlepage.</xsl:text>
+ <xsl:value-of select="$side"/>
+ <xsl:text>.auto.mode</xsl:text>
+ </xsl:variable>
+
+ <xsl:choose>
+ <xsl:when test="name(.)='t:or'">
+ <xsl:apply-templates select="*" mode="titlepage.specialrules"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:if test="*"><!-- does this element have children? -->
+ <xsl:text>&#xA;&#xA;</xsl:text>
+ <xsl:element name="xsl:template">
+ <xsl:attribute name="match">
+ <xsl:value-of select="name(.)"/>
+ </xsl:attribute>
+ <xsl:attribute name="mode">
+ <xsl:value-of select="$mode"/>
+ </xsl:attribute>
+ <xsl:apply-templates select="*" mode="titlepage.subrules"/>
+ <xsl:text>&#xA;</xsl:text>
+ </xsl:element>
+ </xsl:if>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<!-- ==================================================================== -->
+
+<doc:template match="*" mode="titlepage.subrules" xmlns="">
+<refpurpose>Create template for individual special rules</refpurpose>
+
+<refdescription>
+<para>This template is called to process the children of special
+template elements.
+</para>
+</refdescription>
+</doc:template>
+<dtm:doc dtm:idref="all.titlepage.subrules"/>
+<xsl:template match="*" mode="titlepage.subrules" dtm:id="all.titlepage.subrules">
+ <xsl:variable name="side">
+ <xsl:choose>
+ <xsl:when test="ancestor::t:titlepage-content/@t:side">
+ <xsl:value-of select="ancestor::t:titlepage-content/@t:side"/>
+ </xsl:when>
+ <xsl:otherwise>recto</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:variable name="mode">
+ <xsl:value-of select="ancestor::t:titlepage/@t:element"/>
+ <xsl:text>.titlepage.</xsl:text>
+ <xsl:value-of select="$side"/>
+ <xsl:text>.auto.mode</xsl:text>
+ </xsl:variable>
+
+ <xsl:element name="xsl:apply-templates">
+ <xsl:attribute name="select">
+ <xsl:value-of select="name(.)"/>
+ </xsl:attribute>
+ <xsl:attribute name="mode">
+ <xsl:value-of select="$mode"/>
+ </xsl:attribute>
+ </xsl:element>
+</xsl:template>
+
+<!-- ==================================================================== -->
+
+<doc:template match="t:or" xmlns="">
+<refpurpose>Process the t:or special rule</refpurpose>
+
+<refdescription>
+<para>This template processes t:or.</para>
+</refdescription>
+</doc:template>
+<dtm:doc dtm:idref="t.or"/>
+<xsl:template match="t:or" dtm:id="t.or">
+ <xsl:variable name="side">
+ <xsl:choose>
+ <xsl:when test="ancestor::t:titlepage-content/@t:side">
+ <xsl:value-of select="ancestor::t:titlepage-content/@t:side"/>
+ </xsl:when>
+ <xsl:otherwise>recto</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:variable name="mode">
+ <xsl:value-of select="ancestor::t:titlepage/@t:element"/>
+ <xsl:text>.titlepage.</xsl:text>
+ <xsl:value-of select="$side"/>
+ <xsl:text>.auto.mode</xsl:text>
+ </xsl:variable>
+
+ <xsl:text>&#xA; </xsl:text>
+ <xsl:element name="xsl:apply-templates">
+ <xsl:attribute name="select">
+ <xsl:call-template name="element-or-list"/>
+ </xsl:attribute>
+ <xsl:attribute name="mode">
+ <xsl:value-of select="$mode"/>
+ </xsl:attribute>
+ </xsl:element>
+</xsl:template>
+
+<!-- ==================================================================== -->
+
+<doc:template match="t:or" mode="titlepage.subrules" xmlns="">
+<refpurpose>Process the t:or special rule in
+titlepage.subrules mode</refpurpose>
+
+<refdescription>
+<para>The titlepage.subrules mode doesn't apply to t:or, so just
+reprocess this node in the normal mode.</para>
+</refdescription>
+</doc:template>
+<dtm:doc dtm:idref="t.or.titlepage.subrules"/>
+<xsl:template match="t:or" mode="titlepage.subrules" dtm:id="t.or.titlepage.subrules">
+ <xsl:apply-templates select="."/><!-- use normal mode -->
+</xsl:template>
+
+<!-- ==================================================================== -->
+
+<doc:template name="element-or-list" xmlns="">
+<refpurpose>Construct the "or-list" used in the select attribute for
+special rules.</refpurpose>
+
+<refdescription>
+<para>Walk through each of the children of t:or, producing the
+text of the select attribute.</para>
+</refdescription>
+</doc:template>
+<dtm:doc dtm:idref="element-or-list"/>
+<xsl:template name="element-or-list" dtm:id="element-or-list">
+ <xsl:param name="elements" select="*"/>
+ <xsl:param name="element.count" select="count($elements)"/>
+ <xsl:param name="count" select="1"/>
+ <xsl:param name="orlist"></xsl:param>
+
+ <xsl:choose>
+ <xsl:when test="$count>$element.count">
+ <xsl:value-of select="$orlist"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="element-or-list">
+ <xsl:with-param name="elements" select="$elements"/>
+ <xsl:with-param name="element.count" select="$element.count"/>
+ <xsl:with-param name="count" select="$count+1"/>
+ <xsl:with-param name="orlist">
+ <xsl:value-of select="$orlist"/>
+ <xsl:if test="not($orlist='')">|</xsl:if>
+ <xsl:value-of select="name($elements[position()=$count])"/>
+ </xsl:with-param>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<!-- ==================================================================== -->
+
+</xsl:stylesheet>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/titlepage.templates.xml b/doc/editor_configs/serna/scons/docbook-xsl-serna/titlepage.templates.xml
new file mode 100644
index 0000000..8b5951a
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/titlepage.templates.xml
@@ -0,0 +1,412 @@
+<!DOCTYPE t:templates [
+<!ENTITY hsize0 "10pt">
+<!ENTITY hsize1 "12pt">
+<!ENTITY hsize2 "14.4pt">
+<!ENTITY hsize3 "17.28pt">
+<!ENTITY hsize4 "20.736pt">
+<!ENTITY hsize5 "24.8832pt">
+<!ENTITY hsize0space "7.5pt"> <!-- 0.75 * hsize0 -->
+<!ENTITY hsize1space "9pt"> <!-- 0.75 * hsize1 -->
+<!ENTITY hsize2space "10.8pt"> <!-- 0.75 * hsize2 -->
+<!ENTITY hsize3space "12.96pt"> <!-- 0.75 * hsize3 -->
+<!ENTITY hsize4space "15.552pt"> <!-- 0.75 * hsize4 -->
+<!ENTITY hsize5space "18.6624pt"> <!-- 0.75 * hsize5 -->
+]>
+<t:templates xmlns:t="http://nwalsh.com/docbook/xsl/template/1.0"
+ xmlns:param="http://nwalsh.com/docbook/xsl/template/1.0/param"
+ xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+
+<t:titlepage t:element="article" t:wrapper="fo:block"
+ font-family="{$title.font.family}">
+
+ <t:titlepage-content t:side="recto"
+ text-align="center">
+
+ <title t:named-mode="article.titles.mode"
+ font-size="&hsize5;"
+ font-weight="bold"/>
+
+ <subtitle/>
+
+ <corpauthor padding-bottom="0.5em"
+ font-size="&hsize2;"/>
+ <authorgroup padding-bottom="0.5em"
+ font-size="&hsize2;"/>
+ <author padding-bottom="0.5em"
+ font-size="&hsize2;"/>
+
+ <othercredit padding-bottom="0.5em"/>
+ <releaseinfo padding-bottom="0.5em"/>
+ <copyright padding-bottom="0.5em"/>
+ <legalnotice text-align="start"
+ margin-left="0.5in"
+ margin-right="0.5in"
+ font-family="{$body.font.family}"/>
+ <pubdate padding-bottom="0.5em"/>
+ <revision padding-bottom="0.5em"/>
+ <revhistory
+ t:named-mode="rev.mode"
+ padding-bottom="0.5em"/>
+ <abstract padding-bottom="0.5em"
+ text-align="start"
+ margin-left="0.5in"
+ margin-right="0.5in"
+ font-family="{$body.font.family}"/>
+ </t:titlepage-content>
+</t:titlepage>
+
+ <t:titlepage t:element="chapter" t:wrapper="fo:block"
+ font-family="{$title.font.family}">
+ <t:titlepage-content t:side="recto" margin-left="{$title.margin.left}">
+ <title t:named-mode="chapter.titles.mode"
+ font-size="&hsize5;"
+ font-weight="bold"/>
+
+ <subtitle padding-bottom="0.5em"
+ font-style="italic"
+ font-size="&hsize2;"
+ font-weight="bold"/>
+
+ <corpauthor padding-bottom="0.5em"
+ space-after="0.5em"
+ font-size="&hsize2;"/>
+
+ <authorgroup padding-bottom="0.5em"
+ space-after="0.5em"
+ font-size="&hsize2;"/>
+
+ <author padding-bottom="0.5em"
+ space-after="0.5em"
+ font-size="&hsize2;"/>
+
+ <othercredit/>
+ <releaseinfo/>
+ <copyright/>
+ <legalnotice/>
+ <pubdate/>
+ <revision/>
+ <revhistory/>
+ <abstract/>
+ </t:titlepage-content>
+</t:titlepage>
+
+ <t:titlepage t:element="book" t:wrapper="fo:block">
+ <t:titlepage-content t:side="recto">
+ <title
+ t:named-mode="book.titles.mode"
+ text-align="center"
+ font-size="&hsize5;"
+ padding-bottom="&hsize5space;"
+ font-weight="bold"
+ font-family="{$title.font.family}"/>
+ <subtitle
+ text-align="center"
+ font-size="&hsize4;"
+ padding-bottom="&hsize3space;"
+ font-family="{$title.font.family}"/>
+ <corpauthor font-size="&hsize3;"
+ keep-with-next="always"
+ padding-bottom="1in"/>
+ <authorgroup padding-bottom="1in"/>
+ <author font-size="&hsize3;"
+ padding-bottom="&hsize2space;"
+ keep-with-next="always"/>
+ </t:titlepage-content>
+
+ <t:titlepage-content t:side="verso">
+ <corpauthor/>
+ <authorgroup
+ padding-bottom="2em"
+ t:named-template="verso.authorgroup"/>
+ <author/>
+ <othercredit/>
+ <pubdate padding-bottom="1em"/>
+ <copyright/>
+ <revision padding-bottom="0.5em"/>
+ <revhistory
+ t:named-mode="rev.mode"
+ padding-bottom="0.5em"/>
+
+ <abstract/>
+ <legalnotice font-size="8pt"/>
+ </t:titlepage-content>
+ </t:titlepage>
+
+<t:titlepage t:element="part" t:wrapper="fo:block">
+ <t:titlepage-content t:side="recto">
+ <title
+ t:named-mode="part.titles.mode"
+ text-align="center"
+ font-size="&hsize5;"
+ padding-bottom="&hsize5space;"
+ font-weight="bold"
+ font-family="{$title.font.family}"/>
+ <subtitle
+ text-align="center"
+ font-size="&hsize4;"
+ padding-bottom="&hsize4space;"
+ font-weight='bold'
+ font-style='italic'
+ font-family="{$title.font.family}"/>
+ </t:titlepage-content>
+</t:titlepage>
+
+ <t:titlepage t:element="preface" t:wrapper="fo:block">
+ <t:titlepage-content t:side="recto">
+ <title
+ t:named-mode="preface.titles.mode"
+ margin-left="{$title.margin.left}"
+ font-size="&hsize5;"
+ font-family="{$title.font.family}"
+ font-weight="bold"/>
+ <subtitle
+ font-family="{$title.font.family}"/>
+ <corpauthor/>
+ <authorgroup/>
+ <author/>
+ <othercredit/>
+ <releaseinfo/>
+ <copyright/>
+ <legalnotice/>
+ <pubdate/>
+ <revision/>
+ <revhistory/>
+ <abstract/>
+ </t:titlepage-content>
+</t:titlepage>
+
+<t:titlepage t:element="partintro" t:wrapper="fo:block">
+ <t:titlepage-content t:side="recto">
+ <title
+ text-align="center"
+ font-size="&hsize5;"
+ font-weight="bold"
+ padding-bottom="1em"
+ font-family="{$title.font.family}"/>
+ <subtitle
+ text-align="center"
+ font-size="&hsize2;"
+ font-weight="bold"
+ font-style="italic"
+ font-family="{$title.font.family}"/>
+ <corpauthor/>
+ <authorgroup/>
+ <author/>
+ <othercredit/>
+ <releaseinfo/>
+ <copyright/>
+ <legalnotice/>
+ <pubdate/>
+ <revision/>
+ <revhistory/>
+ <abstract/>
+ </t:titlepage-content>
+
+</t:titlepage>
+
+<t:titlepage t:element="reference" t:wrapper="fo:block">
+ <t:titlepage-content t:side="recto">
+ <title
+ t:named-mode="reference.titles.mode"
+ text-align="center"
+ font-size="&hsize5;"
+ padding-bottom="&hsize5space;"
+ font-weight="bold"
+ font-family="{$title.font.family}"/>
+ <subtitle
+ font-family="{$title.font.family}"/>
+ </t:titlepage-content>
+
+</t:titlepage>
+
+<t:titlepage t:element="refsynopsisdiv" t:wrapper="fo:block">
+ <t:titlepage-content t:side="recto">
+ <title
+ t:named-mode="refsynopsisdiv.titles.mode"
+ font-weight="bold"
+ margin-left="{$title.margin.left}"
+ font-family="{$title.font.family}"/>
+ </t:titlepage-content>
+
+</t:titlepage>
+
+<t:titlepage t:element="refsection" t:wrapper="fo:block">
+ <t:titlepage-content t:side="recto">
+ <title
+ t:named-mode="section.titles.mode"
+ font-weight="bold"
+ font-family="{$title.font.family}"/>
+ </t:titlepage-content>
+
+</t:titlepage>
+
+<t:titlepage t:element="section" t:wrapper="fo:block">
+ <t:titlepage-content t:side="recto">
+ <title
+ t:named-mode="section.titles.mode"
+ font-weight="bold"
+ margin-left="{$title.margin.left}"
+ font-family="{$title.font.family}"/>
+ <subtitle
+ font-family="{$title.font.family}"/>
+ <corpauthor/>
+ <authorgroup/>
+ <author/>
+ <othercredit/>
+ <releaseinfo/>
+ <copyright/>
+ <legalnotice/>
+ <pubdate/>
+ <revision/>
+ <revhistory/>
+ <abstract/>
+ </t:titlepage-content>
+</t:titlepage>
+
+<t:titlepage t:element="simplesect" t:wrapper="fo:block">
+ <t:titlepage-content t:side="recto">
+ <title
+ t:named-mode="simplesect.titles.mode"
+ font-weight="bold"
+ margin-left="{$title.margin.left}"
+ font-family="{$title.font.family}"/>
+ <subtitle
+ font-family="{$title.font.family}"/>
+ <corpauthor/>
+ <authorgroup/>
+ <author/>
+ <othercredit/>
+ <releaseinfo/>
+ <copyright/>
+ <legalnotice/>
+ <pubdate/>
+ <revision/>
+ <revhistory/>
+ <abstract/>
+ </t:titlepage-content>
+
+ <t:titlepage-content t:side="verso">
+ </t:titlepage-content>
+
+ <t:titlepage-separator>
+ </t:titlepage-separator>
+
+ <t:titlepage-before t:side="recto">
+ </t:titlepage-before>
+
+ <t:titlepage-before t:side="verso">
+ </t:titlepage-before>
+</t:titlepage>
+
+
+<t:titlepage t:element="set" t:wrapper="fo:block">
+ <t:titlepage-content t:side="recto">
+ <title
+ t:named-mode="set.titles.mode"
+ text-align="center"
+ font-size="&hsize5;"
+ padding-bottom="&hsize5space;"
+ font-weight="bold"
+ font-family="{$title.font.family}"/>
+ <subtitle
+ font-family="{$title.font.family}"
+ text-align="center"/>
+ <corpauthor/>
+ <authorgroup/>
+ <author/>
+ <othercredit/>
+ <releaseinfo/>
+ <copyright/>
+ <legalnotice/>
+ <pubdate/>
+ <revision/>
+ <revhistory/>
+ <abstract/>
+ </t:titlepage-content>
+</t:titlepage>
+
+ <t:titlepage t:element="appendix" t:wrapper="fo:block">
+ <t:titlepage-content t:side="recto">
+ <title
+ t:named-mode="appendix.titles.mode"
+ margin-left="{$title.margin.left}"
+ font-size="&hsize5;"
+ font-weight="bold"
+ font-family="{$title.font.family}"/>
+ <subtitle
+ font-family="{$title.font.family}"/>
+ <corpauthor/>
+ <authorgroup/>
+ <author/>
+ <othercredit/>
+ <releaseinfo/>
+ <copyright/>
+ <legalnotice/>
+ <pubdate/>
+ <revision/>
+ <revhistory/>
+ <abstract/>
+ </t:titlepage-content>
+</t:titlepage>
+
+ <t:titlepage t:element="bibliography" t:wrapper="fo:block">
+ <t:titlepage-content t:side="recto">
+ <title t:named-template="bibliography.title"
+ t:force="1"
+ param:node="."
+ margin-left="{$title.margin.left}"
+ font-size="&hsize5;"
+ font-family="{$title.font.family}"
+ font-weight="bold"/>
+ <subtitle
+ font-family="{$title.font.family}"/>
+ </t:titlepage-content>
+
+ </t:titlepage>
+
+ <t:titlepage t:element="bibliodiv" t:wrapper="fo:block">
+ <t:titlepage-content t:side="recto">
+ <title
+ t:named-mode="bibliodiv.titles.mode"
+ margin-left="{$title.margin.left}"
+ font-size="&hsize4;"
+ font-family="{$title.font.family}"
+ font-weight="bold"/>
+ <subtitle
+ font-family="{$title.font.family}"/>
+ </t:titlepage-content>
+
+ </t:titlepage>
+
+ <t:titlepage t:element="glossary" t:wrapper="fo:block">
+ <t:titlepage-content t:side="recto">
+ <title
+ t:named-mode="glossary.title"
+ param:node="ancestor-or-self::glossary[1]"
+ margin-left="{$title.margin.left}"
+ font-size="&hsize5;"
+ font-family="{$title.font.family}"
+ font-weight="bold"/>
+ <subtitle
+ font-family="{$title.font.family}"/>
+ </t:titlepage-content>
+
+ </t:titlepage>
+
+<!-- ==================================================================== -->
+
+ <t:titlepage t:element="glossdiv" t:wrapper="fo:block">
+ <t:titlepage-content t:side="recto">
+ <title t:named-mode="glossdiv.titles.mode"
+ param:node="ancestor-or-self::glossdiv[1]"
+ margin-left="{$title.margin.left}"
+ font-size="&hsize4;"
+ font-family="{$title.font.family}"
+ font-weight="bold"/>
+ <subtitle
+ font-family="{$title.font.family}"/>
+ </t:titlepage-content>
+ </t:titlepage>
+
+</t:templates>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/titlepage.templates.xsl b/doc/editor_configs/serna/scons/docbook-xsl-serna/titlepage.templates.xsl
new file mode 100644
index 0000000..ada4ff6
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/titlepage.templates.xsl
@@ -0,0 +1,1969 @@
+<?xml version="1.0" encoding="utf-8"?><ax:stylesheet xmlns:ax="http://www.w3.org/1999/XSL/Transform" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:se="http://syntext.com/XSL/Format-1.0" version="1.0">
+
+<!-- This stylesheet was created by template/titlepage.xsl; do not edit it by hand. -->
+
+<xsl:template name="article.titlepage.recto">
+ <ax:variable name="result">
+ <xsl:choose>
+ <xsl:when test="articleinfo/title">
+ <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="artheader/title">
+ <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="title">
+ <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:choose>
+ <xsl:when test="articleinfo/subtitle">
+ <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="artheader/subtitle">
+ <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="subtitle">
+ <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/corpauthor[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/corpauthor[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/authorgroup[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/authorgroup[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/author[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/author[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/othercredit[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/othercredit[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/releaseinfo[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/releaseinfo[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/copyright[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/copyright[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/legalnotice[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/legalnotice[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/pubdate[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/pubdate[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/revision[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/revision[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/revhistory[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/revhistory[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/abstract[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/abstract[not(self::processing-instruction('se:choice'))]"/></ax:variable>
+
+ <ax:if test="string-length($result)">
+ <fo:block text-align="center"><ax:copy-of select="$result"/>
+ </fo:block>
+ </ax:if>
+ </xsl:template>
+
+<xsl:template name="article.titlepage">
+ <ax:variable name="result">
+ <xsl:call-template name="article.titlepage.recto"/>
+
+ </ax:variable><ax:if test="string-length($result)"><fo:block font-family="{$title.font.family}">
+ <ax:copy-of select="$result"/></fo:block></ax:if>
+</xsl:template>
+
+<xsl:template match="article" mode="serna.fold">
+ <fo:block se:fold="" color="gray">
+ <se:fold show-element-name="false"/><xsl:apply-templates select="title" mode="article.titlepage.recto.auto.mode"/>
+ </fo:block>
+</xsl:template>
+
+<xsl:template match="*" mode="article.titlepage.recto.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="*" mode="article.titlepage.verso.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="title" mode="article.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="article.titlepage.recto.style" font-size="{$title1.font.size}" font-weight="bold">
+<xsl:apply-templates mode="article.titles.mode" select=".">
+</xsl:apply-templates>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="subtitle" mode="article.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="article.titlepage.recto.style">
+<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="corpauthor" mode="article.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="article.titlepage.recto.style" padding-bottom="0.5em" font-size="{$title3.font.size}">
+<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="authorgroup" mode="article.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="article.titlepage.recto.style" padding-bottom="0.5em" font-size="{$title3.font.size}">
+<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="author" mode="article.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="article.titlepage.recto.style" padding-bottom="0.5em" font-size="{$title3.font.size}">
+<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="othercredit" mode="article.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="article.titlepage.recto.style" padding-bottom="0.5em">
+<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="releaseinfo" mode="article.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="article.titlepage.recto.style" padding-bottom="0.5em">
+<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="copyright" mode="article.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="article.titlepage.recto.style" padding-bottom="0.5em">
+<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="legalnotice" mode="article.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="article.titlepage.recto.style" text-align="start" margin-left="0.5in" margin-right="0.5in" font-family="{$body.font.family}">
+<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="pubdate" mode="article.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="article.titlepage.recto.style" padding-bottom="0.5em">
+<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="revision" mode="article.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="article.titlepage.recto.style" padding-bottom="0.5em">
+<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="revhistory" mode="article.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="article.titlepage.recto.style" padding-bottom="0.5em">
+<xsl:apply-templates mode="rev.mode" select=".">
+</xsl:apply-templates>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="abstract" mode="article.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="article.titlepage.recto.style" padding-bottom="0.5em" text-align="start" margin-left="0.5in" margin-right="0.5in" font-family="{$body.font.family}">
+<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template name="chapter.titlepage.recto">
+ <ax:variable name="result">
+ <xsl:choose>
+ <xsl:when test="chapterinfo/title">
+ <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="docinfo/title">
+ <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="title">
+ <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:choose>
+ <xsl:when test="chapterinfo/subtitle">
+ <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="docinfo/subtitle">
+ <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="subtitle">
+ <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/corpauthor[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/corpauthor[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/authorgroup[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/authorgroup[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/author[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/author[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/othercredit[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/othercredit[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/releaseinfo[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/releaseinfo[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/copyright[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/copyright[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/legalnotice[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/legalnotice[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/pubdate[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/pubdate[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/revision[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/revision[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/revhistory[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/revhistory[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/abstract[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/abstract[not(self::processing-instruction('se:choice'))]"/></ax:variable>
+
+ <ax:if test="string-length($result)">
+ <fo:block margin-left="{$title.margin.left}"><ax:copy-of select="$result"/>
+ </fo:block>
+ </ax:if>
+ </xsl:template>
+
+<xsl:template name="chapter.titlepage">
+ <ax:variable name="result">
+ <xsl:call-template name="chapter.titlepage.recto"/>
+
+ </ax:variable><ax:if test="string-length($result)"><fo:block font-family="{$title.font.family}">
+ <ax:copy-of select="$result"/></fo:block></ax:if>
+</xsl:template>
+
+<xsl:template match="chapter" mode="serna.fold">
+ <fo:block se:fold="" color="gray">
+ <se:fold show-element-name="false"/><xsl:apply-templates select="title" mode="chapter.titlepage.recto.auto.mode"/>
+ </fo:block>
+</xsl:template>
+
+<xsl:template match="*" mode="chapter.titlepage.recto.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="*" mode="chapter.titlepage.verso.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="title" mode="chapter.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="chapter.titlepage.recto.style" font-size="{$title1.font.size}" font-weight="bold">
+<xsl:apply-templates mode="chapter.titles.mode" select=".">
+</xsl:apply-templates>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="subtitle" mode="chapter.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="chapter.titlepage.recto.style" padding-bottom="0.5em" font-style="italic" font-size="{$title3.font.size}" font-weight="bold">
+<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="corpauthor" mode="chapter.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="chapter.titlepage.recto.style" padding-bottom="0.5em" space-after="0.5em" font-size="{$title3.font.size}">
+<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="authorgroup" mode="chapter.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="chapter.titlepage.recto.style" padding-bottom="0.5em" space-after="0.5em" font-size="{$title3.font.size}">
+<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="author" mode="chapter.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="chapter.titlepage.recto.style" padding-bottom="0.5em" space-after="0.5em" font-size="{$title3.font.size}">
+<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="othercredit" mode="chapter.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="chapter.titlepage.recto.style">
+<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="releaseinfo" mode="chapter.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="chapter.titlepage.recto.style">
+<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="copyright" mode="chapter.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="chapter.titlepage.recto.style">
+<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="legalnotice" mode="chapter.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="chapter.titlepage.recto.style">
+<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="pubdate" mode="chapter.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="chapter.titlepage.recto.style">
+<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="revision" mode="chapter.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="chapter.titlepage.recto.style">
+<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="revhistory" mode="chapter.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="chapter.titlepage.recto.style">
+<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="abstract" mode="chapter.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="chapter.titlepage.recto.style">
+<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template name="book.titlepage.recto">
+ <ax:variable name="result">
+ <xsl:choose>
+ <xsl:when test="bookinfo/title">
+ <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="title">
+ <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:choose>
+ <xsl:when test="bookinfo/subtitle">
+ <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="subtitle">
+ <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/corpauthor[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/authorgroup[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/author[not(self::processing-instruction('se:choice'))]"/></ax:variable>
+
+ <ax:if test="string-length($result)">
+ <fo:block><ax:copy-of select="$result"/>
+ </fo:block>
+ </ax:if>
+ </xsl:template>
+
+<xsl:template name="book.titlepage.verso">
+ <ax:variable name="result">
+ <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="bookinfo/corpauthor[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="bookinfo/authorgroup[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="bookinfo/author[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="bookinfo/othercredit[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="bookinfo/pubdate[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="bookinfo/copyright[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="bookinfo/revision[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="bookinfo/revhistory[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="bookinfo/abstract[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="bookinfo/legalnotice[not(self::processing-instruction('se:choice'))]"/></ax:variable>
+
+ <ax:if test="string-length($result)">
+ <fo:block><ax:copy-of select="$result"/>
+ </fo:block>
+ </ax:if>
+ </xsl:template>
+
+<xsl:template name="book.titlepage">
+ <ax:variable name="result">
+ <xsl:call-template name="book.titlepage.recto"/>
+
+
+ <xsl:call-template name="book.titlepage.verso"/>
+
+ </ax:variable><ax:if test="string-length($result)"><fo:block>
+ <ax:copy-of select="$result"/></fo:block></ax:if>
+</xsl:template>
+
+<xsl:template match="book" mode="serna.fold">
+ <fo:block se:fold="" color="gray">
+ <se:fold show-element-name="false"/><xsl:apply-templates select="title" mode="book.titlepage.recto.auto.mode"/>
+ </fo:block>
+</xsl:template>
+
+<xsl:template match="*" mode="book.titlepage.recto.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="*" mode="book.titlepage.verso.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="title" mode="book.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="book.titlepage.recto.style" text-align="center" font-size="{$title1.font.size}" padding-bottom="18.6624pt" font-weight="bold" font-family="{$title.font.family}">
+<xsl:apply-templates mode="book.titles.mode" select=".">
+</xsl:apply-templates>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="subtitle" mode="book.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="book.titlepage.recto.style" text-align="center" font-size="{$title2.font.size}" padding-bottom="12.96pt" font-family="{$title.font.family}">
+<xsl:apply-templates select="." mode="book.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="corpauthor" mode="book.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="book.titlepage.recto.style" font-size="{title2.font.size}" keep-with-next="always" padding-bottom="1in">
+<xsl:apply-templates select="." mode="book.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="authorgroup" mode="book.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="book.titlepage.recto.style" padding-bottom="1in">
+<xsl:apply-templates select="." mode="book.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="author" mode="book.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="book.titlepage.recto.style" font-size="{title2.font.size}" padding-bottom="10.8pt" keep-with-next="always">
+<xsl:apply-templates select="." mode="book.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="corpauthor" mode="book.titlepage.verso.auto.mode">
+<fo:block xsl:use-attribute-sets="book.titlepage.verso.style">
+<xsl:apply-templates select="." mode="book.titlepage.verso.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="authorgroup" mode="book.titlepage.verso.auto.mode">
+<fo:block xsl:use-attribute-sets="book.titlepage.verso.style" padding-bottom="2em">
+<xsl:call-template name="verso.authorgroup">
+</xsl:call-template>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="author" mode="book.titlepage.verso.auto.mode">
+<fo:block xsl:use-attribute-sets="book.titlepage.verso.style">
+<xsl:apply-templates select="." mode="book.titlepage.verso.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="othercredit" mode="book.titlepage.verso.auto.mode">
+<fo:block xsl:use-attribute-sets="book.titlepage.verso.style">
+<xsl:apply-templates select="." mode="book.titlepage.verso.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="pubdate" mode="book.titlepage.verso.auto.mode">
+<fo:block xsl:use-attribute-sets="book.titlepage.verso.style" padding-bottom="1em">
+<xsl:apply-templates select="." mode="book.titlepage.verso.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="copyright" mode="book.titlepage.verso.auto.mode">
+<fo:block xsl:use-attribute-sets="book.titlepage.verso.style">
+<xsl:apply-templates select="." mode="book.titlepage.verso.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="revision" mode="book.titlepage.verso.auto.mode">
+<fo:block xsl:use-attribute-sets="book.titlepage.verso.style" padding-bottom="0.5em">
+<xsl:apply-templates select="." mode="book.titlepage.verso.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="revhistory" mode="book.titlepage.verso.auto.mode">
+<fo:block xsl:use-attribute-sets="book.titlepage.verso.style" padding-bottom="0.5em">
+<xsl:apply-templates mode="rev.mode" select=".">
+</xsl:apply-templates>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="abstract" mode="book.titlepage.verso.auto.mode">
+<fo:block xsl:use-attribute-sets="book.titlepage.verso.style">
+<xsl:apply-templates select="." mode="book.titlepage.verso.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="legalnotice" mode="book.titlepage.verso.auto.mode">
+<fo:block xsl:use-attribute-sets="book.titlepage.verso.style" font-size="8pt">
+<xsl:apply-templates select="." mode="book.titlepage.verso.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template name="part.titlepage.recto">
+ <ax:variable name="result">
+ <xsl:choose>
+ <xsl:when test="partinfo/title">
+ <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="partinfo/title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="docinfo/title">
+ <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="docinfo/title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="title">
+ <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:choose>
+ <xsl:when test="partinfo/subtitle">
+ <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="partinfo/subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="docinfo/subtitle">
+ <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="docinfo/subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="subtitle">
+ <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+</ax:variable>
+
+ <ax:if test="string-length($result)">
+ <fo:block><ax:copy-of select="$result"/>
+ </fo:block>
+ </ax:if>
+ </xsl:template>
+
+<xsl:template name="part.titlepage">
+ <ax:variable name="result">
+ <xsl:call-template name="part.titlepage.recto"/>
+
+ </ax:variable><ax:if test="string-length($result)"><fo:block>
+ <ax:copy-of select="$result"/></fo:block></ax:if>
+</xsl:template>
+
+<xsl:template match="part" mode="serna.fold">
+ <fo:block se:fold="" color="gray">
+ <se:fold show-element-name="false"/><xsl:apply-templates select="title" mode="part.titlepage.recto.auto.mode"/>
+ </fo:block>
+</xsl:template>
+
+<xsl:template match="*" mode="part.titlepage.recto.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="*" mode="part.titlepage.verso.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="title" mode="part.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="part.titlepage.recto.style" text-align="center" font-size="{$title1.font.size}" padding-bottom="18.6624pt" font-weight="bold" font-family="{$title.font.family}">
+<xsl:apply-templates mode="part.titles.mode" select=".">
+</xsl:apply-templates>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="subtitle" mode="part.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="part.titlepage.recto.style" text-align="center" font-size="{$title2.font.size}" padding-bottom="15.552pt" font-weight="bold" font-style="italic" font-family="{$title.font.family}">
+<xsl:apply-templates select="." mode="part.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template name="preface.titlepage.recto">
+ <ax:variable name="result">
+ <xsl:choose>
+ <xsl:when test="prefaceinfo/title">
+ <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="docinfo/title">
+ <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="title">
+ <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:choose>
+ <xsl:when test="prefaceinfo/subtitle">
+ <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="docinfo/subtitle">
+ <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="subtitle">
+ <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/corpauthor[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/corpauthor[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/authorgroup[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/authorgroup[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/author[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/author[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/othercredit[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/othercredit[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/releaseinfo[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/releaseinfo[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/copyright[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/copyright[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/legalnotice[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/legalnotice[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/pubdate[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/pubdate[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/revision[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/revision[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/revhistory[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/revhistory[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/abstract[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/abstract[not(self::processing-instruction('se:choice'))]"/></ax:variable>
+
+ <ax:if test="string-length($result)">
+ <fo:block><ax:copy-of select="$result"/>
+ </fo:block>
+ </ax:if>
+ </xsl:template>
+
+<xsl:template name="preface.titlepage">
+ <ax:variable name="result">
+ <xsl:call-template name="preface.titlepage.recto"/>
+
+ </ax:variable><ax:if test="string-length($result)"><fo:block>
+ <ax:copy-of select="$result"/></fo:block></ax:if>
+</xsl:template>
+
+<xsl:template match="preface" mode="serna.fold">
+ <fo:block se:fold="" color="gray">
+ <se:fold show-element-name="false"/><xsl:apply-templates select="title" mode="preface.titlepage.recto.auto.mode"/>
+ </fo:block>
+</xsl:template>
+
+<xsl:template match="*" mode="preface.titlepage.recto.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="*" mode="preface.titlepage.verso.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="title" mode="preface.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="preface.titlepage.recto.style" margin-left="{$title.margin.left}" font-size="{$title1.font.size}" font-family="{$title.font.family}" font-weight="bold">
+<xsl:apply-templates mode="preface.titles.mode" select=".">
+</xsl:apply-templates>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="subtitle" mode="preface.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="preface.titlepage.recto.style" font-family="{$title.font.family}">
+<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="corpauthor" mode="preface.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="preface.titlepage.recto.style">
+<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="authorgroup" mode="preface.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="preface.titlepage.recto.style">
+<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="author" mode="preface.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="preface.titlepage.recto.style">
+<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="othercredit" mode="preface.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="preface.titlepage.recto.style">
+<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="releaseinfo" mode="preface.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="preface.titlepage.recto.style">
+<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="copyright" mode="preface.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="preface.titlepage.recto.style">
+<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="legalnotice" mode="preface.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="preface.titlepage.recto.style">
+<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="pubdate" mode="preface.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="preface.titlepage.recto.style">
+<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="revision" mode="preface.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="preface.titlepage.recto.style">
+<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="revhistory" mode="preface.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="preface.titlepage.recto.style">
+<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="abstract" mode="preface.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="preface.titlepage.recto.style">
+<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template name="partintro.titlepage.recto">
+ <ax:variable name="result">
+ <xsl:choose>
+ <xsl:when test="partintroinfo/title">
+ <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="docinfo/title">
+ <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="title">
+ <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:choose>
+ <xsl:when test="partintroinfo/subtitle">
+ <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="docinfo/subtitle">
+ <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="subtitle">
+ <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/corpauthor[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/corpauthor[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/authorgroup[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/authorgroup[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/author[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/author[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/othercredit[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/othercredit[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/releaseinfo[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/releaseinfo[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/copyright[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/copyright[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/legalnotice[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/legalnotice[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/pubdate[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/pubdate[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/revision[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/revision[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/revhistory[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/revhistory[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/abstract[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/abstract[not(self::processing-instruction('se:choice'))]"/></ax:variable>
+
+ <ax:if test="string-length($result)">
+ <fo:block><ax:copy-of select="$result"/>
+ </fo:block>
+ </ax:if>
+ </xsl:template>
+
+<xsl:template name="partintro.titlepage">
+ <ax:variable name="result">
+ <xsl:call-template name="partintro.titlepage.recto"/>
+
+ </ax:variable><ax:if test="string-length($result)"><fo:block>
+ <ax:copy-of select="$result"/></fo:block></ax:if>
+</xsl:template>
+
+<xsl:template match="partintro" mode="serna.fold">
+ <fo:block se:fold="" color="gray">
+ <se:fold show-element-name="false"/><xsl:apply-templates select="title" mode="partintro.titlepage.recto.auto.mode"/>
+ </fo:block>
+</xsl:template>
+
+<xsl:template match="*" mode="partintro.titlepage.recto.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="*" mode="partintro.titlepage.verso.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="title" mode="partintro.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="partintro.titlepage.recto.style" text-align="center" font-size="{$title1.font.size}" font-weight="bold" padding-bottom="1em" font-family="{$title.font.family}">
+<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="subtitle" mode="partintro.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="partintro.titlepage.recto.style" text-align="center" font-size="{$title3.font.size}" font-weight="bold" font-style="italic" font-family="{$title.font.family}">
+<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="corpauthor" mode="partintro.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="partintro.titlepage.recto.style">
+<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="authorgroup" mode="partintro.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="partintro.titlepage.recto.style">
+<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="author" mode="partintro.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="partintro.titlepage.recto.style">
+<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="othercredit" mode="partintro.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="partintro.titlepage.recto.style">
+<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="releaseinfo" mode="partintro.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="partintro.titlepage.recto.style">
+<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="copyright" mode="partintro.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="partintro.titlepage.recto.style">
+<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="legalnotice" mode="partintro.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="partintro.titlepage.recto.style">
+<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="pubdate" mode="partintro.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="partintro.titlepage.recto.style">
+<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="revision" mode="partintro.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="partintro.titlepage.recto.style">
+<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="revhistory" mode="partintro.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="partintro.titlepage.recto.style">
+<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="abstract" mode="partintro.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="partintro.titlepage.recto.style">
+<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template name="reference.titlepage.recto">
+ <ax:variable name="result">
+ <xsl:choose>
+ <xsl:when test="referenceinfo/title">
+ <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="docinfo/title">
+ <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="title">
+ <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:choose>
+ <xsl:when test="referenceinfo/subtitle">
+ <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="docinfo/subtitle">
+ <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="subtitle">
+ <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+</ax:variable>
+
+ <ax:if test="string-length($result)">
+ <fo:block><ax:copy-of select="$result"/>
+ </fo:block>
+ </ax:if>
+ </xsl:template>
+
+<xsl:template name="reference.titlepage">
+ <ax:variable name="result">
+ <xsl:call-template name="reference.titlepage.recto"/>
+
+ </ax:variable><ax:if test="string-length($result)"><fo:block>
+ <ax:copy-of select="$result"/></fo:block></ax:if>
+</xsl:template>
+
+<xsl:template match="reference" mode="serna.fold">
+ <fo:block se:fold="" color="gray">
+ <se:fold show-element-name="false"/><xsl:apply-templates select="title" mode="reference.titlepage.recto.auto.mode"/>
+ </fo:block>
+</xsl:template>
+
+<xsl:template match="*" mode="reference.titlepage.recto.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="*" mode="reference.titlepage.verso.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="title" mode="reference.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="reference.titlepage.recto.style" text-align="center" font-size="{$title1.font.size}" padding-bottom="18.6624pt" font-weight="bold" font-family="{$title.font.family}">
+<xsl:apply-templates mode="reference.titles.mode" select=".">
+</xsl:apply-templates>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="subtitle" mode="reference.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="reference.titlepage.recto.style" font-family="{$title.font.family}">
+<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template name="refsynopsisdiv.titlepage.recto">
+ <ax:variable name="result">
+ <xsl:choose>
+ <xsl:when test="refsynopsisdivinfo/title">
+ <xsl:apply-templates mode="refsynopsisdiv.titlepage.recto.auto.mode" select="refsynopsisdivinfo/title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="docinfo/title">
+ <xsl:apply-templates mode="refsynopsisdiv.titlepage.recto.auto.mode" select="docinfo/title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="title">
+ <xsl:apply-templates mode="refsynopsisdiv.titlepage.recto.auto.mode" select="title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+</ax:variable>
+
+ <ax:if test="string-length($result)">
+ <fo:block><ax:copy-of select="$result"/>
+ </fo:block>
+ </ax:if>
+ </xsl:template>
+
+<xsl:template name="refsynopsisdiv.titlepage">
+ <ax:variable name="result">
+ <xsl:call-template name="refsynopsisdiv.titlepage.recto"/>
+
+ </ax:variable><ax:if test="string-length($result)"><fo:block>
+ <ax:copy-of select="$result"/></fo:block></ax:if>
+</xsl:template>
+
+<xsl:template match="refsynopsisdiv" mode="serna.fold">
+ <fo:block se:fold="" color="gray">
+ <se:fold show-element-name="false"/><xsl:apply-templates select="title" mode="refsynopsisdiv.titlepage.recto.auto.mode"/>
+ </fo:block>
+</xsl:template>
+
+<xsl:template match="*" mode="refsynopsisdiv.titlepage.recto.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="*" mode="refsynopsisdiv.titlepage.verso.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="title" mode="refsynopsisdiv.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="refsynopsisdiv.titlepage.recto.style" font-weight="bold" margin-left="{$title.margin.left}" font-family="{$title.font.family}">
+<xsl:apply-templates mode="refsynopsisdiv.titles.mode" select=".">
+</xsl:apply-templates>
+</fo:block>
+</xsl:template>
+
+<xsl:template name="refsection.titlepage.recto">
+ <ax:variable name="result">
+ <xsl:choose>
+ <xsl:when test="refsectioninfo/title">
+ <xsl:apply-templates mode="refsection.titlepage.recto.auto.mode" select="refsectioninfo/title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="docinfo/title">
+ <xsl:apply-templates mode="refsection.titlepage.recto.auto.mode" select="docinfo/title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="title">
+ <xsl:apply-templates mode="refsection.titlepage.recto.auto.mode" select="title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+</ax:variable>
+
+ <ax:if test="string-length($result)">
+ <fo:block><ax:copy-of select="$result"/>
+ </fo:block>
+ </ax:if>
+ </xsl:template>
+
+<xsl:template name="refsection.titlepage">
+ <ax:variable name="result">
+ <xsl:call-template name="refsection.titlepage.recto"/>
+
+ </ax:variable><ax:if test="string-length($result)"><fo:block>
+ <ax:copy-of select="$result"/></fo:block></ax:if>
+</xsl:template>
+
+<xsl:template match="refsection" mode="serna.fold">
+ <fo:block se:fold="" color="gray">
+ <se:fold show-element-name="false"/><xsl:apply-templates select="title" mode="refsection.titlepage.recto.auto.mode"/>
+ </fo:block>
+</xsl:template>
+
+<xsl:template match="*" mode="refsection.titlepage.recto.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="*" mode="refsection.titlepage.verso.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="title" mode="refsection.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="refsection.titlepage.recto.style" font-weight="bold" font-family="{$title.font.family}">
+<xsl:apply-templates mode="section.titles.mode" select=".">
+</xsl:apply-templates>
+</fo:block>
+</xsl:template>
+
+<xsl:template name="section.titlepage.recto">
+ <ax:variable name="result">
+ <xsl:choose>
+ <xsl:when test="sectioninfo/title">
+ <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="title">
+ <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:choose>
+ <xsl:when test="sectioninfo/subtitle">
+ <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="subtitle">
+ <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/corpauthor[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/authorgroup[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/author[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/othercredit[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/releaseinfo[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/copyright[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/legalnotice[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/pubdate[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/revision[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/revhistory[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/abstract[not(self::processing-instruction('se:choice'))]"/></ax:variable>
+
+ <ax:if test="string-length($result)">
+ <fo:block><ax:copy-of select="$result"/>
+ </fo:block>
+ </ax:if>
+ </xsl:template>
+
+<xsl:template name="section.titlepage">
+ <ax:variable name="result">
+ <xsl:call-template name="section.titlepage.recto"/>
+
+ </ax:variable><ax:if test="string-length($result)"><fo:block>
+ <ax:copy-of select="$result"/></fo:block></ax:if>
+</xsl:template>
+
+<xsl:template match="section" mode="serna.fold">
+ <fo:block se:fold="" color="gray">
+ <se:fold show-element-name="false"/><xsl:apply-templates select="title" mode="section.titlepage.recto.auto.mode"/>
+ </fo:block>
+</xsl:template>
+
+<xsl:template match="*" mode="section.titlepage.recto.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="*" mode="section.titlepage.verso.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="title" mode="section.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="section.titlepage.recto.style" font-weight="bold" margin-left="{$title.margin.left}" font-family="{$title.font.family}">
+<xsl:apply-templates mode="section.titles.mode" select=".">
+</xsl:apply-templates>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="subtitle" mode="section.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="section.titlepage.recto.style" font-family="{$title.font.family}">
+<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="corpauthor" mode="section.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="section.titlepage.recto.style">
+<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="authorgroup" mode="section.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="section.titlepage.recto.style">
+<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="author" mode="section.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="section.titlepage.recto.style">
+<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="othercredit" mode="section.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="section.titlepage.recto.style">
+<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="releaseinfo" mode="section.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="section.titlepage.recto.style">
+<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="copyright" mode="section.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="section.titlepage.recto.style">
+<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="legalnotice" mode="section.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="section.titlepage.recto.style">
+<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="pubdate" mode="section.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="section.titlepage.recto.style">
+<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="revision" mode="section.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="section.titlepage.recto.style">
+<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="revhistory" mode="section.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="section.titlepage.recto.style">
+<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="abstract" mode="section.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="section.titlepage.recto.style">
+<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template name="simplesect.titlepage.recto">
+ <ax:variable name="result">
+ <xsl:choose>
+ <xsl:when test="simplesectinfo/title">
+ <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="docinfo/title">
+ <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="title">
+ <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:choose>
+ <xsl:when test="simplesectinfo/subtitle">
+ <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="docinfo/subtitle">
+ <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="subtitle">
+ <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/corpauthor[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/corpauthor[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/authorgroup[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/authorgroup[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/author[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/author[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/othercredit[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/othercredit[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/releaseinfo[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/releaseinfo[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/copyright[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/copyright[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/legalnotice[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/legalnotice[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/pubdate[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/pubdate[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/revision[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/revision[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/revhistory[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/revhistory[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/abstract[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/abstract[not(self::processing-instruction('se:choice'))]"/></ax:variable>
+
+ <ax:if test="string-length($result)">
+ <fo:block><ax:copy-of select="$result"/>
+ </fo:block>
+ </ax:if>
+ </xsl:template>
+
+<xsl:template name="simplesect.titlepage.verso">
+ <ax:variable name="result"/>
+
+ <ax:if test="string-length($result)">
+ <fo:block><ax:copy-of select="$result"/>
+ </fo:block>
+ </ax:if>
+ </xsl:template>
+
+<xsl:template name="simplesect.titlepage.separator">
+</xsl:template>
+
+<xsl:template name="simplesect.titlepage.before.recto">
+</xsl:template>
+
+<xsl:template name="simplesect.titlepage.before.verso">
+</xsl:template>
+
+<xsl:template name="simplesect.titlepage">
+ <ax:variable name="result"><xsl:call-template name="simplesect.titlepage.before.recto"/>
+ <xsl:call-template name="simplesect.titlepage.recto"/>
+
+ <xsl:call-template name="simplesect.titlepage.before.verso"/>
+ <xsl:call-template name="simplesect.titlepage.verso"/>
+
+ <xsl:call-template name="simplesect.titlepage.separator"/>
+ </ax:variable><ax:if test="string-length($result)"><fo:block>
+ <ax:copy-of select="$result"/></fo:block></ax:if>
+</xsl:template>
+
+<xsl:template match="simplesect" mode="serna.fold">
+ <fo:block se:fold="" color="gray">
+ <se:fold show-element-name="false"/><xsl:apply-templates select="title" mode="simplesect.titlepage.recto.auto.mode"/>
+ </fo:block>
+</xsl:template>
+
+<xsl:template match="*" mode="simplesect.titlepage.recto.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="*" mode="simplesect.titlepage.verso.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="title" mode="simplesect.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="simplesect.titlepage.recto.style" font-weight="bold" margin-left="{$title.margin.left}" font-family="{$title.font.family}">
+<xsl:apply-templates mode="simplesect.titles.mode" select=".">
+</xsl:apply-templates>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="subtitle" mode="simplesect.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="simplesect.titlepage.recto.style" font-family="{$title.font.family}">
+<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="corpauthor" mode="simplesect.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="simplesect.titlepage.recto.style">
+<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="authorgroup" mode="simplesect.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="simplesect.titlepage.recto.style">
+<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="author" mode="simplesect.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="simplesect.titlepage.recto.style">
+<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="othercredit" mode="simplesect.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="simplesect.titlepage.recto.style">
+<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="releaseinfo" mode="simplesect.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="simplesect.titlepage.recto.style">
+<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="copyright" mode="simplesect.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="simplesect.titlepage.recto.style">
+<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="legalnotice" mode="simplesect.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="simplesect.titlepage.recto.style">
+<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="pubdate" mode="simplesect.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="simplesect.titlepage.recto.style">
+<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="revision" mode="simplesect.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="simplesect.titlepage.recto.style">
+<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="revhistory" mode="simplesect.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="simplesect.titlepage.recto.style">
+<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="abstract" mode="simplesect.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="simplesect.titlepage.recto.style">
+<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template name="set.titlepage.recto">
+ <ax:variable name="result">
+ <xsl:choose>
+ <xsl:when test="setinfo/title">
+ <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="title">
+ <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:choose>
+ <xsl:when test="setinfo/subtitle">
+ <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="subtitle">
+ <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/corpauthor[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/authorgroup[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/author[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/othercredit[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/releaseinfo[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/copyright[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/legalnotice[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/pubdate[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/revision[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/revhistory[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/abstract[not(self::processing-instruction('se:choice'))]"/></ax:variable>
+
+ <ax:if test="string-length($result)">
+ <fo:block><ax:copy-of select="$result"/>
+ </fo:block>
+ </ax:if>
+ </xsl:template>
+
+<xsl:template name="set.titlepage">
+ <ax:variable name="result">
+ <xsl:call-template name="set.titlepage.recto"/>
+
+ </ax:variable><ax:if test="string-length($result)"><fo:block>
+ <ax:copy-of select="$result"/></fo:block></ax:if>
+</xsl:template>
+
+<xsl:template match="set" mode="serna.fold">
+ <fo:block se:fold="" color="gray">
+ <se:fold show-element-name="false"/><xsl:apply-templates select="title" mode="set.titlepage.recto.auto.mode"/>
+ </fo:block>
+</xsl:template>
+
+<xsl:template match="*" mode="set.titlepage.recto.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="*" mode="set.titlepage.verso.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="title" mode="set.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="set.titlepage.recto.style" text-align="center" font-size="{$title1.font.size}" padding-bottom="18.6624pt" font-weight="bold" font-family="{$title.font.family}">
+<xsl:apply-templates mode="set.titles.mode" select=".">
+</xsl:apply-templates>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="subtitle" mode="set.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="set.titlepage.recto.style" font-family="{$title.font.family}" text-align="center">
+<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="corpauthor" mode="set.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="set.titlepage.recto.style">
+<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="authorgroup" mode="set.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="set.titlepage.recto.style">
+<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="author" mode="set.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="set.titlepage.recto.style">
+<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="othercredit" mode="set.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="set.titlepage.recto.style">
+<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="releaseinfo" mode="set.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="set.titlepage.recto.style">
+<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="copyright" mode="set.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="set.titlepage.recto.style">
+<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="legalnotice" mode="set.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="set.titlepage.recto.style">
+<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="pubdate" mode="set.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="set.titlepage.recto.style">
+<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="revision" mode="set.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="set.titlepage.recto.style">
+<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="revhistory" mode="set.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="set.titlepage.recto.style">
+<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="abstract" mode="set.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="set.titlepage.recto.style">
+<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template name="appendix.titlepage.recto">
+ <ax:variable name="result">
+ <xsl:choose>
+ <xsl:when test="appendixinfo/title">
+ <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="docinfo/title">
+ <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="title">
+ <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:choose>
+ <xsl:when test="appendixinfo/subtitle">
+ <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="docinfo/subtitle">
+ <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="subtitle">
+ <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/corpauthor[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/corpauthor[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/authorgroup[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/authorgroup[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/author[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/author[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/othercredit[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/othercredit[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/releaseinfo[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/releaseinfo[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/copyright[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/copyright[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/legalnotice[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/legalnotice[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/pubdate[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/pubdate[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/revision[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/revision[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/revhistory[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/revhistory[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/abstract[not(self::processing-instruction('se:choice'))]"/>
+ <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/abstract[not(self::processing-instruction('se:choice'))]"/></ax:variable>
+
+ <ax:if test="string-length($result)">
+ <fo:block><ax:copy-of select="$result"/>
+ </fo:block>
+ </ax:if>
+ </xsl:template>
+
+<xsl:template name="appendix.titlepage">
+ <ax:variable name="result">
+ <xsl:call-template name="appendix.titlepage.recto"/>
+
+ </ax:variable><ax:if test="string-length($result)"><fo:block>
+ <ax:copy-of select="$result"/></fo:block></ax:if>
+</xsl:template>
+
+<xsl:template match="appendix" mode="serna.fold">
+ <fo:block se:fold="" color="gray">
+ <se:fold show-element-name="false"/><xsl:apply-templates select="title" mode="appendix.titlepage.recto.auto.mode"/>
+ </fo:block>
+</xsl:template>
+
+<xsl:template match="*" mode="appendix.titlepage.recto.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="*" mode="appendix.titlepage.verso.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="title" mode="appendix.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="appendix.titlepage.recto.style" margin-left="{$title.margin.left}" font-size="{$title1.font.size}" font-weight="bold" font-family="{$title.font.family}">
+<xsl:apply-templates mode="appendix.titles.mode" select=".">
+</xsl:apply-templates>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="subtitle" mode="appendix.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="appendix.titlepage.recto.style" font-family="{$title.font.family}">
+<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="corpauthor" mode="appendix.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="appendix.titlepage.recto.style">
+<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="authorgroup" mode="appendix.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="appendix.titlepage.recto.style">
+<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="author" mode="appendix.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="appendix.titlepage.recto.style">
+<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="othercredit" mode="appendix.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="appendix.titlepage.recto.style">
+<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="releaseinfo" mode="appendix.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="appendix.titlepage.recto.style">
+<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="copyright" mode="appendix.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="appendix.titlepage.recto.style">
+<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="legalnotice" mode="appendix.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="appendix.titlepage.recto.style">
+<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="pubdate" mode="appendix.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="appendix.titlepage.recto.style">
+<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="revision" mode="appendix.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="appendix.titlepage.recto.style">
+<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="revhistory" mode="appendix.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="appendix.titlepage.recto.style">
+<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="abstract" mode="appendix.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="appendix.titlepage.recto.style">
+<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template name="bibliography.titlepage.recto">
+ <ax:variable name="result">
+ <fo:block xsl:use-attribute-sets="bibliography.titlepage.recto.style" margin-left="{$title.margin.left}" font-size="{$title1.font.size}" font-family="{$title.font.family}" font-weight="bold">
+<xsl:call-template name="bibliography.title">
+<xsl:with-param name="node" select="."/>
+</xsl:call-template></fo:block>
+ <xsl:choose>
+ <xsl:when test="bibliographyinfo/subtitle">
+ <xsl:apply-templates mode="bibliography.titlepage.recto.auto.mode" select="bibliographyinfo/subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="docinfo/subtitle">
+ <xsl:apply-templates mode="bibliography.titlepage.recto.auto.mode" select="docinfo/subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="subtitle">
+ <xsl:apply-templates mode="bibliography.titlepage.recto.auto.mode" select="subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+</ax:variable>
+
+ <ax:if test="string-length($result)">
+ <fo:block><ax:copy-of select="$result"/>
+ </fo:block>
+ </ax:if>
+ </xsl:template>
+
+<xsl:template name="bibliography.titlepage">
+ <ax:variable name="result">
+ <xsl:call-template name="bibliography.titlepage.recto"/>
+
+ </ax:variable><ax:if test="string-length($result)"><fo:block>
+ <ax:copy-of select="$result"/></fo:block></ax:if>
+</xsl:template>
+
+<xsl:template match="bibliography" mode="serna.fold">
+ <fo:block se:fold="" color="gray">
+ <se:fold show-element-name="false"/><xsl:apply-templates select="title" mode="bibliography.titlepage.recto.auto.mode"/>
+ </fo:block>
+</xsl:template>
+
+<xsl:template match="*" mode="bibliography.titlepage.recto.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="*" mode="bibliography.titlepage.verso.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="subtitle" mode="bibliography.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="bibliography.titlepage.recto.style" font-family="{$title.font.family}">
+<xsl:apply-templates select="." mode="bibliography.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template name="bibliodiv.titlepage.recto">
+ <ax:variable name="result">
+ <xsl:choose>
+ <xsl:when test="bibliodivinfo/title">
+ <xsl:apply-templates mode="bibliodiv.titlepage.recto.auto.mode" select="bibliodivinfo/title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="docinfo/title">
+ <xsl:apply-templates mode="bibliodiv.titlepage.recto.auto.mode" select="docinfo/title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="title">
+ <xsl:apply-templates mode="bibliodiv.titlepage.recto.auto.mode" select="title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:choose>
+ <xsl:when test="bibliodivinfo/subtitle">
+ <xsl:apply-templates mode="bibliodiv.titlepage.recto.auto.mode" select="bibliodivinfo/subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="docinfo/subtitle">
+ <xsl:apply-templates mode="bibliodiv.titlepage.recto.auto.mode" select="docinfo/subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="subtitle">
+ <xsl:apply-templates mode="bibliodiv.titlepage.recto.auto.mode" select="subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+</ax:variable>
+
+ <ax:if test="string-length($result)">
+ <fo:block><ax:copy-of select="$result"/>
+ </fo:block>
+ </ax:if>
+ </xsl:template>
+
+<xsl:template name="bibliodiv.titlepage">
+ <ax:variable name="result">
+ <xsl:call-template name="bibliodiv.titlepage.recto"/>
+
+ </ax:variable><ax:if test="string-length($result)"><fo:block>
+ <ax:copy-of select="$result"/></fo:block></ax:if>
+</xsl:template>
+
+<xsl:template match="bibliodiv" mode="serna.fold">
+ <fo:block se:fold="" color="gray">
+ <se:fold show-element-name="false"/><xsl:apply-templates select="title" mode="bibliodiv.titlepage.recto.auto.mode"/>
+ </fo:block>
+</xsl:template>
+
+<xsl:template match="*" mode="bibliodiv.titlepage.recto.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="*" mode="bibliodiv.titlepage.verso.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="title" mode="bibliodiv.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="bibliodiv.titlepage.recto.style" margin-left="{$title.margin.left}" font-size="{$title2.font.size}" font-family="{$title.font.family}" font-weight="bold">
+<xsl:apply-templates mode="bibliodiv.titles.mode" select=".">
+</xsl:apply-templates>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="subtitle" mode="bibliodiv.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="bibliodiv.titlepage.recto.style" font-family="{$title.font.family}">
+<xsl:apply-templates select="." mode="bibliodiv.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template name="glossary.titlepage.recto">
+ <ax:variable name="result">
+ <xsl:choose>
+ <xsl:when test="glossaryinfo/title">
+ <xsl:apply-templates mode="glossary.titlepage.recto.auto.mode" select="glossaryinfo/title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="docinfo/title">
+ <xsl:apply-templates mode="glossary.titlepage.recto.auto.mode" select="docinfo/title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="title">
+ <xsl:apply-templates mode="glossary.titlepage.recto.auto.mode" select="title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:choose>
+ <xsl:when test="glossaryinfo/subtitle">
+ <xsl:apply-templates mode="glossary.titlepage.recto.auto.mode" select="glossaryinfo/subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="docinfo/subtitle">
+ <xsl:apply-templates mode="glossary.titlepage.recto.auto.mode" select="docinfo/subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="subtitle">
+ <xsl:apply-templates mode="glossary.titlepage.recto.auto.mode" select="subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+</ax:variable>
+
+ <ax:if test="string-length($result)">
+ <fo:block><ax:copy-of select="$result"/>
+ </fo:block>
+ </ax:if>
+ </xsl:template>
+
+<xsl:template name="glossary.titlepage">
+ <ax:variable name="result">
+ <xsl:call-template name="glossary.titlepage.recto"/>
+
+ </ax:variable><ax:if test="string-length($result)"><fo:block>
+ <ax:copy-of select="$result"/></fo:block></ax:if>
+</xsl:template>
+
+<xsl:template match="glossary" mode="serna.fold">
+ <fo:block se:fold="" color="gray">
+ <se:fold show-element-name="false"/><xsl:apply-templates select="title" mode="glossary.titlepage.recto.auto.mode"/>
+ </fo:block>
+</xsl:template>
+
+<xsl:template match="*" mode="glossary.titlepage.recto.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="*" mode="glossary.titlepage.verso.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="title" mode="glossary.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="glossary.titlepage.recto.style" margin-left="{$title.margin.left}" font-size="{$title1.font.size}" font-family="{$title.font.family}" font-weight="bold">
+<xsl:apply-templates mode="glossary.title" select=".">
+</xsl:apply-templates>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="subtitle" mode="glossary.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="glossary.titlepage.recto.style" font-family="{$title.font.family}">
+<xsl:apply-templates select="." mode="glossary.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template name="glossdiv.titlepage.recto">
+ <ax:variable name="result">
+ <xsl:choose>
+ <xsl:when test="glossdivinfo/title">
+ <xsl:apply-templates mode="glossdiv.titlepage.recto.auto.mode" select="glossdivinfo/title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="docinfo/title">
+ <xsl:apply-templates mode="glossdiv.titlepage.recto.auto.mode" select="docinfo/title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="title">
+ <xsl:apply-templates mode="glossdiv.titlepage.recto.auto.mode" select="title[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:choose>
+ <xsl:when test="glossdivinfo/subtitle">
+ <xsl:apply-templates mode="glossdiv.titlepage.recto.auto.mode" select="glossdivinfo/subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="docinfo/subtitle">
+ <xsl:apply-templates mode="glossdiv.titlepage.recto.auto.mode" select="docinfo/subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ <xsl:when test="subtitle">
+ <xsl:apply-templates mode="glossdiv.titlepage.recto.auto.mode" select="subtitle[not(self::processing-instruction('se:choice'))]"/>
+ </xsl:when>
+ </xsl:choose>
+</ax:variable>
+
+ <ax:if test="string-length($result)">
+ <fo:block><ax:copy-of select="$result"/>
+ </fo:block>
+ </ax:if>
+ </xsl:template>
+
+<xsl:template name="glossdiv.titlepage">
+ <ax:variable name="result">
+ <xsl:call-template name="glossdiv.titlepage.recto"/>
+
+ </ax:variable><ax:if test="string-length($result)"><fo:block>
+ <ax:copy-of select="$result"/></fo:block></ax:if>
+</xsl:template>
+
+<xsl:template match="glossdiv" mode="serna.fold">
+ <fo:block se:fold="" color="gray">
+ <se:fold show-element-name="false"/><xsl:apply-templates select="title" mode="glossdiv.titlepage.recto.auto.mode"/>
+ </fo:block>
+</xsl:template>
+
+<xsl:template match="*" mode="glossdiv.titlepage.recto.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="*" mode="glossdiv.titlepage.verso.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="title" mode="glossdiv.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="glossdiv.titlepage.recto.style" margin-left="{$title.margin.left}" font-size="{$title2.font.size}" font-family="{$title.font.family}" font-weight="bold">
+<xsl:apply-templates mode="glossdiv.titles.mode" select=".">
+</xsl:apply-templates>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="subtitle" mode="glossdiv.titlepage.recto.auto.mode">
+<fo:block xsl:use-attribute-sets="glossdiv.titlepage.recto.style" font-family="{$title.font.family}">
+<xsl:apply-templates select="." mode="glossdiv.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+</ax:stylesheet> \ No newline at end of file
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/titlepage.xsl b/doc/editor_configs/serna/scons/docbook-xsl-serna/titlepage.xsl
new file mode 100644
index 0000000..a169ec7
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/titlepage.xsl
@@ -0,0 +1,772 @@
+<?xml version='1.0'?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ xmlns:dtm="http://syntext.com/Extensions/DocumentTypeMetadata-1.0"
+ extension-element-prefixes="dtm"
+ version='1.0'>
+
+<xsl:attribute-set name="book.titlepage.recto.style">
+ <xsl:attribute name="font-family">
+ <xsl:value-of select="$title.font.family"/>
+ </xsl:attribute>
+ <xsl:attribute name="font-size">
+ <xsl:value-of select="concat($body.font.master,'pt')"/>
+ </xsl:attribute>
+
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
+ <xsl:attribute name="text-align">center</xsl:attribute>
+</xsl:attribute-set>
+
+<xsl:attribute-set name="book.titlepage.verso.style">
+ <xsl:attribute name="font-size">
+ <xsl:value-of select="concat(0.83 * $body.font.master,'pt')"/>
+ </xsl:attribute>
+</xsl:attribute-set>
+
+<xsl:attribute-set name="article.titlepage.recto.style"/>
+<xsl:attribute-set name="article.titlepage.verso.style"/>
+
+<xsl:attribute-set name="set.titlepage.recto.style"/>
+<xsl:attribute-set name="set.titlepage.verso.style"/>
+
+<xsl:attribute-set name="part.titlepage.recto.style">
+ <xsl:attribute name="text-align">center</xsl:attribute>
+</xsl:attribute-set>
+
+<xsl:attribute-set name="part.titlepage.verso.style"/>
+
+<xsl:attribute-set name="partintro.titlepage.recto.style"/>
+<xsl:attribute-set name="partintro.titlepage.verso.style"/>
+
+<xsl:attribute-set name="reference.titlepage.recto.style"/>
+<xsl:attribute-set name="reference.titlepage.verso.style"/>
+
+<xsl:attribute-set name="dedication.titlepage.recto.style"/>
+<xsl:attribute-set name="dedication.titlepage.verso.style"/>
+
+<xsl:attribute-set name="preface.titlepage.recto.style"/>
+<xsl:attribute-set name="preface.titlepage.verso.style"/>
+
+<xsl:attribute-set name="chapter.titlepage.recto.style"/>
+<xsl:attribute-set name="chapter.titlepage.verso.style"/>
+
+<xsl:attribute-set name="appendix.titlepage.recto.style"/>
+<xsl:attribute-set name="appendix.titlepage.verso.style"/>
+
+<xsl:attribute-set name="bibliography.titlepage.recto.style"/>
+<xsl:attribute-set name="bibliography.titlepage.verso.style"/>
+
+<xsl:attribute-set name="bibliodiv.titlepage.recto.style"/>
+<xsl:attribute-set name="bibliodiv.titlepage.verso.style"/>
+
+<xsl:attribute-set name="glossary.titlepage.recto.style"/>
+<xsl:attribute-set name="glossary.titlepage.verso.style"/>
+
+<xsl:attribute-set name="glossdiv.titlepage.recto.style"/>
+<xsl:attribute-set name="glossdiv.titlepage.verso.style"/>
+
+<xsl:attribute-set name="index.titlepage.recto.style"/>
+<xsl:attribute-set name="index.titlepage.verso.style"/>
+
+<xsl:attribute-set name="setindex.titlepage.recto.style"/>
+<xsl:attribute-set name="setindex.titlepage.verso.style"/>
+
+<xsl:attribute-set name="indexdiv.titlepage.recto.style"/>
+<xsl:attribute-set name="indexdiv.titlepage.verso.style"/>
+
+<xsl:attribute-set name="colophon.titlepage.recto.style"/>
+<xsl:attribute-set name="colophon.titlepage.verso.style"/>
+
+<xsl:attribute-set name="section.titlepage.recto.style">
+ <xsl:attribute name="keep-together">always</xsl:attribute>
+</xsl:attribute-set>
+
+<xsl:attribute-set name="section.titlepage.verso.style">
+ <xsl:attribute name="keep-together">always</xsl:attribute>
+ <xsl:attribute name="keep-with-next">always</xsl:attribute>
+</xsl:attribute-set>
+
+<xsl:attribute-set name="sect1.titlepage.recto.style"
+ use-attribute-sets="section.titlepage.recto.style"/>
+<xsl:attribute-set name="sect1.titlepage.verso.style"
+ use-attribute-sets="section.titlepage.verso.style"/>
+
+<xsl:attribute-set name="sect2.titlepage.recto.style"
+ use-attribute-sets="section.titlepage.recto.style"/>
+<xsl:attribute-set name="sect2.titlepage.verso.style"
+ use-attribute-sets="section.titlepage.verso.style"/>
+
+<xsl:attribute-set name="sect3.titlepage.recto.style"
+ use-attribute-sets="section.titlepage.recto.style"/>
+<xsl:attribute-set name="sect3.titlepage.verso.style"
+ use-attribute-sets="section.titlepage.verso.style"/>
+
+<xsl:attribute-set name="sect4.titlepage.recto.style"
+ use-attribute-sets="section.titlepage.recto.style"/>
+<xsl:attribute-set name="sect4.titlepage.verso.style"
+ use-attribute-sets="section.titlepage.verso.style"/>
+
+<xsl:attribute-set name="sect5.titlepage.recto.style"
+ use-attribute-sets="section.titlepage.recto.style"/>
+<xsl:attribute-set name="sect5.titlepage.verso.style"
+ use-attribute-sets="section.titlepage.verso.style"/>
+
+<xsl:attribute-set name="simplesect.titlepage.recto.style"
+ use-attribute-sets="section.titlepage.recto.style"/>
+<xsl:attribute-set name="simplesect.titlepage.verso.style"
+ use-attribute-sets="section.titlepage.verso.style"/>
+
+<xsl:attribute-set name="refsynopsisdiv.titlepage.recto.style"
+ use-attribute-sets="section.titlepage.recto.style"/>
+<xsl:attribute-set name="refsynopsisdiv.titlepage.verso.style"
+ use-attribute-sets="section.titlepage.verso.style"/>
+
+<xsl:attribute-set name="refsection.titlepage.recto.style"
+ use-attribute-sets="section.titlepage.recto.style"/>
+<xsl:attribute-set name="refsection.titlepage.verso.style"
+ use-attribute-sets="section.titlepage.verso.style"/>
+
+<xsl:attribute-set name="refsect1.titlepage.recto.style"
+ use-attribute-sets="section.titlepage.recto.style"/>
+<xsl:attribute-set name="refsect1.titlepage.verso.style"
+ use-attribute-sets="section.titlepage.verso.style"/>
+
+<xsl:attribute-set name="refsect2.titlepage.recto.style"
+ use-attribute-sets="section.titlepage.recto.style"/>
+<xsl:attribute-set name="refsect2.titlepage.verso.style"
+ use-attribute-sets="section.titlepage.verso.style"/>
+
+<xsl:attribute-set name="refsect3.titlepage.recto.style"
+ use-attribute-sets="section.titlepage.recto.style"/>
+<xsl:attribute-set name="refsect3.titlepage.verso.style"
+ use-attribute-sets="section.titlepage.verso.style"/>
+
+<xsl:attribute-set name="table.of.contents.titlepage.recto.style"/>
+<xsl:attribute-set name="table.of.contents.titlepage.verso.style"/>
+
+<xsl:attribute-set name="list.of.tables.titlepage.recto.style"/>
+<xsl:attribute-set name="list.of.tables.contents.titlepage.verso.style"/>
+
+<xsl:attribute-set name="list.of.figures.titlepage.recto.style"/>
+<xsl:attribute-set name="list.of.figures.contents.titlepage.verso.style"/>
+
+<xsl:attribute-set name="list.of.equations.titlepage.recto.style"/>
+<xsl:attribute-set name="list.of.equations.contents.titlepage.verso.style"/>
+
+<xsl:attribute-set name="list.of.examples.titlepage.recto.style"/>
+<xsl:attribute-set name="list.of.examples.contents.titlepage.verso.style"/>
+
+<xsl:attribute-set name="list.of.procedures.titlepage.recto.style"/>
+<xsl:attribute-set name="list.of.procedures.contents.titlepage.verso.style"/>
+
+<xsl:attribute-set name="list.of.unknowns.titlepage.recto.style"/>
+<xsl:attribute-set name="list.of.unknowns.contents.titlepage.verso.style"/>
+
+<!-- ==================================================================== -->
+<dtm:doc dtm:idref="all.titlepage-mode"/>
+<xsl:template match="*" mode="titlepage.mode" dtm:id="all.titlepage-mode">
+ <!-- if an element isn't found in this mode, try the default mode -->
+ <xsl:apply-templates select="."/>
+</xsl:template>
+
+<dtm:doc dtm:idref="abbrev.titlepage-mode"/>
+<xsl:template match="abbrev" mode="titlepage.mode" dtm:id="abbrev.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="abstract.titlepage-mode"/>
+<xsl:template match="abstract" mode="titlepage.mode" dtm:id="abstract.titlepage-mode">
+ <fo:block>
+ <xsl:apply-templates mode="titlepage.mode"/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:elements="abstract/title" dtm:idref="title.abstract.titlepage-mode title.titlepage-title-mode"/>
+<xsl:template match="abstract/title" mode="titlepage.mode" dtm:id="title.abstract.titlepage-mode"/>
+
+<xsl:template match="abstract/title" mode="titlepage.abstract.title.mode" dtm:id="title.titlepage-title-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="address.titlepage-mode"/>
+<xsl:template match="address" mode="titlepage.mode" dtm:id="address.titlepage-mode">
+ <!-- use the normal address handling code -->
+ <xsl:apply-templates select="."/>
+</xsl:template>
+
+<dtm:doc dtm:idref="affiliation.titlepage-mode"/>
+<xsl:template match="affiliation" mode="titlepage.mode" dtm:id="affiliation.titlepage-mode">
+ <fo:block>
+ <xsl:apply-templates mode="titlepage.mode"/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="artpagenums.titlepage-mode"/>
+<xsl:template match="artpagenums" mode="titlepage.mode" dtm:id="artpagenums.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="author.titlepage-mode"/>
+<xsl:template match="author" mode="titlepage.mode" dtm:id="author.titlepage-mode">
+ <fo:block>
+ <xsl:call-template name="person.name"/>
+ <xsl:if test="affiliation/orgname">
+ <xsl:text>, </xsl:text>
+ <xsl:apply-templates select="affiliation/orgname" mode="titlepage.mode"/>
+ </xsl:if>
+ <xsl:if test="email|affiliation/address/email">
+ <xsl:text> </xsl:text>
+ <xsl:apply-templates select="(email|affiliation/address/email)[1]"/>
+ </xsl:if>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="authorblurb.titlepage-mode"/>
+<xsl:template match="authorblurb" mode="titlepage.mode" dtm:id="authorblurb.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="authorgroup.titlepage-mode"/>
+<xsl:template match="authorgroup" mode="titlepage.mode" dtm:id="authorgroup.titlepage-mode">
+ <fo:wrapper>
+ <xsl:if test="@id">
+ <xsl:attribute name="id"><xsl:value-of select="@id"/></xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates mode="titlepage.mode"/>
+ </fo:wrapper>
+</xsl:template>
+
+<dtm:doc dtm:idref="authorinitials.titlepage-mode"/>
+<xsl:template match="authorinitials" mode="titlepage.mode" dtm:id="authorinitials.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="bibliomisc.titlepage-mode"/>
+<xsl:template match="bibliomisc" mode="titlepage.mode" dtm:id="bibliomisc.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="bibliomset.titlepage-mode"/>
+<xsl:template match="bibliomset" mode="titlepage.mode" dtm:id="bibliomset.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="collab.titlepage-mode"/>
+<xsl:template match="collab" mode="titlepage.mode" dtm:id="collab.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="confgroup.titlepage-mode"/>
+<xsl:template match="confgroup" mode="titlepage.mode" dtm:id="confgroup.titlepage-mode">
+ <fo:block>
+ <xsl:apply-templates mode="titlepage.mode"/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="confdates.titlepage-mode"/>
+<xsl:template match="confdates" mode="titlepage.mode" dtm:id="confdates.titlepage-mode">
+ <fo:block>
+ <xsl:apply-templates mode="titlepage.mode"/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="conftitle.titlepage-mode"/>
+<xsl:template match="conftitle" mode="titlepage.mode" dtm:id="conftitle.titlepage-mode">
+ <fo:block>
+ <xsl:apply-templates mode="titlepage.mode"/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="confnum.titlepage-mode"/>
+<xsl:template match="confnum" mode="titlepage.mode" dtm:id="confnum.titlepage-mode">
+ <!-- suppress -->
+</xsl:template>
+
+<dtm:doc dtm:idref="contractnum.titlepage-mode"/>
+<xsl:template match="contractnum" mode="titlepage.mode" dtm:id="contractnum.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="contractsponsor.titlepage-mode"/>
+<xsl:template match="contractsponsor" mode="titlepage.mode" dtm:id="contractsponsor.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="contrib.titlepage-mode"/>
+<xsl:template match="contrib" mode="titlepage.mode" dtm:id="contrib.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="copyright.titlepage-mode"/>
+<xsl:template match="copyright" mode="titlepage.mode" dtm:id="copyright.titlepage-mode">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'copyright'"/>
+ </xsl:call-template>
+ <xsl:text> </xsl:text>
+ <xsl:call-template name="dingbat">
+ <xsl:with-param name="dingbat">copyright</xsl:with-param>
+ </xsl:call-template>
+ <xsl:text> </xsl:text>
+ <xsl:call-template name="copyright.years">
+ <xsl:with-param name="years" select="year"/>
+ <xsl:with-param name="print.ranges" select="$make.year.ranges"/>
+ <xsl:with-param name="single.year.ranges"
+ select="$make.single.year.ranges"/>
+ </xsl:call-template>
+ <xsl:text> </xsl:text>
+ <xsl:apply-templates select="holder" mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="year.titlepage-mode"/>
+<xsl:template match="year" mode="titlepage.mode" dtm:id="year.titlepage-mode">
+ <fo:inline
+ border-left-width="0pt"
+ border-right-width="0pt"><xsl:apply-templates/></fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:idref="holder.titlepage-mode"/>
+<xsl:template match="holder" mode="titlepage.mode" dtm:id="holder.titlepage-mode">
+ <xsl:apply-templates/>
+</xsl:template>
+
+<dtm:doc dtm:idref="corpauthor.titlepage-mode"/>
+<xsl:template match="corpauthor" mode="titlepage.mode" dtm:id="corpauthor.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="corpname.titlepage-mode"/>
+<xsl:template match="corpname" mode="titlepage.mode" dtm:id="corpname.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="date.titlepage-mode"/>
+<xsl:template match="date" mode="titlepage.mode" dtm:id="date.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="edition.titlepage-mode"/>
+<xsl:template match="edition" mode="titlepage.mode" dtm:id="edition.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+ <xsl:text> </xsl:text>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'edition'"/>
+ </xsl:call-template>
+</xsl:template>
+
+<dtm:doc dtm:idref="editor.titlepage-mode"/>
+<xsl:template match="editor" mode="titlepage.mode" dtm:id="editor.titlepage-mode">
+ <xsl:call-template name="person.name"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="editor[1].titlepage-mode"/>
+<xsl:template match="editor[1]" priority="2" mode="titlepage.mode" dtm:id="editor[1].titlepage-mode">
+ <xsl:text>TODO: edited by </xsl:text>
+ <xsl:call-template name="person.name"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="firstname.titlepage-mode"/>
+<xsl:template match="firstname" mode="titlepage.mode" dtm:id="firstname.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="graphic.titlepage-mode"/>
+<xsl:template match="graphic" mode="titlepage.mode" dtm:id="graphic.titlepage-mode">
+ <!-- use the normal graphic handling code -->
+ <xsl:apply-templates select="."/>
+</xsl:template>
+
+<dtm:doc dtm:idref="honorific.titlepage-mode"/>
+<xsl:template match="honorific" mode="titlepage.mode" dtm:id="honorific.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="isbn.titlepage-mode"/>
+<xsl:template match="isbn" mode="titlepage.mode" dtm:id="isbn.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="issn.titlepage-mode"/>
+<xsl:template match="issn" mode="titlepage.mode" dtm:id="issn.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="biblioid.titlepage-mode"/>
+<xsl:template match="biblioid" mode="titlepage.mode" dtm:id="biblioid.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="itermset.titlepage-mode"/>
+<xsl:template match="itermset" mode="titlepage.mode" dtm:id="itermset.titlepage-mode">
+ <!-- discard -->
+</xsl:template>
+
+<dtm:doc dtm:idref="invpartnumber.titlepage-mode"/>
+<xsl:template match="invpartnumber" mode="titlepage.mode" dtm:id="invpartnumber.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="issuenum.titlepage-mode"/>
+<xsl:template match="issuenum" mode="titlepage.mode" dtm:id="issuenum.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="jobtitle.titlepage-mode"/>
+<xsl:template match="jobtitle" mode="titlepage.mode" dtm:id="jobtitle.titlepage-mode">
+ <fo:block>
+ <xsl:apply-templates mode="titlepage.mode"/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="keywordset.titlepage-mode"/>
+<xsl:template match="keywordset" mode="titlepage.mode" dtm:id="keywordset.titlepage-mode">
+</xsl:template>
+
+<dtm:doc dtm:idref="legalnotice.titlepage-mode"/>
+<xsl:template match="legalnotice" mode="titlepage.mode" dtm:id="legalnotice.titlepage-mode">
+ <fo:block>
+ <xsl:choose>
+ <xsl:when test="title">
+ <xsl:apply-templates select="title" mode="plain.formal.title.mode"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="formal.title.gentext">
+ <xsl:with-param name="key" select="'legalnotice'"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:apply-templates select="*[local-name(.) != 'title']"/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:elements="legalnotice/title" dtm:idref="title.legalnotice.titlepage-mode title.legalnotice.titlepage-title-mode"/>
+<xsl:template match="legalnotice/title" mode="titlepage.mode" dtm:id="title.legalnotice.titlepage-mode">
+</xsl:template>
+
+<xsl:template match="legalnotice/title" mode="titlepage.legalnotice.title.mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="lineage.titlepage-mode"/>
+<xsl:template match="lineage" mode="titlepage.mode" dtm:id="lineage.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="modespec.titlepage-mode"/>
+<xsl:template match="modespec" mode="titlepage.mode" dtm:id="modespec.titlepage-mode">
+ <!-- discard -->
+</xsl:template>
+
+<dtm:doc dtm:idref="orgdiv.titlepage-mode"/>
+<xsl:template match="orgdiv" mode="titlepage.mode" dtm:id="orgdiv.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="orgname.titlepage-mode"/>
+<xsl:template match="orgname" mode="titlepage.mode" dtm:id="orgname.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="othercredit.titlepage-mode"/>
+<xsl:template match="othercredit" mode="titlepage.mode" dtm:id="othercredit.titlepage-mode">
+ <xsl:variable name="contrib" select="string(contrib)"/>
+ <xsl:choose>
+ <xsl:when test="contrib">
+ <xsl:if test="not(preceding-sibling::othercredit[string(contrib)=$contrib])">
+ <fo:block>
+ <xsl:apply-templates mode="titlepage.mode" select="contrib"/>
+ <xsl:text>: </xsl:text>
+ <xsl:call-template name="person.name"/>
+ <xsl:apply-templates mode="titlepage.mode" select="affiliation"/>
+ <xsl:apply-templates select="following-sibling::othercredit[string(contrib)=$contrib]" mode="titlepage.othercredits"/>
+ </fo:block>
+ </xsl:if>
+ </xsl:when>
+ <xsl:otherwise>
+ <fo:block><xsl:call-template name="person.name"/></fo:block>
+ <xsl:apply-templates mode="titlepage.mode" select="./affiliation"/>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="othercredit.titlepage-othercredits"/>
+<xsl:template match="othercredit" mode="titlepage.othercredits" dtm:id="othercredit.titlepage-othercredits">
+ <xsl:text>, </xsl:text>
+ <xsl:call-template name="person.name"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="othername.titlepage-mode"/>
+<xsl:template match="othername" mode="titlepage.mode" dtm:id="othername.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="pagenums.titlepage-mode"/>
+<xsl:template match="pagenums" mode="titlepage.mode" dtm:id="pagenums.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="printhistory.titlepage-mode"/>
+<xsl:template match="printhistory" mode="titlepage.mode" dtm:id="printhistory.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="productname.titlepage-mode"/>
+<xsl:template match="productname" mode="titlepage.mode" dtm:id="productname.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="productnumber.titlepage-mode"/>
+<xsl:template match="productnumber" mode="titlepage.mode" dtm:id="productnumber.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="pubdate.titlepage-mode"/>
+<xsl:template match="pubdate" mode="titlepage.mode" dtm:id="pubdate.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="publisher.titlepage-mode"/>
+<xsl:template match="publisher" mode="titlepage.mode" dtm:id="publisher.titlepage-mode">
+ <fo:block>
+ <xsl:apply-templates mode="titlepage.mode"/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="publishername.titlepage-mode"/>
+<xsl:template match="publishername" mode="titlepage.mode" dtm:id="publishername.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="pubsnumber.titlepage-mode"/>
+<xsl:template match="pubsnumber" mode="titlepage.mode" dtm:id="pubsnumber.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="releaseinfo.titlepage-mode"/>
+<xsl:template match="releaseinfo" mode="titlepage.mode" dtm:id="releaseinfo.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="revhistory.titlepage-mode"/>
+<xsl:template match="revhistory" mode="titlepage.mode" dtm:id="revhistory.titlepage-mode">
+ <fo:table table-layout="fixed">
+ <fo:table-column column-number="1" column-width="33%"/>
+ <fo:table-column column-number="2" column-width="33%"/>
+ <fo:table-column column-number="3" column-width="33%"/>
+ <fo:table-body>
+ <fo:table-row>
+ <fo:table-cell number-columns-spanned="3">
+ <fo:block>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'revhistory'"/>
+ </xsl:call-template>
+ </fo:block>
+ </fo:table-cell>
+ </fo:table-row>
+ <xsl:apply-templates mode="titlepage.mode"/>
+ </fo:table-body>
+ </fo:table>
+</xsl:template>
+
+<dtm:doc dtm:idref="revision.revhistory.titlepage-mode"/>
+<xsl:template match="revhistory/revision" mode="titlepage.mode" dtm:id="revision.revhistory.titlepage-mode">
+ <xsl:variable name="revnumber" select=".//revnumber"/>
+ <xsl:variable name="revdate" select=".//date"/>
+ <xsl:variable name="revauthor" select=".//authorinitials"/>
+ <xsl:variable name="revremark" select=".//revremark|.//revdescription"/>
+ <fo:table-row>
+ <fo:table-cell>
+ <fo:block>
+ <xsl:if test="$revnumber">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'revision'"/>
+ </xsl:call-template>
+ <xsl:text> </xsl:text>
+ <xsl:apply-templates select="$revnumber[1]" mode="titlepage.mode"/>
+ </xsl:if>
+ </fo:block>
+ </fo:table-cell>
+ <fo:table-cell>
+ <fo:block>
+ <xsl:apply-templates select="$revdate[1]" mode="titlepage.mode"/>
+ </fo:block>
+ </fo:table-cell>
+ <fo:table-cell>
+ <fo:block>
+ <xsl:apply-templates select="$revauthor[1]" mode="titlepage.mode"/>
+ </fo:block>
+ </fo:table-cell>
+ </fo:table-row>
+ <xsl:if test="$revremark">
+ <fo:table-row>
+ <fo:table-cell number-columns-spanned="3">
+ <fo:block>
+ <xsl:apply-templates select="$revremark[1]" mode="titlepage.mode"/>
+ </fo:block>
+ </fo:table-cell>
+ </fo:table-row>
+ </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:idref="revnumber.revision.titlepage-mode"/>
+<xsl:template match="revision/revnumber" mode="titlepage.mode" dtm:id="revnumber.revision.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="date.revision.titlepage-mode"/>
+<xsl:template match="revision/date" mode="titlepage.mode" dtm:id="date.revision.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="authorinitials.revision.titlepage-mode"/>
+<xsl:template match="revision/authorinitials" mode="titlepage.mode" dtm:id="authorinitials.revision.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="revremark.revision.titlepage-mode"/>
+<xsl:template match="revision/revremark" mode="titlepage.mode" dtm:id="revremark.revision.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="revdescription.revision.titlepage-mode"/>
+<xsl:template match="revision/revdescription" mode="titlepage.mode" dtm:id="revdescription.revision.titlepage-mode">
+ <fo:block text-align="left">
+ <xsl:apply-templates mode="titlepage.mode"/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="seriesvolnums.titlepage-mode"/>
+<xsl:template match="seriesvolnums" mode="titlepage.mode" dtm:id="seriesvolnums.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="shortaffil.titlepage-mode"/>
+<xsl:template match="shortaffil" mode="titlepage.mode" dtm:id="shortaffil.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="subjectset.titlepage-mode"/>
+<xsl:template match="subjectset" mode="titlepage.mode" dtm:id="subjectset.titlepage-mode">
+ <!-- discard -->
+</xsl:template>
+
+<dtm:doc dtm:idref="subtitle.titlepage-mode"/>
+<xsl:template match="subtitle" mode="titlepage.mode" dtm:id="subtitle.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="surname.titlepage-mode"/>
+<xsl:template match="surname" mode="titlepage.mode" dtm:id="surname.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="title.titlepage-mode"/>
+<xsl:template match="title" mode="titlepage.mode" dtm:id="title.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="titleabbrev.titlepage-mode"/>
+<xsl:template match="titleabbrev" mode="titlepage.mode" dtm:id="titleabbrev.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="volumenum.titlepage-mode"/>
+<xsl:template match="volumenum" mode="titlepage.mode" dtm:id="volumenum.titlepage-mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+</xsl:template>
+
+<!-- ==================================================================== -->
+<!-- Book templates -->
+
+<!-- Note: these templates cannot use *.titlepage.recto.mode or
+ *.titlepage.verso.mode. If they do then subsequent use of a custom
+ titlepage.templates.xml file will not work correctly. -->
+
+<!-- book recto -->
+<dtm:doc dtm:idref="authorgroup.bookinfo.titlepage-mode"/>
+<xsl:template match="bookinfo/authorgroup" mode="titlepage.mode" priority="2" dtm:id="authorgroup.bookinfo.titlepage-mode">
+ <fo:block>
+ <xsl:if test="@id">
+ <xsl:attribute name="id"><xsl:value-of select="@id"/></xsl:attribute>
+ </xsl:if>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'by'"/>
+ </xsl:call-template>
+ <xsl:text> </xsl:text>
+ <xsl:call-template name="person.name.list"/>
+ </fo:block>
+</xsl:template>
+
+<!-- book verso -->
+<dtm:doc dtm:idref="book.verso.title"/>
+<xsl:template name="book.verso.title" dtm:id="book.verso.title">
+ <fo:block>
+ <xsl:apply-templates mode="titlepage.mode"/>
+
+ <xsl:if test="following-sibling::subtitle
+ |following-sibling::bookinfo/subtitle">
+ <xsl:text>: </xsl:text>
+
+ <xsl:apply-templates select="(following-sibling::subtitle
+ |following-sibling::bookinfo/subtitle)[1]"
+ mode="book.verso.subtitle.mode"/>
+ </xsl:if>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="subtitle.book.verso.mode"/>
+<xsl:template match="subtitle" mode="book.verso.subtitle.mode" dtm:id="subtitle.book.verso.mode">
+ <xsl:apply-templates mode="titlepage.mode"/>
+ <xsl:if test="following-sibling::subtitle">
+ <xsl:text>: </xsl:text>
+ <xsl:apply-templates select="following-sibling::subtitle[1]"
+ mode="book.verso.subtitle.mode"/>
+ </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:idref="verso.authorgroup"/>
+<xsl:template name="verso.authorgroup" dtm:id="verso.authorgroup">
+ <fo:block>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'by'"/>
+ </xsl:call-template>
+ <xsl:text> </xsl:text>
+ <xsl:call-template name="person.name.list"/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="author.bookinfo.titlepage-mode"/>
+<xsl:template match="bookinfo/author" mode="titlepage.mode" priority="2" dtm:id="author.bookinfo.titlepage-mode">
+ <fo:block>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'by'"/>
+ </xsl:call-template>
+ <xsl:text> </xsl:text>
+ <xsl:call-template name="person.name"/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="corpauthor.bookinfo.titlepage-mode"/>
+<xsl:template match="bookinfo/corpauthor" mode="titlepage.mode" priority="2" dtm:id="corpauthor.bookinfo.titlepage-mode">
+ <fo:block>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'by'"/>
+ </xsl:call-template>
+ <xsl:text> </xsl:text>
+ <xsl:apply-templates/>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="pubdate.bookinfo.titlepage-mode"/>
+<xsl:template match="bookinfo/pubdate" mode="titlepage.mode" priority="2" dtm:id="pubdate.bookinfo.titlepage-mode">
+ <fo:block>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'published'"/>
+ </xsl:call-template>
+ <xsl:text> </xsl:text>
+ <xsl:apply-templates mode="titlepage.mode"/>
+ </fo:block>
+</xsl:template>
+
+<!-- ==================================================================== -->
+
+</xsl:stylesheet>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/titles.xsl b/doc/editor_configs/serna/scons/docbook-xsl-serna/titles.xsl
new file mode 100644
index 0000000..86799e4
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/titles.xsl
@@ -0,0 +1,511 @@
+<?xml version='1.0'?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ xmlns:xse="http://www.syntext.com/Extensions/XSLT-1.0"
+ xmlns:se="http://syntext.com/XSL/Format-1.0"
+ xmlns:dtm="http://syntext.com/Extensions/DocumentTypeMetadata-1.0"
+ extension-element-prefixes="dtm"
+ version='1.0'>
+
+ <!-- This template helps to see chapter when its titlethings are
+ still empty -->
+
+ <dtm:doc dtm:idref="handle.empty"/>
+ <xsl:template name="handle.empty" dtm:id="handle.empty">
+ <xsl:param name="titles" select="''"/>
+ <xsl:param name="preamble" select="''"/>
+ <xsl:param name="content" select="*"/>
+
+ <xsl:variable name="toc">
+ <xsl:call-template name="decorations"/>
+ </xsl:variable>
+
+ <xsl:variable name="type">
+ <xsl:call-template name="get.type"/>
+ </xsl:variable>
+
+ <xsl:choose>
+ <xsl:when test="string-length($titles)">
+ <xsl:copy-of select="$titles"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="." mode="empty.title.mode"/>
+ </xsl:otherwise>
+ </xsl:choose>
+
+ <xsl:if test="contains($toc, 'toc')">
+ <xsl:choose>
+ <xsl:when test="self::set">
+ <xsl:call-template name="set.toc"/>
+ </xsl:when>
+ <xsl:when test="$type = 'division'">
+ <xsl:call-template name="division.toc"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="component.toc"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:if>
+ <xsl:choose>
+ <xsl:when test="$show.preamble.editing">
+ <fo:block padding-bottom="0.5em">
+ <fo:block xsl:use-attribute-sets="preamble.attributes">
+ <fo:block background-color="transparent"
+ xsl:use-attribute-sets="title.content.properties formal.title.properties">
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="name" select="'draftarea'"/>
+ <xsl:with-param name="context" select="'empty'"/>
+ </xsl:call-template>
+ <xsl:text> "</xsl:text>
+ <xsl:value-of select="local-name(.)"/>
+ <xsl:text>" </xsl:text>
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="name" select="'metainfo'"/>
+ <xsl:with-param name="context" select="'empty'"/>
+ </xsl:call-template>
+ <xsl:text>. </xsl:text>
+ </fo:block>
+ <xsl:apply-templates select="$preamble"/>
+ </fo:block>
+ </fo:block>
+ </xsl:when>
+ <xsl:when test="processing-instruction('se:choice')">
+ <fo:block>
+ <xsl:apply-templates select="processing-instruction('se:choice')"/>
+ </fo:block>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:apply-templates select="$content"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="sbpr.empty-title-mode"/>
+ <xsl:template match="set|book|part|reference" mode="empty.title.mode" dtm:id="sbpr.empty-title-mode">
+ <fo:block
+ background-color="#e0e0e0"
+ xsl:use-attribute-sets="title.content.properties
+ division.title.properties">
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="'empty'"/>
+ <xsl:with-param name="name" select="local-name(.)"/>
+ </xsl:call-template>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="aacp.empty-title-mode"/>
+ <xsl:template match="appendix|article|chapter|preface" mode="empty.title.mode" dtm:id="aacp.empty-title-mode">
+ <fo:block
+ background-color="#e0e0e0"
+ xsl:use-attribute-sets="title.content.properties
+ component.title.properties">
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="'empty'"/>
+ <xsl:with-param name="name" select="local-name(.)"/>
+ </xsl:call-template>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="sections.empty-title-mode"/>
+ <xsl:template match="section|sect1|sect2|sect3|sect4|sect5|bibliodiv|glossary"
+ mode="empty.title.mode" dtm:id="sections.empty-title-mode">
+ <fo:block
+ background-color="#e0e0e0"
+ xsl:use-attribute-sets="title.content.properties
+ section.title.level1.properties">
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="'empty'"/>
+ <xsl:with-param name="name" select="local-name(.)"/>
+ </xsl:call-template>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="all.empty-title-mode"/>
+ <xsl:template match="*" mode="empty.title.mode" dtm:id="all.empty-title-mode">
+ <fo:block>
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="'empty'"/>
+ <xsl:with-param name="name" select="local-name(.)"/>
+ </xsl:call-template>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="empty-title"/>
+ <xsl:template name="empty-title" dtm:id="empty-title">
+ <xsl:choose>
+ <xsl:when test="node()">
+ <xsl:apply-templates/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="context" select="'empty'"/>
+ <xsl:with-param name="name" select="'title'"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+
+ <!-- Commonly met elements -->
+
+ <dtm:doc dtm:idref="titles.count"/>
+ <xsl:template name="count.title" dtm:id="titles.count">
+ <xsl:param name="need.dot"/>
+ <xsl:choose>
+ <xsl:when test="self::title or self::subtitle">
+ <xsl:for-each select="..">
+ <xsl:call-template name="count.title">
+ <xsl:with-param name="need.dot" select="$need.dot"/>
+ </xsl:call-template>
+ </xsl:for-each>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:choose>
+ <xsl:when test="ancestor::appendix">
+ <xsl:number level="multiple" count="appendix|section|sect1|
+ sect2|sect3|sect4|sect5|simplesect" format="A.1."/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:number level="multiple" count="chapter|section|sect1|
+ sect2|sect3|sect4|sect5|simplesect" format="1.1."/>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:choose>
+ <xsl:when test="$need.dot">
+ <xsl:number level="any" from="chapter|article|book|part"
+ format="1. "/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:number level="any" from="chapter|article|book|part"
+ format="1"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="title.formal-title-mode"/>
+ <xsl:template match="title" mode="formal.title.mode" dtm:id="title.formal-title-mode">
+ <xsl:param name="key" select="''"/>
+ <xsl:variable name="title">
+ <fo:inline>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="$key"/>
+ </xsl:call-template>
+ <xsl:text> </xsl:text>
+ <xsl:call-template name="count.title">
+ <xsl:with-param name="need.dot" select="1"/>
+ </xsl:call-template>
+ </fo:inline>
+ <xsl:apply-templates/>
+ </xsl:variable>
+ <fo:block
+ xsl:use-attribute-sets="title.content.properties formal.title.properties">
+ <xsl:choose>
+ <xsl:when test="string-length($title)">
+ <xsl:copy-of select="$title"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text>Title:</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="title.formal-title-mode"/>
+ <xsl:template match="title" mode="plain.formal.title.mode">
+ <fo:block
+ xsl:use-attribute-sets="title.content.properties formal.title.properties">
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="formal-title-gentext"/>
+ <xsl:template name="formal.title.gentext" dtm:id="formal-title-gentext">
+ <xsl:param name="key" select="''"/>
+ <fo:block
+ xsl:use-attribute-sets="title.content.properties formal.title.properties">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="$key"/>
+ </xsl:call-template>
+ </fo:block>
+ </xsl:template>
+
+ <!-- Article Titles -->
+ <dtm:doc dtm:idref="title.article-titles-mode"/>
+ <xsl:template match="title" mode="article.titles.mode" dtm:id="title.article-titles-mode">
+ <fo:block>
+ <xsl:call-template name="empty-title"/>
+ </fo:block>
+ </xsl:template>
+
+ <!-- Appendix Titles -->
+ <dtm:doc dtm:idref="title.appendix-titles-mode"/>
+ <xsl:template match="title" mode="appendix.titles.mode" dtm:id="title.appendix-titles-mode">
+ <fo:block>
+ <xsl:choose>
+ <xsl:when test="$appendix.autolabel">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'appendix'"/>
+ </xsl:call-template>
+ <xsl:text> </xsl:text>
+ <xsl:number level="single" count="appendix" format="A. "/>
+ <xsl:apply-templates/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="empty-title"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </fo:block>
+ </xsl:template>
+
+ <!-- Part Titles -->
+ <dtm:doc dtm:idref="title.part-titles-mode"/>
+ <xsl:template match="title" mode="part.titles.mode" dtm:id="title.part-titles-mode">
+ <fo:block>
+ <xsl:choose>
+ <xsl:when test="$part.autolabel">
+ <xsl:number level="single" count="part" format="I. "/>
+ <xsl:apply-templates/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="empty-title"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="title.reference-titles-mode"/>
+ <xsl:template match="title" mode="reference.titles.mode" dtm:id="title.reference-titles-mode">
+ <fo:block
+ xsl:use-attribute-sets="title.content.properties
+ division.title.properties">
+ <xsl:call-template name="empty-title"/>
+ </fo:block>
+ </xsl:template>
+
+ <!-- Chapter Titles -->
+ <dtm:doc dtm:idref="title.chapter-titles-mode"/>
+ <xsl:template match="title" mode="chapter.titles.mode" dtm:id="title.chapter-titles-mode">
+ <fo:block>
+ <xsl:choose>
+ <xsl:when test="$chapter.autolabel">
+ <fo:inline>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'chapter'"/>
+ </xsl:call-template>
+ <xsl:text> </xsl:text>
+ <xsl:number level="single" count="chapter" format="1. "/>
+ </fo:inline>
+ <xsl:apply-templates/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="empty-title"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </fo:block>
+ </xsl:template>
+
+ <!-- Simplesect titles -->
+ <dtm:doc dtm:idref="title.simplesect-titles-mode"/>
+ <xsl:template match="title" mode="simplesect.titles.mode" dtm:id="title.simplesect-titles-mode">
+ <fo:block>
+ <xsl:call-template name="empty-title"/>
+ </fo:block>
+ </xsl:template>
+
+ <!-- Preface Titles -->
+ <dtm:doc dtm:idref="title.preface-titles-mode"/>
+ <xsl:template match="title" mode="preface.titles.mode" dtm:id="title.preface-titles-mode">
+ <fo:block>
+ <xsl:choose>
+ <xsl:when test="$preface.autolabel">
+ <fo:inline>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'preface'"/>
+ </xsl:call-template>
+ <xsl:text> </xsl:text>
+ <xsl:number level="single" count="preface" format="I. "/>
+ </fo:inline>
+ <xsl:apply-templates/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="empty-title"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </fo:block>
+ </xsl:template>
+
+ <!-- Section Titles -->
+ <dtm:doc dtm:idref="title.section-titles-mode"/>
+ <xsl:template match="title" mode="section.titles.mode" dtm:id="title.section-titles-mode">
+ <xsl:param name="level">
+ <xsl:call-template name="section.level"/>
+ </xsl:param>
+ <xsl:param name="heading">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'section'"/>
+ </xsl:call-template>
+ <xsl:text> </xsl:text>
+ </xsl:param>
+ <xsl:variable name="title.content">
+ <xsl:choose>
+ <xsl:when test="$section.autolabel">
+ <xsl:if test="not(ancestor::refentry)">
+ <xsl:value-of select="$heading"/>
+ </xsl:if>
+ <xsl:choose>
+ <xsl:when test="$section.label.includes.component.label">
+ <xsl:choose>
+ <xsl:when test="ancestor::appendix">
+ <xsl:number
+ level="multiple"
+ count="appendix|section|sect1|sect2|sect3|sect4|sect5|
+ refsect1|refsect2|refsect3"
+ format="A.1. "/>
+ </xsl:when>
+ <xsl:when test="ancestor::refentry">
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:number
+ level="multiple"
+ count="chapter|qandadiv|section|
+ sect1|sect2|sect3|sect4|sect5|
+ refsect1|refsect2|refsect3"
+ format="1. "/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:number
+ level="multiple"
+ count="qandadiv|section|sect1|sect2|sect3|sect4|sect5|
+ refsect1|refsect2|refsect3"
+ format="1. "/>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:apply-templates/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="empty-title"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+ <xsl:choose>
+ <xsl:when test="$level = 1">
+ <fo:block
+ xsl:use-attribute-sets="section.title.level1.properties">
+ <xsl:copy-of select="$title.content"/>
+ </fo:block>
+ </xsl:when>
+ <xsl:when test="$level = 2">
+ <fo:block
+ xsl:use-attribute-sets="section.title.level2.properties">
+ <xsl:copy-of select="$title.content"/>
+ </fo:block>
+ </xsl:when>
+ <xsl:when test="$level = 3">
+ <fo:block
+ xsl:use-attribute-sets="section.title.level3.properties">
+ <xsl:copy-of select="$title.content"/>
+ </fo:block>
+ </xsl:when>
+ <xsl:when test="$level = 4">
+ <fo:block
+ xsl:use-attribute-sets="section.title.level4.properties">
+ <xsl:copy-of select="$title.content"/>
+ </fo:block>
+ </xsl:when>
+ <xsl:when test="$level = 5">
+ <fo:block
+ xsl:use-attribute-sets="section.title.level5.properties">
+ <xsl:copy-of select="$title.content"/>
+ </fo:block>
+ </xsl:when>
+ <xsl:otherwise>
+ <fo:block
+ xsl:use-attribute-sets="section.title.level5.properties">
+ <xsl:copy-of select="$title.content"/>
+ </fo:block>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+
+ <!-- Set Titles -->
+ <dtm:doc dtm:idref="title.set-titles-mode"/>
+ <xsl:template match="title" mode="set.titles.mode" dtm:id="title.set-titles-mode">
+ <fo:block>
+ <xsl:call-template name="empty-title"/>
+ </fo:block>
+ </xsl:template>
+
+ <!-- Book Titles -->
+ <dtm:doc dtm:idref="title.book-titles-mode"/>
+ <xsl:template match="title" mode="book.titles.mode" dtm:id="title.book-titles-mode">
+ <fo:block>
+ <xsl:call-template name="empty-title"/>
+ </fo:block>
+ </xsl:template>
+
+ <!-- Bibliodiv Titles -->
+ <dtm:doc dtm:idref="title.bibliodiv-titles-mode"/>
+ <xsl:template match="title" mode="bibliodiv.titles.mode" dtm:id="title.bibliodiv-titles-mode">
+ <fo:block>
+ <xsl:call-template name="empty-title"/>
+ </fo:block>
+ </xsl:template>
+
+ <!-- Bibliography Titles -->
+ <dtm:doc dtm:idref="bibliography.title"/>
+ <xsl:template name="bibliography.title" dtm:id="bibliography.title">
+ <xsl:param name="node" select="."/>
+ <fo:block>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'bibliography'"/>
+ </xsl:call-template>
+ </fo:block>
+ <xsl:apply-templates select="title"/>
+ </xsl:template>
+
+ <!-- Glossary Titles -->
+ <dtm:doc dtm:idref="title.glossary-titles-mode"/>
+ <xsl:template name="title" mode="glossary.titles.mode" dtm:id="title.glossary-titles-mode">
+ <fo:block>
+ <xsl:call-template name="empty-title"/>
+ </fo:block>
+ </xsl:template>
+
+ <!-- Glossdiv Titles -->
+ <dtm:doc dtm:idref="title.glossdiv-titles-mode"/>
+ <xsl:template match="title" mode="glossdiv.titles.mode" dtm:id="title.glossdiv-titles-mode">
+ <fo:block>
+ <xsl:call-template name="empty-title"/>
+ </fo:block>
+ </xsl:template>
+
+ <!-- Information wrappers -->
+ <dtm:doc dtm:idref="infoes"/>
+ <xsl:template match="articleinfo|artheader|bookbiblio|docinfo|objectinfo|refsynopsisdivinfo|sect1info|sect2info|sect3info|sect4info|sect5info|sectioninfo|setinfo" dtm:id="infoes">
+ <fo:block>
+ <xsl:apply-templates/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="title.refsynopsisdiv-titles-mode"/>
+ <xsl:template match="title" mode="refsynopsisdiv.titles.mode" dtm:id="title.refsynopsisdiv-titles-mode">
+ <fo:block>
+ <xsl:call-template name="empty-title"/>
+ </fo:block>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="serna.fold.template"/>
+ <xsl:template name="serna.fold.template" dtm:id="serna.fold.template">
+ <xsl:apply-templates select="." mode="serna.fold"
+ xse:apply-serna-fold-template="false"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="all.serna-fold"/>
+ <xsl:template match="*" mode="serna.fold" dtm:id="all.serna-fold">
+ <se:fold se:fold=""/>
+ </xsl:template>
+
+</xsl:stylesheet>
+
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/toc.labels.xsl b/doc/editor_configs/serna/scons/docbook-xsl-serna/toc.labels.xsl
new file mode 100644
index 0000000..92a9fc7
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/toc.labels.xsl
@@ -0,0 +1,553 @@
+<?xml version='1.0'?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:doc="http://nwalsh.com/xsl/documentation/1.0"
+ xmlns:xse="http://www.syntext.com/Extensions/XSLT-1.0"
+ xmlns:dtm="http://syntext.com/Extensions/DocumentTypeMetadata-1.0"
+ extension-element-prefixes="dtm"
+ exclude-result-prefixes="doc"
+ version='1.0'>
+
+<dtm:doc dtm:idref="all.intralabel-punctuation"/>
+<xsl:template match="*" mode="intralabel.punctuation" dtm:id="all.intralabel-punctuation">
+ <xsl:text>.</xsl:text>
+</xsl:template>
+
+<dtm:doc dtm:idref="all.label-markup"/>
+<xsl:template match="*" mode="label.markup" dtm:id="all.label-markup">
+ <xsl:text>UNKNOWN LABEL MARKUP</xsl:text>
+</xsl:template>
+
+<dtm:doc dtm:idref="sb.label-markup"/>
+<xsl:template match="set|book" mode="label.markup" dtm:id="sb.label-markup">
+ <xsl:if test="@label">
+ <xsl:value-of select="@label"/>
+ </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:idref="part.label-markup"/>
+<xsl:template match="part" mode="label.markup" dtm:id="part.label-markup">
+ <xsl:choose>
+ <xsl:when test="@label">
+ <xsl:value-of select="@label"/>
+ </xsl:when>
+ <xsl:when test="$part.autolabel != 0">
+ <xsl:number from="book" count="part" format="I"/>
+ </xsl:when>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="partintro.label-markup"/>
+<xsl:template match="partintro" mode="label.markup" dtm:id="partintro.label-markup">
+ <!-- no label -->
+</xsl:template>
+
+<dtm:doc dtm:idref="preface.label-markup"/>
+<xsl:template match="preface" mode="label.markup" dtm:id="preface.label-markup">
+ <xsl:choose>
+ <xsl:when test="@label">
+ <xsl:value-of select="@label"/>
+ </xsl:when>
+ <xsl:when test="$preface.autolabel != 0">
+ <xsl:choose>
+ <xsl:when test="$label.from.part != 0 and ancestor::part">
+ <xsl:number from="part" count="preface" format="1" level="any"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:number from="book" count="preface" format="1" level="any"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:when>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="chapter.label-markup"/>
+<xsl:template match="chapter" mode="label.markup" dtm:id="chapter.label-markup">
+ <xsl:choose>
+ <xsl:when test="@label">
+ <xsl:value-of select="@label"/>
+ </xsl:when>
+ <xsl:when test="$chapter.autolabel != 0">
+ <xsl:choose>
+ <xsl:when test="$label.from.part != 0 and ancestor::part">
+ <xsl:number from="part" count="chapter" format="1" level="any"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:number from="book" count="chapter" format="1" level="any"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:when>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="appendix.label-markup"/>
+<xsl:template match="appendix" mode="label.markup" dtm:id="appendix.label-markup">
+ <xsl:choose>
+ <xsl:when test="@label">
+ <xsl:value-of select="@label"/>
+ </xsl:when>
+ <xsl:when test="$appendix.autolabel != 0">
+ <xsl:choose>
+ <xsl:when test="$label.from.part != 0 and ancestor::part">
+ <xsl:number from="part" count="appendix" format="A" level="any"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:number from="book|article"
+ count="appendix" format="A" level="any"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:when>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="article.label-markup"/>
+<xsl:template match="article" mode="label.markup" dtm:id="article.label-markup">
+ <xsl:if test="@label">
+ <xsl:value-of select="@label"/>
+ </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:idref="dc.label-markup"/>
+<xsl:template match="dedication|colophon" mode="label.markup" dtm:id="dc.label-markup">
+ <xsl:if test="@label">
+ <xsl:value-of select="@label"/>
+ </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:idref="reference.label-markup"/>
+<xsl:template match="reference" mode="label.markup" dtm:id="reference.label-markup">
+ <xsl:choose>
+ <xsl:when test="@label">
+ <xsl:value-of select="@label"/>
+ </xsl:when>
+ <xsl:when test="$part.autolabel != 0">
+ <xsl:number from="book" count="reference" format="I" level="any"/>
+ </xsl:when>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="refentry.label-markup"/>
+<xsl:template match="refentry" mode="label.markup" dtm:id="refentry.label-markup">
+ <xsl:if test="@label">
+ <xsl:value-of select="@label"/>
+ </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:idref="section.label-markup"/>
+<xsl:template match="section" mode="label.markup" dtm:id="section.label-markup">
+ <!-- if this is a nested section, label the parent -->
+ <xsl:if test="local-name(..) = 'section'">
+ <xsl:variable name="parent.section.label">
+ <xsl:apply-templates select=".." mode="label.markup" xse:apply-serna-fold-template="false"/>
+ </xsl:variable>
+ <xsl:if test="$parent.section.label != ''">
+ <xsl:apply-templates select=".." mode="label.markup" xse:apply-serna-fold-template="false"/>
+ <xsl:apply-templates select=".." mode="intralabel.punctuation" xse:apply-serna-fold-template="false"/>
+ </xsl:if>
+ </xsl:if>
+
+ <!-- if the parent is a component, maybe label that too -->
+ <xsl:variable name="parent.is.component">
+ <xsl:call-template name="is.component">
+ <xsl:with-param name="node" select=".."/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <!-- does this section get labelled? -->
+ <xsl:variable name="label">
+ <xsl:call-template name="label.this.section">
+ <xsl:with-param name="section" select="."/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <xsl:if test="$section.label.includes.component.label != 0
+ and $parent.is.component != 0">
+ <xsl:variable name="parent.label">
+ <xsl:apply-templates select=".." mode="label.markup" xse:apply-serna-fold-template="false"/>
+ </xsl:variable>
+ <xsl:if test="$parent.label != ''">
+ <xsl:apply-templates select=".." mode="label.markup" xse:apply-serna-fold-template="false"/>
+ <xsl:apply-templates select=".." mode="intralabel.punctuation" xse:apply-serna-fold-template="false"/>
+ </xsl:if>
+ </xsl:if>
+
+
+ <xsl:choose>
+ <xsl:when test="@label">
+ <xsl:value-of select="@label"/>
+ </xsl:when>
+ <xsl:when test="$label != 0">
+ <xsl:number count="section"/>
+ </xsl:when>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="sect1.label-markup"/>
+<xsl:template match="sect1" mode="label.markup" dtm:id="sect1.label-markup">
+ <!-- if the parent is a component, maybe label that too -->
+ <xsl:variable name="parent.is.component">
+ <xsl:call-template name="is.component">
+ <xsl:with-param name="node" select=".."/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <xsl:if test="$section.label.includes.component.label != 0
+ and $parent.is.component">
+ <xsl:variable name="parent.label">
+ <xsl:apply-templates select=".." mode="label.markup" xse:apply-serna-fold-template="false"/>
+ </xsl:variable>
+ <xsl:if test="$parent.label != ''">
+ <xsl:apply-templates select=".." mode="label.markup" xse:apply-serna-fold-template="false"/>
+ <xsl:apply-templates select=".." mode="intralabel.punctuation" xse:apply-serna-fold-template="false"/>
+ </xsl:if>
+ </xsl:if>
+
+ <xsl:choose>
+ <xsl:when test="@label">
+ <xsl:value-of select="@label"/>
+ </xsl:when>
+ <xsl:when test="$section.autolabel != 0">
+ <xsl:number count="sect1"/>
+ </xsl:when>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="sections.label-markup"/>
+<xsl:template match="sect2|sect3|sect4|sect5" mode="label.markup" dtm:id="sections.label-markup">
+ <!-- label the parent -->
+ <xsl:variable name="parent.label">
+ <xsl:apply-templates select=".." mode="label.markup" xse:apply-serna-fold-template="false"/>
+ </xsl:variable>
+ <xsl:if test="$parent.label != ''">
+ <xsl:apply-templates select=".." mode="label.markup" xse:apply-serna-fold-template="false"/>
+ <xsl:apply-templates select=".." mode="intralabel.punctuation" xse:apply-serna-fold-template="false"/>
+ </xsl:if>
+
+ <xsl:choose>
+ <xsl:when test="@label">
+ <xsl:value-of select="@label"/>
+ </xsl:when>
+ <xsl:when test="$section.autolabel != 0">
+ <xsl:choose>
+ <xsl:when test="local-name(.) = 'sect2'">
+ <xsl:number count="sect2"/>
+ </xsl:when>
+ <xsl:when test="local-name(.) = 'sect3'">
+ <xsl:number count="sect3"/>
+ </xsl:when>
+ <xsl:when test="local-name(.) = 'sect4'">
+ <xsl:number count="sect4"/>
+ </xsl:when>
+ <xsl:when test="local-name(.) = 'sect5'">
+ <xsl:number count="sect5"/>
+ </xsl:when>
+ </xsl:choose>
+ </xsl:when>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="bridgehead.label-markup"/>
+<xsl:template match="bridgehead" mode="label.markup" dtm:id="bridgehead.label-markup">
+ <!-- FIXME: could we do a better job here? -->
+ <xsl:variable name="contsec"
+ select="(ancestor::section
+ |ancestor::simplesect
+ |ancestor::sect1
+ |ancestor::sect2
+ |ancestor::sect3
+ |ancestor::sect4
+ |ancestor::sect5
+ |ancestor::refsect1
+ |ancestor::refsect2
+ |ancestor::refsect3
+ |ancestor::chapter
+ |ancestor::appendix
+ |ancestor::preface)[last()]"/>
+
+ <xsl:apply-templates select="$contsec" mode="label.markup" xse:apply-serna-fold-template="false"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="refsect1.label-markup"/>
+<xsl:template match="refsect1" mode="label.markup" dtm:id="refsect1.label-markup">
+ <xsl:choose>
+ <xsl:when test="@label">
+ <xsl:value-of select="@label"/>
+ </xsl:when>
+ <xsl:when test="$section.autolabel != 0">
+ <xsl:number count="refsect1"/>
+ </xsl:when>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="refsects.label-markup"/>
+<xsl:template match="refsect2|refsect3" mode="label.markup" dtm:id="refsects.label-markup">
+ <!-- label the parent -->
+ <xsl:variable name="parent.label">
+ <xsl:apply-templates select=".." mode="label.markup" xse:apply-serna-fold-template="false"/>
+ </xsl:variable>
+ <xsl:if test="$parent.label != ''">
+ <xsl:apply-templates select=".." mode="label.markup" xse:apply-serna-fold-template="false"/>
+ <xsl:apply-templates select=".." mode="intralabel.punctuation" xse:apply-serna-fold-template="false"/>
+ </xsl:if>
+
+ <xsl:choose>
+ <xsl:when test="@label">
+ <xsl:value-of select="@label"/>
+ </xsl:when>
+ <xsl:when test="$section.autolabel != 0">
+ <xsl:choose>
+ <xsl:when test="local-name(.) = 'refsect2'">
+ <xsl:number count="refsect2"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:number count="refsect3"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:when>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="simplesect.label-markup"/>
+<xsl:template match="simplesect" mode="label.markup" dtm:id="simplesect.label-markup">
+ <!-- if this is a nested section, label the parent -->
+ <xsl:if test="local-name(..) = 'section'
+ or local-name(..) = 'sect1'
+ or local-name(..) = 'sect2'
+ or local-name(..) = 'sect3'
+ or local-name(..) = 'sect4'
+ or local-name(..) = 'sect5'">
+ <xsl:variable name="parent.section.label">
+ <xsl:apply-templates select=".." mode="label.markup" xse:apply-serna-fold-template="false"/>
+ </xsl:variable>
+ <xsl:if test="$parent.section.label != ''">
+ <xsl:apply-templates select=".." mode="label.markup" xse:apply-serna-fold-template="false"/>
+ <xsl:apply-templates select=".." mode="intralabel.punctuation" xse:apply-serna-fold-template="false"/>
+ </xsl:if>
+ </xsl:if>
+
+ <!-- if the parent is a component, maybe label that too -->
+ <xsl:variable name="parent.is.component">
+ <xsl:call-template name="is.component">
+ <xsl:with-param name="node" select=".."/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <!-- does this section get labelled? -->
+ <xsl:variable name="label">
+ <xsl:call-template name="label.this.section">
+ <xsl:with-param name="section" select="."/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <xsl:if test="$section.label.includes.component.label != 0
+ and $parent.is.component != 0">
+ <xsl:variable name="parent.label">
+ <xsl:apply-templates select=".." mode="label.markup" xse:apply-serna-fold-template="false"/>
+ </xsl:variable>
+ <xsl:if test="$parent.label != ''">
+ <xsl:apply-templates select=".." mode="label.markup" xse:apply-serna-fold-template="false"/>
+ <xsl:apply-templates select=".." mode="intralabel.punctuation" xse:apply-serna-fold-template="false"/>
+ </xsl:if>
+ </xsl:if>
+
+ <xsl:choose>
+ <xsl:when test="@label">
+ <xsl:value-of select="@label"/>
+ </xsl:when>
+ <xsl:when test="$label != 0">
+ <xsl:number count="simplesect"/>
+ </xsl:when>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="qandadiv.label-markup"/>
+<xsl:template match="qandadiv" mode="label.markup" dtm:id="qandadiv.label-markup">
+ <xsl:variable name="lparent" select="(ancestor::set
+ |ancestor::book
+ |ancestor::chapter
+ |ancestor::appendix
+ |ancestor::preface
+ |ancestor::section
+ |ancestor::simplesect
+ |ancestor::sect1
+ |ancestor::sect2
+ |ancestor::sect3
+ |ancestor::sect4
+ |ancestor::sect5
+ |ancestor::refsect1
+ |ancestor::refsect2
+ |ancestor::refsect3)[last()]"/>
+
+ <xsl:variable name="lparent.prefix">
+ <xsl:apply-templates select="$lparent" mode="label.markup" xse:apply-serna-fold-template="false"/>
+ </xsl:variable>
+
+ <xsl:variable name="prefix">
+ <xsl:if test="$qanda.inherit.numeration != 0">
+ <xsl:if test="$lparent.prefix != ''">
+ <xsl:apply-templates select="$lparent" mode="label.markup" xse:apply-serna-fold-template="false"/>
+ <xsl:apply-templates select="$lparent" mode="intralabel.punctuation" xse:apply-serna-fold-template="false"/>
+ </xsl:if>
+ </xsl:if>
+ </xsl:variable>
+
+ <xsl:choose>
+ <xsl:when test="@label">
+ <xsl:value-of select="$prefix"/>
+ <xsl:value-of select="@label"/>
+ </xsl:when>
+ <xsl:when test="$qandadiv.autolabel != 0">
+ <xsl:value-of select="$prefix"/>
+ <xsl:number level="multiple" count="qandadiv" format="1"/>
+ </xsl:when>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="bgis.label-markup"/>
+<xsl:template match="bibliography|glossary|index|setindex" mode="label.markup" dtm:id="bgis.label-markup">
+ <xsl:if test="@label">
+ <xsl:value-of select="@label"/>
+ </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:idref="ftep.label-markup"/>
+<xsl:template match="figure|table|example|procedure" mode="label.markup" dtm:id="ftep.label-markup">
+ <xsl:choose>
+ <xsl:when test="@label">
+ <xsl:value-of select="@label"/>
+ </xsl:when>
+ <xsl:when test="local-name() = 'procedure' and
+ $formal.procedures = 0">
+ <!-- No label -->
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="count.title"/>
+ </xsl:otherwise>
+ </xsl:choose>
+
+</xsl:template>
+
+<dtm:doc dtm:idref="equation.label-markup"/>
+<xsl:template match="equation" mode="label.markup" dtm:id="equation.label-markup">
+ <xsl:variable name="pchap"
+ select="ancestor::chapter
+ |ancestor::appendix
+ |ancestor::article[ancestor::book]"/>
+
+ <xsl:variable name="prefix">
+ <xsl:if test="count($pchap) &gt; 0">
+ <xsl:apply-templates select="$pchap" mode="label.markup" xse:apply-serna-fold-template="false"/>
+ </xsl:if>
+ </xsl:variable>
+
+ <xsl:choose>
+ <xsl:when test="@label">
+ <xsl:value-of select="@label"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:choose>
+ <xsl:when test="count($pchap)>0">
+ <xsl:if test="$prefix != ''">
+ <xsl:apply-templates select="$pchap" mode="label.markup" xse:apply-serna-fold-template="false"/>
+ <xsl:apply-templates select="$pchap" mode="intralabel.punctuation" xse:apply-serna-fold-template="false"/>
+ </xsl:if>
+ <xsl:number format="1" count="equation[title]" from="chapter|appendix" level="any"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:number format="1" count="equation[title]" from="book|article" level="any"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="abstract.label-markup"/>
+<xsl:template match="abstract" mode="label.markup" dtm:id="abstract.label-markup">
+ <!-- nop -->
+</xsl:template>
+
+<!-- ============================================================ -->
+<dtm:doc dtm:idref="label.this.sect"/>
+<xsl:template name="label.this.section" dtm:id="label.this.sect">
+ <xsl:param name="section" select="."/>
+ <xsl:value-of select="$section.autolabel"/>
+</xsl:template>
+
+<!-- ============================================================ -->
+<dtm:doc dtm:idref="qa.label-markup"/>
+<xsl:template match="question|answer" mode="label.markup" dtm:id="qa.label-markup">
+ <!-- xsl:variable name="lparent" select="(ancestor::set
+ |ancestor::book
+ |ancestor::chapter
+ |ancestor::appendix
+ |ancestor::preface
+ |ancestor::section
+ |ancestor::simplesect
+ |ancestor::sect1
+ |ancestor::sect2
+ |ancestor::sect3
+ |ancestor::sect4
+ |ancestor::sect5
+ |ancestor::refsect1
+ |ancestor::refsect2
+ |ancestor::refsect3)[last()]"/ -->
+
+ <!-- xsl:variable name="lparent.prefix">
+ <xsl:apply-templates select="$lparent" mode="label.markup"/>
+ </xsl:variable -->
+
+ <xsl:variable name="prefix">
+ <xsl:if test="$qanda.inherit.numeration != 0">
+ <!-- xsl:if test="$lparent.prefix != ''">
+ <xsl:apply-templates select="$lparent" mode="label.markup"/>
+ <xsl:apply-templates select="$lparent" mode="intralabel.punctuation"/>
+ </xsl:if -->
+ <xsl:if test="ancestor::qandadiv">
+ <xsl:apply-templates select="ancestor::qandadiv[1]" mode="label.markup" xse:apply-serna-fold-template="false"/>
+ <xsl:apply-templates select="ancestor::qandadiv[1]"
+ mode="intralabel.punctuation"
+ xse:apply-serna-fold-template="false"/>
+ </xsl:if>
+ </xsl:if>
+ </xsl:variable>
+
+ <xsl:variable name="inhlabel"
+ select="ancestor-or-self::qandaset/@defaultlabel[1]"/>
+
+ <xsl:variable name="deflabel">
+ <xsl:choose>
+ <xsl:when test="$inhlabel != ''">
+ <xsl:value-of select="$inhlabel"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$qanda.defaultlabel"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:variable name="label" select="label[not(self::processing-instruction('se:choice'))]"/>
+
+ <xsl:choose>
+ <xsl:when test="count($label)>0">
+ <xsl:apply-templates select="$label" xse:apply-serna-fold-template="false"/>
+ </xsl:when>
+
+ <xsl:when test="$deflabel = 'qanda' and self::question">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'Question'"/>
+ </xsl:call-template>
+ </xsl:when>
+
+ <xsl:when test="$deflabel = 'qanda' and self::answer">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'Answer'"/>
+ </xsl:call-template>
+ </xsl:when>
+
+ <xsl:when test="$deflabel = 'number' and self::question">
+ <xsl:value-of select="$prefix"/>
+ <xsl:number level="multiple" count="qandaentry" format="1"/>
+ </xsl:when>
+ </xsl:choose>
+</xsl:template>
+
+</xsl:stylesheet>
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/toc.titles.xsl b/doc/editor_configs/serna/scons/docbook-xsl-serna/toc.titles.xsl
new file mode 100644
index 0000000..0c877a2
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/toc.titles.xsl
@@ -0,0 +1,525 @@
+<?xml version='1.0'?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:doc="http://nwalsh.com/xsl/documentation/1.0"
+ xmlns:dtm="http://syntext.com/Extensions/DocumentTypeMetadata-1.0"
+ extension-element-prefixes="dtm"
+ exclude-result-prefixes="doc"
+ version='1.0'>
+
+<dtm:doc dtm:idref="all.title-markup"/>
+<xsl:template match="*" mode="title.markup" dtm:id="title-markup">
+ <xsl:param name="allow-anchors" select="0"/>
+ <xsl:param name="verbose" select="1"/>
+
+ <xsl:choose>
+ <xsl:when test="title">
+ <xsl:apply-templates select="title[1]" mode="title.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ </xsl:apply-templates>
+ </xsl:when>
+ <xsl:when test="self::partintro">
+ <!-- partintro's don't have titles, use the parent (part or reference)
+ title instead. -->
+ <xsl:apply-templates select="parent::*" mode="title.markup"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text>???TITLE???</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="title.title-markup"/>
+<xsl:template match="title" mode="title.markup" dtm:id="title.title-markup">
+ <xsl:param name="allow-anchors" select="0"/>
+
+ <xsl:choose>
+ <xsl:when test="$allow-anchors != 0">
+ <xsl:apply-templates/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates mode="no.anchor.mode"/>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="set.title-markup"/>
+<xsl:template match="set" mode="title.markup" dtm:id="set.title-markup">
+ <xsl:param name="allow-anchors" select="0"/>
+ <xsl:apply-templates select="(setinfo/title|title)[1]"
+ mode="title.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ </xsl:apply-templates>
+</xsl:template>
+
+<dtm:doc dtm:idref="book.title-markup"/>
+<xsl:template match="book" mode="title.markup" dtm:id="book.title-markup">
+ <xsl:param name="allow-anchors" select="0"/>
+ <xsl:apply-templates select="(bookinfo/title|title)[1]"
+ mode="title.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ </xsl:apply-templates>
+</xsl:template>
+
+<dtm:doc dtm:idref="part.title-markup"/>
+<xsl:template match="part" mode="title.markup" dtm:id="part.title-markup">
+ <xsl:param name="allow-anchors" select="0"/>
+ <xsl:apply-templates select="((partinfo|docinfo)/title|title)[1]"
+ mode="title.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ </xsl:apply-templates>
+</xsl:template>
+
+<dtm:doc dtm:idref="pca.title-markup"/>
+<xsl:template match="preface|chapter|appendix" mode="title.markup" dtm:id="pca.title-markup">
+ <xsl:param name="allow-anchors" select="0"/>
+
+ <xsl:variable name="title" select="((docinfo|prefaceinfo
+ |chapterinfo|appendixinfo)/title
+ |title)[1]"/>
+ <xsl:apply-templates select="$title" mode="title.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ </xsl:apply-templates>
+</xsl:template>
+
+<dtm:doc dtm:idref="dedication.title-markup"/>
+<xsl:template match="dedication" mode="title.markup" dtm:id="dedication.title-markup">
+ <xsl:param name="allow-anchors" select="0"/>
+ <xsl:choose>
+ <xsl:when test="title">
+ <xsl:apply-templates select="title" mode="title.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ </xsl:apply-templates>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'Dedication'"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="colophon.title-markup"/>
+<xsl:template match="colophon" mode="title.markup" dtm:id="colophon.title-markup">
+ <xsl:param name="allow-anchors" select="0"/>
+ <xsl:choose>
+ <xsl:when test="title">
+ <xsl:apply-templates select="title" mode="title.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ </xsl:apply-templates>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'Colophon'"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="article.title-markup"/>
+<xsl:template match="article" mode="title.markup" dtm:id="article.title-markup">
+ <xsl:param name="allow-anchors" select="0"/>
+ <xsl:variable name="title" select="((artheader|articleinfo)/title
+ |title)[1]"/>
+
+ <xsl:apply-templates select="$title" mode="title.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ </xsl:apply-templates>
+</xsl:template>
+
+<dtm:doc dtm:idref="reference.title-markup"/>
+<xsl:template match="reference" mode="title.markup" dtm:id="reference.title-markup">
+ <xsl:param name="allow-anchors" select="0"/>
+ <xsl:apply-templates select="((referenceinfo|docinfo)/title|title)[1]"
+ mode="title.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ </xsl:apply-templates>
+</xsl:template>
+
+<dtm:doc dtm:idref="refentry.title-markup"/>
+<xsl:template match="refentry" mode="title.markup" dtm:id="refentry.title-markup">
+ <xsl:param name="allow-anchors" select="0"/>
+ <xsl:variable name="refmeta" select=".//refmeta"/>
+ <xsl:variable name="refentrytitle" select="$refmeta//refentrytitle"/>
+ <xsl:variable name="refnamediv" select=".//refnamediv"/>
+ <xsl:variable name="refname" select="$refnamediv//refname"/>
+
+ <xsl:variable name="title">
+ <xsl:choose>
+ <xsl:when test="$refentrytitle">
+ <xsl:apply-templates select="$refentrytitle[1]" mode="title.markup"/>
+ </xsl:when>
+ <xsl:when test="$refname">
+ <xsl:apply-templates select="$refname[1]" mode="title.markup"/>
+ </xsl:when>
+ <xsl:otherwise>REFENTRY WITHOUT TITLE???</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:copy-of select="$title"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="rr.title-markup"/>
+<xsl:template match="refentrytitle|refname" mode="title.markup" dtm:id="rr.title-markup">
+ <xsl:param name="allow-anchors" select="0"/>
+ <xsl:choose>
+ <xsl:when test="$allow-anchors != 0">
+ <xsl:apply-templates/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates mode="no.anchor.mode"/>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="sections.title-markup"/>
+<xsl:template match="section
+ |sect1|sect2|sect3|sect4|sect5
+ |refsect1|refsect2|refsect3
+ |simplesect"
+ mode="title.markup" dtm:id="sections.title-markup">
+ <xsl:param name="allow-anchors" select="0"/>
+ <xsl:variable name="title" select="((sectioninfo|sect1info
+ |sect2info|sect3info
+ |sect4info|sect5info
+ |refsect1info|refsect2info
+ |refsect3info)/title
+ |title)[1]"/>
+
+ <xsl:apply-templates select="$title" mode="title.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ </xsl:apply-templates>
+</xsl:template>
+
+<dtm:doc dtm:idref="bridgehead.title-markup"/>
+<xsl:template match="bridgehead" mode="title.markup" dtm:id="bridgehead.title-markup">
+ <xsl:apply-templates mode="title.markup"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="refsynopsisdiv.title-markup"/>
+<xsl:template match="refsynopsisdiv" mode="title.markup" dtm:id="refsynopsisdiv.title-markup">
+ <xsl:param name="allow-anchors" select="0"/>
+ <xsl:choose>
+ <xsl:when test="title">
+ <xsl:apply-templates select="title" mode="title.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ </xsl:apply-templates>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'RefSynopsisDiv'"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="bibliography.title-markup"/>
+<xsl:template match="bibliography" mode="title.markup" dtm:id="bibliography.title-markup">
+ <xsl:param name="allow-anchors" select="0"/>
+ <xsl:variable name="title" select="(bibliographyinfo/title|title)[1]"/>
+ <xsl:choose>
+ <xsl:when test="$title">
+ <xsl:apply-templates select="$title" mode="title.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ </xsl:apply-templates>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'Bibliography'"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="index.title-markup"/>
+<xsl:template match="index" mode="title.markup" dtm:id="index.title-markup">
+ <xsl:param name="allow-anchors" select="0"/>
+ <xsl:variable name="title" select="(indexinfo/title|title)[1]"/>
+ <xsl:choose>
+ <xsl:when test="$title">
+ <xsl:apply-templates select="$title" mode="title.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ </xsl:apply-templates>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'Index'"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="setindex.title-markup"/>
+<xsl:template match="setindex" mode="title.markup" dtm:id="setindex.title-markup">
+ <xsl:param name="allow-anchors" select="0"/>
+ <xsl:variable name="title" select="(setindexinfo/title|title)[1]"/>
+ <xsl:choose>
+ <xsl:when test="$title">
+ <xsl:apply-templates select="$title" mode="title.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ </xsl:apply-templates>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'SetIndex'"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="ftee.title-markup"/>
+<xsl:template match="figure|table|example|equation" mode="title.markup" dtm:id="ftee.title-markup">
+ <xsl:param name="allow-anchors" select="0"/>
+ <xsl:apply-templates select="title" mode="title.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ </xsl:apply-templates>
+</xsl:template>
+
+<dtm:doc dtm:idref="procedure.title-markup"/>
+<xsl:template match="procedure" mode="title.markup" dtm:id="procedure.title-markup">
+ <xsl:param name="allow-anchors" select="0"/>
+ <xsl:apply-templates select="title" mode="title.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ </xsl:apply-templates>
+</xsl:template>
+
+<dtm:doc dtm:idref="abstract.title-markup"/>
+<xsl:template match="abstract" mode="title.markup" dtm:id="abstract.title-markup">
+ <xsl:param name="allow-anchors" select="0"/>
+ <xsl:choose>
+ <xsl:when test="title">
+ <xsl:apply-templates select="title" mode="title.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ </xsl:apply-templates>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'Abstract'"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="ctwin.title-markup"/>
+<xsl:template match="caution|tip|warning|important|note" mode="title.markup" dtm:idref="ctwin.title-markup">
+ <xsl:param name="allow-anchors" select="0"/>
+ <xsl:variable name="title" select="title[1]"/>
+ <xsl:choose>
+ <xsl:when test="$title">
+ <xsl:apply-templates select="$title" mode="title.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ </xsl:apply-templates>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key">
+ <xsl:choose>
+ <xsl:when test="self::note">Note</xsl:when>
+ <xsl:when test="self::important">Important</xsl:when>
+ <xsl:when test="self::caution">Caution</xsl:when>
+ <xsl:when test="self::warning">Warning</xsl:when>
+ <xsl:when test="self::tip">Tip</xsl:when>
+ </xsl:choose>
+ </xsl:with-param>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="question.title-markup"/>
+<xsl:template match="question" mode="title.markup" dtm:id="question.title-markup">
+ <!-- questions don't have titles -->
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'question'"/>
+ </xsl:call-template>
+</xsl:template>
+
+<dtm:doc dtm:idref="answer.title-markup"/>
+<xsl:template match="answer" mode="title.markup" dtm:id="answer.title-markup">
+ <!-- answers don't have titles -->
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'answer'"/>
+ </xsl:call-template>
+</xsl:template>
+
+<dtm:doc dtm:idref="qandaentry.title-markup"/>
+<xsl:template match="qandaentry" mode="title.markup" dtm:id="qandaentry.title-markup">
+ <!-- qandaentrys are represented by the first question in them -->
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'question'"/>
+ </xsl:call-template>
+</xsl:template>
+
+<dtm:doc dtm:idref="legalnotice.title-markup"/>
+<xsl:template match="legalnotice" mode="title.markup" dtm:id="legalnotice.title-markup">
+ <xsl:param name="allow-anchors" select="0"/>
+ <xsl:choose>
+ <xsl:when test="title">
+ <xsl:apply-templates select="title" mode="title.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ </xsl:apply-templates>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'LegalNotice'"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<!-- ============================================================ -->
+<dtm:doc dtm:idref="all.titleabbrev-markup"/>
+<xsl:template match="*" mode="titleabbrev.markup" dtm:id="all.titleabbrev-markup">
+ <xsl:param name="allow-anchors" select="0"/>
+ <xsl:param name="verbose" select="1"/>
+
+ <xsl:choose>
+ <xsl:when test="titleabbrev">
+ <xsl:apply-templates select="titleabbrev[1]" mode="title.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ </xsl:apply-templates>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="." mode="title.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ <xsl:with-param name="verbose" select="$verbose"/>
+ </xsl:apply-templates>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="pca.titleabbrev-markup"/>
+<xsl:template match="preface|chapter|appendix" mode="titleabbrev.markup" dtm:id="pca.titleabbrev-markup">
+ <xsl:param name="allow-anchors" select="0"/>
+ <xsl:param name="verbose" select="1"/>
+
+ <xsl:variable name="titleabbrev" select="((docinfo|prefaceinfo
+ |chapterinfo
+ |appendixinfo)/titleabbrev
+ |titleabbrev)[1]"/>
+
+ <xsl:choose>
+ <xsl:when test="$titleabbrev">
+ <xsl:apply-templates select="$titleabbrev" mode="title.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ </xsl:apply-templates>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="." mode="title.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ <xsl:with-param name="verbose" select="$verbose"/>
+ </xsl:apply-templates>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="article.titleabbrev-markup"/>
+<xsl:template match="article" mode="titleabbrev.markup" dtm:id="article.titleabbrev-markup">
+ <xsl:param name="allow-anchors" select="0"/>
+ <xsl:param name="verbose" select="1"/>
+
+ <xsl:variable name="titleabbrev" select="((artheader|articleinfo)/titleabbrev
+ |titleabbrev)[1]"/>
+
+ <xsl:choose>
+ <xsl:when test="$titleabbrev">
+ <xsl:apply-templates select="$titleabbrev" mode="title.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ </xsl:apply-templates>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="." mode="title.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ <xsl:with-param name="verbose" select="$verbose"/>
+ </xsl:apply-templates>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="sections.titleabbrev-markup"/>
+<xsl:template match="section
+ |sect1|sect2|sect3|sect4|sect5
+ |refsect1|refsect2|refsect3
+ |simplesect"
+ mode="titleabbrev.markup" dtm:id="sections.titleabbrev-markup">
+ <xsl:param name="allow-anchors" select="0"/>
+ <xsl:param name="verbose" select="1"/>
+
+ <xsl:variable name="titleabbrev" select="((sectioninfo|sect1info
+ |sect2info|sect3info
+ |sect4info|sect5info
+ |refsect1info|refsect2info
+ |refsect3info)/titleabbrev
+ |titleabbrev)[1]"/>
+
+ <xsl:choose>
+ <xsl:when test="$titleabbrev">
+ <xsl:apply-templates select="$titleabbrev" mode="title.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ </xsl:apply-templates>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="." mode="title.markup">
+ <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
+ <xsl:with-param name="verbose" select="$verbose"/>
+ </xsl:apply-templates>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="titleabbrev.title-markup"/>
+<xsl:template match="titleabbrev" mode="title.markup" dtm:id="titleabbrev.title-markup">
+ <xsl:param name="allow-anchors" select="0"/>
+
+ <xsl:choose>
+ <xsl:when test="$allow-anchors != 0">
+ <xsl:apply-templates/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates mode="no.anchor.mode"/>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<!-- ============================================================ -->
+<dtm:doc dtm:idref="all.no-anchor-mode"/>
+<xsl:template match="*" mode="no.anchor.mode" dtm:id="all.no-anchor-mode">
+ <xsl:apply-templates mode="no.anchor.mode"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="footnote.no-anchor-mode"/>
+<xsl:template match="footnote" mode="no.anchor.mode" dtm:id="footnote.no-anchor-mode">
+ <!-- nop, suppressed -->
+</xsl:template>
+
+<dtm:doc dtm:idref="anchor.no-anchor-mode"/>
+<xsl:template match="anchor" mode="no.anchor.mode" dtm:id="anchor.no-anchor-mode">
+ <!-- nop, suppressed -->
+</xsl:template>
+
+<dtm:doc dtm:idref="ulink.no-anchor-mode"/>
+<xsl:template match="ulink" mode="no.anchor.mode" dtm:id="ulink.no-anchor-mode">
+ <xsl:apply-templates/>
+</xsl:template>
+
+<dtm:doc dtm:idref="link.no-anchor-mode"/>
+<xsl:template match="link" mode="no.anchor.mode" dtm:id="link.no-anchor-mode">
+ <xsl:apply-templates/>
+</xsl:template>
+
+<dtm:doc dtm:idref="olink.no-anchor-mode"/>
+<xsl:template match="olink" mode="no.anchor.mode" dtm:id="olink.no-anchor-mode">
+ <xsl:apply-templates/>
+</xsl:template>
+
+<dtm:doc dtm:idref="indexterm.no-anchor-mode"/>
+<xsl:template match="indexterm" mode="no.anchor.mode" dtm:id="indexterm.no-anchor-mode">
+ <!-- nop, suppressed -->
+</xsl:template>
+
+<dtm:doc dtm:idref="xref.no-anchor-mode"/>
+<xsl:template match="xref" mode="no.anchor.mode" dtm:id="xref.no-anchor-mode">
+ <!-- FIXME: this should generate the text without the link... -->
+</xsl:template>
+
+</xsl:stylesheet>
+
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/toc.xsl b/doc/editor_configs/serna/scons/docbook-xsl-serna/toc.xsl
new file mode 100644
index 0000000..27dbdf4
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/toc.xsl
@@ -0,0 +1,304 @@
+<?xml version='1.0'?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ xmlns:xse="http://www.syntext.com/Extensions/XSLT-1.0"
+ xmlns:dtm="http://syntext.com/Extensions/DocumentTypeMetadata-1.0"
+ extension-element-prefixes="dtm xse"
+ version='1.0'>
+
+<dtm:doc dtm:idref="set.toc"/>
+<xsl:template name="set.toc" dtm:id="set.toc">
+ <xsl:param name="toc-context" select="."/>
+ <xsl:variable name="nodes" select="book|setindex"/>
+
+ <fo:block
+ xsl:use-attribute-sets="title.content.properties component.title.properties">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'tableofcontents'"/>
+ </xsl:call-template>
+ </fo:block>
+
+ <xsl:if test="$nodes">
+ <fo:block xsl:use-attribute-sets="toc.margin.properties">
+ <xsl:apply-templates select="$nodes" mode="toc" xse:apply-serna-fold-template="false">
+ <xsl:with-param name="toc-context" select="$toc-context"/>
+ </xsl:apply-templates>
+ </fo:block>
+ </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:idref="division.toc"/>
+<xsl:template name="division.toc" dtm:id="division.toc">
+ <xsl:param name="toc-context" select="."/>
+ <xsl:variable name="nodes"
+ select="$toc-context/part
+ |$toc-context/reference
+ |$toc-context/preface
+ |$toc-context/chapter
+ |$toc-context/appendix
+ |$toc-context/article
+ |$toc-context/bibliography
+ |$toc-context/glossary
+ |$toc-context/index"/>
+ <fo:block
+ xsl:use-attribute-sets="title.content.properties component.title.properties">
+ <fo:inline>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'tableofcontents'"/>
+ </xsl:call-template>
+ </fo:inline>
+ </fo:block>
+
+ <xsl:if test="$nodes">
+ <fo:block
+ xsl:use-attribute-sets="toc.margin.properties">
+ <xsl:apply-templates select="$nodes" mode="toc" xse:apply-serna-fold-template="false">
+ <xsl:with-param name="toc-context" select="$toc-context"/>
+ </xsl:apply-templates>
+ </fo:block>
+ </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:idref="component.toc"/>
+<xsl:template name="component.toc" dtm:id="component.toc">
+ <xsl:param name="toc-context" select="."/>
+
+ <xsl:variable name="nodes" select="section|sect1|refentry
+ |article|bibliography|glossary
+ |appendix"/>
+ <!-- fo:block
+ xsl:use-attribute-sets="title.content.properties section.title.level1.properties">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'toc'"/>
+ </xsl:call-template>
+ </fo:block -->
+
+ <xsl:if test="$nodes">
+ <fo:block xsl:use-attribute-sets="toc.margin.properties">
+ <xsl:apply-templates select="$nodes" mode="toc" xse:apply-serna-fold-template="false">
+ <xsl:with-param name="toc-context" select="$toc-context"/>
+ </xsl:apply-templates>
+ </fo:block>
+ </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:idref="toc.line"/>
+<xsl:template name="toc.line" dtm:id="toc.line">
+ <xsl:variable name="label">
+ <xsl:apply-templates select="." mode="label.markup" xse:apply-serna-fold-template="false"/>
+ </xsl:variable>
+ <xsl:variable name="is.component">
+ <xsl:call-template name="is.component">
+ </xsl:call-template>
+ </xsl:variable>
+
+ <fo:block
+ end-indent="{$toc.indent.width}pt">
+ <xsl:if test="$is.component = 1 or
+ local-name(.) = 'part' or local-name(.) = 'book'">
+ <xsl:attribute name="font-weight">
+ <xsl:text>bold</xsl:text>
+ </xsl:attribute>
+ </xsl:if>
+ <fo:inline>
+ <xsl:if test="$label != ''">
+ <xsl:copy-of select="$label"/>
+ <xsl:value-of select="$autotoc.label.separator"/>
+ </xsl:if>
+ <xsl:apply-templates select="." mode="title.markup" xse:apply-serna-fold-template="false"/>
+ </fo:inline>
+ </fo:block>
+</xsl:template>
+
+<dtm:doc dtm:idref="bs.toc"/>
+<xsl:template match="book|setindex" mode="toc" dtm:id="bs.toc">
+ <xsl:param name="toc-context" select="."/>
+ <xsl:call-template name="toc.line"/>
+
+ <xsl:variable name="nodes" select="glossary|bibliography|preface|chapter
+ |reference|part|article|appendix|index"/>
+
+ <xsl:if test="$toc.section.depth &gt; 0 and $nodes">
+ <fo:block start-indent="{count(ancestor::*)*$toc.indent.width}pt">
+ <xsl:apply-templates select="$nodes" mode="toc" xse:apply-serna-fold-template="false">
+ <xsl:with-param name="toc-context" select="$toc-context"/>
+ </xsl:apply-templates>
+ </fo:block>
+ </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:idref="part.toc"/>
+<xsl:template match="part" mode="toc" dtm:id="part.toc">
+ <xsl:param name="toc-context" select="."/>
+
+ <xsl:call-template name="toc.line"/>
+
+ <xsl:variable name="nodes" select="chapter|appendix|preface|reference|article"/>
+
+ <xsl:if test="$toc.section.depth &gt; 0 and $nodes">
+ <fo:block start-indent="{count(ancestor::*)*$toc.indent.width}pt">
+ <xsl:apply-templates select="$nodes" mode="toc" xse:apply-serna-fold-template="false">
+ <xsl:with-param name="toc-context" select="$toc-context"/>
+ </xsl:apply-templates>
+ </fo:block>
+ </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:idref="rb.toc"/>
+<xsl:template match="refentry|book" mode="toc" dtm:id="rb.toc">
+ <xsl:param name="toc-context" select="."/>
+
+ <xsl:call-template name="toc.line"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="pcaa.toc"/>
+<xsl:template match="preface|chapter|appendix|article"
+ mode="toc" dtm:id="pcaa.toc">
+ <xsl:param name="toc-context" select="."/>
+
+ <xsl:call-template name="toc.line"/>
+
+ <xsl:variable name="nodes" select="section|sect1"/>
+
+ <xsl:if test="$toc.section.depth &gt; 0 and $nodes">
+ <fo:block start-indent="{count(ancestor::*)*$toc.indent.width}pt">
+ <xsl:apply-templates select="$nodes" mode="toc" xse:apply-serna-fold-template="false">
+ <xsl:with-param name="toc-context" select="$toc-context"/>
+ </xsl:apply-templates>
+ </fo:block>
+ </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:idref="sect1.toc"/>
+<xsl:template match="sect1" mode="toc" dtm:id="sect1.toc">
+ <xsl:param name="toc-context" select="."/>
+
+ <xsl:call-template name="toc.line"/>
+
+ <xsl:if test="$toc.section.depth &gt; 1 and sect2">
+ <fo:block
+ start-indent="{count(ancestor::*)*$toc.indent.width}pt">
+ <xsl:apply-templates select="sect2" mode="toc" xse:apply-serna-fold-template="false">
+ <xsl:with-param name="toc-context" select="$toc-context"/>
+ </xsl:apply-templates>
+ </fo:block>
+ </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:idref="sect2.toc"/>
+<xsl:template match="sect2" mode="toc" dtm:id="sect2.toc">
+ <xsl:param name="toc-context" select="."/>
+
+ <xsl:call-template name="toc.line"/>
+
+ <xsl:variable name="reldepth"
+ select="count(ancestor::*)-count($toc-context/ancestor::*)"/>
+
+ <xsl:if test="$toc.section.depth &gt; 2 and sect3">
+ <fo:block
+ start-indent="{$reldepth*$toc.indent.width}pt">
+ <xsl:apply-templates select="sect3" mode="toc" xse:apply-serna-fold-template="false">
+ <xsl:with-param name="toc-context" select="$toc-context"/>
+ </xsl:apply-templates>
+ </fo:block>
+ </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:idref="sect3.toc"/>
+<xsl:template match="sect3" mode="toc" dtm:id="sect3.toc">
+ <xsl:param name="toc-context" select="."/>
+
+ <xsl:call-template name="toc.line"/>
+
+ <xsl:variable name="reldepth"
+ select="count(ancestor::*)-count($toc-context/ancestor::*)"/>
+
+ <xsl:if test="$toc.section.depth &gt; 3 and sect4">
+ <fo:block
+ start-indent="{$reldepth*$toc.indent.width}pt">
+ <xsl:apply-templates select="sect4" mode="toc" xse:apply-serna-fold-template="false">
+ <xsl:with-param name="toc-context" select="$toc-context"/>
+ </xsl:apply-templates>
+ </fo:block>
+ </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:idref="sect4.toc"/>
+<xsl:template match="sect4" mode="toc" dtm:id="sect4.toc">
+ <xsl:param name="toc-context" select="."/>
+
+ <xsl:call-template name="toc.line"/>
+
+ <xsl:variable name="reldepth"
+ select="count(ancestor::*)-count($toc-context/ancestor::*)"/>
+
+ <xsl:if test="$toc.section.depth &gt; 4 and sect5">
+ <fo:block
+ start-indent="{$reldepth*$toc.indent.width}pt">
+ <xsl:apply-templates select="sect5" mode="toc" xse:apply-serna-fold-template="false">
+ <xsl:with-param name="toc-context" select="$toc-context"/>
+ </xsl:apply-templates>
+ </fo:block>
+ </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:idref="sect5.toc"/>
+<xsl:template match="sect5" mode="toc" dtm:id="sect5.toc">
+ <xsl:param name="toc-context" select="."/>
+
+ <xsl:call-template name="toc.line"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="section.toc"/>
+<xsl:template match="section" mode="toc" dtm:id="section.toc">
+ <xsl:param name="toc-context" select="."/>
+
+ <xsl:variable name="depth" select="count(ancestor::section) + 1"/>
+ <xsl:variable name="reldepth"
+ select="count(ancestor::*)-count($toc-context/ancestor::*)"/>
+
+ <xsl:if test="$toc.section.depth &gt;= $depth">
+ <xsl:call-template name="toc.line"/>
+
+ <xsl:if test="$toc.section.depth &gt; $depth and section">
+ <fo:block
+ start-indent="{$reldepth*$toc.indent.width}pt">
+ <xsl:apply-templates select="section" mode="toc" xse:apply-serna-fold-template="false">
+ <xsl:with-param name="toc-context" select="$toc-context"/>
+ </xsl:apply-templates>
+ </fo:block>
+ </xsl:if>
+ </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:idref="bg.toc"/>
+<xsl:template match="bibliography|glossary"
+ mode="toc" dtm:id="bg.toc">
+ <xsl:param name="toc-context" select="."/>
+
+ <xsl:call-template name="toc.line"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="reference.toc"/>
+<xsl:template match="reference" mode="toc" dtm:id="reference.toc">
+ <xsl:param name="toc-context" select="."/>
+
+ <xsl:call-template name="toc.line"/>
+
+ <xsl:if test="$toc.section.depth &gt; 0 and refentry">
+ <fo:block
+ start-indent="{count(ancestor::*)*$toc.indent.width}pt">
+ <xsl:apply-templates select="refentry" mode="toc" xse:apply-serna-fold-template="false">
+ <xsl:with-param name="toc-context" select="$toc-context"/>
+ </xsl:apply-templates>
+ </fo:block>
+ </xsl:if>
+</xsl:template>
+
+<dtm:doc dtm:idref="title.toc"/>
+<xsl:template match="title" mode="toc" dtm:id="title.toc">
+ <xsl:apply-templates xse:apply-serna-fold-template="false"/>
+</xsl:template>
+
+</xsl:stylesheet>
+
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/xref.xsl b/doc/editor_configs/serna/scons/docbook-xsl-serna/xref.xsl
new file mode 100644
index 0000000..1566d46
--- /dev/null
+++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/xref.xsl
@@ -0,0 +1,624 @@
+<?xml version='1.0' encoding='utf-8'?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ xmlns:exsl="http://exslt.org/common"
+ xmlns:dtm="http://syntext.com/Extensions/DocumentTypeMetadata-1.0"
+ xmlns:xse="http://www.syntext.com/Extensions/XSLT-1.0"
+ extension-element-prefixes="dtm"
+ exclude-result-prefixes="xse exsl" version="1.0">
+
+ <xsl:include href="gentext.xsl"/>
+
+ <dtm:doc dtm:idref="xref"/>
+ <xsl:template match="xref" name="xref" dtm:id="xref">
+ <xsl:variable name="target" select="id(@linkend)"/>
+ <xsl:variable name="refelem" select="local-name($target)"/>
+
+ <fo:inline>
+ <xsl:choose>
+ <xsl:when test="not($refelem)">
+ <fo:inline color="#F00000">[XRef: Nonexistent linkend ID "<xsl:value-of select="@linkend"/>"]</fo:inline>
+ </xsl:when>
+ <xsl:when test="@endterm">
+ <fo:inline xsl:use-attribute-sets="xref.properties">
+ <xsl:variable name="etarget" select="id(@endterm)"/>
+ <xsl:choose>
+ <xsl:when test="count($etarget) = 0">
+ <fo:inline color="#F00000">[XRef: Nonexistent endterm ID "<xsl:value-of select="@endterm"/>"]</fo:inline>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="$etarget" mode="endterm"
+ xse:apply-serna-fold-template="false"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </fo:inline>
+ </xsl:when>
+ <xsl:when test="$target/@xreflabel">
+ <fo:inline xsl:use-attribute-sets="xref.properties">
+ <xsl:call-template name="xref.xreflabel">
+ <xsl:with-param name="target" select="$target"/>
+ </xsl:call-template>
+ </fo:inline>
+ </xsl:when>
+ <xsl:when test="@xreflabel">
+ <fo:inline xsl:use-attribute-sets="xref.properties">
+ <xsl:value-of select="@xreflabel"/>
+ </fo:inline>
+ </xsl:when>
+ <xsl:otherwise>
+ <fo:inline xsl:use-attribute-sets="xref.properties">
+ <xsl:apply-templates select="$target" mode="xref-to"
+ xse:apply-serna-fold-template="false">
+ <xsl:with-param name="referrer" select="."/>
+ <xsl:with-param name="xrefstyle">
+ <xsl:choose>
+ <xsl:when test="@role and not(@xrefstyle) and $use.role.as.xrefstyle != 0">
+ <xsl:value-of select="@role"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="@xrefstyle"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:with-param>
+ </xsl:apply-templates>
+ </fo:inline>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:if test="$insert.xref.page.number != 0 or local-name($target) = 'para'">
+ <xsl:apply-templates select="$target" mode="page.citation"
+ xse:apply-serna-fold-template="false">
+ <xsl:with-param name="id" select="@linkend"/>
+ </xsl:apply-templates>
+ </xsl:if>
+ </fo:inline>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="endterm.childs"/>
+ <xsl:template match="*" mode="endterm" dtm:id="endterm.childs">
+ <!-- Process the children of the endterm element -->
+ <xsl:variable name="endterm">
+ <xsl:apply-templates select="child::node()"/>
+ </xsl:variable>
+ <xsl:apply-templates select="$endterm" mode="remove-ids"/>
+ </xsl:template>
+ <xsl:template match="*" mode="remove-ids">
+ <xsl:copy>
+ <xsl:for-each select="@*">
+ <xsl:choose>
+ <xsl:when test="name(.) != 'id'">
+ <xsl:copy/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:message>removing <xsl:value-of select="name(.)"/>
+</xsl:message>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:for-each>
+ <xsl:apply-templates mode="remove-ids"/>
+ </xsl:copy>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="all.xref-to"/>
+ <xsl:template match="*" mode="xref-to" dtm:id="all.xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:message>
+ <xsl:text>Don&apos;t know what gentext to create for xref to: &quot;</xsl:text>
+ <xsl:value-of select="name(.)"/>
+ <xsl:text>&quot;</xsl:text>
+ </xsl:message>
+ <xsl:text>???</xsl:text>
+ </xsl:template>
+ <xsl:template match="title" mode="xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <!-- if you xref to a title, xref to the parent... -->
+ <xsl:choose>
+ <!-- FIXME: how reliable is this? -->
+ <xsl:when test="contains(local-name(parent::*), 'info')">
+ <xsl:apply-templates select="parent::*[2]" mode="xref-to">
+ <xsl:with-param name="referrer" select="$referrer"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ </xsl:apply-templates>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="parent::*" mode="xref-to">
+ <xsl:with-param name="referrer" select="$referrer"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ </xsl:apply-templates>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="elements.xref-to"/>
+ <xsl:template match="abstract|article|authorblurb|bibliodiv|bibliomset|
+ biblioset|blockquote|calloutlist|caution|colophon|
+ constraintdef|formalpara|glossdiv|important|indexdiv|
+ itemizedlist|legalnotice|lot|msg|msgexplan|msgmain|
+ msgrel|msgset|msgsub|note|orderedlist|partintro|
+ productionset|qandadiv|refsynopsisdiv|segmentedlist|
+ set|setindex|sidebar|tip|toc|variablelist|warning" mode="xref-to" dtm:id="elements.xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <!-- catch-all for things with (possibly optional) titles --> <xsl:apply-templates select="." mode="object.xref.markup">
+ <xsl:with-param name="purpose" select="'xref'"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="referrer" select="$referrer"/>
+ </xsl:apply-templates>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="aeop.xref-to"/>
+ <xsl:template match="author|editor|othercredit|personname" mode="xref-to" dtm:id="aeop.xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:call-template name="person.name"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="authorgroup.xref-to"/>
+ <xsl:template match="authorgroup" mode="xref-to" dtm:id="authorgroup.xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:call-template name="person.name.list"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="fete.xref-to"/>
+ <xsl:template match="figure|example|table|equation" mode="xref-to" dtm:id="fete.xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:apply-templates select="." mode="object.xref.markup">
+ <xsl:with-param name="purpose" select="'xref'"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="referrer" select="$referrer"/>
+ </xsl:apply-templates>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="procedure.xref-to"/>
+ <xsl:template match="procedure" mode="xref-to" dtm:id="procedure.xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:apply-templates select="." mode="object.xref.markup">
+ <xsl:with-param name="purpose" select="'xref'"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="referrer" select="$referrer"/>
+ </xsl:apply-templates>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="cmdsynopsis.xref-to"/>
+ <xsl:template match="cmdsynopsis" mode="xref-to" dtm:id="cmdsynopsis.xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:apply-templates select="(.//command)[1]" mode="xref"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="funcsynopsis.xref-to"/>
+ <xsl:template match="funcsynopsis" mode="xref-to" dtm:id="funcsynopsis.xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:apply-templates select="(.//function)[1]" mode="xref"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="dpca.xref-to"/>
+ <xsl:template match="dedication|preface|chapter|appendix" mode="xref-to" dtm:id="dpca.xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:apply-templates select="." mode="object.xref.markup">
+ <xsl:with-param name="purpose" select="'xref'"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="referrer" select="$referrer"/>
+ </xsl:apply-templates>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="bibliography.xref-to"/>
+ <xsl:template match="bibliography" mode="xref-to" dtm:id="bibliography.xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:apply-templates select="." mode="object.xref.markup">
+ <xsl:with-param name="purpose" select="'xref'"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="referrer" select="$referrer"/>
+ </xsl:apply-templates>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="biblio.xref-to"/>
+ <xsl:template match="biblioentry|bibliomixed" mode="xref-to" dtm:id="biblio.xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <!-- handles both biblioentry and bibliomixed -->
+ <xsl:text>[</xsl:text>
+ <xsl:choose>
+ <xsl:when test="string(.) = ''">
+ <xsl:variable name="bib" select="document($bibliography.collection)"/>
+ <xsl:variable name="id" select="@id"/>
+ <xsl:variable name="entry" select="$bib/bibliography/*[@id=$id][1]"/>
+ <xsl:choose>
+ <xsl:when test="$entry">
+ <xsl:choose>
+ <xsl:when test="$bibliography.numbered != 0">
+ <xsl:number from="bibliography" count="biblioentry|bibliomixed" level="any" format="1"/>
+ </xsl:when>
+ <xsl:when test="local-name($entry/*[1]) = 'abbrev'">
+ <xsl:apply-templates select="$entry/*[1]"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="@id"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:message>
+ <xsl:text>No bibliography entry: </xsl:text>
+ <xsl:value-of select="$id"/>
+ <xsl:text> found in </xsl:text>
+ <xsl:value-of select="$bibliography.collection"/>
+ </xsl:message>
+ <xsl:value-of select="@id"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:choose>
+ <xsl:when test="$bibliography.numbered != 0">
+ <xsl:number from="bibliography" count="biblioentry|bibliomixed"
+ level="any" format="1"/>
+ </xsl:when>
+ <xsl:when test="local-name(*[1]) = 'abbrev'">
+ <xsl:apply-templates select="*[1]"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="@id"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:text>]</xsl:text>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="glossary.xref-to"/>
+ <xsl:template match="glossary" mode="xref-to" dtm:id="glossary.xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:apply-templates select="." mode="object.xref.markup">
+ <xsl:with-param name="purpose" select="'xref'"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="referrer" select="$referrer"/>
+ </xsl:apply-templates>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="glossentry.xref-to"/>
+ <xsl:template match="glossentry" mode="xref-to" dtm:id="glossentry.xref-to">
+ <xsl:choose>
+ <xsl:when test="$glossentry.show.acronym = 'primary'">
+ <xsl:choose>
+ <xsl:when test="acronym|abbrev">
+ <xsl:apply-templates select="(acronym|abbrev)[1]"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="glossterm[1]" mode="xref-to"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="glossterm[1]" mode="xref-to"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="glossterm.xref-to"/>
+ <xsl:template match="glossterm" mode="xref-to" dtm:id="glossterm.xref-to">
+ <xsl:apply-templates/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="index.xref-to"/>
+ <xsl:template match="index" mode="xref-to" dtm:id="index.xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:apply-templates select="." mode="object.xref.markup">
+ <xsl:with-param name="purpose" select="'xref'"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="referrer" select="$referrer"/>
+ </xsl:apply-templates>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="listitem.xref-to"/>
+ <xsl:template match="listitem" mode="xref-to" dtm:id="listitem.xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:apply-templates select="." mode="object.xref.markup">
+ <xsl:with-param name="purpose" select="'xref'"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="referrer" select="$referrer"/>
+ </xsl:apply-templates>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="sections.xref-to"/>
+ <xsl:template match="section|simplesect|sect1|sect2|sect3|sect4|
+ sect5|refsect1|refsect2|refsect3" mode="xref-to" dtm:id="xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:apply-templates select="." mode="object.xref.markup">
+ <xsl:with-param name="purpose" select="'xref'"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="referrer" select="$referrer"/>
+ </xsl:apply-templates>
+ <!-- What about "in Chapter X"? -->
+ </xsl:template>
+
+ <dtm:doc dtm:idref="bridgehead.xref-to"/>
+ <xsl:template match="bridgehead" mode="xref-to" dtm:id="bridgehead.xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:apply-templates select="." mode="object.xref.markup">
+ <xsl:with-param name="purpose" select="'xref'"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="referrer" select="$referrer"/>
+ </xsl:apply-templates>
+ <!-- What about "in Chapter X"? -->
+ </xsl:template>
+
+ <dtm:doc dtm:idref="qandaset.xref-to"/>
+ <xsl:template match="qandaset" mode="xref-to" dtm:id="qandaset.xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:apply-templates select="." mode="object.xref.markup">
+ <xsl:with-param name="purpose" select="'xref'"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="referrer" select="$referrer"/>
+ </xsl:apply-templates>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="qandadiv.xref-to"/>
+ <xsl:template match="qandadiv" mode="xref-to" dtm:id="qandadiv.xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:apply-templates select="." mode="object.xref.markup">
+ <xsl:with-param name="purpose" select="'xref'"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="referrer" select="$referrer"/>
+ </xsl:apply-templates>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="qandaentry.xref-to"/>
+ <xsl:template match="qandaentry" mode="xref-to" dtm:id="qandaentry.xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:apply-templates select="question[1]" mode="object.xref.markup">
+ <xsl:with-param name="purpose" select="'xref'"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="referrer" select="$referrer"/>
+ </xsl:apply-templates>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="qa.xref-to"/>
+ <xsl:template match="question|answer" mode="xref-to" dtm:id="qa.xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:apply-templates select="." mode="object.xref.markup">
+ <xsl:with-param name="purpose" select="'xref'"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="referrer" select="$referrer"/>
+ </xsl:apply-templates>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="pr.xref-to"/>
+ <xsl:template match="part|reference" mode="xref-to" dtm:id="pr.xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:apply-templates select="." mode="object.xref.markup">
+ <xsl:with-param name="purpose" select="'xref'"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="referrer" select="$referrer"/>
+ </xsl:apply-templates>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="refentry.xref-to"/>
+ <xsl:template match="refentry" mode="xref-to" dtm:id="refentry.xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:choose>
+ <xsl:when test="refmeta/refentrytitle">
+ <xsl:apply-templates select="refmeta/refentrytitle"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="refnamediv/refname[1]"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:apply-templates select="refmeta/manvolnum"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="refnamediv.xref-to"/>
+ <xsl:template match="refnamediv" mode="xref-to" dtm:id="refnamediv.xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:apply-templates select="refname[1]" mode="xref-to">
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="referrer" select="$referrer"/>
+ </xsl:apply-templates>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="refname.xref-to"/>
+ <xsl:template match="refname" mode="xref-to" dtm:id="refname.xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:apply-templates mode="xref-to">
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="referrer" select="$referrer"/>
+ </xsl:apply-templates>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="step.xref-to"/>
+ <xsl:template match="step" mode="xref-to" dtm:id="step.xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'Step'"/>
+ </xsl:call-template>
+ <xsl:text/>
+ <xsl:apply-templates select="." mode="number"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="varlistentry.xref-to"/>
+ <xsl:template match="varlistentry" mode="xref-to" dtm:id="varlistentry.xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:apply-templates select="term[1]" mode="xref-to">
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="referrer" select="$referrer"/>
+ </xsl:apply-templates>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="term.varlistentry.xref-to"/>
+ <xsl:template match="varlistentry/term" mode="xref-to" dtm:id="term.varlistentry.xref-to">
+ <!-- to avoid the comma that will be generated if there are several terms -->
+ <xsl:apply-templates/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="co.xref-to"/>
+ <xsl:template match="co" mode="xref-to" dtm:id="co.xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:apply-templates select="." mode="callout-bug"/>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="book.xref-to"/>
+ <xsl:template match="book" mode="xref-to" dtm:id="book.xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:apply-templates select="." mode="object.xref.markup">
+ <xsl:with-param name="purpose" select="'xref'"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="referrer" select="$referrer"/>
+ </xsl:apply-templates>
+ </xsl:template>
+
+ <dtm:doc dtm:idref="para.xref-to"/>
+ <xsl:template match="para" mode="xref-to" dtm:id="para.xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:variable name="context" select="(ancestor::simplesect|ancestor::section|ancestor::sect1|ancestor::sect2|ancestor::sect3|ancestor::sect4|ancestor::sect5|ancestor::refsection |ancestor::refsect1 |ancestor::refsect2 |ancestor::refsect3 |ancestor::chapter |ancestor::appendix|ancestor::preface|ancestor::partintro|ancestor::dedication|ancestor::colophon|ancestor::bibliography|ancestor::index|ancestor::glossary|ancestor::glossentry|ancestor::listitem|ancestor::varlistentry)[last()]"/>
+ <xsl:apply-templates select="$context" mode="xref-to"/>
+ <!--
+ <xsl:apply-templates select="." mode="object.xref.markup">
+ <xsl:with-param name="purpose" select="'xref'"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="referrer" select="$referrer"/>
+ </xsl:apply-templates>
+-->
+ </xsl:template>
+
+<dtm:doc dtm:idref="title.xref"/>
+<xsl:template match="title" mode="xref" dtm:id="title.xref">
+ <xsl:apply-templates/>
+</xsl:template>
+
+<dtm:doc dtm:idref="command.xref"/>
+<xsl:template match="command" mode="xref" dtm:id="command.xref">
+ <xsl:call-template name="inline.boldseq"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="function.xref"/>
+<xsl:template match="function" mode="xref" dtm:id="function.xref">
+ <xsl:call-template name="inline.monoseq"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="all.page-citation"/>
+<xsl:template match="*" mode="page.citation" dtm:id="all.page-citation">
+ <xsl:param name="id" select="'???'"/>
+ <fo:inline keep-together.within-line="always">
+ <xsl:call-template name="substitute-markup">
+ <xsl:with-param name="template">
+ <xsl:call-template name="gentext.template">
+ <xsl:with-param name="name" select="'page.citation'"/>
+ <xsl:with-param name="context" select="'xref'"/>
+ </xsl:call-template>
+ </xsl:with-param>
+ </xsl:call-template>
+ </fo:inline>
+</xsl:template>
+
+<dtm:doc dtm:idref="all.pagenumber-markup"/>
+<xsl:template match="*" mode="pagenumber.markup" dtm:id="all.pagenumber-markup">
+ <!--fo:page-number-citation ref-id="{@id}"/-->
+</xsl:template>
+
+<dtm:doc dtm:elements="xref/@xreflabel" dtm:idref="xref.xreflabel"/>
+<xsl:template name="xref.xreflabel" dtm:id="xref.xreflabel">
+ <!-- called to process an xreflabel...you might use this to make -->
+ <!-- xreflabels come out in the right font for different targets, -->
+ <!-- for example. -->
+ <xsl:param name="target" select="."/>
+ <xsl:value-of select="$target/@xreflabel"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="all.insert-title-markup"/>
+<xsl:template match="*" mode="insert.title.markup" dtm:id="all.insert-title-markup">
+ <xsl:param name="purpose"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:param name="title"/>
+
+ <xsl:choose>
+ <!-- FIXME: what about the case where titleabbrev is inside the info? -->
+ <xsl:when test="$purpose = 'xref' and titleabbrev">
+ <xsl:apply-templates select="." mode="titleabbrev.markup"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$title"/>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="ca.insert-title-markup"/>
+<xsl:template match="chapter|appendix" mode="insert.title.markup" dtm:id="ca.insert-title-markup">
+ <xsl:param name="purpose"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:param name="title"/>
+
+ <xsl:choose>
+ <xsl:when test="$purpose = 'xref'">
+ <fo:inline font-style="italic">
+ <xsl:value-of select="$title"/>
+ </fo:inline>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$title"/>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<dtm:doc dtm:idref="all.insert-subtitle-markup"/>
+<xsl:template match="*" mode="insert.subtitle.markup" dtm:id="all.insert-subtitle-markup">
+ <xsl:param name="purpose"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:param name="subtitle"/>
+
+ <xsl:value-of select="$subtitle"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="all.insert-pagenumber-markup"/>
+<xsl:template match="*" mode="insert.pagenumber.markup" dtm:id="all.insert-pagenumber-markup">
+ <xsl:param name="purpose"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:param name="pagenumber"/>
+
+ <xsl:value-of select="$pagenumber"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="all.insert-direction-markup"/>
+<xsl:template match="*" mode="insert.direction.markup" dtm:id="all.insert-direction-markup">
+ <xsl:param name="purpose"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:param name="direction"/>
+
+ <xsl:value-of select="$direction"/>
+</xsl:template>
+
+<dtm:doc dtm:idref="all.insert-label-markup"/>
+<xsl:template match="*" mode="insert.label.markup" dtm:id="all.insert-label-markup">
+ <xsl:param name="purpose"/>
+ <xsl:param name="xrefstyle"/>
+ <xsl:param name="label"/>
+
+ <xsl:value-of select="$label"/>
+</xsl:template>
+
+</xsl:stylesheet>
+
diff --git a/doc/editor_configs/serna/scons/dtd/README b/doc/editor_configs/serna/scons/dtd/README
new file mode 100644
index 0000000..6fc60c4
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/README
@@ -0,0 +1,8 @@
+README for the DocBook XML DTD
+
+For more information about DocBook, please see
+
+ http://www.oasis-open.org/docbook/
+
+Please send all questions, comments, concerns, and bug reports to the
+DocBook mailing list: docbook@lists.oasis-open.org
diff --git a/doc/editor_configs/serna/scons/dtd/calstblx.dtd b/doc/editor_configs/serna/scons/dtd/calstblx.dtd
new file mode 100644
index 0000000..eef08c9
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/calstblx.dtd
@@ -0,0 +1,215 @@
+<!-- ...................................................................... -->
+<!-- DocBook CALS Table Model V4.5 ........................................ -->
+<!-- File calstblx.mod .................................................... -->
+
+<!-- Copyright 1992-2002 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).
+
+ This DTD is based on the CALS Table Model
+ PUBLIC "-//USA-DOD//DTD Table Model 951010//EN"
+
+ $Id: calstblx.dtd,v 1.1 2009-03-30 14:59:35 sorin Exp $
+
+ Permission to use, copy, modify and distribute the DocBook DTD
+ 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 DTD for
+ any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook DTD in any way, except for declaring and
+ referencing additional sets of general entities and declaring
+ additional notations, label your DTD as a variant of DocBook. See
+ the maintenance documentation 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/.
+-->
+
+<!-- ...................................................................... -->
+
+<!-- This module contains the definitions for the CALS Table Model
+ converted to XML. It has been modified slightly for use in the
+ combined HTML/CALS models supported by DocBook V4.5.
+-->
+
+<!-- These definitions are not directly related to the table model, but are
+ used in the default CALS table model and are usually defined elsewhere
+ (and prior to the inclusion of this table module) in a CALS DTD. -->
+
+<!ENTITY % bodyatt "">
+<!ENTITY % secur "">
+
+<!-- no if zero(s),
+ yes if any other digits value -->
+
+<!ENTITY % yesorno 'CDATA'>
+<!ENTITY % titles 'title?'>
+
+<!-- default for use in entry content -->
+
+<!ENTITY % paracon '#PCDATA'>
+
+<!--
+The parameter entities as defined below provide the CALS table model
+as published (as part of the Example DTD) in MIL-HDBK-28001.
+
+These following declarations provide the CALS-compliant default definitions
+for these entities. However, these entities can and should be redefined
+(by giving the appropriate parameter entity declaration(s) prior to the
+reference to this Table Model declaration set entity) to fit the needs
+of the current application.
+-->
+
+<!ENTITY % tbl.table.name "(table|chart)">
+<!ENTITY % tbl.table-titles.mdl "%titles;,">
+<!ENTITY % tbl.table-main.mdl "(tgroup+|graphic+)">
+<!ENTITY % tbl.table.mdl "%tbl.table-titles.mdl; %tbl.table-main.mdl;">
+<!ENTITY % tbl.table.att '
+ tabstyle CDATA #IMPLIED
+ tocentry %yesorno; #IMPLIED
+ shortentry %yesorno; #IMPLIED
+ orient (port|land) #IMPLIED
+ pgwide %yesorno; #IMPLIED '>
+<!ENTITY % tbl.tgroup.mdl "colspec*,spanspec*,thead?,tfoot?,tbody">
+<!ENTITY % tbl.tgroup.att '
+ tgroupstyle CDATA #IMPLIED '>
+<!ENTITY % tbl.hdft.mdl "colspec*,row+">
+<!ENTITY % tbl.row.mdl "(entry|entrytbl)+">
+<!ENTITY % tbl.entrytbl.mdl "colspec*,spanspec*,thead?,tbody">
+<!ENTITY % tbl.entry.mdl "(para|warning|caution|note|legend|%paracon;)*">
+
+<!ENTITY % tbl.frame.attval "top|bottom|topbot|all|sides|none">
+<!ENTITY % tbl.tbody.mdl "row+">
+
+<!-- ===== Element and attribute declarations follow. ===== -->
+
+<!--doc:A formal table in a document.-->
+<!ELEMENT table %ho; (%tbl.table.mdl;)>
+
+<!ATTLIST table
+ frame (%tbl.frame.attval;) #IMPLIED
+ colsep %yesorno; #IMPLIED
+ rowsep %yesorno; #IMPLIED
+ %tbl.table.att;
+ %bodyatt;
+ %secur;
+>
+
+<!--doc:A wrapper for the main content of a table, or part of a table.-->
+<!ELEMENT tgroup %ho; (%tbl.tgroup.mdl;) >
+
+<!ATTLIST tgroup
+ cols CDATA #REQUIRED
+ %tbl.tgroup.att;
+ colsep %yesorno; #IMPLIED
+ rowsep %yesorno; #IMPLIED
+ align (left|right|center|justify|char) #IMPLIED
+ char CDATA #IMPLIED
+ charoff CDATA #IMPLIED
+ %secur;
+>
+
+<!--doc:Specifications for a column in a table.-->
+<!ELEMENT colspec %ho; EMPTY >
+
+<!ATTLIST colspec
+ colnum CDATA #IMPLIED
+ colname CDATA #IMPLIED
+ colwidth CDATA #IMPLIED
+ colsep %yesorno; #IMPLIED
+ rowsep %yesorno; #IMPLIED
+ align (left|right|center|justify|char) #IMPLIED
+ char CDATA #IMPLIED
+ charoff CDATA #IMPLIED
+>
+
+<!--doc:Formatting information for a spanned column in a table.-->
+<!ELEMENT spanspec %ho; EMPTY >
+
+<!ATTLIST spanspec
+ namest CDATA #REQUIRED
+ nameend CDATA #REQUIRED
+ spanname CDATA #REQUIRED
+ colsep %yesorno; #IMPLIED
+ rowsep %yesorno; #IMPLIED
+ align (left|right|center|justify|char) #IMPLIED
+ char CDATA #IMPLIED
+ charoff CDATA #IMPLIED
+>
+
+<!--doc:A table header consisting of one or more rows.-->
+<!ELEMENT thead %ho; (%tbl.hdft.mdl;)>
+<!ATTLIST thead
+ valign (top|middle|bottom) #IMPLIED
+ %secur;
+>
+
+<!--doc:A table footer consisting of one or more rows.-->
+<!ELEMENT tfoot %ho; (%tbl.hdft.mdl;)>
+<!ATTLIST tfoot
+ valign (top|middle|bottom) #IMPLIED
+ %secur;
+>
+
+<!--doc:A wrapper for the rows of a table or informal table.-->
+<!ELEMENT tbody %ho; (%tbl.tbody.mdl;)>
+
+<!ATTLIST tbody
+ valign (top|middle|bottom) #IMPLIED
+ %secur;
+>
+
+<!--doc:A row in a table.-->
+<!ELEMENT row %ho; (%tbl.row.mdl;)>
+
+<!ATTLIST row
+ rowsep %yesorno; #IMPLIED
+ valign (top|middle|bottom) #IMPLIED
+ %secur;
+>
+
+<!--doc:A subtable appearing in place of an Entry in a table.-->
+<!ELEMENT entrytbl %ho; (%tbl.entrytbl.mdl;)>
+
+<!ATTLIST entrytbl
+ cols CDATA #REQUIRED
+ %tbl.tgroup.att;
+ colname CDATA #IMPLIED
+ spanname CDATA #IMPLIED
+ namest CDATA #IMPLIED
+ nameend CDATA #IMPLIED
+ colsep %yesorno; #IMPLIED
+ rowsep %yesorno; #IMPLIED
+ align (left|right|center|justify|char) #IMPLIED
+ char CDATA #IMPLIED
+ charoff CDATA #IMPLIED
+ %secur;
+>
+
+<!--doc:A cell in a table.-->
+<!ELEMENT entry %ho; (%tbl.entry.mdl;)*>
+
+<!ATTLIST entry
+ colname CDATA #IMPLIED
+ namest CDATA #IMPLIED
+ nameend CDATA #IMPLIED
+ spanname CDATA #IMPLIED
+ morerows CDATA #IMPLIED
+ colsep %yesorno; #IMPLIED
+ rowsep %yesorno; #IMPLIED
+ align (left|right|center|justify|char) #IMPLIED
+ char CDATA #IMPLIED
+ charoff CDATA #IMPLIED
+ rotate %yesorno; #IMPLIED
+ valign (top|middle|bottom) #IMPLIED
+ %secur;
+>
+
+<!-- End of DocBook CALS Table Model V4.5 ................................. -->
+<!-- ...................................................................... -->
diff --git a/doc/editor_configs/serna/scons/dtd/calstblx.rng b/doc/editor_configs/serna/scons/dtd/calstblx.rng
new file mode 100644
index 0000000..e64b29c
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/calstblx.rng
@@ -0,0 +1,477 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- ...................................................................... -->
+<!-- DocBook CALS Table Model V4.5 ........................................ -->
+<!-- File calstblx.mod .................................................... -->
+<!--
+ Copyright 1992-2002 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).
+
+ This DTD is based on the CALS Table Model
+ PUBLIC "-//USA-DOD//DTD Table Model 951010//EN"
+
+ $Id: calstblx.dtd,v 1.1 2009-03-30 14:59:35 sorin Exp $
+
+ Permission to use, copy, modify and distribute the DocBook DTD
+ 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 DTD for
+ any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook DTD in any way, except for declaring and
+ referencing additional sets of general entities and declaring
+ additional notations, label your DTD as a variant of DocBook. See
+ the maintenance documentation 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/.
+-->
+<!-- ...................................................................... -->
+<!--
+ This module contains the definitions for the CALS Table Model
+ converted to XML. It has been modified slightly for use in the
+ combined HTML/CALS models supported by DocBook V4.5.
+-->
+<!--
+ These definitions are not directly related to the table model, but are
+ used in the default CALS table model and are usually defined elsewhere
+ (and prior to the inclusion of this table module) in a CALS DTD.
+-->
+<!--
+ no if zero(s),
+ yes if any other digits value
+-->
+<grammar xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="">
+ <define name="yesorno">
+ <data type="string"/>
+ </define>
+ <define name="titles">
+ <optional>
+ <ref name="title"/>
+ </optional>
+ </define>
+ <!-- default for use in entry content -->
+ <!--
+ The parameter entities as defined below provide the CALS table model
+ as published (as part of the Example DTD) in MIL-HDBK-28001.
+
+ These following declarations provide the CALS-compliant default definitions
+ for these entities. However, these entities can and should be redefined
+ (by giving the appropriate parameter entity declaration(s) prior to the
+ reference to this Table Model declaration set entity) to fit the needs
+ of the current application.
+ -->
+ <define name="tbl.table-titles.mdl">
+ <ref name="titles"/>
+ </define>
+ <define name="tbl.table-main.mdl">
+ <choice>
+ <oneOrMore>
+ <ref name="tgroup"/>
+ </oneOrMore>
+ <oneOrMore>
+ <ref name="graphic"/>
+ </oneOrMore>
+ </choice>
+ </define>
+ <define name="tbl.tgroup.mdl">
+ <zeroOrMore>
+ <ref name="colspec"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="spanspec"/>
+ </zeroOrMore>
+ <optional>
+ <ref name="thead"/>
+ </optional>
+ <optional>
+ <ref name="tfoot"/>
+ </optional>
+ <ref name="tbody"/>
+ </define>
+ <define name="tbl.tgroup.att">
+ <optional>
+ <attribute name="tgroupstyle"/>
+ </optional>
+ </define>
+ <define name="tbl.row.mdl">
+ <oneOrMore>
+ <choice>
+ <ref name="entry"/>
+ <ref name="entrytbl"/>
+ </choice>
+ </oneOrMore>
+ </define>
+ <define name="tbl.entrytbl.mdl">
+ <zeroOrMore>
+ <ref name="colspec"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="spanspec"/>
+ </zeroOrMore>
+ <optional>
+ <ref name="thead"/>
+ </optional>
+ <ref name="tbody"/>
+ </define>
+ <!-- ===== Element and attribute declarations follow. ===== -->
+ <!-- doc:A formal table in a document. -->
+ <define name="table">
+ <element name="table">
+ <ref name="table.attlist"/>
+ <ref name="tbl.table.mdl"/>
+ </element>
+ </define>
+ <define name="table.attlist" combine="interleave">
+ <optional>
+ <attribute name="frame">
+ <choice>
+ <ref name="tbl.frame.attval"/>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="colsep">
+ <ref name="yesorno"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="rowsep">
+ <ref name="yesorno"/>
+ </attribute>
+ </optional>
+ <ref name="tbl.table.att"/>
+ <ref name="bodyatt"/>
+ <ref name="secur"/>
+ </define>
+ <!-- doc:A wrapper for the main content of a table, or part of a table. -->
+ <define name="tgroup">
+ <element name="tgroup">
+ <ref name="tgroup.attlist"/>
+ <ref name="tbl.tgroup.mdl"/>
+ </element>
+ </define>
+ <define name="tgroup.attlist" combine="interleave">
+ <attribute name="cols"/>
+ <ref name="tbl.tgroup.att"/>
+ <optional>
+ <attribute name="colsep">
+ <ref name="yesorno"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="rowsep">
+ <ref name="yesorno"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="align">
+ <choice>
+ <value>left</value>
+ <value>right</value>
+ <value>center</value>
+ <value>justify</value>
+ <value>char</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="char"/>
+ </optional>
+ <optional>
+ <attribute name="charoff"/>
+ </optional>
+ <ref name="secur"/>
+ </define>
+ <!-- doc:Specifications for a column in a table. -->
+ <define name="colspec">
+ <element name="colspec">
+ <ref name="colspec.attlist"/>
+ <empty/>
+ </element>
+ </define>
+ <define name="colspec.attlist" combine="interleave">
+ <optional>
+ <attribute name="colnum"/>
+ </optional>
+ <optional>
+ <attribute name="colname"/>
+ </optional>
+ <optional>
+ <attribute name="colwidth"/>
+ </optional>
+ <optional>
+ <attribute name="colsep">
+ <ref name="yesorno"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="rowsep">
+ <ref name="yesorno"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="align">
+ <choice>
+ <value>left</value>
+ <value>right</value>
+ <value>center</value>
+ <value>justify</value>
+ <value>char</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="char"/>
+ </optional>
+ <optional>
+ <attribute name="charoff"/>
+ </optional>
+ </define>
+ <!-- doc:Formatting information for a spanned column in a table. -->
+ <define name="spanspec">
+ <element name="spanspec">
+ <ref name="spanspec.attlist"/>
+ <empty/>
+ </element>
+ </define>
+ <define name="spanspec.attlist" combine="interleave">
+ <attribute name="namest"/>
+ <attribute name="nameend"/>
+ <attribute name="spanname"/>
+ <optional>
+ <attribute name="colsep">
+ <ref name="yesorno"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="rowsep">
+ <ref name="yesorno"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="align">
+ <choice>
+ <value>left</value>
+ <value>right</value>
+ <value>center</value>
+ <value>justify</value>
+ <value>char</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="char"/>
+ </optional>
+ <optional>
+ <attribute name="charoff"/>
+ </optional>
+ </define>
+ <!-- doc:A table header consisting of one or more rows. -->
+ <define name="thead">
+ <element name="thead">
+ <ref name="thead.attlist"/>
+ <ref name="tbl.hdft.mdl"/>
+ </element>
+ </define>
+ <define name="thead.attlist" combine="interleave">
+ <optional>
+ <attribute name="valign">
+ <choice>
+ <value>top</value>
+ <value>middle</value>
+ <value>bottom</value>
+ </choice>
+ </attribute>
+ </optional>
+ <ref name="secur"/>
+ </define>
+ <!-- doc:A table footer consisting of one or more rows. -->
+ <define name="tfoot">
+ <element name="tfoot">
+ <ref name="tfoot.attlist"/>
+ <ref name="tbl.hdft.mdl"/>
+ </element>
+ </define>
+ <define name="tfoot.attlist" combine="interleave">
+ <optional>
+ <attribute name="valign">
+ <choice>
+ <value>top</value>
+ <value>middle</value>
+ <value>bottom</value>
+ </choice>
+ </attribute>
+ </optional>
+ <ref name="secur"/>
+ </define>
+ <!-- doc:A wrapper for the rows of a table or informal table. -->
+ <define name="tbody">
+ <element name="tbody">
+ <ref name="tbody.attlist"/>
+ <ref name="tbl.tbody.mdl"/>
+ </element>
+ </define>
+ <define name="tbody.attlist" combine="interleave">
+ <optional>
+ <attribute name="valign">
+ <choice>
+ <value>top</value>
+ <value>middle</value>
+ <value>bottom</value>
+ </choice>
+ </attribute>
+ </optional>
+ <ref name="secur"/>
+ </define>
+ <!-- doc:A row in a table. -->
+ <define name="row">
+ <element name="row">
+ <ref name="row.attlist"/>
+ <ref name="tbl.row.mdl"/>
+ </element>
+ </define>
+ <define name="row.attlist" combine="interleave">
+ <optional>
+ <attribute name="rowsep">
+ <ref name="yesorno"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="valign">
+ <choice>
+ <value>top</value>
+ <value>middle</value>
+ <value>bottom</value>
+ </choice>
+ </attribute>
+ </optional>
+ <ref name="secur"/>
+ </define>
+ <!-- doc:A subtable appearing in place of an Entry in a table. -->
+ <define name="entrytbl">
+ <element name="entrytbl">
+ <ref name="entrytbl.attlist"/>
+ <ref name="tbl.entrytbl.mdl"/>
+ </element>
+ </define>
+ <define name="entrytbl.attlist" combine="interleave">
+ <attribute name="cols"/>
+ <ref name="tbl.tgroup.att"/>
+ <optional>
+ <attribute name="colname"/>
+ </optional>
+ <optional>
+ <attribute name="spanname"/>
+ </optional>
+ <optional>
+ <attribute name="namest"/>
+ </optional>
+ <optional>
+ <attribute name="nameend"/>
+ </optional>
+ <optional>
+ <attribute name="colsep">
+ <ref name="yesorno"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="rowsep">
+ <ref name="yesorno"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="align">
+ <choice>
+ <value>left</value>
+ <value>right</value>
+ <value>center</value>
+ <value>justify</value>
+ <value>char</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="char"/>
+ </optional>
+ <optional>
+ <attribute name="charoff"/>
+ </optional>
+ <ref name="secur"/>
+ </define>
+ <!-- doc:A cell in a table. -->
+ <define name="entry">
+ <element name="entry">
+ <ref name="entry.attlist"/>
+ <zeroOrMore>
+ <ref name="tbl.entry.mdl"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ <define name="entry.attlist" combine="interleave">
+ <optional>
+ <attribute name="colname"/>
+ </optional>
+ <optional>
+ <attribute name="namest"/>
+ </optional>
+ <optional>
+ <attribute name="nameend"/>
+ </optional>
+ <optional>
+ <attribute name="spanname"/>
+ </optional>
+ <optional>
+ <attribute name="morerows"/>
+ </optional>
+ <optional>
+ <attribute name="colsep">
+ <ref name="yesorno"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="rowsep">
+ <ref name="yesorno"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="align">
+ <choice>
+ <value>left</value>
+ <value>right</value>
+ <value>center</value>
+ <value>justify</value>
+ <value>char</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="char"/>
+ </optional>
+ <optional>
+ <attribute name="charoff"/>
+ </optional>
+ <optional>
+ <attribute name="rotate">
+ <ref name="yesorno"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="valign">
+ <choice>
+ <value>top</value>
+ <value>middle</value>
+ <value>bottom</value>
+ </choice>
+ </attribute>
+ </optional>
+ <ref name="secur"/>
+ </define>
+</grammar>
+<!-- End of DocBook CALS Table Model V4.5 ................................. -->
+<!-- ...................................................................... -->
diff --git a/doc/editor_configs/serna/scons/dtd/dbcentx.mod b/doc/editor_configs/serna/scons/dtd/dbcentx.mod
new file mode 100644
index 0000000..cd6a756
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/dbcentx.mod
@@ -0,0 +1,384 @@
+<!-- ...................................................................... -->
+<!-- DocBook character entities module V4.5 ............................... -->
+<!-- File dbcentx.mod ..................................................... -->
+
+<!-- Copyright 1992-2004 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).
+
+ $Id: dbcentx.mod,v 1.1 2009-03-30 14:59:35 sorin Exp $
+
+ Permission to use, copy, modify and distribute the DocBook DTD
+ 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 DTD for
+ any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook DTD in any way, except for declaring and
+ referencing additional sets of general entities and declaring
+ additional notations, label your DTD as a variant of DocBook. See
+ the maintenance documentation 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/.
+-->
+
+<!-- ...................................................................... -->
+
+<!-- This module contains the entity declarations for the standard ISO
+ entity sets used by DocBook.
+
+ In DTD driver files referring to this module, please use an entity
+ declaration that uses the public identifier shown below:
+
+ <!ENTITY % dbcent PUBLIC
+ "-//OASIS//ENTITIES DocBook Character Entities V4.5//EN"
+ "dbcentx.mod">
+ %dbcent;
+
+ See the documentation for detailed information on the parameter
+ entity and module scheme used in DocBook, customizing DocBook and
+ planning for interchange, and changes made since the last release
+ of DocBook.
+-->
+
+<!-- ...................................................................... -->
+
+<![%sgml.features;[
+
+<!ENTITY % ISOamsa.module "INCLUDE">
+<![ %ISOamsa.module; [
+<!ENTITY % ISOamsa PUBLIC
+"ISO 8879:1986//ENTITIES Added Math Symbols: Arrow Relations//EN">
+<!--end of ISOamsa.module-->]]>
+
+<!ENTITY % ISOamsb.module "INCLUDE">
+<![ %ISOamsb.module; [
+<!ENTITY % ISOamsb PUBLIC
+"ISO 8879:1986//ENTITIES Added Math Symbols: Binary Operators//EN">
+<!--end of ISOamsb.module-->]]>
+
+<!ENTITY % ISOamsc.module "INCLUDE">
+<![ %ISOamsc.module; [
+<!ENTITY % ISOamsc PUBLIC
+"ISO 8879:1986//ENTITIES Added Math Symbols: Delimiters//EN">
+<!--end of ISOamsc.module-->]]>
+
+<!ENTITY % ISOamsn.module "INCLUDE">
+<![ %ISOamsn.module; [
+<!ENTITY % ISOamsn PUBLIC
+"ISO 8879:1986//ENTITIES Added Math Symbols: Negated Relations//EN">
+<!--end of ISOamsn.module-->]]>
+
+<!ENTITY % ISOamso.module "INCLUDE">
+<![ %ISOamso.module; [
+<!ENTITY % ISOamso PUBLIC
+"ISO 8879:1986//ENTITIES Added Math Symbols: Ordinary//EN">
+<!--end of ISOamso.module-->]]>
+
+<!ENTITY % ISOamsr.module "INCLUDE">
+<![ %ISOamsr.module; [
+<!ENTITY % ISOamsr PUBLIC
+"ISO 8879:1986//ENTITIES Added Math Symbols: Relations//EN">
+<!--end of ISOamsr.module-->]]>
+
+<!ENTITY % ISObox.module "INCLUDE">
+<![ %ISObox.module; [
+<!ENTITY % ISObox PUBLIC
+"ISO 8879:1986//ENTITIES Box and Line Drawing//EN">
+<!--end of ISObox.module-->]]>
+
+<!ENTITY % ISOcyr1.module "INCLUDE">
+<![ %ISOcyr1.module; [
+<!ENTITY % ISOcyr1 PUBLIC
+"ISO 8879:1986//ENTITIES Russian Cyrillic//EN">
+<!--end of ISOcyr1.module-->]]>
+
+<!ENTITY % ISOcyr2.module "INCLUDE">
+<![ %ISOcyr2.module; [
+<!ENTITY % ISOcyr2 PUBLIC
+"ISO 8879:1986//ENTITIES Non-Russian Cyrillic//EN">
+<!--end of ISOcyr2.module-->]]>
+
+<!ENTITY % ISOdia.module "INCLUDE">
+<![ %ISOdia.module; [
+<!ENTITY % ISOdia PUBLIC
+"ISO 8879:1986//ENTITIES Diacritical Marks//EN">
+<!--end of ISOdia.module-->]]>
+
+<!ENTITY % ISOgrk1.module "INCLUDE">
+<![ %ISOgrk1.module; [
+<!ENTITY % ISOgrk1 PUBLIC
+"ISO 8879:1986//ENTITIES Greek Letters//EN">
+<!--end of ISOgrk1.module-->]]>
+
+<!ENTITY % ISOgrk2.module "INCLUDE">
+<![ %ISOgrk2.module; [
+<!ENTITY % ISOgrk2 PUBLIC
+"ISO 8879:1986//ENTITIES Monotoniko Greek//EN">
+<!--end of ISOgrk2.module-->]]>
+
+<!ENTITY % ISOgrk3.module "INCLUDE">
+<![ %ISOgrk3.module; [
+<!ENTITY % ISOgrk3 PUBLIC
+"ISO 8879:1986//ENTITIES Greek Symbols//EN">
+<!--end of ISOgrk3.module-->]]>
+
+<!ENTITY % ISOgrk4.module "INCLUDE">
+<![ %ISOgrk4.module; [
+<!ENTITY % ISOgrk4 PUBLIC
+"ISO 8879:1986//ENTITIES Alternative Greek Symbols//EN">
+<!--end of ISOgrk4.module-->]]>
+
+<!ENTITY % ISOlat1.module "INCLUDE">
+<![ %ISOlat1.module; [
+<!ENTITY % ISOlat1 PUBLIC
+"ISO 8879:1986//ENTITIES Added Latin 1//EN">
+<!--end of ISOlat1.module-->]]>
+
+<!ENTITY % ISOlat2.module "INCLUDE">
+<![ %ISOlat2.module; [
+<!ENTITY % ISOlat2 PUBLIC
+"ISO 8879:1986//ENTITIES Added Latin 2//EN">
+<!--end of ISOlat2.module-->]]>
+
+<!ENTITY % ISOnum.module "INCLUDE">
+<![ %ISOnum.module; [
+<!ENTITY % ISOnum PUBLIC
+"ISO 8879:1986//ENTITIES Numeric and Special Graphic//EN">
+<!--end of ISOnum.module-->]]>
+
+<!ENTITY % ISOpub.module "INCLUDE">
+<![ %ISOpub.module; [
+<!ENTITY % ISOpub PUBLIC
+"ISO 8879:1986//ENTITIES Publishing//EN">
+<!--end of ISOpub.module-->]]>
+
+<!ENTITY % ISOtech.module "INCLUDE">
+<![ %ISOtech.module; [
+<!ENTITY % ISOtech PUBLIC
+"ISO 8879:1986//ENTITIES General Technical//EN">
+<!--end of ISOtech.module-->]]>
+
+<!--end of sgml.features-->]]>
+
+<![%xml.features;[
+
+<!ENTITY % ISOamsa.module "INCLUDE">
+<![%ISOamsa.module;[
+<!ENTITY % ISOamsa PUBLIC
+"ISO 8879:1986//ENTITIES Added Math Symbols: Arrow Relations//EN//XML"
+"ent/isoamsa.ent">
+<!--end of ISOamsa.module-->]]>
+
+<!ENTITY % ISOamsb.module "INCLUDE">
+<![%ISOamsb.module;[
+<!ENTITY % ISOamsb PUBLIC
+"ISO 8879:1986//ENTITIES Added Math Symbols: Binary Operators//EN//XML"
+"ent/isoamsb.ent">
+<!--end of ISOamsb.module-->]]>
+
+<!ENTITY % ISOamsc.module "INCLUDE">
+<![%ISOamsc.module;[
+<!ENTITY % ISOamsc PUBLIC
+"ISO 8879:1986//ENTITIES Added Math Symbols: Delimiters//EN//XML"
+"ent/isoamsc.ent">
+<!--end of ISOamsc.module-->]]>
+
+<!ENTITY % ISOamsn.module "INCLUDE">
+<![%ISOamsn.module;[
+<!ENTITY % ISOamsn PUBLIC
+"ISO 8879:1986//ENTITIES Added Math Symbols: Negated Relations//EN//XML"
+"ent/isoamsn.ent">
+<!--end of ISOamsn.module-->]]>
+
+<!ENTITY % ISOamso.module "INCLUDE">
+<![%ISOamso.module;[
+<!ENTITY % ISOamso PUBLIC
+"ISO 8879:1986//ENTITIES Added Math Symbols: Ordinary//EN//XML"
+"ent/isoamso.ent">
+<!--end of ISOamso.module-->]]>
+
+<!ENTITY % ISOamsr.module "INCLUDE">
+<![%ISOamsr.module;[
+<!ENTITY % ISOamsr PUBLIC
+"ISO 8879:1986//ENTITIES Added Math Symbols: Relations//EN//XML"
+"ent/isoamsr.ent">
+<!--end of ISOamsr.module-->]]>
+
+<!ENTITY % ISObox.module "INCLUDE">
+<![%ISObox.module;[
+<!ENTITY % ISObox PUBLIC
+"ISO 8879:1986//ENTITIES Box and Line Drawing//EN//XML"
+"ent/isobox.ent">
+<!--end of ISObox.module-->]]>
+
+<!ENTITY % ISOcyr1.module "INCLUDE">
+<![%ISOcyr1.module;[
+<!ENTITY % ISOcyr1 PUBLIC
+"ISO 8879:1986//ENTITIES Russian Cyrillic//EN//XML"
+"ent/isocyr1.ent">
+<!--end of ISOcyr1.module-->]]>
+
+<!ENTITY % ISOcyr2.module "INCLUDE">
+<![%ISOcyr2.module;[
+<!ENTITY % ISOcyr2 PUBLIC
+"ISO 8879:1986//ENTITIES Non-Russian Cyrillic//EN//XML"
+"ent/isocyr2.ent">
+<!--end of ISOcyr2.module-->]]>
+
+<!ENTITY % ISOdia.module "INCLUDE">
+<![%ISOdia.module;[
+<!ENTITY % ISOdia PUBLIC
+"ISO 8879:1986//ENTITIES Diacritical Marks//EN//XML"
+"ent/isodia.ent">
+<!--end of ISOdia.module-->]]>
+
+<!ENTITY % ISOgrk1.module "INCLUDE">
+<![%ISOgrk1.module;[
+<!ENTITY % ISOgrk1 PUBLIC
+"ISO 8879:1986//ENTITIES Greek Letters//EN//XML"
+"ent/isogrk1.ent">
+<!--end of ISOgrk1.module-->]]>
+
+<!ENTITY % ISOgrk2.module "INCLUDE">
+<![%ISOgrk2.module;[
+<!ENTITY % ISOgrk2 PUBLIC
+"ISO 8879:1986//ENTITIES Monotoniko Greek//EN//XML"
+"ent/isogrk2.ent">
+<!--end of ISOgrk2.module-->]]>
+
+<!ENTITY % ISOgrk3.module "INCLUDE">
+<![%ISOgrk3.module;[
+<!ENTITY % ISOgrk3 PUBLIC
+"ISO 8879:1986//ENTITIES Greek Symbols//EN//XML"
+"ent/isogrk3.ent">
+<!--end of ISOgrk3.module-->]]>
+
+<!ENTITY % ISOgrk4.module "INCLUDE">
+<![%ISOgrk4.module;[
+<!ENTITY % ISOgrk4 PUBLIC
+"ISO 8879:1986//ENTITIES Alternative Greek Symbols//EN//XML"
+"ent/isogrk4.ent">
+<!--end of ISOgrk4.module-->]]>
+
+<!ENTITY % ISOlat1.module "INCLUDE">
+<![%ISOlat1.module;[
+<!ENTITY % ISOlat1 PUBLIC
+"ISO 8879:1986//ENTITIES Added Latin 1//EN//XML"
+"ent/isolat1.ent">
+<!--end of ISOlat1.module-->]]>
+
+<!ENTITY % ISOlat2.module "INCLUDE">
+<![%ISOlat2.module;[
+<!ENTITY % ISOlat2 PUBLIC
+"ISO 8879:1986//ENTITIES Added Latin 2//EN//XML"
+"ent/isolat2.ent">
+<!--end of ISOlat2.module-->]]>
+
+<!ENTITY % ISOnum.module "INCLUDE">
+<![%ISOnum.module;[
+<!ENTITY % ISOnum PUBLIC
+"ISO 8879:1986//ENTITIES Numeric and Special Graphic//EN//XML"
+"ent/isonum.ent">
+<!--end of ISOnum.module-->]]>
+
+<!ENTITY % ISOpub.module "INCLUDE">
+<![%ISOpub.module;[
+<!ENTITY % ISOpub PUBLIC
+"ISO 8879:1986//ENTITIES Publishing//EN//XML"
+"ent/isopub.ent">
+<!--end of ISOpub.module-->]]>
+
+<!ENTITY % ISOtech.module "INCLUDE">
+<![%ISOtech.module;[
+<!ENTITY % ISOtech PUBLIC
+"ISO 8879:1986//ENTITIES General Technical//EN//XML"
+"ent/isotech.ent">
+<!--end of ISOtech.module-->]]>
+
+<!--end of xml.features-->]]>
+
+<![ %ISOamsa.module; [
+%ISOamsa;
+]]>
+
+<![ %ISOamsb.module; [
+%ISOamsb;
+]]>
+
+<![ %ISOamsc.module; [
+%ISOamsc;
+]]>
+
+<![ %ISOamsn.module; [
+%ISOamsn;
+]]>
+
+<![ %ISOamso.module; [
+%ISOamso;
+]]>
+
+<![ %ISOamsr.module; [
+%ISOamsr;
+]]>
+
+<![ %ISObox.module; [
+%ISObox;
+]]>
+
+<![ %ISOcyr1.module; [
+%ISOcyr1;
+]]>
+
+<![ %ISOcyr2.module; [
+%ISOcyr2;
+]]>
+
+<![ %ISOdia.module; [
+%ISOdia;
+]]>
+
+<![ %ISOgrk1.module; [
+%ISOgrk1;
+]]>
+
+<![ %ISOgrk2.module; [
+%ISOgrk2;
+]]>
+
+<![ %ISOgrk3.module; [
+%ISOgrk3;
+]]>
+
+<![ %ISOgrk4.module; [
+%ISOgrk4;
+]]>
+
+<![ %ISOlat1.module; [
+%ISOlat1;
+]]>
+
+<![ %ISOlat2.module; [
+%ISOlat2;
+]]>
+
+<![ %ISOnum.module; [
+%ISOnum;
+]]>
+
+<![ %ISOpub.module; [
+%ISOpub;
+]]>
+
+<![ %ISOtech.module; [
+%ISOtech;
+]]>
+
+<!-- End of DocBook character entity sets module V4.5 ..................... -->
+<!-- ...................................................................... -->
diff --git a/doc/editor_configs/serna/scons/dtd/dbgenent.mod b/doc/editor_configs/serna/scons/dtd/dbgenent.mod
new file mode 100644
index 0000000..ff5ba90
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/dbgenent.mod
@@ -0,0 +1,41 @@
+<!-- ...................................................................... -->
+<!-- DocBook additional general entities V4.5 ............................. -->
+
+<!-- Copyright 1992-2004 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).
+
+ In DTD driver files referring to this module, please use an entity
+ declaration that uses the public identifier shown below:
+
+ <!ENTITY % dbgenent PUBLIC
+ "-//OASIS//ENTITIES DocBook Additional General Entities V4.5//EN"
+ "dbgenent.mod">
+ %dbgenent;
+-->
+
+<!-- File dbgenent.mod .................................................... -->
+
+<!-- You can edit this file to add the following:
+
+ o General entity declarations of any kind. For example:
+
+ <!ENTITY productname "WinWidget"> (small boilerplate)
+ <!ENTITY legal-notice SYSTEM "notice.sgm"> (large boilerplate)
+
+ o Notation declarations. For example:
+
+ <!NOTATION chicken-scratch SYSTEM>
+
+ o Declarations for and references to external parameter entities
+ containing collections of any of the above. For example:
+
+ <!ENTITY % all-titles PUBLIC "-//DocTools//ELEMENTS Book Titles//EN"
+ "booktitles.ent">
+ %all-titles;
+-->
+
+<!-- End of DocBook additional general entities V4.5 ...................... -->
+<!-- ...................................................................... -->
diff --git a/doc/editor_configs/serna/scons/dtd/dbhierx.mod b/doc/editor_configs/serna/scons/dtd/dbhierx.mod
new file mode 100644
index 0000000..0026eb0
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/dbhierx.mod
@@ -0,0 +1,2193 @@
+<!-- ...................................................................... -->
+<!-- DocBook document hierarchy module V4.5 ............................... -->
+<!-- File dbhierx.mod ..................................................... -->
+
+<!-- Copyright 1992-2004 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).
+
+ $Id: dbhierx.mod,v 1.1 2009-03-30 14:59:35 sorin Exp $
+
+ Permission to use, copy, modify and distribute the DocBook DTD
+ 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 DTD for
+ any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook DTD in any way, except for declaring and
+ referencing additional sets of general entities and declaring
+ additional notations, label your DTD as a variant of DocBook. See
+ the maintenance documentation 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/.
+-->
+
+<!-- ...................................................................... -->
+
+<!-- This module contains the definitions for the overall document
+ hierarchies of DocBook documents. It covers computer documentation
+ manuals and manual fragments, as well as reference entries (such as
+ man pages) and technical journals or anthologies containing
+ articles.
+
+ This module depends on the DocBook information pool module. All
+ elements and entities referenced but not defined here are assumed
+ to be defined in the information pool module.
+
+ In DTD driver files referring to this module, please use an entity
+ declaration that uses the public identifier shown below:
+
+ <!ENTITY % dbhier PUBLIC
+ "-//OASIS//ELEMENTS DocBook Document Hierarchy V4.5//EN"
+ "dbhierx.mod">
+ %dbhier;
+
+ See the documentation for detailed information on the parameter
+ entity and module scheme used in DocBook, customizing DocBook and
+ planning for interchange, and changes made since the last release
+ of DocBook.
+-->
+
+<!-- ...................................................................... -->
+<!-- Entities for module inclusions ....................................... -->
+
+<!ENTITY % dbhier.redecl.module "IGNORE">
+<!ENTITY % dbhier.redecl2.module "IGNORE">
+
+<!-- ...................................................................... -->
+<!-- Entities for element classes ......................................... -->
+
+<!ENTITY % local.appendix.class "">
+<!ENTITY % appendix.class "appendix %local.appendix.class;">
+
+<!ENTITY % local.article.class "">
+<!ENTITY % article.class "article %local.article.class;">
+
+<!ENTITY % local.book.class "">
+<!ENTITY % book.class "book %local.book.class;">
+
+<!ENTITY % local.chapter.class "">
+<!ENTITY % chapter.class "chapter %local.chapter.class;">
+
+<!ENTITY % local.index.class "">
+<!ENTITY % index.class "index|setindex %local.index.class;">
+
+<!ENTITY % local.refentry.class "">
+<!ENTITY % refentry.class "refentry %local.refentry.class;">
+
+<!ENTITY % local.section.class "">
+<!ENTITY % section.class "section %local.section.class;">
+
+<!ENTITY % local.nav.class "">
+<!ENTITY % nav.class "toc|lot|index|glossary|bibliography
+ %local.nav.class;">
+
+<!-- Redeclaration placeholder ............................................ -->
+
+<!-- For redeclaring entities that are declared after this point while
+ retaining their references to the entities that are declared before
+ this point -->
+
+<![%dbhier.redecl.module;[
+<!-- Defining rdbhier here makes some buggy XML parsers happy. -->
+<!ENTITY % rdbhier "">
+%rdbhier;
+<!--end of dbhier.redecl.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Entities for element mixtures ........................................ -->
+
+<!ENTITY % local.divcomponent.mix "">
+<!ENTITY % divcomponent.mix
+ "%list.class; |%admon.class;
+ |%linespecific.class; |%synop.class;
+ |%para.class; |%informal.class;
+ |%formal.class; |%compound.class;
+ |%genobj.class; |%descobj.class;
+ |%ndxterm.class; |beginpage
+ %forms.hook;
+ %local.divcomponent.mix;">
+
+<!ENTITY % local.refcomponent.mix "">
+<!ENTITY % refcomponent.mix
+ "%list.class; |%admon.class;
+ |%linespecific.class; |%synop.class;
+ |%para.class; |%informal.class;
+ |%formal.class; |%compound.class;
+ |%genobj.class; |%descobj.class;
+ |%ndxterm.class; |beginpage
+ %forms.hook;
+ %local.refcomponent.mix;">
+
+<!ENTITY % local.indexdivcomponent.mix "">
+<!ENTITY % indexdivcomponent.mix
+ "itemizedlist|orderedlist|variablelist|simplelist
+ |%linespecific.class; |%synop.class;
+ |%para.class; |%informal.class;
+ |anchor|remark
+ |%link.char.class;
+ |beginpage
+ %local.indexdivcomponent.mix;">
+
+<!ENTITY % local.refname.char.mix "">
+<!ENTITY % refname.char.mix
+ "#PCDATA
+ |%tech.char.class;
+ %local.refname.char.mix;">
+
+<!ENTITY % local.partcontent.mix "">
+<!ENTITY % partcontent.mix
+ "%appendix.class;|%chapter.class;|%nav.class;|%article.class;
+ |preface|%refentry.class;|reference %local.partcontent.mix;">
+
+<!ENTITY % local.refinline.char.mix "">
+<!ENTITY % refinline.char.mix
+ "#PCDATA
+ |%xref.char.class; |%gen.char.class;
+ |%link.char.class; |%tech.char.class;
+ |%base.char.class; |%docinfo.char.class;
+ |%other.char.class;
+ |%ndxterm.class; |beginpage
+ %local.refinline.char.mix;">
+
+<!ENTITY % local.refclass.char.mix "">
+<!ENTITY % refclass.char.mix
+ "#PCDATA
+ |application
+ %local.refclass.char.mix;">
+
+<!-- Redeclaration placeholder 2 .......................................... -->
+
+<!-- For redeclaring entities that are declared after this point while
+ retaining their references to the entities that are declared before
+ this point -->
+
+<![%dbhier.redecl2.module;[
+<!-- Defining rdbhier2 here makes some buggy XML parsers happy. -->
+<!ENTITY % rdbhier2 "">
+%rdbhier2;
+<!--end of dbhier.redecl2.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Entities for content models .......................................... -->
+
+<!ENTITY % div.title.content
+ "title, subtitle?, titleabbrev?">
+
+<!ENTITY % bookcomponent.title.content
+ "title, subtitle?, titleabbrev?">
+
+<!ENTITY % sect.title.content
+ "title, subtitle?, titleabbrev?">
+
+<!ENTITY % refsect.title.content
+ "title, subtitle?, titleabbrev?">
+
+<!ENTITY % bookcomponent.content
+ "((%divcomponent.mix;)+,
+ (sect1*|(%refentry.class;)*|simplesect*|(%section.class;)*))
+ | (sect1+|(%refentry.class;)+|simplesect+|(%section.class;)+)">
+
+<!-- ...................................................................... -->
+<!-- Set and SetInfo ...................................................... -->
+
+<!ENTITY % set.content.module "INCLUDE">
+<![%set.content.module;[
+<!ENTITY % set.module "INCLUDE">
+<![%set.module;[
+<!ENTITY % local.set.attrib "">
+<!ENTITY % set.role.attrib "%role.attrib;">
+
+<!ENTITY % set.element "INCLUDE">
+<![%set.element;[
+<!--doc:A collection of books.-->
+<!ELEMENT set %ho; ((%div.title.content;)?, setinfo?, toc?, (set|%book.class;)+,
+ setindex?)
+ %ubiq.inclusion;>
+<!--end of set.element-->]]>
+
+<!-- FPI: SGML formal public identifier -->
+
+
+<!ENTITY % set.attlist "INCLUDE">
+<![%set.attlist;[
+<!ATTLIST set
+ fpi CDATA #IMPLIED
+ %status.attrib;
+ %common.attrib;
+ %set.role.attrib;
+ %local.set.attrib;
+>
+<!--end of set.attlist-->]]>
+<!--end of set.module-->]]>
+
+<!ENTITY % setinfo.module "INCLUDE">
+<![%setinfo.module;[
+<!ENTITY % local.setinfo.attrib "">
+<!ENTITY % setinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % setinfo.element "INCLUDE">
+<![%setinfo.element;[
+<!--doc:Meta-information for a Set.-->
+<!ELEMENT setinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of setinfo.element-->]]>
+
+<!-- Contents: IDs of the ToC, Books, and SetIndex that comprise
+ the set, in the order of their appearance -->
+
+
+<!ENTITY % setinfo.attlist "INCLUDE">
+<![%setinfo.attlist;[
+<!ATTLIST setinfo
+ contents IDREFS #IMPLIED
+ %common.attrib;
+ %setinfo.role.attrib;
+ %local.setinfo.attrib;
+>
+<!--end of setinfo.attlist-->]]>
+<!--end of setinfo.module-->]]>
+<!--end of set.content.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Book and BookInfo .................................................... -->
+
+<!ENTITY % book.content.module "INCLUDE">
+<![%book.content.module;[
+<!ENTITY % book.module "INCLUDE">
+<![%book.module;[
+
+<!ENTITY % local.book.attrib "">
+<!ENTITY % book.role.attrib "%role.attrib;">
+
+<!ENTITY % book.element "INCLUDE">
+<![%book.element;[
+<!--doc:A book.-->
+<!ELEMENT book %ho; ((%div.title.content;)?, bookinfo?,
+ (dedication | toc | lot
+ | glossary | bibliography | preface
+ | %chapter.class; | reference | part
+ | %article.class;
+ | %appendix.class;
+ | %index.class;
+ | colophon)*)
+ %ubiq.inclusion;>
+<!--end of book.element-->]]>
+
+<!-- FPI: SGML formal public identifier -->
+
+
+<!ENTITY % book.attlist "INCLUDE">
+<![%book.attlist;[
+<!ATTLIST book fpi CDATA #IMPLIED
+ %label.attrib;
+ %status.attrib;
+ %common.attrib;
+ %book.role.attrib;
+ %local.book.attrib;
+>
+<!--end of book.attlist-->]]>
+<!--end of book.module-->]]>
+
+<!ENTITY % bookinfo.module "INCLUDE">
+<![%bookinfo.module;[
+<!ENTITY % local.bookinfo.attrib "">
+<!ENTITY % bookinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % bookinfo.element "INCLUDE">
+<![%bookinfo.element;[
+<!--doc:Meta-information for a Book.-->
+<!ELEMENT bookinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of bookinfo.element-->]]>
+
+<!-- Contents: IDs of the ToC, LoTs, Prefaces, Parts, Chapters,
+ Appendixes, References, GLossary, Bibliography, and indexes
+ comprising the Book, in the order of their appearance -->
+
+
+<!ENTITY % bookinfo.attlist "INCLUDE">
+<![%bookinfo.attlist;[
+<!ATTLIST bookinfo
+ contents IDREFS #IMPLIED
+ %common.attrib;
+ %bookinfo.role.attrib;
+ %local.bookinfo.attrib;
+>
+<!--end of bookinfo.attlist-->]]>
+<!--end of bookinfo.module-->]]>
+<!--end of book.content.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Dedication, ToC, and LoT ............................................. -->
+
+<!ENTITY % dedication.module "INCLUDE">
+<![%dedication.module;[
+<!ENTITY % local.dedication.attrib "">
+<!ENTITY % dedication.role.attrib "%role.attrib;">
+
+<!ENTITY % dedication.element "INCLUDE">
+<![%dedication.element;[
+<!--doc:A wrapper for the dedication section of a book.-->
+<!ELEMENT dedication %ho; ((%sect.title.content;)?, (%legalnotice.mix;)+)>
+<!--end of dedication.element-->]]>
+
+<!ENTITY % dedication.attlist "INCLUDE">
+<![%dedication.attlist;[
+<!ATTLIST dedication
+ %status.attrib;
+ %common.attrib;
+ %dedication.role.attrib;
+ %local.dedication.attrib;
+>
+<!--end of dedication.attlist-->]]>
+<!--end of dedication.module-->]]>
+
+<!ENTITY % colophon.module "INCLUDE">
+<![ %colophon.module; [
+<!ENTITY % local.colophon.attrib "">
+<!ENTITY % colophon.role.attrib "%role.attrib;">
+
+<!ENTITY % colophon.element "INCLUDE">
+<![ %colophon.element; [
+<!--doc:Text at the back of a book describing facts about its production.-->
+<!ELEMENT colophon %ho; ((%sect.title.content;)?, (%textobject.mix;)+)>
+<!--end of colophon.element-->]]>
+
+<!ENTITY % colophon.attlist "INCLUDE">
+<![ %colophon.attlist; [
+<!ATTLIST colophon
+ %status.attrib;
+ %common.attrib;
+ %colophon.role.attrib;
+ %local.colophon.attrib;>
+<!--end of colophon.attlist-->]]>
+<!--end of colophon.module-->]]>
+
+<!ENTITY % toc.content.module "INCLUDE">
+<![%toc.content.module;[
+<!ENTITY % toc.module "INCLUDE">
+<![%toc.module;[
+<!ENTITY % local.toc.attrib "">
+<!ENTITY % toc.role.attrib "%role.attrib;">
+
+<!ENTITY % toc.element "INCLUDE">
+<![%toc.element;[
+<!--doc:A table of contents.-->
+<!ELEMENT toc %ho; (beginpage?,
+ (%bookcomponent.title.content;)?,
+ tocfront*,
+ (tocpart | tocchap)*, tocback*)>
+<!--end of toc.element-->]]>
+
+<!ENTITY % toc.attlist "INCLUDE">
+<![%toc.attlist;[
+<!ATTLIST toc
+ %pagenum.attrib;
+ %common.attrib;
+ %toc.role.attrib;
+ %local.toc.attrib;
+>
+<!--end of toc.attlist-->]]>
+<!--end of toc.module-->]]>
+
+<!ENTITY % tocfront.module "INCLUDE">
+<![%tocfront.module;[
+<!ENTITY % local.tocfront.attrib "">
+<!ENTITY % tocfront.role.attrib "%role.attrib;">
+
+<!ENTITY % tocfront.element "INCLUDE">
+<![%tocfront.element;[
+<!--doc:An entry in a table of contents for a front matter component.-->
+<!ELEMENT tocfront %ho; (%para.char.mix;)*>
+<!--end of tocfront.element-->]]>
+
+<!-- to element that this entry represents -->
+
+
+<!ENTITY % tocfront.attlist "INCLUDE">
+<![%tocfront.attlist;[
+<!ATTLIST tocfront
+ %label.attrib;
+ %linkend.attrib; %pagenum.attrib;
+ %common.attrib;
+ %tocfront.role.attrib;
+ %local.tocfront.attrib;
+>
+<!--end of tocfront.attlist-->]]>
+<!--end of tocfront.module-->]]>
+
+<!ENTITY % tocentry.module "INCLUDE">
+<![%tocentry.module;[
+<!ENTITY % local.tocentry.attrib "">
+<!ENTITY % tocentry.role.attrib "%role.attrib;">
+
+<!ENTITY % tocentry.element "INCLUDE">
+<![%tocentry.element;[
+<!--doc:A component title in a table of contents.-->
+<!ELEMENT tocentry %ho; (%para.char.mix;)*>
+<!--end of tocentry.element-->]]>
+
+<!-- to element that this entry represents -->
+
+
+<!ENTITY % tocentry.attlist "INCLUDE">
+<![%tocentry.attlist;[
+<!ATTLIST tocentry
+ %linkend.attrib; %pagenum.attrib;
+ %common.attrib;
+ %tocentry.role.attrib;
+ %local.tocentry.attrib;
+>
+<!--end of tocentry.attlist-->]]>
+<!--end of tocentry.module-->]]>
+
+<!ENTITY % tocpart.module "INCLUDE">
+<![%tocpart.module;[
+<!ENTITY % local.tocpart.attrib "">
+<!ENTITY % tocpart.role.attrib "%role.attrib;">
+
+<!ENTITY % tocpart.element "INCLUDE">
+<![%tocpart.element;[
+<!--doc:An entry in a table of contents for a part of a book.-->
+<!ELEMENT tocpart %ho; (tocentry+, tocchap*)>
+<!--end of tocpart.element-->]]>
+
+<!ENTITY % tocpart.attlist "INCLUDE">
+<![%tocpart.attlist;[
+<!ATTLIST tocpart
+ %common.attrib;
+ %tocpart.role.attrib;
+ %local.tocpart.attrib;
+>
+<!--end of tocpart.attlist-->]]>
+<!--end of tocpart.module-->]]>
+
+<!ENTITY % tocchap.module "INCLUDE">
+<![%tocchap.module;[
+<!ENTITY % local.tocchap.attrib "">
+<!ENTITY % tocchap.role.attrib "%role.attrib;">
+
+<!ENTITY % tocchap.element "INCLUDE">
+<![%tocchap.element;[
+<!--doc:An entry in a table of contents for a component in the body of a document.-->
+<!ELEMENT tocchap %ho; (tocentry+, toclevel1*)>
+<!--end of tocchap.element-->]]>
+
+<!ENTITY % tocchap.attlist "INCLUDE">
+<![%tocchap.attlist;[
+<!ATTLIST tocchap
+ %label.attrib;
+ %common.attrib;
+ %tocchap.role.attrib;
+ %local.tocchap.attrib;
+>
+<!--end of tocchap.attlist-->]]>
+<!--end of tocchap.module-->]]>
+
+<!ENTITY % toclevel1.module "INCLUDE">
+<![%toclevel1.module;[
+<!ENTITY % local.toclevel1.attrib "">
+<!ENTITY % toclevel1.role.attrib "%role.attrib;">
+
+<!ENTITY % toclevel1.element "INCLUDE">
+<![%toclevel1.element;[
+<!--doc:A top-level entry within a table of contents entry for a chapter-like component.-->
+<!ELEMENT toclevel1 %ho; (tocentry+, toclevel2*)>
+<!--end of toclevel1.element-->]]>
+
+<!ENTITY % toclevel1.attlist "INCLUDE">
+<![%toclevel1.attlist;[
+<!ATTLIST toclevel1
+ %common.attrib;
+ %toclevel1.role.attrib;
+ %local.toclevel1.attrib;
+>
+<!--end of toclevel1.attlist-->]]>
+<!--end of toclevel1.module-->]]>
+
+<!ENTITY % toclevel2.module "INCLUDE">
+<![%toclevel2.module;[
+<!ENTITY % local.toclevel2.attrib "">
+<!ENTITY % toclevel2.role.attrib "%role.attrib;">
+
+<!ENTITY % toclevel2.element "INCLUDE">
+<![%toclevel2.element;[
+<!--doc:A second-level entry within a table of contents entry for a chapter-like component.-->
+<!ELEMENT toclevel2 %ho; (tocentry+, toclevel3*)>
+<!--end of toclevel2.element-->]]>
+
+<!ENTITY % toclevel2.attlist "INCLUDE">
+<![%toclevel2.attlist;[
+<!ATTLIST toclevel2
+ %common.attrib;
+ %toclevel2.role.attrib;
+ %local.toclevel2.attrib;
+>
+<!--end of toclevel2.attlist-->]]>
+<!--end of toclevel2.module-->]]>
+
+<!ENTITY % toclevel3.module "INCLUDE">
+<![%toclevel3.module;[
+<!ENTITY % local.toclevel3.attrib "">
+<!ENTITY % toclevel3.role.attrib "%role.attrib;">
+
+<!ENTITY % toclevel3.element "INCLUDE">
+<![%toclevel3.element;[
+<!--doc:A third-level entry within a table of contents entry for a chapter-like component.-->
+<!ELEMENT toclevel3 %ho; (tocentry+, toclevel4*)>
+<!--end of toclevel3.element-->]]>
+
+<!ENTITY % toclevel3.attlist "INCLUDE">
+<![%toclevel3.attlist;[
+<!ATTLIST toclevel3
+ %common.attrib;
+ %toclevel3.role.attrib;
+ %local.toclevel3.attrib;
+>
+<!--end of toclevel3.attlist-->]]>
+<!--end of toclevel3.module-->]]>
+
+<!ENTITY % toclevel4.module "INCLUDE">
+<![%toclevel4.module;[
+<!ENTITY % local.toclevel4.attrib "">
+<!ENTITY % toclevel4.role.attrib "%role.attrib;">
+
+<!ENTITY % toclevel4.element "INCLUDE">
+<![%toclevel4.element;[
+<!--doc:A fourth-level entry within a table of contents entry for a chapter-like component.-->
+<!ELEMENT toclevel4 %ho; (tocentry+, toclevel5*)>
+<!--end of toclevel4.element-->]]>
+
+<!ENTITY % toclevel4.attlist "INCLUDE">
+<![%toclevel4.attlist;[
+<!ATTLIST toclevel4
+ %common.attrib;
+ %toclevel4.role.attrib;
+ %local.toclevel4.attrib;
+>
+<!--end of toclevel4.attlist-->]]>
+<!--end of toclevel4.module-->]]>
+
+<!ENTITY % toclevel5.module "INCLUDE">
+<![%toclevel5.module;[
+<!ENTITY % local.toclevel5.attrib "">
+<!ENTITY % toclevel5.role.attrib "%role.attrib;">
+
+<!ENTITY % toclevel5.element "INCLUDE">
+<![%toclevel5.element;[
+<!--doc:A fifth-level entry within a table of contents entry for a chapter-like component.-->
+<!ELEMENT toclevel5 %ho; (tocentry+)>
+<!--end of toclevel5.element-->]]>
+
+<!ENTITY % toclevel5.attlist "INCLUDE">
+<![%toclevel5.attlist;[
+<!ATTLIST toclevel5
+ %common.attrib;
+ %toclevel5.role.attrib;
+ %local.toclevel5.attrib;
+>
+<!--end of toclevel5.attlist-->]]>
+<!--end of toclevel5.module-->]]>
+
+<!ENTITY % tocback.module "INCLUDE">
+<![%tocback.module;[
+<!ENTITY % local.tocback.attrib "">
+<!ENTITY % tocback.role.attrib "%role.attrib;">
+
+<!ENTITY % tocback.element "INCLUDE">
+<![%tocback.element;[
+<!--doc:An entry in a table of contents for a back matter component.-->
+<!ELEMENT tocback %ho; (%para.char.mix;)*>
+<!--end of tocback.element-->]]>
+
+<!-- to element that this entry represents -->
+
+
+<!ENTITY % tocback.attlist "INCLUDE">
+<![%tocback.attlist;[
+<!ATTLIST tocback
+ %label.attrib;
+ %linkend.attrib; %pagenum.attrib;
+ %common.attrib;
+ %tocback.role.attrib;
+ %local.tocback.attrib;
+>
+<!--end of tocback.attlist-->]]>
+<!--end of tocback.module-->]]>
+<!--end of toc.content.module-->]]>
+
+<!ENTITY % lot.content.module "INCLUDE">
+<![%lot.content.module;[
+<!ENTITY % lot.module "INCLUDE">
+<![%lot.module;[
+<!ENTITY % local.lot.attrib "">
+<!ENTITY % lot.role.attrib "%role.attrib;">
+
+<!ENTITY % lot.element "INCLUDE">
+<![%lot.element;[
+<!--doc:A list of the titles of formal objects (as tables or figures) in a document.-->
+<!ELEMENT lot %ho; (beginpage?, (%bookcomponent.title.content;)?, lotentry*)>
+<!--end of lot.element-->]]>
+
+<!ENTITY % lot.attlist "INCLUDE">
+<![%lot.attlist;[
+<!ATTLIST lot
+ %label.attrib;
+ %common.attrib;
+ %lot.role.attrib;
+ %local.lot.attrib;
+>
+<!--end of lot.attlist-->]]>
+<!--end of lot.module-->]]>
+
+<!ENTITY % lotentry.module "INCLUDE">
+<![%lotentry.module;[
+<!ENTITY % local.lotentry.attrib "">
+<!ENTITY % lotentry.role.attrib "%role.attrib;">
+
+<!ENTITY % lotentry.element "INCLUDE">
+<![%lotentry.element;[
+<!--doc:An entry in a list of titles.-->
+<!ELEMENT lotentry %ho; (%para.char.mix;)*>
+<!--end of lotentry.element-->]]>
+
+<!-- SrcCredit: Information about the source of the entry,
+ as for a list of illustrations -->
+<!-- linkend: to element that this entry represents-->
+<!ENTITY % lotentry.attlist "INCLUDE">
+<![%lotentry.attlist;[
+<!ATTLIST lotentry
+ %linkend.attrib;
+ %pagenum.attrib;
+ srccredit CDATA #IMPLIED
+ %common.attrib;
+ %lotentry.role.attrib;
+ %local.lotentry.attrib;
+>
+<!--end of lotentry.attlist-->]]>
+<!--end of lotentry.module-->]]>
+<!--end of lot.content.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Appendix, Chapter, Part, Preface, Reference, PartIntro ............... -->
+
+<!ENTITY % appendix.module "INCLUDE">
+<![%appendix.module;[
+<!ENTITY % local.appendix.attrib "">
+<!ENTITY % appendix.role.attrib "%role.attrib;">
+
+<!ENTITY % appendix.element "INCLUDE">
+<![%appendix.element;[
+<!--doc:An appendix in a Book or Article.-->
+<!ELEMENT appendix %ho; (beginpage?,
+ appendixinfo?,
+ (%bookcomponent.title.content;),
+ (%nav.class;)*,
+ tocchap?,
+ (%bookcomponent.content;),
+ (%nav.class;)*)
+ %ubiq.inclusion;>
+<!--end of appendix.element-->]]>
+
+<!ENTITY % appendix.attlist "INCLUDE">
+<![%appendix.attlist;[
+<!ATTLIST appendix
+ %label.attrib;
+ %status.attrib;
+ %common.attrib;
+ %appendix.role.attrib;
+ %local.appendix.attrib;
+>
+<!--end of appendix.attlist-->]]>
+<!--end of appendix.module-->]]>
+
+<!ENTITY % chapter.module "INCLUDE">
+<![%chapter.module;[
+<!ENTITY % local.chapter.attrib "">
+<!ENTITY % chapter.role.attrib "%role.attrib;">
+
+<!ENTITY % chapter.element "INCLUDE">
+<![%chapter.element;[
+<!--doc:A chapter, as of a book.-->
+<!ELEMENT chapter %ho; (beginpage?,
+ chapterinfo?,
+ (%bookcomponent.title.content;),
+ (%nav.class;)*,
+ tocchap?,
+ (%bookcomponent.content;),
+ (%nav.class;)*)
+ %ubiq.inclusion;>
+<!--end of chapter.element-->]]>
+
+<!ENTITY % chapter.attlist "INCLUDE">
+<![%chapter.attlist;[
+<!ATTLIST chapter
+ %label.attrib;
+ %status.attrib;
+ %common.attrib;
+ %chapter.role.attrib;
+ %local.chapter.attrib;
+>
+<!--end of chapter.attlist-->]]>
+<!--end of chapter.module-->]]>
+
+<!ENTITY % part.module "INCLUDE">
+<![%part.module;[
+
+<!-- Note that Part was to have its content model reduced in V4.5. This
+change will not be made after all. -->
+
+<!ENTITY % local.part.attrib "">
+<!ENTITY % part.role.attrib "%role.attrib;">
+
+<!ENTITY % part.element "INCLUDE">
+<![%part.element;[
+<!--doc:A division in a book.-->
+<!ELEMENT part %ho; (beginpage?,
+ partinfo?, (%bookcomponent.title.content;), partintro?,
+ (%partcontent.mix;)+)
+ %ubiq.inclusion;>
+<!--end of part.element-->]]>
+
+<!ENTITY % part.attlist "INCLUDE">
+<![%part.attlist;[
+<!ATTLIST part
+ %label.attrib;
+ %status.attrib;
+ %common.attrib;
+ %part.role.attrib;
+ %local.part.attrib;
+>
+<!--end of part.attlist-->]]>
+<!--ELEMENT PartIntro (defined below)-->
+<!--end of part.module-->]]>
+
+<!ENTITY % preface.module "INCLUDE">
+<![%preface.module;[
+<!ENTITY % local.preface.attrib "">
+<!ENTITY % preface.role.attrib "%role.attrib;">
+
+<!ENTITY % preface.element "INCLUDE">
+<![%preface.element;[
+<!--doc:Introductory matter preceding the first chapter of a book.-->
+<!ELEMENT preface %ho; (beginpage?,
+ prefaceinfo?,
+ (%bookcomponent.title.content;),
+ (%nav.class;)*,
+ tocchap?,
+ (%bookcomponent.content;),
+ (%nav.class;)*)
+ %ubiq.inclusion;>
+<!--end of preface.element-->]]>
+
+<!ENTITY % preface.attlist "INCLUDE">
+<![%preface.attlist;[
+<!ATTLIST preface
+ %status.attrib;
+ %common.attrib;
+ %preface.role.attrib;
+ %local.preface.attrib;
+>
+<!--end of preface.attlist-->]]>
+<!--end of preface.module-->]]>
+
+<!ENTITY % reference.module "INCLUDE">
+<![%reference.module;[
+<!ENTITY % local.reference.attrib "">
+<!ENTITY % reference.role.attrib "%role.attrib;">
+
+<!ENTITY % reference.element "INCLUDE">
+<![%reference.element;[
+<!--doc:A collection of reference entries.-->
+<!ELEMENT reference %ho; (beginpage?,
+ referenceinfo?,
+ (%bookcomponent.title.content;), partintro?,
+ (%refentry.class;)+)
+ %ubiq.inclusion;>
+<!--end of reference.element-->]]>
+
+<!ENTITY % reference.attlist "INCLUDE">
+<![%reference.attlist;[
+<!ATTLIST reference
+ %label.attrib;
+ %status.attrib;
+ %common.attrib;
+ %reference.role.attrib;
+ %local.reference.attrib;
+>
+<!--end of reference.attlist-->]]>
+<!--ELEMENT PartIntro (defined below)-->
+<!--end of reference.module-->]]>
+
+<!ENTITY % partintro.module "INCLUDE">
+<![%partintro.module;[
+<!ENTITY % local.partintro.attrib "">
+<!ENTITY % partintro.role.attrib "%role.attrib;">
+
+<!ENTITY % partintro.element "INCLUDE">
+<![%partintro.element;[
+<!--doc:An introduction to the contents of a part.-->
+<!ELEMENT partintro %ho; ((%div.title.content;)?, (%bookcomponent.content;))
+ %ubiq.inclusion;>
+<!--end of partintro.element-->]]>
+
+<!ENTITY % partintro.attlist "INCLUDE">
+<![%partintro.attlist;[
+<!ATTLIST partintro
+ %label.attrib;
+ %common.attrib;
+ %partintro.role.attrib;
+ %local.partintro.attrib;
+>
+<!--end of partintro.attlist-->]]>
+<!--end of partintro.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Other Info elements .................................................. -->
+
+<!ENTITY % appendixinfo.module "INCLUDE">
+<![ %appendixinfo.module; [
+<!ENTITY % local.appendixinfo.attrib "">
+<!ENTITY % appendixinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % appendixinfo.element "INCLUDE">
+<![ %appendixinfo.element; [
+<!--doc:Meta-information for an Appendix.-->
+<!ELEMENT appendixinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of appendixinfo.element-->]]>
+
+<!ENTITY % appendixinfo.attlist "INCLUDE">
+<![ %appendixinfo.attlist; [
+<!ATTLIST appendixinfo
+ %common.attrib;
+ %appendixinfo.role.attrib;
+ %local.appendixinfo.attrib;
+>
+<!--end of appendixinfo.attlist-->]]>
+<!--end of appendixinfo.module-->]]>
+
+<!ENTITY % bibliographyinfo.module "INCLUDE">
+<![ %bibliographyinfo.module; [
+<!ENTITY % local.bibliographyinfo.attrib "">
+<!ENTITY % bibliographyinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % bibliographyinfo.element "INCLUDE">
+<![ %bibliographyinfo.element; [
+<!--doc:Meta-information for a Bibliography.-->
+<!ELEMENT bibliographyinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of bibliographyinfo.element-->]]>
+
+<!ENTITY % bibliographyinfo.attlist "INCLUDE">
+<![ %bibliographyinfo.attlist; [
+<!ATTLIST bibliographyinfo
+ %common.attrib;
+ %bibliographyinfo.role.attrib;
+ %local.bibliographyinfo.attrib;
+>
+<!--end of bibliographyinfo.attlist-->]]>
+<!--end of bibliographyinfo.module-->]]>
+
+<!ENTITY % chapterinfo.module "INCLUDE">
+<![ %chapterinfo.module; [
+<!ENTITY % local.chapterinfo.attrib "">
+<!ENTITY % chapterinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % chapterinfo.element "INCLUDE">
+<![ %chapterinfo.element; [
+<!--doc:Meta-information for a Chapter.-->
+<!ELEMENT chapterinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of chapterinfo.element-->]]>
+
+<!ENTITY % chapterinfo.attlist "INCLUDE">
+<![ %chapterinfo.attlist; [
+<!ATTLIST chapterinfo
+ %common.attrib;
+ %chapterinfo.role.attrib;
+ %local.chapterinfo.attrib;
+>
+<!--end of chapterinfo.attlist-->]]>
+<!--end of chapterinfo.module-->]]>
+
+<!ENTITY % glossaryinfo.module "INCLUDE">
+<![ %glossaryinfo.module; [
+<!ENTITY % local.glossaryinfo.attrib "">
+<!ENTITY % glossaryinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % glossaryinfo.element "INCLUDE">
+<![ %glossaryinfo.element; [
+<!--doc:Meta-information for a Glossary.-->
+<!ELEMENT glossaryinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of glossaryinfo.element-->]]>
+
+<!ENTITY % glossaryinfo.attlist "INCLUDE">
+<![ %glossaryinfo.attlist; [
+<!ATTLIST glossaryinfo
+ %common.attrib;
+ %glossaryinfo.role.attrib;
+ %local.glossaryinfo.attrib;
+>
+<!--end of glossaryinfo.attlist-->]]>
+<!--end of glossaryinfo.module-->]]>
+
+<!ENTITY % indexinfo.module "INCLUDE">
+<![ %indexinfo.module; [
+<!ENTITY % local.indexinfo.attrib "">
+<!ENTITY % indexinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % indexinfo.element "INCLUDE">
+<![ %indexinfo.element; [
+<!--doc:Meta-information for an Index.-->
+<!ELEMENT indexinfo %ho; ((%info.class;)+)>
+<!--end of indexinfo.element-->]]>
+
+<!ENTITY % indexinfo.attlist "INCLUDE">
+<![ %indexinfo.attlist; [
+<!ATTLIST indexinfo
+ %common.attrib;
+ %indexinfo.role.attrib;
+ %local.indexinfo.attrib;
+>
+<!--end of indexinfo.attlist-->]]>
+<!--end of indexinfo.module-->]]>
+
+<!ENTITY % setindexinfo.module "INCLUDE">
+<![ %setindexinfo.module; [
+<!ENTITY % local.setindexinfo.attrib "">
+<!ENTITY % setindexinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % setindexinfo.element "INCLUDE">
+<![ %setindexinfo.element; [
+<!--doc:Meta-information for a SetIndex.-->
+<!ELEMENT setindexinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of setindexinfo.element-->]]>
+
+<!ENTITY % setindexinfo.attlist "INCLUDE">
+<![ %setindexinfo.attlist; [
+<!ATTLIST setindexinfo
+ %common.attrib;
+ %setindexinfo.role.attrib;
+ %local.setindexinfo.attrib;
+>
+<!--end of setindexinfo.attlist-->]]>
+<!--end of setindexinfo.module-->]]>
+
+<!ENTITY % partinfo.module "INCLUDE">
+<![ %partinfo.module; [
+<!ENTITY % local.partinfo.attrib "">
+<!ENTITY % partinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % partinfo.element "INCLUDE">
+<![ %partinfo.element; [
+<!--doc:Meta-information for a Part.-->
+<!ELEMENT partinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of partinfo.element-->]]>
+
+<!ENTITY % partinfo.attlist "INCLUDE">
+<![ %partinfo.attlist; [
+<!ATTLIST partinfo
+ %common.attrib;
+ %partinfo.role.attrib;
+ %local.partinfo.attrib;
+>
+<!--end of partinfo.attlist-->]]>
+<!--end of partinfo.module-->]]>
+
+<!ENTITY % prefaceinfo.module "INCLUDE">
+<![ %prefaceinfo.module; [
+<!ENTITY % local.prefaceinfo.attrib "">
+<!ENTITY % prefaceinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % prefaceinfo.element "INCLUDE">
+<![ %prefaceinfo.element; [
+<!--doc:Meta-information for a Preface.-->
+<!ELEMENT prefaceinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of prefaceinfo.element-->]]>
+
+<!ENTITY % prefaceinfo.attlist "INCLUDE">
+<![ %prefaceinfo.attlist; [
+<!ATTLIST prefaceinfo
+ %common.attrib;
+ %prefaceinfo.role.attrib;
+ %local.prefaceinfo.attrib;
+>
+<!--end of prefaceinfo.attlist-->]]>
+<!--end of prefaceinfo.module-->]]>
+
+<!ENTITY % refentryinfo.module "INCLUDE">
+<![ %refentryinfo.module; [
+<!ENTITY % local.refentryinfo.attrib "">
+<!ENTITY % refentryinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % refentryinfo.element "INCLUDE">
+<![ %refentryinfo.element; [
+<!--doc:Meta-information for a Refentry.-->
+<!ELEMENT refentryinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of refentryinfo.element-->]]>
+
+<!ENTITY % refentryinfo.attlist "INCLUDE">
+<![ %refentryinfo.attlist; [
+<!ATTLIST refentryinfo
+ %common.attrib;
+ %refentryinfo.role.attrib;
+ %local.refentryinfo.attrib;
+>
+<!--end of refentryinfo.attlist-->]]>
+<!--end of refentryinfo.module-->]]>
+
+<!ENTITY % refsectioninfo.module "INCLUDE">
+<![ %refsectioninfo.module; [
+<!ENTITY % local.refsectioninfo.attrib "">
+<!ENTITY % refsectioninfo.role.attrib "%role.attrib;">
+
+<!ENTITY % refsectioninfo.element "INCLUDE">
+<![ %refsectioninfo.element; [
+<!--doc:Meta-information for a refsection.-->
+<!ELEMENT refsectioninfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of refsectioninfo.element-->]]>
+
+<!ENTITY % refsectioninfo.attlist "INCLUDE">
+<![ %refsectioninfo.attlist; [
+<!ATTLIST refsectioninfo
+ %common.attrib;
+ %refsectioninfo.role.attrib;
+ %local.refsectioninfo.attrib;
+>
+<!--end of refsectioninfo.attlist-->]]>
+<!--end of refsectioninfo.module-->]]>
+
+<!ENTITY % refsect1info.module "INCLUDE">
+<![ %refsect1info.module; [
+<!ENTITY % local.refsect1info.attrib "">
+<!ENTITY % refsect1info.role.attrib "%role.attrib;">
+
+<!ENTITY % refsect1info.element "INCLUDE">
+<![ %refsect1info.element; [
+<!--doc:Meta-information for a RefSect1.-->
+<!ELEMENT refsect1info %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of refsect1info.element-->]]>
+
+<!ENTITY % refsect1info.attlist "INCLUDE">
+<![ %refsect1info.attlist; [
+<!ATTLIST refsect1info
+ %common.attrib;
+ %refsect1info.role.attrib;
+ %local.refsect1info.attrib;
+>
+<!--end of refsect1info.attlist-->]]>
+<!--end of refsect1info.module-->]]>
+
+<!ENTITY % refsect2info.module "INCLUDE">
+<![ %refsect2info.module; [
+<!ENTITY % local.refsect2info.attrib "">
+<!ENTITY % refsect2info.role.attrib "%role.attrib;">
+
+<!ENTITY % refsect2info.element "INCLUDE">
+<![ %refsect2info.element; [
+<!--doc:Meta-information for a RefSect2.-->
+<!ELEMENT refsect2info %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of refsect2info.element-->]]>
+
+<!ENTITY % refsect2info.attlist "INCLUDE">
+<![ %refsect2info.attlist; [
+<!ATTLIST refsect2info
+ %common.attrib;
+ %refsect2info.role.attrib;
+ %local.refsect2info.attrib;
+>
+<!--end of refsect2info.attlist-->]]>
+<!--end of refsect2info.module-->]]>
+
+<!ENTITY % refsect3info.module "INCLUDE">
+<![ %refsect3info.module; [
+<!ENTITY % local.refsect3info.attrib "">
+<!ENTITY % refsect3info.role.attrib "%role.attrib;">
+
+<!ENTITY % refsect3info.element "INCLUDE">
+<![ %refsect3info.element; [
+<!--doc:Meta-information for a RefSect3.-->
+<!ELEMENT refsect3info %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of refsect3info.element-->]]>
+
+<!ENTITY % refsect3info.attlist "INCLUDE">
+<![ %refsect3info.attlist; [
+<!ATTLIST refsect3info
+ %common.attrib;
+ %refsect3info.role.attrib;
+ %local.refsect3info.attrib;
+>
+<!--end of refsect3info.attlist-->]]>
+<!--end of refsect3info.module-->]]>
+
+<!ENTITY % refsynopsisdivinfo.module "INCLUDE">
+<![ %refsynopsisdivinfo.module; [
+<!ENTITY % local.refsynopsisdivinfo.attrib "">
+<!ENTITY % refsynopsisdivinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % refsynopsisdivinfo.element "INCLUDE">
+<![ %refsynopsisdivinfo.element; [
+<!--doc:Meta-information for a RefSynopsisDiv.-->
+<!ELEMENT refsynopsisdivinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of refsynopsisdivinfo.element-->]]>
+
+<!ENTITY % refsynopsisdivinfo.attlist "INCLUDE">
+<![ %refsynopsisdivinfo.attlist; [
+<!ATTLIST refsynopsisdivinfo
+ %common.attrib;
+ %refsynopsisdivinfo.role.attrib;
+ %local.refsynopsisdivinfo.attrib;
+>
+<!--end of refsynopsisdivinfo.attlist-->]]>
+<!--end of refsynopsisdivinfo.module-->]]>
+
+<!ENTITY % referenceinfo.module "INCLUDE">
+<![ %referenceinfo.module; [
+<!ENTITY % local.referenceinfo.attrib "">
+<!ENTITY % referenceinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % referenceinfo.element "INCLUDE">
+<![ %referenceinfo.element; [
+<!--doc:Meta-information for a Reference.-->
+<!ELEMENT referenceinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of referenceinfo.element-->]]>
+
+<!ENTITY % referenceinfo.attlist "INCLUDE">
+<![ %referenceinfo.attlist; [
+<!ATTLIST referenceinfo
+ %common.attrib;
+ %referenceinfo.role.attrib;
+ %local.referenceinfo.attrib;
+>
+<!--end of referenceinfo.attlist-->]]>
+<!--end of referenceinfo.module-->]]>
+
+<!ENTITY % local.sect1info.attrib "">
+<!ENTITY % sect1info.role.attrib "%role.attrib;">
+
+<!ENTITY % sect1info.element "INCLUDE">
+<![%sect1info.element;[
+<!--doc:Meta-information for a Sect1.-->
+<!ELEMENT sect1info %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of sect1info.element-->]]>
+
+<!ENTITY % sect1info.attlist "INCLUDE">
+<![%sect1info.attlist;[
+<!ATTLIST sect1info
+ %common.attrib;
+ %sect1info.role.attrib;
+ %local.sect1info.attrib;
+>
+<!--end of sect1info.attlist-->]]>
+
+<!ENTITY % local.sect2info.attrib "">
+<!ENTITY % sect2info.role.attrib "%role.attrib;">
+
+<!ENTITY % sect2info.element "INCLUDE">
+<![%sect2info.element;[
+<!--doc:Meta-information for a Sect2.-->
+<!ELEMENT sect2info %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of sect2info.element-->]]>
+
+<!ENTITY % sect2info.attlist "INCLUDE">
+<![%sect2info.attlist;[
+<!ATTLIST sect2info
+ %common.attrib;
+ %sect2info.role.attrib;
+ %local.sect2info.attrib;
+>
+<!--end of sect2info.attlist-->]]>
+
+<!ENTITY % local.sect3info.attrib "">
+<!ENTITY % sect3info.role.attrib "%role.attrib;">
+
+<!ENTITY % sect3info.element "INCLUDE">
+<![%sect3info.element;[
+<!--doc:Meta-information for a Sect3.-->
+<!ELEMENT sect3info %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of sect3info.element-->]]>
+
+<!ENTITY % sect3info.attlist "INCLUDE">
+<![%sect3info.attlist;[
+<!ATTLIST sect3info
+ %common.attrib;
+ %sect3info.role.attrib;
+ %local.sect3info.attrib;
+>
+<!--end of sect3info.attlist-->]]>
+
+<!ENTITY % local.sect4info.attrib "">
+<!ENTITY % sect4info.role.attrib "%role.attrib;">
+
+<!ENTITY % sect4info.element "INCLUDE">
+<![%sect4info.element;[
+<!--doc:Meta-information for a Sect4.-->
+<!ELEMENT sect4info %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of sect4info.element-->]]>
+
+<!ENTITY % sect4info.attlist "INCLUDE">
+<![%sect4info.attlist;[
+<!ATTLIST sect4info
+ %common.attrib;
+ %sect4info.role.attrib;
+ %local.sect4info.attrib;
+>
+<!--end of sect4info.attlist-->]]>
+
+<!ENTITY % local.sect5info.attrib "">
+<!ENTITY % sect5info.role.attrib "%role.attrib;">
+
+<!ENTITY % sect5info.element "INCLUDE">
+<![%sect5info.element;[
+<!--doc:Meta-information for a Sect5.-->
+<!ELEMENT sect5info %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of sect5info.element-->]]>
+
+<!ENTITY % sect5info.attlist "INCLUDE">
+<![%sect5info.attlist;[
+<!ATTLIST sect5info
+ %common.attrib;
+ %sect5info.role.attrib;
+ %local.sect5info.attrib;
+>
+<!--end of sect5info.attlist-->]]>
+
+<!-- ...................................................................... -->
+<!-- Section (parallel to Sect*) ......................................... -->
+
+<!ENTITY % section.content.module "INCLUDE">
+<![ %section.content.module; [
+<!ENTITY % section.module "INCLUDE">
+<![ %section.module; [
+<!ENTITY % local.section.attrib "">
+<!ENTITY % section.role.attrib "%role.attrib;">
+
+<!ENTITY % section.element "INCLUDE">
+<![ %section.element; [
+<!--doc:A recursive section.-->
+<!ELEMENT section %ho; (sectioninfo?,
+ (%sect.title.content;),
+ (%nav.class;)*,
+ (((%divcomponent.mix;)+,
+ ((%refentry.class;)*|(%section.class;)*|simplesect*))
+ | (%refentry.class;)+|(%section.class;)+|simplesect+),
+ (%nav.class;)*)
+ %ubiq.inclusion;>
+<!--end of section.element-->]]>
+
+<!ENTITY % section.attlist "INCLUDE">
+<![ %section.attlist; [
+<!ATTLIST section
+ %label.attrib;
+ %status.attrib;
+ %common.attrib;
+ %section.role.attrib;
+ %local.section.attrib;
+>
+<!--end of section.attlist-->]]>
+<!--end of section.module-->]]>
+
+<!ENTITY % sectioninfo.module "INCLUDE">
+<![ %sectioninfo.module; [
+<!ENTITY % sectioninfo.role.attrib "%role.attrib;">
+<!ENTITY % local.sectioninfo.attrib "">
+
+<!ENTITY % sectioninfo.element "INCLUDE">
+<![ %sectioninfo.element; [
+<!--doc:Meta-information for a recursive section.-->
+<!ELEMENT sectioninfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of sectioninfo.element-->]]>
+
+<!ENTITY % sectioninfo.attlist "INCLUDE">
+<![ %sectioninfo.attlist; [
+<!ATTLIST sectioninfo
+ %common.attrib;
+ %sectioninfo.role.attrib;
+ %local.sectioninfo.attrib;
+>
+<!--end of sectioninfo.attlist-->]]>
+<!--end of sectioninfo.module-->]]>
+<!--end of section.content.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Sect1, Sect2, Sect3, Sect4, Sect5 .................................... -->
+
+<!ENTITY % sect1.module "INCLUDE">
+<![%sect1.module;[
+<!ENTITY % local.sect1.attrib "">
+<!ENTITY % sect1.role.attrib "%role.attrib;">
+
+<!ENTITY % sect1.element "INCLUDE">
+<![%sect1.element;[
+<!--doc:A top-level section of document.-->
+<!ELEMENT sect1 %ho; (sect1info?, (%sect.title.content;), (%nav.class;)*,
+ (((%divcomponent.mix;)+,
+ ((%refentry.class;)* | sect2* | simplesect*))
+ | (%refentry.class;)+ | sect2+ | simplesect+), (%nav.class;)*)
+ %ubiq.inclusion;>
+<!--end of sect1.element-->]]>
+
+<!-- Renderas: Indicates the format in which the heading should
+ appear -->
+
+
+<!ENTITY % sect1.attlist "INCLUDE">
+<![%sect1.attlist;[
+<!ATTLIST sect1
+ renderas (sect2
+ |sect3
+ |sect4
+ |sect5) #IMPLIED
+ %label.attrib;
+ %status.attrib;
+ %common.attrib;
+ %sect1.role.attrib;
+ %local.sect1.attrib;
+>
+<!--end of sect1.attlist-->]]>
+<!--end of sect1.module-->]]>
+
+<!ENTITY % sect2.module "INCLUDE">
+<![%sect2.module;[
+<!ENTITY % local.sect2.attrib "">
+<!ENTITY % sect2.role.attrib "%role.attrib;">
+
+<!ENTITY % sect2.element "INCLUDE">
+<![%sect2.element;[
+<!--doc:A subsection within a Sect1.-->
+<!ELEMENT sect2 %ho; (sect2info?, (%sect.title.content;), (%nav.class;)*,
+ (((%divcomponent.mix;)+,
+ ((%refentry.class;)* | sect3* | simplesect*))
+ | (%refentry.class;)+ | sect3+ | simplesect+), (%nav.class;)*)>
+<!--end of sect2.element-->]]>
+
+<!-- Renderas: Indicates the format in which the heading should
+ appear -->
+
+
+<!ENTITY % sect2.attlist "INCLUDE">
+<![%sect2.attlist;[
+<!ATTLIST sect2
+ renderas (sect1
+ |sect3
+ |sect4
+ |sect5) #IMPLIED
+ %label.attrib;
+ %status.attrib;
+ %common.attrib;
+ %sect2.role.attrib;
+ %local.sect2.attrib;
+>
+<!--end of sect2.attlist-->]]>
+<!--end of sect2.module-->]]>
+
+<!ENTITY % sect3.module "INCLUDE">
+<![%sect3.module;[
+<!ENTITY % local.sect3.attrib "">
+<!ENTITY % sect3.role.attrib "%role.attrib;">
+
+<!ENTITY % sect3.element "INCLUDE">
+<![%sect3.element;[
+<!--doc:A subsection within a Sect2.-->
+<!ELEMENT sect3 %ho; (sect3info?, (%sect.title.content;), (%nav.class;)*,
+ (((%divcomponent.mix;)+,
+ ((%refentry.class;)* | sect4* | simplesect*))
+ | (%refentry.class;)+ | sect4+ | simplesect+), (%nav.class;)*)>
+<!--end of sect3.element-->]]>
+
+<!-- Renderas: Indicates the format in which the heading should
+ appear -->
+
+
+<!ENTITY % sect3.attlist "INCLUDE">
+<![%sect3.attlist;[
+<!ATTLIST sect3
+ renderas (sect1
+ |sect2
+ |sect4
+ |sect5) #IMPLIED
+ %label.attrib;
+ %status.attrib;
+ %common.attrib;
+ %sect3.role.attrib;
+ %local.sect3.attrib;
+>
+<!--end of sect3.attlist-->]]>
+<!--end of sect3.module-->]]>
+
+<!ENTITY % sect4.module "INCLUDE">
+<![%sect4.module;[
+<!ENTITY % local.sect4.attrib "">
+<!ENTITY % sect4.role.attrib "%role.attrib;">
+
+<!ENTITY % sect4.element "INCLUDE">
+<![%sect4.element;[
+<!--doc:A subsection within a Sect3.-->
+<!ELEMENT sect4 %ho; (sect4info?, (%sect.title.content;), (%nav.class;)*,
+ (((%divcomponent.mix;)+,
+ ((%refentry.class;)* | sect5* | simplesect*))
+ | (%refentry.class;)+ | sect5+ | simplesect+), (%nav.class;)*)>
+<!--end of sect4.element-->]]>
+
+<!-- Renderas: Indicates the format in which the heading should
+ appear -->
+
+
+<!ENTITY % sect4.attlist "INCLUDE">
+<![%sect4.attlist;[
+<!ATTLIST sect4
+ renderas (sect1
+ |sect2
+ |sect3
+ |sect5) #IMPLIED
+ %label.attrib;
+ %status.attrib;
+ %common.attrib;
+ %sect4.role.attrib;
+ %local.sect4.attrib;
+>
+<!--end of sect4.attlist-->]]>
+<!--end of sect4.module-->]]>
+
+<!ENTITY % sect5.module "INCLUDE">
+<![%sect5.module;[
+<!ENTITY % local.sect5.attrib "">
+<!ENTITY % sect5.role.attrib "%role.attrib;">
+
+<!ENTITY % sect5.element "INCLUDE">
+<![%sect5.element;[
+<!--doc:A subsection within a Sect4.-->
+<!ELEMENT sect5 %ho; (sect5info?, (%sect.title.content;), (%nav.class;)*,
+ (((%divcomponent.mix;)+, ((%refentry.class;)* | simplesect*))
+ | (%refentry.class;)+ | simplesect+), (%nav.class;)*)>
+<!--end of sect5.element-->]]>
+
+<!-- Renderas: Indicates the format in which the heading should
+ appear -->
+
+
+<!ENTITY % sect5.attlist "INCLUDE">
+<![%sect5.attlist;[
+<!ATTLIST sect5
+ renderas (sect1
+ |sect2
+ |sect3
+ |sect4) #IMPLIED
+ %label.attrib;
+ %status.attrib;
+ %common.attrib;
+ %sect5.role.attrib;
+ %local.sect5.attrib;
+>
+<!--end of sect5.attlist-->]]>
+<!--end of sect5.module-->]]>
+
+<!ENTITY % simplesect.module "INCLUDE">
+<![%simplesect.module;[
+<!ENTITY % local.simplesect.attrib "">
+<!ENTITY % simplesect.role.attrib "%role.attrib;">
+
+<!ENTITY % simplesect.element "INCLUDE">
+<![%simplesect.element;[
+<!--doc:A section of a document with no subdivisions.-->
+<!ELEMENT simplesect %ho; ((%sect.title.content;), (%divcomponent.mix;)+)
+ %ubiq.inclusion;>
+<!--end of simplesect.element-->]]>
+
+<!ENTITY % simplesect.attlist "INCLUDE">
+<![%simplesect.attlist;[
+<!ATTLIST simplesect
+ %common.attrib;
+ %simplesect.role.attrib;
+ %local.simplesect.attrib;
+>
+<!--end of simplesect.attlist-->]]>
+<!--end of simplesect.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Bibliography ......................................................... -->
+
+<!ENTITY % bibliography.content.module "INCLUDE">
+<![%bibliography.content.module;[
+<!ENTITY % bibliography.module "INCLUDE">
+<![%bibliography.module;[
+<!ENTITY % local.bibliography.attrib "">
+<!ENTITY % bibliography.role.attrib "%role.attrib;">
+
+<!ENTITY % bibliography.element "INCLUDE">
+<![%bibliography.element;[
+<!--doc:A bibliography.-->
+<!ELEMENT bibliography %ho; (bibliographyinfo?,
+ (%bookcomponent.title.content;)?,
+ (%component.mix;)*,
+ (bibliodiv+ | (biblioentry|bibliomixed)+))>
+<!--end of bibliography.element-->]]>
+
+<!ENTITY % bibliography.attlist "INCLUDE">
+<![%bibliography.attlist;[
+<!ATTLIST bibliography
+ %status.attrib;
+ %common.attrib;
+ %bibliography.role.attrib;
+ %local.bibliography.attrib;
+>
+<!--end of bibliography.attlist-->]]>
+<!--end of bibliography.module-->]]>
+
+<!ENTITY % bibliodiv.module "INCLUDE">
+<![%bibliodiv.module;[
+<!ENTITY % local.bibliodiv.attrib "">
+<!ENTITY % bibliodiv.role.attrib "%role.attrib;">
+
+<!ENTITY % bibliodiv.element "INCLUDE">
+<![%bibliodiv.element;[
+<!--doc:A section of a Bibliography.-->
+<!ELEMENT bibliodiv %ho; ((%sect.title.content;)?, (%component.mix;)*,
+ (biblioentry|bibliomixed)+)>
+<!--end of bibliodiv.element-->]]>
+
+<!ENTITY % bibliodiv.attlist "INCLUDE">
+<![%bibliodiv.attlist;[
+<!ATTLIST bibliodiv
+ %status.attrib;
+ %common.attrib;
+ %bibliodiv.role.attrib;
+ %local.bibliodiv.attrib;
+>
+<!--end of bibliodiv.attlist-->]]>
+<!--end of bibliodiv.module-->]]>
+<!--end of bibliography.content.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Glossary ............................................................. -->
+
+<!ENTITY % glossary.content.module "INCLUDE">
+<![%glossary.content.module;[
+<!ENTITY % glossary.module "INCLUDE">
+<![%glossary.module;[
+<!ENTITY % local.glossary.attrib "">
+<!ENTITY % glossary.role.attrib "%role.attrib;">
+
+<!ENTITY % glossary.element "INCLUDE">
+<![%glossary.element;[
+<!--doc:A glossary.-->
+<!ELEMENT glossary %ho; (glossaryinfo?,
+ (%bookcomponent.title.content;)?,
+ (%component.mix;)*,
+ (glossdiv+ | glossentry+), bibliography?)>
+<!--end of glossary.element-->]]>
+
+<!ENTITY % glossary.attlist "INCLUDE">
+<![%glossary.attlist;[
+<!ATTLIST glossary
+ %status.attrib;
+ %common.attrib;
+ %glossary.role.attrib;
+ %local.glossary.attrib;
+>
+<!--end of glossary.attlist-->]]>
+<!--end of glossary.module-->]]>
+
+<!ENTITY % glossdiv.module "INCLUDE">
+<![%glossdiv.module;[
+<!ENTITY % local.glossdiv.attrib "">
+<!ENTITY % glossdiv.role.attrib "%role.attrib;">
+
+<!ENTITY % glossdiv.element "INCLUDE">
+<![%glossdiv.element;[
+<!--doc:A division in a Glossary.-->
+<!ELEMENT glossdiv %ho; ((%sect.title.content;), (%component.mix;)*,
+ glossentry+)>
+<!--end of glossdiv.element-->]]>
+
+<!ENTITY % glossdiv.attlist "INCLUDE">
+<![%glossdiv.attlist;[
+<!ATTLIST glossdiv
+ %status.attrib;
+ %common.attrib;
+ %glossdiv.role.attrib;
+ %local.glossdiv.attrib;
+>
+<!--end of glossdiv.attlist-->]]>
+<!--end of glossdiv.module-->]]>
+<!--end of glossary.content.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Index and SetIndex ................................................... -->
+
+<!ENTITY % index.content.module "INCLUDE">
+<![%index.content.module;[
+<!ENTITY % indexes.module "INCLUDE">
+<![%indexes.module;[
+<!ENTITY % local.indexes.attrib "">
+<!ENTITY % indexes.role.attrib "%role.attrib;">
+
+<!ENTITY % index.element "INCLUDE">
+<![%index.element;[
+<!--doc:An index.-->
+<!ELEMENT index %ho; (indexinfo?,
+ (%bookcomponent.title.content;)?,
+ (%component.mix;)*,
+ (indexdiv* | indexentry*))
+ %ndxterm.exclusion;>
+<!--end of index.element-->]]>
+
+<!ENTITY % index.attlist "INCLUDE">
+<![%index.attlist;[
+<!ATTLIST index
+ type CDATA #IMPLIED
+ %common.attrib;
+ %indexes.role.attrib;
+ %local.indexes.attrib;
+>
+<!--end of index.attlist-->]]>
+
+<!ENTITY % setindex.element "INCLUDE">
+<![%setindex.element;[
+<!--doc:An index to a set of books.-->
+<!ELEMENT setindex %ho; (setindexinfo?,
+ (%bookcomponent.title.content;)?,
+ (%component.mix;)*,
+ (indexdiv* | indexentry*))
+ %ndxterm.exclusion;>
+<!--end of setindex.element-->]]>
+
+<!ENTITY % setindex.attlist "INCLUDE">
+<![%setindex.attlist;[
+<!ATTLIST setindex
+ %common.attrib;
+ %indexes.role.attrib;
+ %local.indexes.attrib;
+>
+<!--end of setindex.attlist-->]]>
+<!--end of indexes.module-->]]>
+
+<!ENTITY % indexdiv.module "INCLUDE">
+<![%indexdiv.module;[
+
+<!-- SegmentedList in this content is useful for marking up permuted
+ indices. -->
+
+<!ENTITY % local.indexdiv.attrib "">
+<!ENTITY % indexdiv.role.attrib "%role.attrib;">
+
+<!ENTITY % indexdiv.element "INCLUDE">
+<![%indexdiv.element;[
+<!--doc:A division in an index.-->
+<!ELEMENT indexdiv %ho; ((%sect.title.content;)?, ((%indexdivcomponent.mix;)*,
+ (indexentry+ | segmentedlist)))>
+<!--end of indexdiv.element-->]]>
+
+<!ENTITY % indexdiv.attlist "INCLUDE">
+<![%indexdiv.attlist;[
+<!ATTLIST indexdiv
+ %common.attrib;
+ %indexdiv.role.attrib;
+ %local.indexdiv.attrib;
+>
+<!--end of indexdiv.attlist-->]]>
+<!--end of indexdiv.module-->]]>
+
+<!ENTITY % indexentry.module "INCLUDE">
+<![%indexentry.module;[
+<!-- Index entries appear in the index, not the text. -->
+
+<!ENTITY % local.indexentry.attrib "">
+<!ENTITY % indexentry.role.attrib "%role.attrib;">
+
+<!ENTITY % indexentry.element "INCLUDE">
+<![%indexentry.element;[
+<!--doc:An entry in an index.-->
+<!ELEMENT indexentry %ho; (primaryie, (seeie|seealsoie)*,
+ (secondaryie, (seeie|seealsoie|tertiaryie)*)*)>
+<!--end of indexentry.element-->]]>
+
+<!ENTITY % indexentry.attlist "INCLUDE">
+<![%indexentry.attlist;[
+<!ATTLIST indexentry
+ %common.attrib;
+ %indexentry.role.attrib;
+ %local.indexentry.attrib;
+>
+<!--end of indexentry.attlist-->]]>
+<!--end of indexentry.module-->]]>
+
+<!ENTITY % primsecterie.module "INCLUDE">
+<![%primsecterie.module;[
+<!ENTITY % local.primsecterie.attrib "">
+<!ENTITY % primsecterie.role.attrib "%role.attrib;">
+
+<!ENTITY % primaryie.element "INCLUDE">
+<![%primaryie.element;[
+<!--doc:A primary term in an index entry, not in the text.-->
+<!ELEMENT primaryie %ho; (%ndxterm.char.mix;)*>
+<!--end of primaryie.element-->]]>
+
+<!-- to IndexTerms that these entries represent -->
+
+<!ENTITY % primaryie.attlist "INCLUDE">
+<![%primaryie.attlist;[
+<!ATTLIST primaryie
+ %linkends.attrib; %common.attrib;
+ %primsecterie.role.attrib;
+ %local.primsecterie.attrib;
+>
+<!--end of primaryie.attlist-->]]>
+
+<!ENTITY % secondaryie.element "INCLUDE">
+<![%secondaryie.element;[
+<!--doc:A secondary term in an index entry, rather than in the text.-->
+<!ELEMENT secondaryie %ho; (%ndxterm.char.mix;)*>
+<!--end of secondaryie.element-->]]>
+
+<!-- to IndexTerms that these entries represent -->
+
+<!ENTITY % secondaryie.attlist "INCLUDE">
+<![%secondaryie.attlist;[
+<!ATTLIST secondaryie
+ %linkends.attrib; %common.attrib;
+ %primsecterie.role.attrib;
+ %local.primsecterie.attrib;
+>
+<!--end of secondaryie.attlist-->]]>
+
+<!ENTITY % tertiaryie.element "INCLUDE">
+<![%tertiaryie.element;[
+<!--doc:A tertiary term in an index entry, rather than in the text.-->
+<!ELEMENT tertiaryie %ho; (%ndxterm.char.mix;)*>
+<!--end of tertiaryie.element-->]]>
+
+<!-- to IndexTerms that these entries represent -->
+
+<!ENTITY % tertiaryie.attlist "INCLUDE">
+<![%tertiaryie.attlist;[
+<!ATTLIST tertiaryie
+ %linkends.attrib; %common.attrib;
+ %primsecterie.role.attrib;
+ %local.primsecterie.attrib;
+>
+<!--end of tertiaryie.attlist-->]]>
+
+<!--end of primsecterie.module-->]]>
+
+<!ENTITY % seeie.module "INCLUDE">
+<![%seeie.module;[
+<!ENTITY % local.seeie.attrib "">
+<!ENTITY % seeie.role.attrib "%role.attrib;">
+
+<!ENTITY % seeie.element "INCLUDE">
+<![%seeie.element;[
+<!--doc:A See entry in an index, rather than in the text.-->
+<!ELEMENT seeie %ho; (%ndxterm.char.mix;)*>
+<!--end of seeie.element-->]]>
+
+<!-- to IndexEntry to look up -->
+
+
+<!ENTITY % seeie.attlist "INCLUDE">
+<![%seeie.attlist;[
+<!ATTLIST seeie
+ %linkend.attrib; %common.attrib;
+ %seeie.role.attrib;
+ %local.seeie.attrib;
+>
+<!--end of seeie.attlist-->]]>
+<!--end of seeie.module-->]]>
+
+<!ENTITY % seealsoie.module "INCLUDE">
+<![%seealsoie.module;[
+<!ENTITY % local.seealsoie.attrib "">
+<!ENTITY % seealsoie.role.attrib "%role.attrib;">
+
+<!ENTITY % seealsoie.element "INCLUDE">
+<![%seealsoie.element;[
+<!--doc:A See also entry in an index, rather than in the text.-->
+<!ELEMENT seealsoie %ho; (%ndxterm.char.mix;)*>
+<!--end of seealsoie.element-->]]>
+
+<!-- to related IndexEntries -->
+
+
+<!ENTITY % seealsoie.attlist "INCLUDE">
+<![%seealsoie.attlist;[
+<!ATTLIST seealsoie
+ %linkends.attrib; %common.attrib;
+ %seealsoie.role.attrib;
+ %local.seealsoie.attrib;
+>
+<!--end of seealsoie.attlist-->]]>
+<!--end of seealsoie.module-->]]>
+<!--end of index.content.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- RefEntry ............................................................. -->
+
+<!ENTITY % refentry.content.module "INCLUDE">
+<![%refentry.content.module;[
+<!ENTITY % refentry.module "INCLUDE">
+<![%refentry.module;[
+<!ENTITY % local.refentry.attrib "">
+<!ENTITY % refentry.role.attrib "%role.attrib;">
+
+<!ENTITY % refentry.element "INCLUDE">
+<![%refentry.element;[
+<!--doc:A reference page (originally a UNIX man-style reference page).-->
+<!ELEMENT refentry %ho; (beginpage?,
+ (%ndxterm.class;)*,
+ refentryinfo?, refmeta?, (remark|%link.char.class;)*,
+ refnamediv+, refsynopsisdiv?, (refsect1+|refsection+))
+ %ubiq.inclusion;>
+<!--end of refentry.element-->]]>
+
+<!ENTITY % refentry.attlist "INCLUDE">
+<![%refentry.attlist;[
+<!ATTLIST refentry
+ %status.attrib;
+ %common.attrib;
+ %refentry.role.attrib;
+ %local.refentry.attrib;
+>
+<!--end of refentry.attlist-->]]>
+<!--end of refentry.module-->]]>
+
+<!ENTITY % refmeta.module "INCLUDE">
+<![%refmeta.module;[
+<!ENTITY % local.refmeta.attrib "">
+<!ENTITY % refmeta.role.attrib "%role.attrib;">
+
+<!ENTITY % refmeta.element "INCLUDE">
+<![%refmeta.element;[
+<!--doc:Meta-information for a reference entry.-->
+<!ELEMENT refmeta %ho; ((%ndxterm.class;)*,
+ refentrytitle, manvolnum?, refmiscinfo*,
+ (%ndxterm.class;)*)
+ %beginpage.exclusion;>
+<!--end of refmeta.element-->]]>
+
+<!ENTITY % refmeta.attlist "INCLUDE">
+<![%refmeta.attlist;[
+<!ATTLIST refmeta
+ %common.attrib;
+ %refmeta.role.attrib;
+ %local.refmeta.attrib;
+>
+<!--end of refmeta.attlist-->]]>
+<!--end of refmeta.module-->]]>
+
+<!ENTITY % refmiscinfo.module "INCLUDE">
+<![%refmiscinfo.module;[
+<!ENTITY % local.refmiscinfo.attrib "">
+<!ENTITY % refmiscinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % refmiscinfo.element "INCLUDE">
+<![%refmiscinfo.element;[
+<!--doc:Meta-information for a reference entry other than the title and volume number.-->
+<!ELEMENT refmiscinfo %ho; (%docinfo.char.mix;)*>
+<!--end of refmiscinfo.element-->]]>
+
+<!-- Class: Freely assignable parameter; no default -->
+
+
+<!ENTITY % refmiscinfo.attlist "INCLUDE">
+<![%refmiscinfo.attlist;[
+<!ATTLIST refmiscinfo
+ class CDATA #IMPLIED
+ %common.attrib;
+ %refmiscinfo.role.attrib;
+ %local.refmiscinfo.attrib;
+>
+<!--end of refmiscinfo.attlist-->]]>
+<!--end of refmiscinfo.module-->]]>
+
+<!ENTITY % refnamediv.module "INCLUDE">
+<![%refnamediv.module;[
+<!ENTITY % local.refnamediv.attrib "">
+<!ENTITY % refnamediv.role.attrib "%role.attrib;">
+
+<!ENTITY % refnamediv.element "INCLUDE">
+<![%refnamediv.element;[
+<!--doc:The name, purpose, and classification of a reference page.-->
+<!ELEMENT refnamediv %ho; (refdescriptor?, refname+, refpurpose, refclass*,
+ (remark|%link.char.class;)*)>
+<!--end of refnamediv.element-->]]>
+
+<!ENTITY % refnamediv.attlist "INCLUDE">
+<![%refnamediv.attlist;[
+<!ATTLIST refnamediv
+ %common.attrib;
+ %refnamediv.role.attrib;
+ %local.refnamediv.attrib;
+>
+<!--end of refnamediv.attlist-->]]>
+<!--end of refnamediv.module-->]]>
+
+<!ENTITY % refdescriptor.module "INCLUDE">
+<![%refdescriptor.module;[
+<!ENTITY % local.refdescriptor.attrib "">
+<!ENTITY % refdescriptor.role.attrib "%role.attrib;">
+
+<!ENTITY % refdescriptor.element "INCLUDE">
+<![%refdescriptor.element;[
+<!--doc:A description of the topic of a reference page.-->
+<!ELEMENT refdescriptor %ho; (%refname.char.mix;)*>
+<!--end of refdescriptor.element-->]]>
+
+<!ENTITY % refdescriptor.attlist "INCLUDE">
+<![%refdescriptor.attlist;[
+<!ATTLIST refdescriptor
+ %common.attrib;
+ %refdescriptor.role.attrib;
+ %local.refdescriptor.attrib;
+>
+<!--end of refdescriptor.attlist-->]]>
+<!--end of refdescriptor.module-->]]>
+
+<!ENTITY % refname.module "INCLUDE">
+<![%refname.module;[
+<!ENTITY % local.refname.attrib "">
+<!ENTITY % refname.role.attrib "%role.attrib;">
+
+<!ENTITY % refname.element "INCLUDE">
+<![%refname.element;[
+<!--doc:The name of (one of) the subject(s) of a reference page.-->
+<!ELEMENT refname %ho; (%refname.char.mix;)*>
+<!--end of refname.element-->]]>
+
+<!ENTITY % refname.attlist "INCLUDE">
+<![%refname.attlist;[
+<!ATTLIST refname
+ %common.attrib;
+ %refname.role.attrib;
+ %local.refname.attrib;
+>
+<!--end of refname.attlist-->]]>
+<!--end of refname.module-->]]>
+
+<!ENTITY % refpurpose.module "INCLUDE">
+<![%refpurpose.module;[
+<!ENTITY % local.refpurpose.attrib "">
+<!ENTITY % refpurpose.role.attrib "%role.attrib;">
+
+<!ENTITY % refpurpose.element "INCLUDE">
+<![%refpurpose.element;[
+<!--doc:A short (one sentence) synopsis of the topic of a reference page.-->
+<!ELEMENT refpurpose %ho; (%refinline.char.mix;)*>
+<!--end of refpurpose.element-->]]>
+
+<!ENTITY % refpurpose.attlist "INCLUDE">
+<![%refpurpose.attlist;[
+<!ATTLIST refpurpose
+ %common.attrib;
+ %refpurpose.role.attrib;
+ %local.refpurpose.attrib;
+>
+<!--end of refpurpose.attlist-->]]>
+<!--end of refpurpose.module-->]]>
+
+<!ENTITY % refclass.module "INCLUDE">
+<![%refclass.module;[
+<!ENTITY % local.refclass.attrib "">
+<!ENTITY % refclass.role.attrib "%role.attrib;">
+
+<!ENTITY % refclass.element "INCLUDE">
+<![%refclass.element;[
+<!--doc:The scope or other indication of applicability of a reference entry.-->
+<!ELEMENT refclass %ho; (%refclass.char.mix;)*>
+<!--end of refclass.element-->]]>
+
+<!ENTITY % refclass.attlist "INCLUDE">
+<![%refclass.attlist;[
+<!ATTLIST refclass
+ %common.attrib;
+ %refclass.role.attrib;
+ %local.refclass.attrib;
+>
+<!--end of refclass.attlist-->]]>
+<!--end of refclass.module-->]]>
+
+<!ENTITY % refsynopsisdiv.module "INCLUDE">
+<![%refsynopsisdiv.module;[
+<!ENTITY % local.refsynopsisdiv.attrib "">
+<!ENTITY % refsynopsisdiv.role.attrib "%role.attrib;">
+
+<!ENTITY % refsynopsisdiv.element "INCLUDE">
+<![%refsynopsisdiv.element;[
+<!--doc:A syntactic synopsis of the subject of the reference page.-->
+<!ELEMENT refsynopsisdiv %ho; (refsynopsisdivinfo?, (%refsect.title.content;)?,
+ (((%refcomponent.mix;)+, refsect2*) | (refsect2+)))>
+<!--end of refsynopsisdiv.element-->]]>
+
+<!ENTITY % refsynopsisdiv.attlist "INCLUDE">
+<![%refsynopsisdiv.attlist;[
+<!ATTLIST refsynopsisdiv
+ %common.attrib;
+ %refsynopsisdiv.role.attrib;
+ %local.refsynopsisdiv.attrib;
+>
+<!--end of refsynopsisdiv.attlist-->]]>
+<!--end of refsynopsisdiv.module-->]]>
+
+<!ENTITY % refsection.module "INCLUDE">
+<![%refsection.module;[
+<!ENTITY % local.refsection.attrib "">
+<!ENTITY % refsection.role.attrib "%role.attrib;">
+
+<!ENTITY % refsection.element "INCLUDE">
+<![%refsection.element;[
+<!--doc:A recursive section in a refentry.-->
+<!ELEMENT refsection %ho; (refsectioninfo?, (%refsect.title.content;),
+ (((%refcomponent.mix;)+, refsection*) | refsection+))>
+<!--end of refsection.element-->]]>
+
+<!ENTITY % refsection.attlist "INCLUDE">
+<![%refsection.attlist;[
+<!ATTLIST refsection
+ %status.attrib;
+ %common.attrib;
+ %refsection.role.attrib;
+ %local.refsection.attrib;
+>
+<!--end of refsection.attlist-->]]>
+<!--end of refsection.module-->]]>
+
+<!ENTITY % refsect1.module "INCLUDE">
+<![%refsect1.module;[
+<!ENTITY % local.refsect1.attrib "">
+<!ENTITY % refsect1.role.attrib "%role.attrib;">
+
+<!ENTITY % refsect1.element "INCLUDE">
+<![%refsect1.element;[
+<!--doc:A major subsection of a reference entry.-->
+<!ELEMENT refsect1 %ho; (refsect1info?, (%refsect.title.content;),
+ (((%refcomponent.mix;)+, refsect2*) | refsect2+))>
+<!--end of refsect1.element-->]]>
+
+<!ENTITY % refsect1.attlist "INCLUDE">
+<![%refsect1.attlist;[
+<!ATTLIST refsect1
+ %status.attrib;
+ %common.attrib;
+ %refsect1.role.attrib;
+ %local.refsect1.attrib;
+>
+<!--end of refsect1.attlist-->]]>
+<!--end of refsect1.module-->]]>
+
+<!ENTITY % refsect2.module "INCLUDE">
+<![%refsect2.module;[
+<!ENTITY % local.refsect2.attrib "">
+<!ENTITY % refsect2.role.attrib "%role.attrib;">
+
+<!ENTITY % refsect2.element "INCLUDE">
+<![%refsect2.element;[
+<!--doc:A subsection of a RefSect1.-->
+<!ELEMENT refsect2 %ho; (refsect2info?, (%refsect.title.content;),
+ (((%refcomponent.mix;)+, refsect3*) | refsect3+))>
+<!--end of refsect2.element-->]]>
+
+<!ENTITY % refsect2.attlist "INCLUDE">
+<![%refsect2.attlist;[
+<!ATTLIST refsect2
+ %status.attrib;
+ %common.attrib;
+ %refsect2.role.attrib;
+ %local.refsect2.attrib;
+>
+<!--end of refsect2.attlist-->]]>
+<!--end of refsect2.module-->]]>
+
+<!ENTITY % refsect3.module "INCLUDE">
+<![%refsect3.module;[
+<!ENTITY % local.refsect3.attrib "">
+<!ENTITY % refsect3.role.attrib "%role.attrib;">
+
+<!ENTITY % refsect3.element "INCLUDE">
+<![%refsect3.element;[
+<!--doc:A subsection of a RefSect2.-->
+<!ELEMENT refsect3 %ho; (refsect3info?, (%refsect.title.content;),
+ (%refcomponent.mix;)+)>
+<!--end of refsect3.element-->]]>
+
+<!ENTITY % refsect3.attlist "INCLUDE">
+<![%refsect3.attlist;[
+<!ATTLIST refsect3
+ %status.attrib;
+ %common.attrib;
+ %refsect3.role.attrib;
+ %local.refsect3.attrib;
+>
+<!--end of refsect3.attlist-->]]>
+<!--end of refsect3.module-->]]>
+<!--end of refentry.content.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Article .............................................................. -->
+
+<!ENTITY % article.module "INCLUDE">
+<![%article.module;[
+<!-- An Article is a chapter-level, stand-alone document that is often,
+ but need not be, collected into a Book. -->
+
+<!ENTITY % local.article.attrib "">
+<!ENTITY % article.role.attrib "%role.attrib;">
+
+<!ENTITY % article.element "INCLUDE">
+<![%article.element;[
+<!--doc:An article.-->
+<!ELEMENT article %ho; ((%div.title.content;)?, articleinfo?, tocchap?, lot*,
+ (%bookcomponent.content;),
+ (%nav.class;|%appendix.class;|colophon|ackno)*)
+ %ubiq.inclusion;>
+<!--end of article.element-->]]>
+
+<!-- Class: Indicates the type of a particular article;
+ all articles have the same structure and general purpose.
+ No default. -->
+<!-- ParentBook: ID of the enclosing Book -->
+
+
+<!ENTITY % article.attlist "INCLUDE">
+<![%article.attlist;[
+<!ATTLIST article
+ class (journalarticle
+ |productsheet
+ |whitepaper
+ |techreport
+ |specification
+ |faq) #IMPLIED
+ parentbook IDREF #IMPLIED
+ %status.attrib;
+ %common.attrib;
+ %article.role.attrib;
+ %local.article.attrib;
+>
+<!--end of article.attlist-->]]>
+<!--end of article.module-->]]>
+
+<!-- End of DocBook document hierarchy module V4.5 ........................ -->
+<!-- ...................................................................... -->
diff --git a/doc/editor_configs/serna/scons/dtd/dbnotnx.mod b/doc/editor_configs/serna/scons/dtd/dbnotnx.mod
new file mode 100644
index 0000000..9f3b78e
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/dbnotnx.mod
@@ -0,0 +1,101 @@
+<!-- ...................................................................... -->
+<!-- DocBook notations module V4.5 ........................................ -->
+<!-- File dbnotnx.mod ..................................................... -->
+
+<!-- Copyright 1992-2004 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).
+
+ $Id: dbnotnx.mod,v 1.1 2009-03-30 14:59:35 sorin Exp $
+
+ Permission to use, copy, modify and distribute the DocBook DTD
+ 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 DTD for
+ any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook DTD in any way, except for declaring and
+ referencing additional sets of general entities and declaring
+ additional notations, label your DTD as a variant of DocBook. See
+ the maintenance documentation 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/.
+-->
+
+<!-- ...................................................................... -->
+
+<!-- This module contains the notation declarations used by DocBook.
+
+ In DTD driver files referring to this module, please use an entity
+ declaration that uses the public identifier shown below:
+
+ <!ENTITY % dbnotn PUBLIC
+ "-//OASIS//ENTITIES DocBook Notations V4.5//EN"
+ "dbnotnx.mod">
+ %dbnotn;
+
+ See the documentation for detailed information on the parameter
+ entity and module scheme used in DocBook, customizing DocBook and
+ planning for interchange, and changes made since the last release
+ of DocBook.
+-->
+
+<!ENTITY % local.notation.class "">
+<!ENTITY % notation.class
+ "BMP| CGM-CHAR | CGM-BINARY | CGM-CLEAR | DITROFF | DVI
+ | EPS | EQN | FAX | GIF | GIF87a | GIF89a
+ | JPG | JPEG | IGES | PCX
+ | PIC | PNG | PS | SGML | TBL | TEX | TIFF | WMF | WPG
+ | SVG | PDF | SWF
+ | linespecific
+ %local.notation.class;">
+
+<!NOTATION BMP PUBLIC
+"+//ISBN 0-7923-94.2-1::Graphic Notation//NOTATION Microsoft Windows bitmap//EN">
+<!NOTATION CGM-CHAR PUBLIC "ISO 8632/2//NOTATION Character encoding//EN">
+<!NOTATION CGM-BINARY PUBLIC "ISO 8632/3//NOTATION Binary encoding//EN">
+<!NOTATION CGM-CLEAR PUBLIC "ISO 8632/4//NOTATION Clear text encoding//EN">
+<!NOTATION DITROFF SYSTEM "DITROFF">
+<!NOTATION DVI SYSTEM "DVI">
+<!NOTATION EPS PUBLIC
+"+//ISBN 0-201-18127-4::Adobe//NOTATION PostScript Language Ref. Manual//EN">
+<!NOTATION EQN SYSTEM "EQN">
+<!NOTATION FAX PUBLIC
+"-//USA-DOD//NOTATION CCITT Group 4 Facsimile Type 1 Untiled Raster//EN">
+<!NOTATION GIF SYSTEM "GIF">
+<!NOTATION GIF87a PUBLIC
+"-//CompuServe//NOTATION Graphics Interchange Format 87a//EN">
+
+<!NOTATION GIF89a PUBLIC
+"-//CompuServe//NOTATION Graphics Interchange Format 89a//EN">
+<!NOTATION JPG SYSTEM "JPG">
+<!NOTATION JPEG SYSTEM "JPG">
+<!NOTATION IGES PUBLIC
+"-//USA-DOD//NOTATION (ASME/ANSI Y14.26M-1987) Initial Graphics Exchange Specification//EN">
+<!NOTATION PCX PUBLIC
+"+//ISBN 0-7923-94.2-1::Graphic Notation//NOTATION ZSoft PCX bitmap//EN">
+<!NOTATION PIC SYSTEM "PIC">
+<!NOTATION PNG SYSTEM "http://www.w3.org/TR/REC-png">
+<!NOTATION PS SYSTEM "PS">
+<!NOTATION SGML PUBLIC
+"ISO 8879:1986//NOTATION Standard Generalized Markup Language//EN">
+<!NOTATION TBL SYSTEM "TBL">
+<!NOTATION TEX PUBLIC
+"+//ISBN 0-201-13448-9::Knuth//NOTATION The TeXbook//EN">
+<!NOTATION TIFF SYSTEM "TIFF">
+<!NOTATION WMF PUBLIC
+"+//ISBN 0-7923-94.2-1::Graphic Notation//NOTATION Microsoft Windows Metafile//EN">
+<!NOTATION WPG SYSTEM "WPG"> <!--WordPerfect Graphic format-->
+<!NOTATION SVG SYSTEM "http://www.w3.org/TR/SVG/">
+<!NOTATION PDF SYSTEM "http://www.adobe.com/products/acrobat/adobepdf.html">
+<!NOTATION SWF SYSTEM "http://www.macromedia.com/software/flash">
+<!NOTATION linespecific SYSTEM "linespecific">
+
+<!-- End of DocBook notations module V4.5 ................................. -->
+<!-- ...................................................................... -->
diff --git a/doc/editor_configs/serna/scons/dtd/dbpoolx.mod b/doc/editor_configs/serna/scons/dtd/dbpoolx.mod
new file mode 100644
index 0000000..114771f
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/dbpoolx.mod
@@ -0,0 +1,8870 @@
+<!-- ...................................................................... -->
+<!-- DocBook XML information pool module V4.5 ............................. -->
+<!-- File dbpoolx.mod ..................................................... -->
+
+<!-- Copyright 1992-2004 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).
+
+ $Id: dbpoolx.mod,v 1.1 2009-03-30 14:59:35 sorin Exp $
+
+ Permission to use, copy, modify and distribute the DocBook XML DTD
+ 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 DTD for
+ any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook XML DTD in any way, except for declaring and
+ referencing additional sets of general entities and declaring
+ additional notations, label your DTD as a variant of DocBook. See
+ the maintenance documentation 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/.
+-->
+
+<!-- ...................................................................... -->
+
+<!-- This module contains the definitions for the objects, inline
+ elements, and so on that are available to be used as the main
+ content of DocBook documents. Some elements are useful for general
+ publishing, and others are useful specifically for computer
+ documentation.
+
+ This module has the following dependencies on other modules:
+
+ o It assumes that a %notation.class; entity is defined by the
+ driver file or other high-level module. This entity is
+ referenced in the NOTATION attributes for the graphic-related and
+ ModeSpec elements.
+
+ o It assumes that an appropriately parameterized table module is
+ available for use with the table-related elements.
+
+ In DTD driver files referring to this module, please use an entity
+ declaration that uses the public identifier shown below:
+
+ <!ENTITY % dbpool PUBLIC
+ "-//OASIS//ELEMENTS DocBook XML Information Pool V4.5//EN"
+ "dbpoolx.mod">
+ %dbpool;
+
+ See the documentation for detailed information on the parameter
+ entity and module scheme used in DocBook, customizing DocBook and
+ planning for interchange, and changes made since the last release
+ of DocBook.
+-->
+
+<!-- ...................................................................... -->
+<!-- Forms entities ....................................................... -->
+<!-- These PEs provide the hook by which the forms module can be inserted -->
+<!-- into the DTD. -->
+<!ENTITY % forminlines.hook "">
+<!ENTITY % forms.hook "">
+
+<!-- ...................................................................... -->
+<!-- General-purpose semantics entities ................................... -->
+
+<!ENTITY % yesorno.attvals "CDATA">
+
+<!-- ...................................................................... -->
+<!-- Entities for module inclusions ....................................... -->
+
+<!ENTITY % dbpool.redecl.module "IGNORE">
+
+<!-- ...................................................................... -->
+<!-- Entities for element classes and mixtures ............................ -->
+
+<!-- "Ubiquitous" classes: ndxterm.class and beginpage -->
+
+<!ENTITY % local.ndxterm.class "">
+<!ENTITY % ndxterm.class
+ "indexterm %local.ndxterm.class;">
+
+<!-- Object-level classes ................................................. -->
+
+<!ENTITY % local.list.class "">
+<!ENTITY % list.class
+ "calloutlist|glosslist|bibliolist|itemizedlist|orderedlist|segmentedlist
+ |simplelist|variablelist %local.list.class;">
+
+<!ENTITY % local.admon.class "">
+<!ENTITY % admon.class
+ "caution|important|note|tip|warning %local.admon.class;">
+
+<!ENTITY % local.linespecific.class "">
+<!ENTITY % linespecific.class
+ "literallayout|programlisting|programlistingco|screen
+ |screenco|screenshot %local.linespecific.class;">
+
+<!ENTITY % local.method.synop.class "">
+<!ENTITY % method.synop.class
+ "constructorsynopsis
+ |destructorsynopsis
+ |methodsynopsis %local.method.synop.class;">
+
+<!ENTITY % local.synop.class "">
+<!ENTITY % synop.class
+ "synopsis|cmdsynopsis|funcsynopsis
+ |classsynopsis|fieldsynopsis
+ |%method.synop.class; %local.synop.class;">
+
+<!ENTITY % local.para.class "">
+<!ENTITY % para.class
+ "formalpara|para|simpara
+ |sconstruct|scons_example
+ |scons_example_file|scons_output %local.para.class;">
+
+<!ENTITY % local.informal.class "">
+<!ENTITY % informal.class
+ "address|blockquote
+ |graphic|graphicco|mediaobject|mediaobjectco
+ |informalequation
+ |informalexample
+ |informalfigure
+ |informaltable %local.informal.class;">
+
+<!ENTITY % local.formal.class "">
+<!ENTITY % formal.class
+ "equation|example|figure|table %local.formal.class;">
+
+<!-- The DocBook TC may produce an official EBNF module for DocBook. -->
+<!-- This PE provides the hook by which it can be inserted into the DTD. -->
+<!ENTITY % ebnf.block.hook "">
+
+<!ENTITY % local.compound.class "">
+<!ENTITY % compound.class
+ "msgset|procedure|sidebar|qandaset|task
+ %ebnf.block.hook;
+ %local.compound.class;">
+
+<!ENTITY % local.genobj.class "">
+<!ENTITY % genobj.class
+ "anchor|bridgehead|remark|highlights
+ %local.genobj.class;">
+
+<!ENTITY % local.descobj.class "">
+<!ENTITY % descobj.class
+ "abstract|authorblurb|epigraph
+ %local.descobj.class;">
+
+<!-- Character-level classes .............................................. -->
+
+<!ENTITY % local.xref.char.class "">
+<!ENTITY % xref.char.class
+ "footnoteref|xref|biblioref %local.xref.char.class;">
+
+<!ENTITY % local.gen.char.class "">
+<!ENTITY % gen.char.class
+ "abbrev|acronym|citation|citerefentry|citetitle|citebiblioid|emphasis
+ |firstterm|foreignphrase|glossterm|termdef|footnote|phrase
+ |orgname|quote|trademark|wordasword
+ |personname %local.gen.char.class;">
+
+<!ENTITY % local.link.char.class "">
+<!ENTITY % link.char.class
+ "link|olink|ulink %local.link.char.class;">
+
+<!-- The DocBook TC may produce an official EBNF module for DocBook. -->
+<!-- This PE provides the hook by which it can be inserted into the DTD. -->
+<!ENTITY % ebnf.inline.hook "">
+
+<!ENTITY % local.tech.char.class "">
+<!ENTITY % tech.char.class
+ "action|application
+ |classname|methodname|interfacename|exceptionname
+ |ooclass|oointerface|ooexception
+ |package
+ |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
+ %ebnf.inline.hook;
+ %local.tech.char.class;">
+
+<!ENTITY % local.base.char.class "">
+<!ENTITY % base.char.class
+ "anchor %local.base.char.class;">
+
+<!ENTITY % local.docinfo.char.class "">
+<!ENTITY % docinfo.char.class
+ "author|authorinitials|corpauthor|corpcredit|modespec|othercredit
+ |productname|productnumber|revhistory
+ %local.docinfo.char.class;">
+
+<!ENTITY % local.other.char.class "">
+<!ENTITY % other.char.class
+ "remark|subscript|superscript %local.other.char.class;">
+
+<!ENTITY % local.inlineobj.char.class "">
+<!ENTITY % inlineobj.char.class
+ "inlinegraphic|inlinemediaobject|inlineequation %local.inlineobj.char.class;">
+
+<!-- ...................................................................... -->
+<!-- Entities for content models .......................................... -->
+
+<!ENTITY % formalobject.title.content "title, titleabbrev?">
+
+<!-- Redeclaration placeholder ............................................ -->
+
+<!-- For redeclaring entities that are declared after this point while
+ retaining their references to the entities that are declared before
+ this point -->
+
+<![%dbpool.redecl.module;[
+<!-- Defining rdbpool here makes some buggy XML parsers happy. -->
+<!ENTITY % rdbpool "">
+%rdbpool;
+<!--end of dbpool.redecl.module-->]]>
+
+<!-- Object-level mixtures ................................................ -->
+
+<!--
+ list admn line synp para infm form cmpd gen desc
+Component mixture X X X X X X X X X X
+Sidebar mixture X X X X X X X a X
+Footnote mixture X X X X X
+Example mixture X X X X X
+Highlights mixture X X X
+Paragraph mixture X X X X
+Admonition mixture X X X X X X b c
+Figure mixture X X X
+Table entry mixture X X X X d
+Glossary def mixture X X X X X e
+Legal notice mixture X X X X f
+
+a. Just Procedure; not Sidebar itself or MsgSet.
+b. No MsgSet.
+c. No Highlights.
+d. Just Graphic; no other informal objects.
+e. No Anchor, BridgeHead, or Highlights.
+f. Just BlockQuote; no other informal objects.
+-->
+
+<!ENTITY % local.component.mix "">
+<!ENTITY % component.mix
+ "%list.class; |%admon.class;
+ |%linespecific.class; |%synop.class;
+ |%para.class; |%informal.class;
+ |%formal.class; |%compound.class;
+ |%genobj.class; |%descobj.class;
+ |%ndxterm.class; |beginpage
+ %forms.hook;
+ %local.component.mix;">
+
+<!ENTITY % local.sidebar.mix "">
+<!ENTITY % sidebar.mix
+ "%list.class; |%admon.class;
+ |%linespecific.class; |%synop.class;
+ |%para.class; |%informal.class;
+ |%formal.class; |procedure
+ |%genobj.class;
+ |%ndxterm.class; |beginpage
+ %forms.hook;
+ %local.sidebar.mix;">
+
+<!ENTITY % local.qandaset.mix "">
+<!ENTITY % qandaset.mix
+ "%list.class; |%admon.class;
+ |%linespecific.class; |%synop.class;
+ |%para.class; |%informal.class;
+ |%formal.class; |procedure
+ |%genobj.class;
+ |%ndxterm.class;
+ %forms.hook;
+ %local.qandaset.mix;">
+
+<!ENTITY % local.revdescription.mix "">
+<!ENTITY % revdescription.mix
+ "%list.class; |%admon.class;
+ |%linespecific.class; |%synop.class;
+ |%para.class; |%informal.class;
+ |%formal.class; |procedure
+ |%genobj.class;
+ |%ndxterm.class;
+ %local.revdescription.mix;">
+
+<!ENTITY % local.footnote.mix "">
+<!ENTITY % footnote.mix
+ "%list.class;
+ |%linespecific.class; |%synop.class;
+ |%para.class; |%informal.class;
+ %local.footnote.mix;">
+
+<!ENTITY % local.example.mix "">
+<!ENTITY % example.mix
+ "%list.class;
+ |%linespecific.class; |%synop.class;
+ |%para.class; |%informal.class;
+ |%ndxterm.class; |beginpage
+ |procedure
+ %forms.hook;
+ %local.example.mix;">
+
+<!ENTITY % local.highlights.mix "">
+<!ENTITY % highlights.mix
+ "%list.class; |%admon.class;
+ |%para.class;
+ |%ndxterm.class;
+ %local.highlights.mix;">
+
+<!-- %formal.class; is explicitly excluded from many contexts in which
+ paragraphs are used -->
+<!ENTITY % local.para.mix "">
+<!ENTITY % para.mix
+ "%list.class; |%admon.class;
+ |%linespecific.class;
+ |%informal.class;
+ |%formal.class;
+ %local.para.mix;">
+
+<!ENTITY % local.admon.mix "">
+<!ENTITY % admon.mix
+ "%list.class;
+ |%linespecific.class; |%synop.class;
+ |%para.class; |%informal.class;
+ |%formal.class; |procedure|sidebar
+ |anchor|bridgehead|remark
+ |%ndxterm.class; |beginpage
+ %forms.hook;
+ %local.admon.mix;">
+
+<!ENTITY % local.figure.mix "">
+<!ENTITY % figure.mix
+ "%linespecific.class; |%synop.class;
+ |%informal.class;
+ |%ndxterm.class; |beginpage
+ %forms.hook;
+ %local.figure.mix;">
+
+<!ENTITY % local.tabentry.mix "">
+<!ENTITY % tabentry.mix
+ "%list.class; |%admon.class;
+ |%linespecific.class;
+ |%para.class; |graphic|mediaobject
+ %forms.hook;
+ %local.tabentry.mix;">
+
+<!ENTITY % local.glossdef.mix "">
+<!ENTITY % glossdef.mix
+ "%list.class;
+ |%linespecific.class; |%synop.class;
+ |%para.class; |%informal.class;
+ |%formal.class;
+ |remark
+ |%ndxterm.class; |beginpage
+ %local.glossdef.mix;">
+
+<!ENTITY % local.legalnotice.mix "">
+<!ENTITY % legalnotice.mix
+ "%list.class; |%admon.class;
+ |%linespecific.class;
+ |%para.class; |blockquote
+ |%ndxterm.class; |beginpage
+ %local.legalnotice.mix;">
+
+<!ENTITY % local.textobject.mix "">
+<!ENTITY % textobject.mix
+ "%list.class; |%admon.class;
+ |%linespecific.class;
+ |%para.class; |blockquote
+ %local.textobject.mix;">
+
+<!ENTITY % local.mediaobject.mix "">
+<!ENTITY % mediaobject.mix
+ "videoobject|audioobject|imageobject|imageobjectco|textobject %local.mediaobject.mix;">
+
+<!ENTITY % local.listpreamble.mix "">
+<!ENTITY % listpreamble.mix
+ " %admon.class;
+ |%linespecific.class; |%synop.class;
+ |%para.class; |%informal.class;
+ |%genobj.class; |%descobj.class;
+ |%ndxterm.class; |beginpage
+ %forms.hook;
+ %local.listpreamble.mix;">
+
+<!-- Character-level mixtures ............................................. -->
+
+<![%sgml.features;[
+<!ENTITY % local.ubiq.mix "">
+<!ENTITY % ubiq.mix "%ndxterm.class;|beginpage %local.ubiq.mix;">
+
+<!ENTITY % ubiq.exclusion "-(%ubiq.mix)">
+<!ENTITY % ubiq.inclusion "+(%ubiq.mix)">
+
+<!ENTITY % footnote.exclusion "-(footnote|%formal.class;)">
+<!ENTITY % highlights.exclusion "-(%ubiq.mix;|%formal.class;)">
+<!ENTITY % admon.exclusion "-(%admon.class;)">
+<!ENTITY % formal.exclusion "-(%formal.class;)">
+<!ENTITY % acronym.exclusion "-(acronym)">
+<!ENTITY % beginpage.exclusion "-(beginpage)">
+<!ENTITY % ndxterm.exclusion "-(%ndxterm.class;)">
+<!ENTITY % blockquote.exclusion "-(epigraph)">
+<!ENTITY % remark.exclusion "-(remark|%ubiq.mix;)">
+<!ENTITY % glossterm.exclusion "-(glossterm)">
+<!ENTITY % links.exclusion "-(link|olink|ulink|xref|biblioref)">
+]]><!-- sgml.features -->
+
+<!-- not [sgml.features[ -->
+<!ENTITY % local.ubiq.mix "">
+<!ENTITY % ubiq.mix "">
+
+<!ENTITY % ubiq.exclusion "">
+<!ENTITY % ubiq.inclusion "">
+
+<!ENTITY % footnote.exclusion "">
+<!ENTITY % highlights.exclusion "">
+<!ENTITY % admon.exclusion "">
+<!ENTITY % formal.exclusion "">
+<!ENTITY % acronym.exclusion "">
+<!ENTITY % beginpage.exclusion "">
+<!ENTITY % ndxterm.exclusion "">
+<!ENTITY % blockquote.exclusion "">
+<!ENTITY % remark.exclusion "">
+<!ENTITY % glossterm.exclusion "">
+<!ENTITY % links.exclusion "">
+<!-- ]] not sgml.features -->
+
+<!--
+ #PCD xref word link cptr base dnfo othr inob (synop)
+para.char.mix X X X X X X X X X
+title.char.mix X X X X X X X X X
+ndxterm.char.mix X X X X X X X X a
+cptr.char.mix X X X X X a
+smallcptr.char.mix X b a
+word.char.mix X c X X X a
+docinfo.char.mix X d X b X a
+
+a. Just InlineGraphic; no InlineEquation.
+b. Just Replaceable; no other computer terms.
+c. Just Emphasis and Trademark; no other word elements.
+d. Just Acronym, Emphasis, and Trademark; no other word elements.
+-->
+
+<!ENTITY % local.para.char.mix "">
+<!ENTITY % para.char.mix
+ "#PCDATA
+ |%xref.char.class; |%gen.char.class;
+ |%link.char.class; |%tech.char.class;
+ |%base.char.class; |%docinfo.char.class;
+ |%other.char.class; |%inlineobj.char.class;
+ |%synop.class;
+ |%ndxterm.class; |beginpage
+ %forminlines.hook;
+ %local.para.char.mix;">
+
+<!ENTITY % local.title.char.mix "">
+<!ENTITY % title.char.mix
+ "#PCDATA
+ |%xref.char.class; |%gen.char.class;
+ |%link.char.class; |%tech.char.class;
+ |%base.char.class; |%docinfo.char.class;
+ |%other.char.class; |%inlineobj.char.class;
+ |%ndxterm.class;
+ %local.title.char.mix;">
+
+<!ENTITY % local.ndxterm.char.mix "">
+<!ENTITY % ndxterm.char.mix
+ "#PCDATA
+ |%xref.char.class; |%gen.char.class;
+ |%link.char.class; |%tech.char.class;
+ |%base.char.class; |%docinfo.char.class;
+ |%other.char.class; |inlinegraphic|inlinemediaobject
+ %local.ndxterm.char.mix;">
+
+<!ENTITY % local.cptr.char.mix "">
+<!ENTITY % cptr.char.mix
+ "#PCDATA
+ |%link.char.class; |%tech.char.class;
+ |%base.char.class;
+ |%other.char.class; |inlinegraphic|inlinemediaobject
+ |%ndxterm.class; |beginpage
+ %local.cptr.char.mix;">
+
+<!ENTITY % local.smallcptr.char.mix "">
+<!ENTITY % smallcptr.char.mix
+ "#PCDATA
+ |replaceable
+ |inlinegraphic|inlinemediaobject
+ |%ndxterm.class; |beginpage
+ %local.smallcptr.char.mix;">
+
+<!ENTITY % local.word.char.mix "">
+<!ENTITY % word.char.mix
+ "#PCDATA
+ |acronym|emphasis|trademark
+ |%link.char.class;
+ |%base.char.class;
+ |%other.char.class; |inlinegraphic|inlinemediaobject
+ |%ndxterm.class; |beginpage
+ %local.word.char.mix;">
+
+<!ENTITY % local.docinfo.char.mix "">
+<!ENTITY % docinfo.char.mix
+ "#PCDATA
+ |%link.char.class;
+ |emphasis|trademark
+ |replaceable
+ |%other.char.class; |inlinegraphic|inlinemediaobject
+ |%ndxterm.class;
+ %local.docinfo.char.mix;">
+<!--ENTITY % bibliocomponent.mix (see Bibliographic section, below)-->
+<!--ENTITY % person.ident.mix (see Bibliographic section, below)-->
+
+<!-- ...................................................................... -->
+<!-- Entities for attributes and attribute components ..................... -->
+
+<!-- Effectivity attributes ............................................... -->
+
+
+<!-- Arch: Computer or chip architecture to which element applies; no
+ default -->
+
+<!ENTITY % arch.attrib
+ "arch CDATA #IMPLIED">
+
+<!-- Condition: General-purpose effectivity attribute -->
+
+<!ENTITY % condition.attrib
+ "condition CDATA #IMPLIED">
+
+<!-- Conformance: Standards conformance characteristics -->
+
+<!ENTITY % conformance.attrib
+ "conformance NMTOKENS #IMPLIED">
+
+
+<!-- OS: Operating system to which element applies; no default -->
+
+<!ENTITY % os.attrib
+ "os CDATA #IMPLIED">
+
+
+<!-- Revision: Editorial revision to which element belongs; no default -->
+
+<!ENTITY % revision.attrib
+ "revision CDATA #IMPLIED">
+
+<!-- Security: Security classification; no default -->
+
+<!ENTITY % security.attrib
+ "security CDATA #IMPLIED">
+
+<!-- UserLevel: Level of user experience to which element applies; no
+ default -->
+
+<!ENTITY % userlevel.attrib
+ "userlevel CDATA #IMPLIED">
+
+<!-- Vendor: Computer vendor to which element applies; no default -->
+
+<!ENTITY % vendor.attrib
+ "vendor CDATA #IMPLIED">
+
+<!-- Wordsize: Computer word size (32 bit, 64 bit, etc.); no default -->
+
+<!ENTITY % wordsize.attrib
+ "wordsize CDATA #IMPLIED">
+
+<!ENTITY % local.effectivity.attrib "">
+<!ENTITY % effectivity.attrib
+ "%arch.attrib;
+ %condition.attrib;
+ %conformance.attrib;
+ %os.attrib;
+ %revision.attrib;
+ %security.attrib;
+ %userlevel.attrib;
+ %vendor.attrib;
+ %wordsize.attrib;
+ %local.effectivity.attrib;"
+>
+
+<!-- Common attributes .................................................... -->
+
+
+<!-- Id: Unique identifier of element; no default -->
+
+<!ENTITY % id.attrib
+ "id ID #IMPLIED">
+
+
+<!-- Id: Unique identifier of element; a value must be supplied; no
+ default -->
+
+<!ENTITY % idreq.attrib
+ "id ID #REQUIRED">
+
+
+<!-- Lang: Indicator of language in which element is written, for
+ translation, character set management, etc.; no default -->
+
+<!ENTITY % lang.attrib
+ "lang CDATA #IMPLIED">
+
+
+<!-- Remap: Previous role of element before conversion; no default -->
+
+<!ENTITY % remap.attrib
+ "remap CDATA #IMPLIED">
+
+
+<!-- Role: New role of element in local environment; no default -->
+
+<!ENTITY % role.attrib
+ "role CDATA #IMPLIED">
+
+
+<!-- XRefLabel: Alternate labeling string for XRef text generation;
+ default is usually title or other appropriate label text already
+ contained in element -->
+
+<!ENTITY % xreflabel.attrib
+ "xreflabel CDATA #IMPLIED">
+
+
+<!-- RevisionFlag: Revision status of element; default is that element
+ wasn't revised -->
+
+<!ENTITY % revisionflag.attrib
+ "revisionflag (changed
+ |added
+ |deleted
+ |off) #IMPLIED">
+
+<!ENTITY % local.common.attrib "">
+
+<!-- dir: Bidirectional override -->
+
+<!ENTITY % dir.attrib
+ "dir (ltr
+ |rtl
+ |lro
+ |rlo) #IMPLIED">
+
+<!-- xml:base: base URI -->
+
+<![%sgml.features;[
+<!ENTITY % xml-base.attrib "">
+]]>
+<!ENTITY % xml-base.attrib
+ "xml:base CDATA #IMPLIED">
+
+<!-- Role is included explicitly on each element -->
+
+<!ENTITY % common.attrib
+ "%id.attrib;
+ %lang.attrib;
+ %remap.attrib;
+ %xreflabel.attrib;
+ %revisionflag.attrib;
+ %effectivity.attrib;
+ %dir.attrib;
+ %xml-base.attrib;
+ %local.common.attrib;"
+>
+
+<!-- Role is included explicitly on each element -->
+
+<!ENTITY % idreq.common.attrib
+ "%idreq.attrib;
+ %lang.attrib;
+ %remap.attrib;
+ %xreflabel.attrib;
+ %revisionflag.attrib;
+ %effectivity.attrib;
+ %dir.attrib;
+ %xml-base.attrib;
+ %local.common.attrib;"
+>
+
+<!-- Semi-common attributes and other attribute entities .................. -->
+
+<!ENTITY % local.graphics.attrib "">
+
+<!-- EntityRef: Name of an external entity containing the content
+ of the graphic -->
+<!-- FileRef: Filename, qualified by a pathname if desired,
+ designating the file containing the content of the graphic -->
+<!-- Format: Notation of the element content, if any -->
+<!-- SrcCredit: Information about the source of the Graphic -->
+<!-- Width: Same as CALS reprowid (desired width) -->
+<!-- Depth: Same as CALS reprodep (desired depth) -->
+<!-- Align: Same as CALS hplace with 'none' removed; #IMPLIED means
+ application-specific -->
+<!-- Scale: Conflation of CALS hscale and vscale -->
+<!-- Scalefit: Same as CALS scalefit -->
+
+<!ENTITY % graphics.attrib
+ "
+ entityref ENTITY #IMPLIED
+ fileref CDATA #IMPLIED
+ format (%notation.class;) #IMPLIED
+ srccredit CDATA #IMPLIED
+ width CDATA #IMPLIED
+ contentwidth CDATA #IMPLIED
+ depth CDATA #IMPLIED
+ contentdepth CDATA #IMPLIED
+ align (left
+ |right
+ |center) #IMPLIED
+ valign (top
+ |middle
+ |bottom) #IMPLIED
+ scale CDATA #IMPLIED
+ scalefit %yesorno.attvals;
+ #IMPLIED
+ %local.graphics.attrib;"
+>
+
+<!ENTITY % local.keyaction.attrib "">
+
+<!-- Action: Key combination type; default is unspecified if one
+ child element, Simul if there is more than one; if value is
+ Other, the OtherAction attribute must have a nonempty value -->
+<!-- OtherAction: User-defined key combination type -->
+
+<!ENTITY % keyaction.attrib
+ "
+ action (click
+ |double-click
+ |press
+ |seq
+ |simul
+ |other) #IMPLIED
+ otheraction CDATA #IMPLIED
+ %local.keyaction.attrib;"
+>
+
+
+<!-- Label: Identifying number or string; default is usually the
+ appropriate number or string autogenerated by a formatter -->
+
+<!ENTITY % label.attrib
+ "label CDATA #IMPLIED">
+
+
+<!-- xml:space: whitespace treatment -->
+
+<![%sgml.features;[
+<!ENTITY % xml-space.attrib "">
+]]>
+<!ENTITY % xml-space.attrib
+ "xml:space (preserve) #IMPLIED">
+
+<!-- Format: whether element is assumed to contain significant white
+ space -->
+
+<!ENTITY % linespecific.attrib
+ "format NOTATION
+ (linespecific) 'linespecific'
+ %xml-space.attrib;
+ linenumbering (numbered|unnumbered) #IMPLIED
+ continuation (continues|restarts) #IMPLIED
+ startinglinenumber CDATA #IMPLIED
+ language CDATA #IMPLIED">
+
+<!-- Linkend: link to related information; no default -->
+
+<!ENTITY % linkend.attrib
+ "linkend IDREF #IMPLIED">
+
+
+<!-- Linkend: required link to related information -->
+
+<!ENTITY % linkendreq.attrib
+ "linkend IDREF #REQUIRED">
+
+
+<!-- Linkends: link to one or more sets of related information; no
+ default -->
+
+<!ENTITY % linkends.attrib
+ "linkends IDREFS #IMPLIED">
+
+
+<!ENTITY % local.mark.attrib "">
+<!ENTITY % mark.attrib
+ "mark CDATA #IMPLIED
+ %local.mark.attrib;"
+>
+
+
+<!-- MoreInfo: whether element's content has an associated RefEntry -->
+
+<!ENTITY % moreinfo.attrib
+ "moreinfo (refentry|none) 'none'">
+
+
+<!-- Pagenum: number of page on which element appears; no default -->
+
+<!ENTITY % pagenum.attrib
+ "pagenum CDATA #IMPLIED">
+
+<!ENTITY % local.status.attrib "">
+
+<!-- Status: Editorial or publication status of the element
+ it applies to, such as "in review" or "approved for distribution" -->
+
+<!ENTITY % status.attrib
+ "status CDATA #IMPLIED
+ %local.status.attrib;"
+>
+
+
+<!-- Width: width of the longest line in the element to which it
+ pertains, in number of characters -->
+
+<!ENTITY % width.attrib
+ "width CDATA #IMPLIED">
+
+<!-- ...................................................................... -->
+<!-- Title elements ....................................................... -->
+
+<!ENTITY % title.module "INCLUDE">
+<![%title.module;[
+<!ENTITY % local.title.attrib "">
+<!ENTITY % title.role.attrib "%role.attrib;">
+
+<!ENTITY % title.element "INCLUDE">
+<![%title.element;[
+<!--doc:The text of the title of a section of a document or of a formal block-level element.-->
+<!ELEMENT title %ho; (%title.char.mix;)*>
+<!--end of title.element-->]]>
+
+<!ENTITY % title.attlist "INCLUDE">
+<![%title.attlist;[
+<!ATTLIST title
+ %pagenum.attrib;
+ %common.attrib;
+ %title.role.attrib;
+ %local.title.attrib;
+>
+<!--end of title.attlist-->]]>
+<!--end of title.module-->]]>
+
+<!ENTITY % titleabbrev.module "INCLUDE">
+<![%titleabbrev.module;[
+<!ENTITY % local.titleabbrev.attrib "">
+<!ENTITY % titleabbrev.role.attrib "%role.attrib;">
+
+<!ENTITY % titleabbrev.element "INCLUDE">
+<![%titleabbrev.element;[
+<!--doc:The abbreviation of a Title.-->
+<!ELEMENT titleabbrev %ho; (%title.char.mix;)*>
+<!--end of titleabbrev.element-->]]>
+
+<!ENTITY % titleabbrev.attlist "INCLUDE">
+<![%titleabbrev.attlist;[
+<!ATTLIST titleabbrev
+ %common.attrib;
+ %titleabbrev.role.attrib;
+ %local.titleabbrev.attrib;
+>
+<!--end of titleabbrev.attlist-->]]>
+<!--end of titleabbrev.module-->]]>
+
+<!ENTITY % subtitle.module "INCLUDE">
+<![%subtitle.module;[
+<!ENTITY % local.subtitle.attrib "">
+<!ENTITY % subtitle.role.attrib "%role.attrib;">
+
+<!ENTITY % subtitle.element "INCLUDE">
+<![%subtitle.element;[
+<!--doc:The subtitle of a document.-->
+<!ELEMENT subtitle %ho; (%title.char.mix;)*>
+<!--end of subtitle.element-->]]>
+
+<!ENTITY % subtitle.attlist "INCLUDE">
+<![%subtitle.attlist;[
+<!ATTLIST subtitle
+ %common.attrib;
+ %subtitle.role.attrib;
+ %local.subtitle.attrib;
+>
+<!--end of subtitle.attlist-->]]>
+<!--end of subtitle.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Bibliographic entities and elements .................................. -->
+
+<!-- The bibliographic elements are typically used in the document
+ hierarchy. They do not appear in content models of information
+ pool elements. See also the document information elements,
+ below. -->
+
+<!ENTITY % local.person.ident.mix "">
+<!ENTITY % person.ident.mix
+ "honorific|firstname|surname|lineage|othername|affiliation
+ |authorblurb|contrib %local.person.ident.mix;">
+
+<!ENTITY % local.bibliocomponent.mix "">
+<!ENTITY % bibliocomponent.mix
+ "abbrev|abstract|address|artpagenums|author
+ |authorgroup|authorinitials|bibliomisc|biblioset
+ |collab|confgroup|contractnum|contractsponsor
+ |copyright|corpauthor|corpname|corpcredit|date|edition
+ |editor|invpartnumber|isbn|issn|issuenum|orgname
+ |biblioid|citebiblioid|bibliosource|bibliorelation|bibliocoverage
+ |othercredit|pagenums|printhistory|productname
+ |productnumber|pubdate|publisher|publishername
+ |pubsnumber|releaseinfo|revhistory|seriesvolnums
+ |subtitle|title|titleabbrev|volumenum|citetitle
+ |personname|%person.ident.mix;
+ |%ndxterm.class;
+ %local.bibliocomponent.mix;">
+
+<!-- I don't think this is well placed, but it needs to be here because of -->
+<!-- the reference to bibliocomponent.mix -->
+<!ENTITY % local.info.class "">
+<!ENTITY % info.class
+ "graphic | mediaobject | legalnotice | modespec
+ | subjectset | keywordset | itermset | %bibliocomponent.mix;
+ %local.info.class;">
+
+
+<!-- BiblioList ........................ -->
+
+<!ENTITY % bibliolist.module "INCLUDE">
+<![%bibliolist.module;[
+<!ENTITY % local.bibliolist.attrib "">
+<!ENTITY % bibliolist.role.attrib "%role.attrib;">
+
+<!ENTITY % bibliolist.element "INCLUDE">
+<![%bibliolist.element;[
+<!--doc:A wrapper for a set of bibliography entries.-->
+<!ELEMENT bibliolist %ho; (blockinfo?, (%formalobject.title.content;)?,
+ (biblioentry|bibliomixed)+)>
+<!--end of bibliolist.element-->]]>
+
+<!ENTITY % bibliolist.attlist "INCLUDE">
+<![%bibliolist.attlist;[
+<!ATTLIST bibliolist
+ %common.attrib;
+ %bibliolist.role.attrib;
+ %local.bibliolist.attrib;
+>
+<!--end of bibliolist.attlist-->]]>
+<!--end of bibliolist.module-->]]>
+
+<!ENTITY % biblioentry.module "INCLUDE">
+<![%biblioentry.module;[
+<!ENTITY % local.biblioentry.attrib "">
+<!ENTITY % biblioentry.role.attrib "%role.attrib;">
+
+<!ENTITY % biblioentry.element "INCLUDE">
+<![%biblioentry.element;[
+<!--doc:An entry in a Bibliography.-->
+<!ELEMENT biblioentry %ho; ((articleinfo | (%bibliocomponent.mix;))+)
+ %ubiq.exclusion;>
+<!--end of biblioentry.element-->]]>
+
+<!ENTITY % biblioentry.attlist "INCLUDE">
+<![%biblioentry.attlist;[
+<!ATTLIST biblioentry
+ %common.attrib;
+ %biblioentry.role.attrib;
+ %local.biblioentry.attrib;
+>
+<!--end of biblioentry.attlist-->]]>
+<!--end of biblioentry.module-->]]>
+
+<!ENTITY % bibliomixed.module "INCLUDE">
+<![%bibliomixed.module;[
+<!ENTITY % local.bibliomixed.attrib "">
+<!ENTITY % bibliomixed.role.attrib "%role.attrib;">
+
+<!ENTITY % bibliomixed.element "INCLUDE">
+<![%bibliomixed.element;[
+<!--doc:An entry in a Bibliography.-->
+<!ELEMENT bibliomixed %ho; (#PCDATA | %bibliocomponent.mix; | bibliomset)*
+ %ubiq.exclusion;>
+<!--end of bibliomixed.element-->]]>
+
+<!ENTITY % bibliomixed.attlist "INCLUDE">
+<![%bibliomixed.attlist;[
+<!ATTLIST bibliomixed
+ %common.attrib;
+ %bibliomixed.role.attrib;
+ %local.bibliomixed.attrib;
+>
+<!--end of bibliomixed.attlist-->]]>
+<!--end of bibliomixed.module-->]]>
+
+<!ENTITY % articleinfo.module "INCLUDE">
+<![%articleinfo.module;[
+<!ENTITY % local.articleinfo.attrib "">
+<!ENTITY % articleinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % articleinfo.element "INCLUDE">
+<![%articleinfo.element;[
+<!--doc:Meta-information for an Article.-->
+<!ELEMENT articleinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of articleinfo.element-->]]>
+
+<!ENTITY % articleinfo.attlist "INCLUDE">
+<![%articleinfo.attlist;[
+<!ATTLIST articleinfo
+ %common.attrib;
+ %articleinfo.role.attrib;
+ %local.articleinfo.attrib;
+>
+<!--end of articleinfo.attlist-->]]>
+<!--end of articleinfo.module-->]]>
+
+<!ENTITY % biblioset.module "INCLUDE">
+<![%biblioset.module;[
+<!ENTITY % local.biblioset.attrib "">
+<!ENTITY % biblioset.role.attrib "%role.attrib;">
+
+<!ENTITY % biblioset.element "INCLUDE">
+<![%biblioset.element;[
+<!--doc:A "raw" container for related bibliographic information.-->
+<!ELEMENT biblioset %ho; ((%bibliocomponent.mix;)+)
+ %ubiq.exclusion;>
+<!--end of biblioset.element-->]]>
+
+<!-- Relation: Relationship of elements contained within BiblioSet -->
+
+
+<!ENTITY % biblioset.attlist "INCLUDE">
+<![%biblioset.attlist;[
+<!ATTLIST biblioset
+ relation CDATA #IMPLIED
+ %common.attrib;
+ %biblioset.role.attrib;
+ %local.biblioset.attrib;
+>
+<!--end of biblioset.attlist-->]]>
+<!--end of biblioset.module-->]]>
+
+<!ENTITY % bibliomset.module "INCLUDE">
+<![%bibliomset.module;[
+<!ENTITY % bibliomset.role.attrib "%role.attrib;">
+<!ENTITY % local.bibliomset.attrib "">
+
+<!ENTITY % bibliomset.element "INCLUDE">
+<![%bibliomset.element;[
+<!--doc:A "cooked" container for related bibliographic information.-->
+<!ELEMENT bibliomset %ho; (#PCDATA | %bibliocomponent.mix; | bibliomset)*
+ %ubiq.exclusion;>
+<!--end of bibliomset.element-->]]>
+
+<!-- Relation: Relationship of elements contained within BiblioMSet -->
+
+
+<!ENTITY % bibliomset.attlist "INCLUDE">
+<![%bibliomset.attlist;[
+<!ATTLIST bibliomset
+ relation CDATA #IMPLIED
+ %common.attrib;
+ %bibliomset.role.attrib;
+ %local.bibliomset.attrib;
+>
+<!--end of bibliomset.attlist-->]]>
+<!--end of bibliomset.module-->]]>
+
+<!ENTITY % bibliomisc.module "INCLUDE">
+<![%bibliomisc.module;[
+<!ENTITY % local.bibliomisc.attrib "">
+<!ENTITY % bibliomisc.role.attrib "%role.attrib;">
+
+<!ENTITY % bibliomisc.element "INCLUDE">
+<![%bibliomisc.element;[
+<!--doc:Untyped bibliographic information.-->
+<!ELEMENT bibliomisc %ho; (%para.char.mix;)*>
+<!--end of bibliomisc.element-->]]>
+
+<!ENTITY % bibliomisc.attlist "INCLUDE">
+<![%bibliomisc.attlist;[
+<!ATTLIST bibliomisc
+ %common.attrib;
+ %bibliomisc.role.attrib;
+ %local.bibliomisc.attrib;
+>
+<!--end of bibliomisc.attlist-->]]>
+<!--end of bibliomisc.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Subject, Keyword, and ITermSet elements .............................. -->
+
+<!ENTITY % subjectset.content.module "INCLUDE">
+<![%subjectset.content.module;[
+<!ENTITY % subjectset.module "INCLUDE">
+<![%subjectset.module;[
+<!ENTITY % local.subjectset.attrib "">
+<!ENTITY % subjectset.role.attrib "%role.attrib;">
+
+<!ENTITY % subjectset.element "INCLUDE">
+<![%subjectset.element;[
+<!--doc:A set of terms describing the subject matter of a document.-->
+<!ELEMENT subjectset %ho; (subject+)>
+<!--end of subjectset.element-->]]>
+
+<!-- Scheme: Controlled vocabulary employed in SubjectTerms -->
+
+
+<!ENTITY % subjectset.attlist "INCLUDE">
+<![%subjectset.attlist;[
+<!ATTLIST subjectset
+ scheme NMTOKEN #IMPLIED
+ %common.attrib;
+ %subjectset.role.attrib;
+ %local.subjectset.attrib;
+>
+<!--end of subjectset.attlist-->]]>
+<!--end of subjectset.module-->]]>
+
+<!ENTITY % subject.module "INCLUDE">
+<![%subject.module;[
+<!ENTITY % local.subject.attrib "">
+<!ENTITY % subject.role.attrib "%role.attrib;">
+
+<!ENTITY % subject.element "INCLUDE">
+<![%subject.element;[
+<!--doc:One of a group of terms describing the subject matter of a document.-->
+<!ELEMENT subject %ho; (subjectterm+)>
+<!--end of subject.element-->]]>
+
+<!-- Weight: Ranking of this group of SubjectTerms relative
+ to others, 0 is low, no highest value specified -->
+
+
+<!ENTITY % subject.attlist "INCLUDE">
+<![%subject.attlist;[
+<!ATTLIST subject
+ weight CDATA #IMPLIED
+ %common.attrib;
+ %subject.role.attrib;
+ %local.subject.attrib;
+>
+<!--end of subject.attlist-->]]>
+<!--end of subject.module-->]]>
+
+<!ENTITY % subjectterm.module "INCLUDE">
+<![%subjectterm.module;[
+<!ENTITY % local.subjectterm.attrib "">
+<!ENTITY % subjectterm.role.attrib "%role.attrib;">
+
+<!ENTITY % subjectterm.element "INCLUDE">
+<![%subjectterm.element;[
+<!--doc:A term in a group of terms describing the subject matter of a document.-->
+<!ELEMENT subjectterm %ho; (#PCDATA)>
+<!--end of subjectterm.element-->]]>
+
+<!ENTITY % subjectterm.attlist "INCLUDE">
+<![%subjectterm.attlist;[
+<!ATTLIST subjectterm
+ %common.attrib;
+ %subjectterm.role.attrib;
+ %local.subjectterm.attrib;
+>
+<!--end of subjectterm.attlist-->]]>
+<!--end of subjectterm.module-->]]>
+<!--end of subjectset.content.module-->]]>
+
+<!ENTITY % keywordset.content.module "INCLUDE">
+<![%keywordset.content.module;[
+<!ENTITY % keywordset.module "INCLUDE">
+<![%keywordset.module;[
+<!ENTITY % local.keywordset.attrib "">
+<!ENTITY % keywordset.role.attrib "%role.attrib;">
+
+<!ENTITY % keywordset.element "INCLUDE">
+<![%keywordset.element;[
+<!--doc:A set of keywords describing the content of a document.-->
+<!ELEMENT keywordset %ho; (keyword+)>
+<!--end of keywordset.element-->]]>
+
+<!ENTITY % keywordset.attlist "INCLUDE">
+<![%keywordset.attlist;[
+<!ATTLIST keywordset
+ %common.attrib;
+ %keywordset.role.attrib;
+ %local.keywordset.attrib;
+>
+<!--end of keywordset.attlist-->]]>
+<!--end of keywordset.module-->]]>
+
+<!ENTITY % keyword.module "INCLUDE">
+<![%keyword.module;[
+<!ENTITY % local.keyword.attrib "">
+<!ENTITY % keyword.role.attrib "%role.attrib;">
+
+<!ENTITY % keyword.element "INCLUDE">
+<![%keyword.element;[
+<!--doc:One of a set of keywords describing the content of a document.-->
+<!ELEMENT keyword %ho; (#PCDATA)>
+<!--end of keyword.element-->]]>
+
+<!ENTITY % keyword.attlist "INCLUDE">
+<![%keyword.attlist;[
+<!ATTLIST keyword
+ %common.attrib;
+ %keyword.role.attrib;
+ %local.keyword.attrib;
+>
+<!--end of keyword.attlist-->]]>
+<!--end of keyword.module-->]]>
+<!--end of keywordset.content.module-->]]>
+
+<!ENTITY % itermset.module "INCLUDE">
+<![%itermset.module;[
+<!ENTITY % local.itermset.attrib "">
+<!ENTITY % itermset.role.attrib "%role.attrib;">
+
+<!ENTITY % itermset.element "INCLUDE">
+<![%itermset.element;[
+<!--doc:A set of index terms in the meta-information of a document.-->
+<!ELEMENT itermset %ho; (indexterm+)>
+<!--end of itermset.element-->]]>
+
+<!ENTITY % itermset.attlist "INCLUDE">
+<![%itermset.attlist;[
+<!ATTLIST itermset
+ %common.attrib;
+ %itermset.role.attrib;
+ %local.itermset.attrib;
+>
+<!--end of itermset.attlist-->]]>
+<!--end of itermset.module-->]]>
+
+<!-- Bibliographic info for "blocks" -->
+
+<!ENTITY % blockinfo.module "INCLUDE">
+<![ %blockinfo.module; [
+<!ENTITY % local.blockinfo.attrib "">
+<!ENTITY % blockinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % blockinfo.element "INCLUDE">
+<![ %blockinfo.element; [
+<!--doc:Meta-information for a block element.-->
+<!ELEMENT blockinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of blockinfo.element-->]]>
+
+<!ENTITY % blockinfo.attlist "INCLUDE">
+<![ %blockinfo.attlist; [
+<!ATTLIST blockinfo
+ %common.attrib;
+ %blockinfo.role.attrib;
+ %local.blockinfo.attrib;
+>
+<!--end of blockinfo.attlist-->]]>
+<!--end of blockinfo.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Compound (section-ish) elements ...................................... -->
+
+<!-- Message set ...................... -->
+
+<!ENTITY % msgset.content.module "INCLUDE">
+<![%msgset.content.module;[
+<!ENTITY % msgset.module "INCLUDE">
+<![%msgset.module;[
+<!ENTITY % local.msgset.attrib "">
+<!ENTITY % msgset.role.attrib "%role.attrib;">
+
+<!ENTITY % msgset.element "INCLUDE">
+<![%msgset.element;[
+<!--doc:A detailed set of messages, usually error messages.-->
+<!ELEMENT msgset %ho; (blockinfo?, (%formalobject.title.content;)?,
+ (msgentry+|simplemsgentry+))>
+<!--end of msgset.element-->]]>
+
+<!ENTITY % msgset.attlist "INCLUDE">
+<![%msgset.attlist;[
+<!ATTLIST msgset
+ %common.attrib;
+ %msgset.role.attrib;
+ %local.msgset.attrib;
+>
+<!--end of msgset.attlist-->]]>
+<!--end of msgset.module-->]]>
+
+<!ENTITY % msgentry.module "INCLUDE">
+<![%msgentry.module;[
+<!ENTITY % local.msgentry.attrib "">
+<!ENTITY % msgentry.role.attrib "%role.attrib;">
+
+<!ENTITY % msgentry.element "INCLUDE">
+<![%msgentry.element;[
+<!--doc:A wrapper for an entry in a message set.-->
+<!ELEMENT msgentry %ho; (msg+, msginfo?, msgexplan*)>
+<!--end of msgentry.element-->]]>
+
+<!ENTITY % msgentry.attlist "INCLUDE">
+<![%msgentry.attlist;[
+<!ATTLIST msgentry
+ %common.attrib;
+ %msgentry.role.attrib;
+ %local.msgentry.attrib;
+>
+<!--end of msgentry.attlist-->]]>
+<!--end of msgentry.module-->]]>
+
+<!ENTITY % simplemsgentry.module "INCLUDE">
+<![ %simplemsgentry.module; [
+<!ENTITY % local.simplemsgentry.attrib "">
+<!ENTITY % simplemsgentry.role.attrib "%role.attrib;">
+
+<!ENTITY % simplemsgentry.element "INCLUDE">
+<![ %simplemsgentry.element; [
+<!--doc:A wrapper for a simpler entry in a message set.-->
+<!ELEMENT simplemsgentry %ho; (msgtext, msgexplan+)>
+<!--end of simplemsgentry.element-->]]>
+
+<!ENTITY % simplemsgentry.attlist "INCLUDE">
+<![ %simplemsgentry.attlist; [
+<!ATTLIST simplemsgentry
+ audience CDATA #IMPLIED
+ level CDATA #IMPLIED
+ origin CDATA #IMPLIED
+ %common.attrib;
+ %simplemsgentry.role.attrib;
+ %local.simplemsgentry.attrib;
+>
+<!--end of simplemsgentry.attlist-->]]>
+<!--end of simplemsgentry.module-->]]>
+
+<!ENTITY % msg.module "INCLUDE">
+<![%msg.module;[
+<!ENTITY % local.msg.attrib "">
+<!ENTITY % msg.role.attrib "%role.attrib;">
+
+<!ENTITY % msg.element "INCLUDE">
+<![%msg.element;[
+<!--doc:A message in a message set.-->
+<!ELEMENT msg %ho; (title?, msgmain, (msgsub | msgrel)*)>
+<!--end of msg.element-->]]>
+
+<!ENTITY % msg.attlist "INCLUDE">
+<![%msg.attlist;[
+<!ATTLIST msg
+ %common.attrib;
+ %msg.role.attrib;
+ %local.msg.attrib;
+>
+<!--end of msg.attlist-->]]>
+<!--end of msg.module-->]]>
+
+<!ENTITY % msgmain.module "INCLUDE">
+<![%msgmain.module;[
+<!ENTITY % local.msgmain.attrib "">
+<!ENTITY % msgmain.role.attrib "%role.attrib;">
+
+<!ENTITY % msgmain.element "INCLUDE">
+<![%msgmain.element;[
+<!--doc:The primary component of a message in a message set.-->
+<!ELEMENT msgmain %ho; (title?, msgtext)>
+<!--end of msgmain.element-->]]>
+
+<!ENTITY % msgmain.attlist "INCLUDE">
+<![%msgmain.attlist;[
+<!ATTLIST msgmain
+ %common.attrib;
+ %msgmain.role.attrib;
+ %local.msgmain.attrib;
+>
+<!--end of msgmain.attlist-->]]>
+<!--end of msgmain.module-->]]>
+
+<!ENTITY % msgsub.module "INCLUDE">
+<![%msgsub.module;[
+<!ENTITY % local.msgsub.attrib "">
+<!ENTITY % msgsub.role.attrib "%role.attrib;">
+
+<!ENTITY % msgsub.element "INCLUDE">
+<![%msgsub.element;[
+<!--doc:A subcomponent of a message in a message set.-->
+<!ELEMENT msgsub %ho; (title?, msgtext)>
+<!--end of msgsub.element-->]]>
+
+<!ENTITY % msgsub.attlist "INCLUDE">
+<![%msgsub.attlist;[
+<!ATTLIST msgsub
+ %common.attrib;
+ %msgsub.role.attrib;
+ %local.msgsub.attrib;
+>
+<!--end of msgsub.attlist-->]]>
+<!--end of msgsub.module-->]]>
+
+<!ENTITY % msgrel.module "INCLUDE">
+<![%msgrel.module;[
+<!ENTITY % local.msgrel.attrib "">
+<!ENTITY % msgrel.role.attrib "%role.attrib;">
+
+<!ENTITY % msgrel.element "INCLUDE">
+<![%msgrel.element;[
+<!--doc:A related component of a message in a message set.-->
+<!ELEMENT msgrel %ho; (title?, msgtext)>
+<!--end of msgrel.element-->]]>
+
+<!ENTITY % msgrel.attlist "INCLUDE">
+<![%msgrel.attlist;[
+<!ATTLIST msgrel
+ %common.attrib;
+ %msgrel.role.attrib;
+ %local.msgrel.attrib;
+>
+<!--end of msgrel.attlist-->]]>
+<!--end of msgrel.module-->]]>
+
+<!-- MsgText (defined in the Inlines section, below)-->
+
+<!ENTITY % msginfo.module "INCLUDE">
+<![%msginfo.module;[
+<!ENTITY % local.msginfo.attrib "">
+<!ENTITY % msginfo.role.attrib "%role.attrib;">
+
+<!ENTITY % msginfo.element "INCLUDE">
+<![%msginfo.element;[
+<!--doc:Information about a message in a message set.-->
+<!ELEMENT msginfo %ho; ((msglevel | msgorig | msgaud)*)>
+<!--end of msginfo.element-->]]>
+
+<!ENTITY % msginfo.attlist "INCLUDE">
+<![%msginfo.attlist;[
+<!ATTLIST msginfo
+ %common.attrib;
+ %msginfo.role.attrib;
+ %local.msginfo.attrib;
+>
+<!--end of msginfo.attlist-->]]>
+<!--end of msginfo.module-->]]>
+
+<!ENTITY % msglevel.module "INCLUDE">
+<![%msglevel.module;[
+<!ENTITY % local.msglevel.attrib "">
+<!ENTITY % msglevel.role.attrib "%role.attrib;">
+
+<!ENTITY % msglevel.element "INCLUDE">
+<![%msglevel.element;[
+<!--doc:The level of importance or severity of a message in a message set.-->
+<!ELEMENT msglevel %ho; (%smallcptr.char.mix;)*>
+<!--end of msglevel.element-->]]>
+
+<!ENTITY % msglevel.attlist "INCLUDE">
+<![%msglevel.attlist;[
+<!ATTLIST msglevel
+ %common.attrib;
+ %msglevel.role.attrib;
+ %local.msglevel.attrib;
+>
+<!--end of msglevel.attlist-->]]>
+<!--end of msglevel.module-->]]>
+
+<!ENTITY % msgorig.module "INCLUDE">
+<![%msgorig.module;[
+<!ENTITY % local.msgorig.attrib "">
+<!ENTITY % msgorig.role.attrib "%role.attrib;">
+
+<!ENTITY % msgorig.element "INCLUDE">
+<![%msgorig.element;[
+<!--doc:The origin of a message in a message set.-->
+<!ELEMENT msgorig %ho; (%smallcptr.char.mix;)*>
+<!--end of msgorig.element-->]]>
+
+<!ENTITY % msgorig.attlist "INCLUDE">
+<![%msgorig.attlist;[
+<!ATTLIST msgorig
+ %common.attrib;
+ %msgorig.role.attrib;
+ %local.msgorig.attrib;
+>
+<!--end of msgorig.attlist-->]]>
+<!--end of msgorig.module-->]]>
+
+<!ENTITY % msgaud.module "INCLUDE">
+<![%msgaud.module;[
+<!ENTITY % local.msgaud.attrib "">
+<!ENTITY % msgaud.role.attrib "%role.attrib;">
+
+<!ENTITY % msgaud.element "INCLUDE">
+<![%msgaud.element;[
+<!--doc:The audience to which a message in a message set is relevant.-->
+<!ELEMENT msgaud %ho; (%para.char.mix;)*>
+<!--end of msgaud.element-->]]>
+
+<!ENTITY % msgaud.attlist "INCLUDE">
+<![%msgaud.attlist;[
+<!ATTLIST msgaud
+ %common.attrib;
+ %msgaud.role.attrib;
+ %local.msgaud.attrib;
+>
+<!--end of msgaud.attlist-->]]>
+<!--end of msgaud.module-->]]>
+
+<!ENTITY % msgexplan.module "INCLUDE">
+<![%msgexplan.module;[
+<!ENTITY % local.msgexplan.attrib "">
+<!ENTITY % msgexplan.role.attrib "%role.attrib;">
+
+<!ENTITY % msgexplan.element "INCLUDE">
+<![%msgexplan.element;[
+<!--doc:Explanatory material relating to a message in a message set.-->
+<!ELEMENT msgexplan %ho; (title?, (%component.mix;)+)>
+<!--end of msgexplan.element-->]]>
+
+<!ENTITY % msgexplan.attlist "INCLUDE">
+<![%msgexplan.attlist;[
+<!ATTLIST msgexplan
+ %common.attrib;
+ %msgexplan.role.attrib;
+ %local.msgexplan.attrib;
+>
+<!--end of msgexplan.attlist-->]]>
+<!--end of msgexplan.module-->]]>
+<!--end of msgset.content.module-->]]>
+
+<!ENTITY % task.content.module "INCLUDE">
+<![%task.content.module;[
+<!ENTITY % task.module "INCLUDE">
+<![%task.module;[
+<!ENTITY % local.task.attrib "">
+<!ENTITY % task.role.attrib "%role.attrib;">
+
+<!ENTITY % task.element "INCLUDE">
+<![%task.element;[
+<!--doc:A task to be completed.-->
+<!ELEMENT task %ho; (blockinfo?,(%ndxterm.class;)*,
+ (%formalobject.title.content;),
+ tasksummary?,
+ taskprerequisites?,
+ procedure,
+ example*,
+ taskrelated?)>
+<!--end of task.element-->]]>
+
+<!ENTITY % task.attlist "INCLUDE">
+<![%task.attlist;[
+<!ATTLIST task
+ %common.attrib;
+ %task.role.attrib;
+ %local.task.attrib;
+>
+<!--end of task.attlist-->]]>
+<!--end of task.module-->]]>
+
+<!ENTITY % tasksummary.module "INCLUDE">
+<![%tasksummary.module;[
+<!ENTITY % local.tasksummary.attrib "">
+<!ENTITY % tasksummary.role.attrib "%role.attrib;">
+
+<!ENTITY % tasksummary.element "INCLUDE">
+<![%tasksummary.element;[
+<!--doc:A summary of a task.-->
+<!ELEMENT tasksummary %ho; (blockinfo?,
+ (%formalobject.title.content;)?,
+ (%component.mix;)+)>
+<!--end of tasksummary.element-->]]>
+
+<!ENTITY % tasksummary.attlist "INCLUDE">
+<![%tasksummary.attlist;[
+<!ATTLIST tasksummary
+ %common.attrib;
+ %tasksummary.role.attrib;
+ %local.tasksummary.attrib;
+>
+<!--end of tasksummary.attlist-->]]>
+<!--end of tasksummary.module-->]]>
+
+<!ENTITY % taskprerequisites.module "INCLUDE">
+<![%taskprerequisites.module;[
+<!ENTITY % local.taskprerequisites.attrib "">
+<!ENTITY % taskprerequisites.role.attrib "%role.attrib;">
+
+<!ENTITY % taskprerequisites.element "INCLUDE">
+<![%taskprerequisites.element;[
+<!--doc:The prerequisites for a task.-->
+<!ELEMENT taskprerequisites %ho; (blockinfo?,
+ (%formalobject.title.content;)?,
+ (%component.mix;)+)>
+<!--end of taskprerequisites.element-->]]>
+
+<!ENTITY % taskprerequisites.attlist "INCLUDE">
+<![%taskprerequisites.attlist;[
+<!ATTLIST taskprerequisites
+ %common.attrib;
+ %taskprerequisites.role.attrib;
+ %local.taskprerequisites.attrib;
+>
+<!--end of taskprerequisites.attlist-->]]>
+<!--end of taskprerequisites.module-->]]>
+
+<!ENTITY % taskrelated.module "INCLUDE">
+<![%taskrelated.module;[
+<!ENTITY % local.taskrelated.attrib "">
+<!ENTITY % taskrelated.role.attrib "%role.attrib;">
+
+<!ENTITY % taskrelated.element "INCLUDE">
+<![%taskrelated.element;[
+<!--doc:Information related to a task.-->
+<!ELEMENT taskrelated %ho; (blockinfo?,
+ (%formalobject.title.content;)?,
+ (%component.mix;)+)>
+<!--end of taskrelated.element-->]]>
+
+<!ENTITY % taskrelated.attlist "INCLUDE">
+<![%taskrelated.attlist;[
+<!ATTLIST taskrelated
+ %common.attrib;
+ %taskrelated.role.attrib;
+ %local.taskrelated.attrib;
+>
+<!--end of taskrelated.attlist-->]]>
+<!--end of taskrelated.module-->]]>
+<!--end of task.content.module-->]]>
+
+<!-- QandASet ........................ -->
+<!ENTITY % qandaset.content.module "INCLUDE">
+<![ %qandaset.content.module; [
+<!ENTITY % qandaset.module "INCLUDE">
+<![ %qandaset.module; [
+<!ENTITY % local.qandaset.attrib "">
+<!ENTITY % qandaset.role.attrib "%role.attrib;">
+
+<!ENTITY % qandaset.element "INCLUDE">
+<![ %qandaset.element; [
+<!--doc:A question-and-answer set.-->
+<!ELEMENT qandaset %ho; (blockinfo?, (%formalobject.title.content;)?,
+ (%qandaset.mix;)*,
+ (qandadiv+|qandaentry+))>
+<!--end of qandaset.element-->]]>
+
+<!ENTITY % qandaset.attlist "INCLUDE">
+<![ %qandaset.attlist; [
+<!ATTLIST qandaset
+ defaultlabel (qanda|number|none) #IMPLIED
+ %common.attrib;
+ %qandaset.role.attrib;
+ %local.qandaset.attrib;>
+<!--end of qandaset.attlist-->]]>
+<!--end of qandaset.module-->]]>
+
+<!ENTITY % qandadiv.module "INCLUDE">
+<![ %qandadiv.module; [
+<!ENTITY % local.qandadiv.attrib "">
+<!ENTITY % qandadiv.role.attrib "%role.attrib;">
+
+<!ENTITY % qandadiv.element "INCLUDE">
+<![ %qandadiv.element; [
+<!--doc:A titled division in a QandASet.-->
+<!ELEMENT qandadiv %ho; (blockinfo?, (%formalobject.title.content;)?,
+ (%qandaset.mix;)*,
+ (qandadiv+|qandaentry+))>
+<!--end of qandadiv.element-->]]>
+
+<!ENTITY % qandadiv.attlist "INCLUDE">
+<![ %qandadiv.attlist; [
+<!ATTLIST qandadiv
+ %common.attrib;
+ %qandadiv.role.attrib;
+ %local.qandadiv.attrib;>
+<!--end of qandadiv.attlist-->]]>
+<!--end of qandadiv.module-->]]>
+
+<!ENTITY % qandaentry.module "INCLUDE">
+<![ %qandaentry.module; [
+<!ENTITY % local.qandaentry.attrib "">
+<!ENTITY % qandaentry.role.attrib "%role.attrib;">
+
+<!ENTITY % qandaentry.element "INCLUDE">
+<![ %qandaentry.element; [
+<!--doc:A question/answer set within a QandASet.-->
+<!ELEMENT qandaentry %ho; (blockinfo?, revhistory?, question, answer*)>
+<!--end of qandaentry.element-->]]>
+
+<!ENTITY % qandaentry.attlist "INCLUDE">
+<![ %qandaentry.attlist; [
+<!ATTLIST qandaentry
+ %common.attrib;
+ %qandaentry.role.attrib;
+ %local.qandaentry.attrib;>
+<!--end of qandaentry.attlist-->]]>
+<!--end of qandaentry.module-->]]>
+
+<!ENTITY % question.module "INCLUDE">
+<![ %question.module; [
+<!ENTITY % local.question.attrib "">
+<!ENTITY % question.role.attrib "%role.attrib;">
+
+<!ENTITY % question.element "INCLUDE">
+<![ %question.element; [
+<!--doc:A question in a QandASet.-->
+<!ELEMENT question %ho; (label?, (%qandaset.mix;)+)>
+<!--end of question.element-->]]>
+
+<!ENTITY % question.attlist "INCLUDE">
+<![ %question.attlist; [
+<!ATTLIST question
+ %common.attrib;
+ %question.role.attrib;
+ %local.question.attrib;
+>
+<!--end of question.attlist-->]]>
+<!--end of question.module-->]]>
+
+<!ENTITY % answer.module "INCLUDE">
+<![ %answer.module; [
+<!ENTITY % local.answer.attrib "">
+<!ENTITY % answer.role.attrib "%role.attrib;">
+
+<!ENTITY % answer.element "INCLUDE">
+<![ %answer.element; [
+<!--doc:An answer to a question posed in a QandASet.-->
+<!ELEMENT answer %ho; (label?, (%qandaset.mix;)*, qandaentry*)>
+<!--end of answer.element-->]]>
+
+<!ENTITY % answer.attlist "INCLUDE">
+<![ %answer.attlist; [
+<!ATTLIST answer
+ %common.attrib;
+ %answer.role.attrib;
+ %local.answer.attrib;
+>
+<!--end of answer.attlist-->]]>
+<!--end of answer.module-->]]>
+
+<!ENTITY % label.module "INCLUDE">
+<![ %label.module; [
+<!ENTITY % local.label.attrib "">
+<!ENTITY % label.role.attrib "%role.attrib;">
+
+<!ENTITY % label.element "INCLUDE">
+<![ %label.element; [
+<!--doc:A label on a Question or Answer.-->
+<!ELEMENT label %ho; (%word.char.mix;)*>
+<!--end of label.element-->]]>
+
+<!ENTITY % label.attlist "INCLUDE">
+<![ %label.attlist; [
+<!ATTLIST label
+ %common.attrib;
+ %label.role.attrib;
+ %local.label.attrib;
+>
+<!--end of label.attlist-->]]>
+<!--end of label.module-->]]>
+<!--end of qandaset.content.module-->]]>
+
+<!-- Procedure ........................ -->
+
+<!ENTITY % procedure.content.module "INCLUDE">
+<![%procedure.content.module;[
+<!ENTITY % procedure.module "INCLUDE">
+<![%procedure.module;[
+<!ENTITY % local.procedure.attrib "">
+<!ENTITY % procedure.role.attrib "%role.attrib;">
+
+<!ENTITY % procedure.element "INCLUDE">
+<![%procedure.element;[
+<!--doc:A list of operations to be performed in a well-defined sequence.-->
+<!ELEMENT procedure %ho; (blockinfo?, (%formalobject.title.content;)?,
+ (%component.mix;)*, step+)>
+<!--end of procedure.element-->]]>
+
+<!ENTITY % procedure.attlist "INCLUDE">
+<![%procedure.attlist;[
+<!ATTLIST procedure
+ %common.attrib;
+ %procedure.role.attrib;
+ %local.procedure.attrib;
+>
+<!--end of procedure.attlist-->]]>
+<!--end of procedure.module-->]]>
+
+<!ENTITY % step.module "INCLUDE">
+<![%step.module;[
+<!ENTITY % local.step.attrib "">
+<!ENTITY % step.role.attrib "%role.attrib;">
+
+<!ENTITY % step.element "INCLUDE">
+<![%step.element;[
+<!--doc:A unit of action in a procedure.-->
+<!ELEMENT step %ho; (title?, (((%component.mix;)+, ((substeps|stepalternatives), (%component.mix;)*)?)
+ | ((substeps|stepalternatives), (%component.mix;)*)))>
+<!--end of step.element-->]]>
+
+<!-- Performance: Whether the Step must be performed -->
+<!-- not #REQUIRED! -->
+
+
+<!ENTITY % step.attlist "INCLUDE">
+<![%step.attlist;[
+<!ATTLIST step
+ performance (optional
+ |required) "required"
+ %common.attrib;
+ %step.role.attrib;
+ %local.step.attrib;
+>
+<!--end of step.attlist-->]]>
+<!--end of step.module-->]]>
+
+<!ENTITY % substeps.module "INCLUDE">
+<![%substeps.module;[
+<!ENTITY % local.substeps.attrib "">
+<!ENTITY % substeps.role.attrib "%role.attrib;">
+
+<!ENTITY % substeps.element "INCLUDE">
+<![%substeps.element;[
+<!--doc:A wrapper for steps that occur within steps in a procedure.-->
+<!ELEMENT substeps %ho; (step+)>
+<!--end of substeps.element-->]]>
+
+<!-- Performance: whether entire set of substeps must be performed -->
+<!-- not #REQUIRED! -->
+
+<!ENTITY % substeps.attlist "INCLUDE">
+<![%substeps.attlist;[
+<!ATTLIST substeps
+ performance (optional
+ |required) "required"
+ %common.attrib;
+ %substeps.role.attrib;
+ %local.substeps.attrib;
+>
+<!--end of substeps.attlist-->]]>
+<!--end of substeps.module-->]]>
+
+<!ENTITY % stepalternatives.module "INCLUDE">
+<![%stepalternatives.module;[
+<!ENTITY % local.stepalternatives.attrib "">
+<!ENTITY % stepalternatives.role.attrib "%role.attrib;">
+
+<!ENTITY % stepalternatives.element "INCLUDE">
+<![%stepalternatives.element;[
+<!--doc:Alternative steps in a procedure.-->
+<!ELEMENT stepalternatives %ho; (step+)>
+<!--end of stepalternatives.element-->]]>
+
+<!-- Performance: Whether (one of) the alternatives must be performed -->
+<!-- not #REQUIRED! -->
+
+<!ENTITY % stepalternatives.attlist "INCLUDE">
+<![%stepalternatives.attlist;[
+<!ATTLIST stepalternatives
+ performance (optional
+ |required) "required"
+ %common.attrib;
+ %stepalternatives.role.attrib;
+ %local.stepalternatives.attrib;
+>
+<!--end of stepalternatives.attlist-->]]>
+<!--end of stepalternatives.module-->]]>
+<!--end of procedure.content.module-->]]>
+
+<!-- Sidebar .......................... -->
+
+<!ENTITY % sidebar.content.model "INCLUDE">
+<![ %sidebar.content.model; [
+
+<!ENTITY % sidebarinfo.module "INCLUDE">
+<![ %sidebarinfo.module; [
+<!ENTITY % local.sidebarinfo.attrib "">
+<!ENTITY % sidebarinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % sidebarinfo.element "INCLUDE">
+<![ %sidebarinfo.element; [
+<!--doc:Meta-information for a Sidebar.-->
+<!ELEMENT sidebarinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of sidebarinfo.element-->]]>
+
+<!ENTITY % sidebarinfo.attlist "INCLUDE">
+<![ %sidebarinfo.attlist; [
+<!ATTLIST sidebarinfo
+ %common.attrib;
+ %sidebarinfo.role.attrib;
+ %local.sidebarinfo.attrib;
+>
+<!--end of sidebarinfo.attlist-->]]>
+<!--end of sidebarinfo.module-->]]>
+
+<!ENTITY % sidebar.module "INCLUDE">
+<![%sidebar.module;[
+<!ENTITY % local.sidebar.attrib "">
+<!ENTITY % sidebar.role.attrib "%role.attrib;">
+
+<!ENTITY % sidebar.element "INCLUDE">
+<![%sidebar.element;[
+<!--doc:A portion of a document that is isolated from the main narrative flow.-->
+<!ELEMENT sidebar %ho; (sidebarinfo?,
+ (%formalobject.title.content;)?,
+ (%sidebar.mix;)+)>
+<!--end of sidebar.element-->]]>
+
+<!ENTITY % sidebar.attlist "INCLUDE">
+<![%sidebar.attlist;[
+<!ATTLIST sidebar
+ %common.attrib;
+ %sidebar.role.attrib;
+ %local.sidebar.attrib;
+>
+<!--end of sidebar.attlist-->]]>
+<!--end of sidebar.module-->]]>
+<!--end of sidebar.content.model-->]]>
+
+<!-- ...................................................................... -->
+<!-- Paragraph-related elements ........................................... -->
+
+<!ENTITY % abstract.module "INCLUDE">
+<![%abstract.module;[
+<!ENTITY % local.abstract.attrib "">
+<!ENTITY % abstract.role.attrib "%role.attrib;">
+
+<!ENTITY % abstract.element "INCLUDE">
+<![%abstract.element;[
+<!--doc:A summary.-->
+<!ELEMENT abstract %ho; (title?, (%para.class;)+)>
+<!--end of abstract.element-->]]>
+
+<!ENTITY % abstract.attlist "INCLUDE">
+<![%abstract.attlist;[
+<!ATTLIST abstract
+ %common.attrib;
+ %abstract.role.attrib;
+ %local.abstract.attrib;
+>
+<!--end of abstract.attlist-->]]>
+<!--end of abstract.module-->]]>
+
+<!ENTITY % authorblurb.module "INCLUDE">
+<![%authorblurb.module;[
+<!ENTITY % local.authorblurb.attrib "">
+<!ENTITY % authorblurb.role.attrib "%role.attrib;">
+
+<!ENTITY % authorblurb.element "INCLUDE">
+<![%authorblurb.element;[
+<!--doc:A short description or note about an author.-->
+<!ELEMENT authorblurb %ho; (title?, (%para.class;)+)>
+<!--end of authorblurb.element-->]]>
+
+<!ENTITY % authorblurb.attlist "INCLUDE">
+<![%authorblurb.attlist;[
+<!ATTLIST authorblurb
+ %common.attrib;
+ %authorblurb.role.attrib;
+ %local.authorblurb.attrib;
+>
+<!--end of authorblurb.attlist-->]]>
+<!--end of authorblurb.module-->]]>
+
+<!ENTITY % personblurb.module "INCLUDE">
+<![%personblurb.module;[
+<!ENTITY % local.personblurb.attrib "">
+<!ENTITY % personblurb.role.attrib "%role.attrib;">
+
+<!ENTITY % personblurb.element "INCLUDE">
+<![%personblurb.element;[
+<!--doc:A short description or note about a person.-->
+<!ELEMENT personblurb %ho; (title?, (%para.class;)+)>
+<!--end of personblurb.element-->]]>
+
+<!ENTITY % personblurb.attlist "INCLUDE">
+<![%personblurb.attlist;[
+<!ATTLIST personblurb
+ %common.attrib;
+ %personblurb.role.attrib;
+ %local.personblurb.attrib;
+>
+<!--end of personblurb.attlist-->]]>
+<!--end of personblurb.module-->]]>
+
+<!ENTITY % blockquote.module "INCLUDE">
+<![%blockquote.module;[
+
+<!ENTITY % local.blockquote.attrib "">
+<!ENTITY % blockquote.role.attrib "%role.attrib;">
+
+<!ENTITY % blockquote.element "INCLUDE">
+<![%blockquote.element;[
+<!--doc:A quotation set off from the main text.-->
+<!ELEMENT blockquote %ho; (blockinfo?, title?, attribution?, (%component.mix;)+)
+ %blockquote.exclusion;>
+<!--end of blockquote.element-->]]>
+
+<!ENTITY % blockquote.attlist "INCLUDE">
+<![%blockquote.attlist;[
+<!ATTLIST blockquote
+ %common.attrib;
+ %blockquote.role.attrib;
+ %local.blockquote.attrib;
+>
+<!--end of blockquote.attlist-->]]>
+<!--end of blockquote.module-->]]>
+
+<!ENTITY % attribution.module "INCLUDE">
+<![%attribution.module;[
+<!ENTITY % local.attribution.attrib "">
+<!ENTITY % attribution.role.attrib "%role.attrib;">
+
+<!ENTITY % attribution.element "INCLUDE">
+<![%attribution.element;[
+<!--doc:The source of a block quote or epigraph.-->
+<!ELEMENT attribution %ho; (%para.char.mix;)*>
+<!--end of attribution.element-->]]>
+
+<!ENTITY % attribution.attlist "INCLUDE">
+<![%attribution.attlist;[
+<!ATTLIST attribution
+ %common.attrib;
+ %attribution.role.attrib;
+ %local.attribution.attrib;
+>
+<!--end of attribution.attlist-->]]>
+<!--end of attribution.module-->]]>
+
+<!ENTITY % bridgehead.module "INCLUDE">
+<![%bridgehead.module;[
+<!ENTITY % local.bridgehead.attrib "">
+<!ENTITY % bridgehead.role.attrib "%role.attrib;">
+
+<!ENTITY % bridgehead.element "INCLUDE">
+<![%bridgehead.element;[
+<!--doc:A free-floating heading.-->
+<!ELEMENT bridgehead %ho; (%title.char.mix;)*>
+<!--end of bridgehead.element-->]]>
+
+<!-- Renderas: Indicates the format in which the BridgeHead
+ should appear -->
+
+
+<!ENTITY % bridgehead.attlist "INCLUDE">
+<![%bridgehead.attlist;[
+<!ATTLIST bridgehead
+ renderas (other
+ |sect1
+ |sect2
+ |sect3
+ |sect4
+ |sect5) #IMPLIED
+ %common.attrib;
+ %bridgehead.role.attrib;
+ %local.bridgehead.attrib;
+>
+<!--end of bridgehead.attlist-->]]>
+<!--end of bridgehead.module-->]]>
+
+<!ENTITY % remark.module "INCLUDE">
+<![%remark.module;[
+<!ENTITY % local.remark.attrib "">
+<!ENTITY % remark.role.attrib "%role.attrib;">
+
+<!ENTITY % remark.element "INCLUDE">
+<![%remark.element;[
+<!--doc:A remark (or comment) intended for presentation in a draft manuscript.-->
+<!ELEMENT remark %ho; (%para.char.mix;)*
+ %remark.exclusion;>
+<!--end of remark.element-->]]>
+
+<!ENTITY % remark.attlist "INCLUDE">
+<![%remark.attlist;[
+<!ATTLIST remark
+ %common.attrib;
+ %remark.role.attrib;
+ %local.remark.attrib;
+>
+<!--end of remark.attlist-->]]>
+<!--end of remark.module-->]]>
+
+<!ENTITY % epigraph.module "INCLUDE">
+<![%epigraph.module;[
+<!ENTITY % local.epigraph.attrib "">
+<!ENTITY % epigraph.role.attrib "%role.attrib;">
+
+<!ENTITY % epigraph.element "INCLUDE">
+<![%epigraph.element;[
+<!--doc:A short inscription at the beginning of a document or component.-->
+<!ELEMENT epigraph %ho; (attribution?, ((%para.class;)|literallayout)+)>
+<!--end of epigraph.element-->]]>
+
+<!ENTITY % epigraph.attlist "INCLUDE">
+<![%epigraph.attlist;[
+<!ATTLIST epigraph
+ %common.attrib;
+ %epigraph.role.attrib;
+ %local.epigraph.attrib;
+>
+<!--end of epigraph.attlist-->]]>
+<!-- Attribution (defined above)-->
+<!--end of epigraph.module-->]]>
+
+<!ENTITY % footnote.module "INCLUDE">
+<![%footnote.module;[
+<!ENTITY % local.footnote.attrib "">
+<!ENTITY % footnote.role.attrib "%role.attrib;">
+
+<!ENTITY % footnote.element "INCLUDE">
+<![%footnote.element;[
+<!--doc:A footnote.-->
+<!ELEMENT footnote %ho; ((%footnote.mix;)+)
+ %footnote.exclusion;>
+<!--end of footnote.element-->]]>
+
+<!ENTITY % footnote.attlist "INCLUDE">
+<![%footnote.attlist;[
+<!ATTLIST footnote
+ %label.attrib;
+ %common.attrib;
+ %footnote.role.attrib;
+ %local.footnote.attrib;
+>
+<!--end of footnote.attlist-->]]>
+<!--end of footnote.module-->]]>
+
+<!ENTITY % highlights.module "INCLUDE">
+<![%highlights.module;[
+<!ENTITY % local.highlights.attrib "">
+<!ENTITY % highlights.role.attrib "%role.attrib;">
+
+<!ENTITY % highlights.element "INCLUDE">
+<![%highlights.element;[
+<!--doc:A summary of the main points of the discussed component.-->
+<!ELEMENT highlights %ho; ((%highlights.mix;)+)
+ %highlights.exclusion;>
+<!--end of highlights.element-->]]>
+
+<!ENTITY % highlights.attlist "INCLUDE">
+<![%highlights.attlist;[
+<!ATTLIST highlights
+ %common.attrib;
+ %highlights.role.attrib;
+ %local.highlights.attrib;
+>
+<!--end of highlights.attlist-->]]>
+<!--end of highlights.module-->]]>
+
+<!ENTITY % formalpara.module "INCLUDE">
+<![%formalpara.module;[
+<!ENTITY % local.formalpara.attrib "">
+<!ENTITY % formalpara.role.attrib "%role.attrib;">
+
+<!ENTITY % formalpara.element "INCLUDE">
+<![%formalpara.element;[
+<!--doc:A paragraph with a title.-->
+<!ELEMENT formalpara %ho; (title, (%ndxterm.class;)*, para)>
+<!--end of formalpara.element-->]]>
+
+<!ENTITY % formalpara.attlist "INCLUDE">
+<![%formalpara.attlist;[
+<!ATTLIST formalpara
+ %common.attrib;
+ %formalpara.role.attrib;
+ %local.formalpara.attrib;
+>
+<!--end of formalpara.attlist-->]]>
+<!--end of formalpara.module-->]]>
+
+<!ENTITY % para.module "INCLUDE">
+<![%para.module;[
+<!ENTITY % local.para.attrib "">
+<!ENTITY % para.role.attrib "%role.attrib;">
+
+<!ENTITY % para.element "INCLUDE">
+<![%para.element;[
+<!--doc:A paragraph.-->
+<!ELEMENT para %ho; (%para.char.mix; | %para.mix;)*>
+<!--end of para.element-->]]>
+
+<!ENTITY % para.attlist "INCLUDE">
+<![%para.attlist;[
+<!ATTLIST para
+ %common.attrib;
+ %para.role.attrib;
+ %local.para.attrib;
+>
+<!--end of para.attlist-->]]>
+<!--end of para.module-->]]>
+
+<!ENTITY % simpara.module "INCLUDE">
+<![%simpara.module;[
+<!ENTITY % local.simpara.attrib "">
+<!ENTITY % simpara.role.attrib "%role.attrib;">
+
+<!ENTITY % simpara.element "INCLUDE">
+<![%simpara.element;[
+<!--doc:A paragraph that contains only text and inline markup, no block elements.-->
+<!ELEMENT simpara %ho; (%para.char.mix;)*>
+<!--end of simpara.element-->]]>
+
+<!ENTITY % simpara.attlist "INCLUDE">
+<![%simpara.attlist;[
+<!ATTLIST simpara
+ %common.attrib;
+ %simpara.role.attrib;
+ %local.simpara.attrib;
+>
+<!--end of simpara.attlist-->]]>
+<!--end of simpara.module-->]]>
+
+<!ENTITY % admon.module "INCLUDE">
+<![%admon.module;[
+<!ENTITY % local.admon.attrib "">
+<!ENTITY % admon.role.attrib "%role.attrib;">
+
+
+<!ENTITY % caution.element "INCLUDE">
+<![%caution.element;[
+<!--doc:A note of caution.-->
+<!ELEMENT caution %ho; (title?, (%admon.mix;)+)
+ %admon.exclusion;>
+<!--end of caution.element-->]]>
+
+<!ENTITY % caution.attlist "INCLUDE">
+<![%caution.attlist;[
+<!ATTLIST caution
+ %common.attrib;
+ %admon.role.attrib;
+ %local.admon.attrib;
+>
+<!--end of caution.attlist-->]]>
+
+
+<!ENTITY % important.element "INCLUDE">
+<![%important.element;[
+<!--doc:An admonition set off from the text.-->
+<!ELEMENT important %ho; (title?, (%admon.mix;)+)
+ %admon.exclusion;>
+<!--end of important.element-->]]>
+
+<!ENTITY % important.attlist "INCLUDE">
+<![%important.attlist;[
+<!ATTLIST important
+ %common.attrib;
+ %admon.role.attrib;
+ %local.admon.attrib;
+>
+<!--end of important.attlist-->]]>
+
+
+<!ENTITY % note.element "INCLUDE">
+<![%note.element;[
+<!--doc:A message set off from the text.-->
+<!ELEMENT note %ho; (title?, (%admon.mix;)+)
+ %admon.exclusion;>
+<!--end of note.element-->]]>
+
+<!ENTITY % note.attlist "INCLUDE">
+<![%note.attlist;[
+<!ATTLIST note
+ %common.attrib;
+ %admon.role.attrib;
+ %local.admon.attrib;
+>
+<!--end of note.attlist-->]]>
+
+<!ENTITY % tip.element "INCLUDE">
+<![%tip.element;[
+<!--doc:A suggestion to the user, set off from the text.-->
+<!ELEMENT tip %ho; (title?, (%admon.mix;)+)
+ %admon.exclusion;>
+<!--end of tip.element-->]]>
+
+<!ENTITY % tip.attlist "INCLUDE">
+<![%tip.attlist;[
+<!ATTLIST tip
+ %common.attrib;
+ %admon.role.attrib;
+ %local.admon.attrib;
+>
+<!--end of tip.attlist-->]]>
+
+
+<!ENTITY % warning.element "INCLUDE">
+<![%warning.element;[
+<!--doc:An admonition set off from the text.-->
+<!ELEMENT warning %ho; (title?, (%admon.mix;)+)
+ %admon.exclusion;>
+<!--end of warning.element-->]]>
+
+<!ENTITY % warning.attlist "INCLUDE">
+<![%warning.attlist;[
+<!ATTLIST warning
+ %common.attrib;
+ %admon.role.attrib;
+ %local.admon.attrib;
+>
+<!--end of warning.attlist-->]]>
+
+<!--end of admon.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Lists ................................................................ -->
+
+<!-- GlossList ........................ -->
+
+<!ENTITY % glosslist.module "INCLUDE">
+<![%glosslist.module;[
+<!ENTITY % local.glosslist.attrib "">
+<!ENTITY % glosslist.role.attrib "%role.attrib;">
+
+<!ENTITY % glosslist.element "INCLUDE">
+<![%glosslist.element;[
+<!--doc:A wrapper for a set of GlossEntrys.-->
+<!ELEMENT glosslist %ho; (blockinfo?, (%formalobject.title.content;)?, glossentry+)>
+<!--end of glosslist.element-->]]>
+
+<!ENTITY % glosslist.attlist "INCLUDE">
+<![%glosslist.attlist;[
+<!ATTLIST glosslist
+ %common.attrib;
+ %glosslist.role.attrib;
+ %local.glosslist.attrib;
+>
+<!--end of glosslist.attlist-->]]>
+<!--end of glosslist.module-->]]>
+
+<!ENTITY % glossentry.content.module "INCLUDE">
+<![%glossentry.content.module;[
+<!ENTITY % glossentry.module "INCLUDE">
+<![%glossentry.module;[
+<!ENTITY % local.glossentry.attrib "">
+<!ENTITY % glossentry.role.attrib "%role.attrib;">
+
+<!ENTITY % glossentry.element "INCLUDE">
+<![%glossentry.element;[
+<!--doc:An entry in a Glossary or GlossList.-->
+<!ELEMENT glossentry %ho; (glossterm, acronym?, abbrev?,
+ (%ndxterm.class;)*,
+ revhistory?, (glosssee|glossdef+))>
+<!--end of glossentry.element-->]]>
+
+<!-- SortAs: String by which the GlossEntry is to be sorted
+ (alphabetized) in lieu of its proper content -->
+
+
+<!ENTITY % glossentry.attlist "INCLUDE">
+<![%glossentry.attlist;[
+<!ATTLIST glossentry
+ sortas CDATA #IMPLIED
+ %common.attrib;
+ %glossentry.role.attrib;
+ %local.glossentry.attrib;
+>
+<!--end of glossentry.attlist-->]]>
+<!--end of glossentry.module-->]]>
+
+<!-- GlossTerm (defined in the Inlines section, below)-->
+<!ENTITY % glossdef.module "INCLUDE">
+<![%glossdef.module;[
+<!ENTITY % local.glossdef.attrib "">
+<!ENTITY % glossdef.role.attrib "%role.attrib;">
+
+<!ENTITY % glossdef.element "INCLUDE">
+<![%glossdef.element;[
+<!--doc:A definition in a GlossEntry.-->
+<!ELEMENT glossdef %ho; ((%glossdef.mix;)+, glossseealso*)>
+<!--end of glossdef.element-->]]>
+
+<!-- Subject: List of subjects; keywords for the definition -->
+
+
+<!ENTITY % glossdef.attlist "INCLUDE">
+<![%glossdef.attlist;[
+<!ATTLIST glossdef
+ subject CDATA #IMPLIED
+ %common.attrib;
+ %glossdef.role.attrib;
+ %local.glossdef.attrib;
+>
+<!--end of glossdef.attlist-->]]>
+<!--end of glossdef.module-->]]>
+
+<!ENTITY % glosssee.module "INCLUDE">
+<![%glosssee.module;[
+<!ENTITY % local.glosssee.attrib "">
+<!ENTITY % glosssee.role.attrib "%role.attrib;">
+
+<!ENTITY % glosssee.element "INCLUDE">
+<![%glosssee.element;[
+<!--doc:A cross-reference from one GlossEntry to another.-->
+<!ELEMENT glosssee %ho; (%para.char.mix;)*>
+<!--end of glosssee.element-->]]>
+
+<!-- OtherTerm: Reference to the GlossEntry whose GlossTerm
+ should be displayed at the point of the GlossSee -->
+
+
+<!ENTITY % glosssee.attlist "INCLUDE">
+<![%glosssee.attlist;[
+<!ATTLIST glosssee
+ otherterm IDREF #IMPLIED
+ %common.attrib;
+ %glosssee.role.attrib;
+ %local.glosssee.attrib;
+>
+<!--end of glosssee.attlist-->]]>
+<!--end of glosssee.module-->]]>
+
+<!ENTITY % glossseealso.module "INCLUDE">
+<![%glossseealso.module;[
+<!ENTITY % local.glossseealso.attrib "">
+<!ENTITY % glossseealso.role.attrib "%role.attrib;">
+
+<!ENTITY % glossseealso.element "INCLUDE">
+<![%glossseealso.element;[
+<!--doc:A cross-reference from one GlossEntry to another.-->
+<!ELEMENT glossseealso %ho; (%para.char.mix;)*>
+<!--end of glossseealso.element-->]]>
+
+<!-- OtherTerm: Reference to the GlossEntry whose GlossTerm
+ should be displayed at the point of the GlossSeeAlso -->
+
+
+<!ENTITY % glossseealso.attlist "INCLUDE">
+<![%glossseealso.attlist;[
+<!ATTLIST glossseealso
+ otherterm IDREF #IMPLIED
+ %common.attrib;
+ %glossseealso.role.attrib;
+ %local.glossseealso.attrib;
+>
+<!--end of glossseealso.attlist-->]]>
+<!--end of glossseealso.module-->]]>
+<!--end of glossentry.content.module-->]]>
+
+<!-- ItemizedList and OrderedList ..... -->
+
+<!ENTITY % itemizedlist.module "INCLUDE">
+<![%itemizedlist.module;[
+<!ENTITY % local.itemizedlist.attrib "">
+<!ENTITY % itemizedlist.role.attrib "%role.attrib;">
+
+<!ENTITY % itemizedlist.element "INCLUDE">
+<![%itemizedlist.element;[
+<!--doc:A list in which each entry is marked with a bullet or other dingbat.-->
+<!ELEMENT itemizedlist %ho; (blockinfo?, (%formalobject.title.content;)?,
+ (%listpreamble.mix;)*, listitem+)>
+
+<!--end of itemizedlist.element-->]]>
+
+<!-- Spacing: Whether the vertical space in the list should be
+ compressed -->
+<!-- Mark: Keyword, e.g., bullet, dash, checkbox, none;
+ list of keywords and defaults are implementation specific -->
+
+
+<!ENTITY % itemizedlist.attlist "INCLUDE">
+<![%itemizedlist.attlist;[
+<!ATTLIST itemizedlist
+ spacing (normal
+ |compact) #IMPLIED
+ %mark.attrib;
+ %common.attrib;
+ %itemizedlist.role.attrib;
+ %local.itemizedlist.attrib;
+>
+<!--end of itemizedlist.attlist-->]]>
+<!--end of itemizedlist.module-->]]>
+
+<!ENTITY % orderedlist.module "INCLUDE">
+<![%orderedlist.module;[
+<!ENTITY % local.orderedlist.attrib "">
+<!ENTITY % orderedlist.role.attrib "%role.attrib;">
+
+<!ENTITY % orderedlist.element "INCLUDE">
+<![%orderedlist.element;[
+<!--doc:A list in which each entry is marked with a sequentially incremented label.-->
+<!ELEMENT orderedlist %ho; (blockinfo?, (%formalobject.title.content;)?,
+ (%listpreamble.mix;)*, listitem+)>
+
+<!--end of orderedlist.element-->]]>
+
+<!-- Numeration: Style of ListItem numbered; default is expected
+ to be Arabic -->
+<!-- InheritNum: Specifies for a nested list that the numbering
+ of ListItems should include the number of the item
+ within which they are nested (e.g., 1a and 1b within 1,
+ rather than a and b) -->
+<!-- Continuation: Where list numbering begins afresh (Restarts,
+ the default) or continues that of the immediately preceding
+ list (Continues) -->
+<!-- Spacing: Whether the vertical space in the list should be
+ compressed -->
+
+
+<!ENTITY % orderedlist.attlist "INCLUDE">
+<![%orderedlist.attlist;[
+<!ATTLIST orderedlist
+ numeration (arabic
+ |upperalpha
+ |loweralpha
+ |upperroman
+ |lowerroman) #IMPLIED
+ inheritnum (inherit
+ |ignore) "ignore"
+ continuation (continues
+ |restarts) "restarts"
+ spacing (normal
+ |compact) #IMPLIED
+ %common.attrib;
+ %orderedlist.role.attrib;
+ %local.orderedlist.attrib;
+>
+<!--end of orderedlist.attlist-->]]>
+<!--end of orderedlist.module-->]]>
+
+<!ENTITY % listitem.module "INCLUDE">
+<![%listitem.module;[
+<!ENTITY % local.listitem.attrib "">
+<!ENTITY % listitem.role.attrib "%role.attrib;">
+
+<!ENTITY % listitem.element "INCLUDE">
+<![%listitem.element;[
+<!--doc:A wrapper for the elements of a list item.-->
+<!ELEMENT listitem %ho; ((%component.mix;)+)>
+<!--end of listitem.element-->]]>
+
+<!-- Override: Indicates the mark to be used for this ListItem
+ instead of the default mark or the mark specified by
+ the Mark attribute on the enclosing ItemizedList -->
+
+
+<!ENTITY % listitem.attlist "INCLUDE">
+<![%listitem.attlist;[
+<!ATTLIST listitem
+ override CDATA #IMPLIED
+ %common.attrib;
+ %listitem.role.attrib;
+ %local.listitem.attrib;
+>
+<!--end of listitem.attlist-->]]>
+<!--end of listitem.module-->]]>
+
+<!-- SegmentedList .................... -->
+<!ENTITY % segmentedlist.content.module "INCLUDE">
+<![%segmentedlist.content.module;[
+<!ENTITY % segmentedlist.module "INCLUDE">
+<![%segmentedlist.module;[
+<!ENTITY % local.segmentedlist.attrib "">
+<!ENTITY % segmentedlist.role.attrib "%role.attrib;">
+
+<!ENTITY % segmentedlist.element "INCLUDE">
+<![%segmentedlist.element;[
+<!--doc:A segmented list, a list of sets of elements.-->
+<!ELEMENT segmentedlist %ho; ((%formalobject.title.content;)?,
+ segtitle+,
+ seglistitem+)>
+<!--end of segmentedlist.element-->]]>
+
+<!ENTITY % segmentedlist.attlist "INCLUDE">
+<![%segmentedlist.attlist;[
+<!ATTLIST segmentedlist
+ %common.attrib;
+ %segmentedlist.role.attrib;
+ %local.segmentedlist.attrib;
+>
+<!--end of segmentedlist.attlist-->]]>
+<!--end of segmentedlist.module-->]]>
+
+<!ENTITY % segtitle.module "INCLUDE">
+<![%segtitle.module;[
+<!ENTITY % local.segtitle.attrib "">
+<!ENTITY % segtitle.role.attrib "%role.attrib;">
+
+<!ENTITY % segtitle.element "INCLUDE">
+<![%segtitle.element;[
+<!--doc:The title of an element of a list item in a segmented list.-->
+<!ELEMENT segtitle %ho; (%title.char.mix;)*>
+<!--end of segtitle.element-->]]>
+
+<!ENTITY % segtitle.attlist "INCLUDE">
+<![%segtitle.attlist;[
+<!ATTLIST segtitle
+ %common.attrib;
+ %segtitle.role.attrib;
+ %local.segtitle.attrib;
+>
+<!--end of segtitle.attlist-->]]>
+<!--end of segtitle.module-->]]>
+
+<!ENTITY % seglistitem.module "INCLUDE">
+<![%seglistitem.module;[
+<!ENTITY % local.seglistitem.attrib "">
+<!ENTITY % seglistitem.role.attrib "%role.attrib;">
+
+<!ENTITY % seglistitem.element "INCLUDE">
+<![%seglistitem.element;[
+<!--doc:A list item in a segmented list.-->
+<!ELEMENT seglistitem %ho; (seg+)>
+<!--end of seglistitem.element-->]]>
+
+<!ENTITY % seglistitem.attlist "INCLUDE">
+<![%seglistitem.attlist;[
+<!ATTLIST seglistitem
+ %common.attrib;
+ %seglistitem.role.attrib;
+ %local.seglistitem.attrib;
+>
+<!--end of seglistitem.attlist-->]]>
+<!--end of seglistitem.module-->]]>
+
+<!ENTITY % seg.module "INCLUDE">
+<![%seg.module;[
+<!ENTITY % local.seg.attrib "">
+<!ENTITY % seg.role.attrib "%role.attrib;">
+
+<!ENTITY % seg.element "INCLUDE">
+<![%seg.element;[
+<!--doc:An element of a list item in a segmented list.-->
+<!ELEMENT seg %ho; (%para.char.mix;)*>
+<!--end of seg.element-->]]>
+
+<!ENTITY % seg.attlist "INCLUDE">
+<![%seg.attlist;[
+<!ATTLIST seg
+ %common.attrib;
+ %seg.role.attrib;
+ %local.seg.attrib;
+>
+<!--end of seg.attlist-->]]>
+<!--end of seg.module-->]]>
+<!--end of segmentedlist.content.module-->]]>
+
+<!-- SimpleList ....................... -->
+
+<!ENTITY % simplelist.content.module "INCLUDE">
+<![%simplelist.content.module;[
+<!ENTITY % simplelist.module "INCLUDE">
+<![%simplelist.module;[
+<!ENTITY % local.simplelist.attrib "">
+<!ENTITY % simplelist.role.attrib "%role.attrib;">
+
+<!ENTITY % simplelist.element "INCLUDE">
+<![%simplelist.element;[
+<!--doc:An undecorated list of single words or short phrases.-->
+<!ELEMENT simplelist %ho; (member+)>
+<!--end of simplelist.element-->]]>
+
+<!-- Columns: The number of columns the array should contain -->
+<!-- Type: How the Members of the SimpleList should be
+ formatted: Inline (members separated with commas etc.
+ inline), Vert (top to bottom in n Columns), or Horiz (in
+ the direction of text flow) in n Columns. If Column
+ is 1 or implied, Type=Vert and Type=Horiz give the same
+ results. -->
+
+
+<!ENTITY % simplelist.attlist "INCLUDE">
+<![%simplelist.attlist;[
+<!ATTLIST simplelist
+ columns CDATA #IMPLIED
+ type (inline
+ |vert
+ |horiz) "vert"
+ %common.attrib;
+ %simplelist.role.attrib;
+ %local.simplelist.attrib;
+>
+<!--end of simplelist.attlist-->]]>
+<!--end of simplelist.module-->]]>
+
+<!ENTITY % member.module "INCLUDE">
+<![%member.module;[
+<!ENTITY % local.member.attrib "">
+<!ENTITY % member.role.attrib "%role.attrib;">
+
+<!ENTITY % member.element "INCLUDE">
+<![%member.element;[
+<!--doc:An element of a simple list.-->
+<!ELEMENT member %ho; (%para.char.mix;)*>
+<!--end of member.element-->]]>
+
+<!ENTITY % member.attlist "INCLUDE">
+<![%member.attlist;[
+<!ATTLIST member
+ %common.attrib;
+ %member.role.attrib;
+ %local.member.attrib;
+>
+<!--end of member.attlist-->]]>
+<!--end of member.module-->]]>
+<!--end of simplelist.content.module-->]]>
+
+<!-- VariableList ..................... -->
+
+<!ENTITY % variablelist.content.module "INCLUDE">
+<![%variablelist.content.module;[
+<!ENTITY % variablelist.module "INCLUDE">
+<![%variablelist.module;[
+<!ENTITY % local.variablelist.attrib "">
+<!ENTITY % variablelist.role.attrib "%role.attrib;">
+
+<!ENTITY % variablelist.element "INCLUDE">
+<![%variablelist.element;[
+<!--doc:A list in which each entry is composed of a set of one or more terms and an associated description.-->
+<!ELEMENT variablelist %ho; (blockinfo?, (%formalobject.title.content;)?,
+ (%listpreamble.mix;)*, varlistentry+)>
+<!--end of variablelist.element-->]]>
+
+<!-- TermLength: Length beyond which the presentation engine
+ may consider the Term too long and select an alternate
+ presentation of the Term and, or, its associated ListItem. -->
+
+
+<!ENTITY % variablelist.attlist "INCLUDE">
+<![%variablelist.attlist;[
+<!ATTLIST variablelist
+ termlength CDATA #IMPLIED
+ spacing (normal
+ |compact) #IMPLIED
+ %common.attrib;
+ %variablelist.role.attrib;
+ %local.variablelist.attrib;
+>
+<!--end of variablelist.attlist-->]]>
+<!--end of variablelist.module-->]]>
+
+<!ENTITY % varlistentry.module "INCLUDE">
+<![%varlistentry.module;[
+<!ENTITY % local.varlistentry.attrib "">
+<!ENTITY % varlistentry.role.attrib "%role.attrib;">
+
+<!ENTITY % varlistentry.element "INCLUDE">
+<![%varlistentry.element;[
+<!--doc:A wrapper for a set of terms and the associated description in a variable list.-->
+<!ELEMENT varlistentry %ho; (term+, listitem)>
+<!--end of varlistentry.element-->]]>
+
+<!ENTITY % varlistentry.attlist "INCLUDE">
+<![%varlistentry.attlist;[
+<!ATTLIST varlistentry
+ %common.attrib;
+ %varlistentry.role.attrib;
+ %local.varlistentry.attrib;
+>
+<!--end of varlistentry.attlist-->]]>
+<!--end of varlistentry.module-->]]>
+
+<!ENTITY % term.module "INCLUDE">
+<![%term.module;[
+<!ENTITY % local.term.attrib "">
+<!ENTITY % term.role.attrib "%role.attrib;">
+
+<!ENTITY % term.element "INCLUDE">
+<![%term.element;[
+<!--doc:The word or phrase being defined or described in a variable list.-->
+<!ELEMENT term %ho; (%para.char.mix;)*>
+<!--end of term.element-->]]>
+
+<!ENTITY % term.attlist "INCLUDE">
+<![%term.attlist;[
+<!ATTLIST term
+ %common.attrib;
+ %term.role.attrib;
+ %local.term.attrib;
+>
+<!--end of term.attlist-->]]>
+<!--end of term.module-->]]>
+
+<!-- ListItem (defined above)-->
+<!--end of variablelist.content.module-->]]>
+
+<!-- CalloutList ...................... -->
+
+<!ENTITY % calloutlist.content.module "INCLUDE">
+<![%calloutlist.content.module;[
+<!ENTITY % calloutlist.module "INCLUDE">
+<![%calloutlist.module;[
+<!ENTITY % local.calloutlist.attrib "">
+<!ENTITY % calloutlist.role.attrib "%role.attrib;">
+
+<!ENTITY % calloutlist.element "INCLUDE">
+<![%calloutlist.element;[
+<!--doc:A list of Callouts.-->
+<!ELEMENT calloutlist %ho; ((%formalobject.title.content;)?, callout+)>
+<!--end of calloutlist.element-->]]>
+
+<!ENTITY % calloutlist.attlist "INCLUDE">
+<![%calloutlist.attlist;[
+<!ATTLIST calloutlist
+ %common.attrib;
+ %calloutlist.role.attrib;
+ %local.calloutlist.attrib;
+>
+<!--end of calloutlist.attlist-->]]>
+<!--end of calloutlist.module-->]]>
+
+<!ENTITY % callout.module "INCLUDE">
+<![%callout.module;[
+<!ENTITY % local.callout.attrib "">
+<!ENTITY % callout.role.attrib "%role.attrib;">
+
+<!ENTITY % callout.element "INCLUDE">
+<![%callout.element;[
+<!--doc:A &ldquo;called out&rdquo; description of a marked Area.-->
+<!ELEMENT callout %ho; ((%component.mix;)+)>
+<!--end of callout.element-->]]>
+
+<!-- AreaRefs: IDs of one or more Areas or AreaSets described
+ by this Callout -->
+
+
+<!ENTITY % callout.attlist "INCLUDE">
+<![%callout.attlist;[
+<!ATTLIST callout
+ arearefs IDREFS #REQUIRED
+ %common.attrib;
+ %callout.role.attrib;
+ %local.callout.attrib;
+>
+<!--end of callout.attlist-->]]>
+<!--end of callout.module-->]]>
+<!--end of calloutlist.content.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Objects .............................................................. -->
+
+<!-- Examples etc. .................... -->
+
+<!ENTITY % example.module "INCLUDE">
+<![%example.module;[
+<!ENTITY % local.example.attrib "">
+<!ENTITY % example.role.attrib "%role.attrib;">
+
+<!ENTITY % example.element "INCLUDE">
+<![%example.element;[
+<!--doc:A formal example, with a title.-->
+<!ELEMENT example %ho; (blockinfo?, (%formalobject.title.content;), (%example.mix;)+)
+ %formal.exclusion;>
+<!--end of example.element-->]]>
+
+<!ENTITY % example.attlist "INCLUDE">
+<![%example.attlist;[
+<!ATTLIST example
+ floatstyle CDATA #IMPLIED
+ %label.attrib;
+ %width.attrib;
+ %common.attrib;
+ %example.role.attrib;
+ %local.example.attrib;
+>
+<!--end of example.attlist-->]]>
+<!--end of example.module-->]]>
+
+<!ENTITY % informalexample.module "INCLUDE">
+<![%informalexample.module;[
+<!ENTITY % local.informalexample.attrib "">
+<!ENTITY % informalexample.role.attrib "%role.attrib;">
+
+<!ENTITY % informalexample.element "INCLUDE">
+<![%informalexample.element;[
+<!--doc:A displayed example without a title.-->
+<!ELEMENT informalexample %ho; (blockinfo?, (%example.mix;)+)>
+<!--end of informalexample.element-->]]>
+
+<!ENTITY % informalexample.attlist "INCLUDE">
+<![%informalexample.attlist;[
+<!ATTLIST informalexample
+ floatstyle CDATA #IMPLIED
+ %width.attrib;
+ %common.attrib;
+ %informalexample.role.attrib;
+ %local.informalexample.attrib;
+>
+<!--end of informalexample.attlist-->]]>
+<!--end of informalexample.module-->]]>
+
+<!ENTITY % programlistingco.module "INCLUDE">
+<![%programlistingco.module;[
+<!ENTITY % local.programlistingco.attrib "">
+<!ENTITY % programlistingco.role.attrib "%role.attrib;">
+
+<!ENTITY % programlistingco.element "INCLUDE">
+<![%programlistingco.element;[
+<!--doc:A program listing with associated areas used in callouts.-->
+<!ELEMENT programlistingco %ho; (areaspec, programlisting, calloutlist*)>
+<!--end of programlistingco.element-->]]>
+
+<!ENTITY % programlistingco.attlist "INCLUDE">
+<![%programlistingco.attlist;[
+<!ATTLIST programlistingco
+ %common.attrib;
+ %programlistingco.role.attrib;
+ %local.programlistingco.attrib;
+>
+<!--end of programlistingco.attlist-->]]>
+<!-- CalloutList (defined above in Lists)-->
+<!--end of informalexample.module-->]]>
+
+<!ENTITY % areaspec.content.module "INCLUDE">
+<![%areaspec.content.module;[
+<!ENTITY % areaspec.module "INCLUDE">
+<![%areaspec.module;[
+<!ENTITY % local.areaspec.attrib "">
+<!ENTITY % areaspec.role.attrib "%role.attrib;">
+
+<!ENTITY % areaspec.element "INCLUDE">
+<![%areaspec.element;[
+<!--doc:A collection of regions in a graphic or code example.-->
+<!ELEMENT areaspec %ho; ((area|areaset)+)>
+<!--end of areaspec.element-->]]>
+
+<!-- Units: global unit of measure in which coordinates in
+ this spec are expressed:
+
+ - CALSPair "x1,y1 x2,y2": lower-left and upper-right
+ coordinates in a rectangle describing repro area in which
+ graphic is placed, where X and Y dimensions are each some
+ number 0..10000 (taken from CALS graphic attributes)
+
+ - LineColumn "line column": line number and column number
+ at which to start callout text in "linespecific" content
+
+ - LineRange "startline endline": whole lines from startline
+ to endline in "linespecific" content
+
+ - LineColumnPair "line1 col1 line2 col2": starting and ending
+ points of area in "linespecific" content that starts at
+ first position and ends at second position (including the
+ beginnings of any intervening lines)
+
+ - Other: directive to look at value of OtherUnits attribute
+ to get implementation-specific keyword
+
+ The default is implementation-specific; usually dependent on
+ the parent element (GraphicCO gets CALSPair, ProgramListingCO
+ and ScreenCO get LineColumn) -->
+<!-- OtherUnits: User-defined units -->
+
+
+<!ENTITY % areaspec.attlist "INCLUDE">
+<![%areaspec.attlist;[
+<!ATTLIST areaspec
+ units (calspair
+ |linecolumn
+ |linerange
+ |linecolumnpair
+ |other) #IMPLIED
+ otherunits NMTOKEN #IMPLIED
+ %common.attrib;
+ %areaspec.role.attrib;
+ %local.areaspec.attrib;
+>
+<!--end of areaspec.attlist-->]]>
+<!--end of areaspec.module-->]]>
+
+<!ENTITY % area.module "INCLUDE">
+<![%area.module;[
+<!ENTITY % local.area.attrib "">
+<!ENTITY % area.role.attrib "%role.attrib;">
+
+<!ENTITY % area.element "INCLUDE">
+<![%area.element;[
+<!--doc:A region defined for a Callout in a graphic or code example.-->
+<!ELEMENT area %ho; EMPTY>
+<!--end of area.element-->]]>
+
+<!-- bug number/symbol override or initialization -->
+<!-- to any related information -->
+<!-- Units: unit of measure in which coordinates in this
+ area are expressed; inherits from AreaSet and AreaSpec -->
+<!-- OtherUnits: User-defined units -->
+
+
+<!ENTITY % area.attlist "INCLUDE">
+<![%area.attlist;[
+<!ATTLIST area
+ %label.attrib;
+ %linkends.attrib;
+ units (calspair
+ |linecolumn
+ |linerange
+ |linecolumnpair
+ |other) #IMPLIED
+ otherunits NMTOKEN #IMPLIED
+ coords CDATA #REQUIRED
+ %idreq.common.attrib;
+ %area.role.attrib;
+ %local.area.attrib;
+>
+<!--end of area.attlist-->]]>
+<!--end of area.module-->]]>
+
+<!ENTITY % areaset.module "INCLUDE">
+<![%areaset.module;[
+<!ENTITY % local.areaset.attrib "">
+<!ENTITY % areaset.role.attrib "%role.attrib;">
+
+<!ENTITY % areaset.element "INCLUDE">
+<![%areaset.element;[
+<!--doc:A set of related areas in a graphic or code example.-->
+<!ELEMENT areaset %ho; (area+)>
+<!--end of areaset.element-->]]>
+
+<!-- bug number/symbol override or initialization -->
+<!-- Units: unit of measure in which coordinates in this
+ area are expressed; inherits from AreaSpec -->
+
+
+<!ENTITY % areaset.attlist "INCLUDE">
+<![%areaset.attlist;[
+<!ATTLIST areaset
+ %label.attrib;
+ units (calspair
+ |linecolumn
+ |linerange
+ |linecolumnpair
+ |other) #IMPLIED
+ otherunits NMTOKEN #IMPLIED
+ coords CDATA #REQUIRED
+ %idreq.common.attrib;
+ %areaset.role.attrib;
+ %local.areaset.attrib;
+>
+<!--end of areaset.attlist-->]]>
+<!--end of areaset.module-->]]>
+<!--end of areaspec.content.module-->]]>
+
+<!ENTITY % programlisting.module "INCLUDE">
+<![%programlisting.module;[
+<!ENTITY % local.programlisting.attrib "">
+<!ENTITY % programlisting.role.attrib "%role.attrib;">
+
+<!ENTITY % programlisting.element "INCLUDE">
+<![%programlisting.element;[
+<!--doc:A literal listing of all or part of a program.-->
+<!ELEMENT programlisting %ho; (%para.char.mix;|co|coref|lineannotation|textobject)*>
+<!--end of programlisting.element-->]]>
+
+<!ENTITY % programlisting.attlist "INCLUDE">
+<![%programlisting.attlist;[
+<!ATTLIST programlisting
+ %width.attrib;
+ %linespecific.attrib;
+ %common.attrib;
+ %programlisting.role.attrib;
+ %local.programlisting.attrib;
+>
+<!--end of programlisting.attlist-->]]>
+<!--end of programlisting.module-->]]>
+
+<!ENTITY % literallayout.module "INCLUDE">
+<![%literallayout.module;[
+<!ENTITY % local.literallayout.attrib "">
+<!ENTITY % literallayout.role.attrib "%role.attrib;">
+
+<!ENTITY % literallayout.element "INCLUDE">
+<![%literallayout.element;[
+<!--doc:A block of text in which line breaks and white space are to be reproduced faithfully.-->
+<!ELEMENT literallayout %ho; (%para.char.mix;|co|coref|textobject|lineannotation)*>
+<!--end of literallayout.element-->]]>
+
+<!ENTITY % literallayout.attlist "INCLUDE">
+<![%literallayout.attlist;[
+<!ATTLIST literallayout
+ %width.attrib;
+ %linespecific.attrib;
+ class (monospaced|normal) "normal"
+ %common.attrib;
+ %literallayout.role.attrib;
+ %local.literallayout.attrib;
+>
+<!--end of literallayout.attlist-->]]>
+<!-- LineAnnotation (defined in the Inlines section, below)-->
+<!--end of literallayout.module-->]]>
+
+<!ENTITY % sconstruct.module "INCLUDE">
+<![%sconstruct.module;[
+<!ENTITY % local.sconstruct.attrib "">
+<!ENTITY % sconstruct.role.attrib "%role.attrib;">
+
+<!ENTITY % sconstruct.element "INCLUDE">
+<![%sconstruct.element;[
+<!--doc:Text that an SCons user sees or might see on a computer screen.-->
+<!ELEMENT sconstruct %ho; (%para.char.mix;|co|coref|textobject|lineannotation)*>
+<!--end of sconstruct.element-->]]>
+
+<!ENTITY % sconstruct.attlist "INCLUDE">
+<![%sconstruct.attlist;[
+<!ATTLIST sconstruct
+ %width.attrib;
+ %linespecific.attrib;
+ %common.attrib;
+ %sconstruct.role.attrib;
+ %local.sconstruct.attrib;
+>
+<!--end of sconstruct.attlist-->]]>
+<!--end of sconstruct.module-->]]>
+
+<!ENTITY % scons_output.module "INCLUDE">
+<![%scons_output.module;[
+<!ENTITY % local.scons_output.attrib "">
+<!ENTITY % scons_output.role.attrib "%role.attrib;">
+
+<!ENTITY % scons_output.element "INCLUDE">
+<![%scons_output.element;[
+<!--doc:The list of scons_output_commands to execute.-->
+<!ELEMENT scons_output %ho; (scons_output_command+)>
+
+<!--end of scons_output.element-->]]>
+
+<!ENTITY % scons_output.attlist "INCLUDE">
+<![%scons_output.attlist;[
+<!ATTLIST scons_output
+ tools CDATA #IMPLIED
+ example CDATA #IMPLIED
+ os CDATA #IMPLIED
+ %scons_output.role.attrib;
+ %local.scons_output.attrib;
+>
+<!--end of scons_output.attlist-->]]>
+<!--end of scons_output.module-->]]>
+
+<!ENTITY % scons_output_command.module "INCLUDE">
+<![%scons_output_command.module;[
+<!ENTITY % local.scons_output_command.attrib "">
+<!ENTITY % scons_output_command.role.attrib "%role.attrib;">
+
+<!ENTITY % scons_output_command.element "INCLUDE">
+<![%scons_output_command.element;[
+<!--doc:A single SCons command to execute.-->
+<!ELEMENT scons_output_command %ho; (%cptr.char.mix;)*>
+
+<!--end of scons_output_command.element-->]]>
+
+<!ENTITY % scons_output_command.attlist "INCLUDE">
+<![%scons_output_command.attlist;[
+<!ATTLIST scons_output_command
+ edit CDATA #IMPLIED
+ environment CDATA #IMPLIED
+ output CDATA #IMPLIED
+ %scons_output_command.role.attrib;
+ %local.scons_output_command.attrib;
+>
+<!--end of scons_output_command.attlist-->]]>
+<!--end of scons_output_command.module-->]]>
+
+
+<!ENTITY % scons_example_file.module "INCLUDE">
+<![%scons_example_file.module;[
+<!ENTITY % local.scons_example_file.attrib "">
+<!ENTITY % scons_example_file.role.attrib "%role.attrib;">
+
+<!ENTITY % scons_example_file.element "INCLUDE">
+<![%scons_example_file.element;[
+<!--doc:A single SCons example file.-->
+<!ELEMENT scons_example_file %ho; (%cptr.char.mix;)*>
+
+<!--end of scons_example_file.element-->]]>
+
+<!ENTITY % scons_example_file.attlist "INCLUDE">
+<![%scons_example_file.attlist;[
+<!ATTLIST scons_example_file
+ example CDATA #IMPLIED
+ name CDATA #IMPLIED
+ %scons_example_file.role.attrib;
+ %local.scons_example_file.attrib;
+>
+<!--end of scons_example_file.attlist-->]]>
+<!--end of scons_example_file.module-->]]>
+
+
+<!ENTITY % scons_example.module "INCLUDE">
+<![%scons_example.module;[
+<!ENTITY % local.scons_example.attrib "">
+<!ENTITY % scons_example.role.attrib "%role.attrib;">
+
+<!ENTITY % scons_example.element "INCLUDE">
+<![%scons_example.element;[
+<!--doc:An SCons example.-->
+<!ELEMENT scons_example %ho; ((file|directory)*)>
+
+<!--end of scons_example.element-->]]>
+
+<!ENTITY % scons_example.attlist "INCLUDE">
+<![%scons_example.attlist;[
+<!ATTLIST scons_example
+ name CDATA #IMPLIED
+ printme CDATA #IMPLIED
+ %scons_example.role.attrib;
+ %local.scons_example.attrib;
+>
+<!--end of scons_example.attlist-->]]>
+<!--end of scons_example.module-->]]>
+
+
+<!ENTITY % directory.module "INCLUDE">
+<![%directory.module;[
+<!ENTITY % local.directory.attrib "">
+<!ENTITY % directory.role.attrib "%role.attrib;">
+
+<!ENTITY % directory.element "INCLUDE">
+<![%directory.element;[
+<!--doc:A single SCons example directory.-->
+<!ELEMENT directory %ho; (%cptr.char.mix;)*>
+
+<!--end of directory.element-->]]>
+
+<!ENTITY % directory.attlist "INCLUDE">
+<![%directory.attlist;[
+<!ATTLIST directory
+ name CDATA #IMPLIED
+ %directory.role.attrib;
+ %local.directory.attrib;
+>
+<!--end of directory.attlist-->]]>
+<!--end of directory.module-->]]>
+
+<!ENTITY % file.module "INCLUDE">
+<![%file.module;[
+<!ENTITY % local.file.attrib "">
+<!ENTITY % file.role.attrib "%role.attrib;">
+
+<!ENTITY % file.element "INCLUDE">
+<![%file.element;[
+<!--doc:A single SCons example file.-->
+<!ELEMENT file %ho; (%cptr.char.mix;)*>
+
+<!--end of file.element-->]]>
+
+<!ENTITY % file.attlist "INCLUDE">
+<![%file.attlist;[
+<!ATTLIST file
+ name CDATA #IMPLIED
+ chmod CDATA #IMPLIED
+ printme CDATA #IMPLIED
+ %file.role.attrib;
+ %local.file.attrib;
+>
+<!--end of file.attlist-->]]>
+<!--end of file.module-->]]>
+
+
+<!ENTITY % screenco.module "INCLUDE">
+<![%screenco.module;[
+<!ENTITY % local.screenco.attrib "">
+<!ENTITY % screenco.role.attrib "%role.attrib;">
+
+<!ENTITY % screenco.element "INCLUDE">
+<![%screenco.element;[
+<!--doc:A screen with associated areas used in callouts.-->
+<!ELEMENT screenco %ho; (areaspec, screen, calloutlist*)>
+<!--end of screenco.element-->]]>
+
+<!ENTITY % screenco.attlist "INCLUDE">
+<![%screenco.attlist;[
+<!ATTLIST screenco
+ %common.attrib;
+ %screenco.role.attrib;
+ %local.screenco.attrib;
+>
+<!--end of screenco.attlist-->]]>
+<!-- AreaSpec (defined above)-->
+<!-- CalloutList (defined above in Lists)-->
+<!--end of screenco.module-->]]>
+
+<!ENTITY % screen.module "INCLUDE">
+<![%screen.module;[
+<!ENTITY % local.screen.attrib "">
+<!ENTITY % screen.role.attrib "%role.attrib;">
+
+<!ENTITY % screen.element "INCLUDE">
+<![%screen.element;[
+<!--doc:Text that a user sees or might see on a computer screen.-->
+<!ELEMENT screen %ho; (%para.char.mix;|co|coref|textobject|lineannotation)*>
+<!--end of screen.element-->]]>
+
+<!ENTITY % screen.attlist "INCLUDE">
+<![%screen.attlist;[
+<!ATTLIST screen
+ %width.attrib;
+ %linespecific.attrib;
+ %common.attrib;
+ %screen.role.attrib;
+ %local.screen.attrib;
+>
+<!--end of screen.attlist-->]]>
+<!--end of screen.module-->]]>
+
+<!ENTITY % screenshot.content.module "INCLUDE">
+<![%screenshot.content.module;[
+<!ENTITY % screenshot.module "INCLUDE">
+<![%screenshot.module;[
+<!ENTITY % local.screenshot.attrib "">
+<!ENTITY % screenshot.role.attrib "%role.attrib;">
+
+<!ENTITY % screenshot.element "INCLUDE">
+<![%screenshot.element;[
+<!--doc:A representation of what the user sees or might see on a computer screen.-->
+<!ELEMENT screenshot %ho; (screeninfo?,
+ (graphic|graphicco
+ |mediaobject|mediaobjectco))>
+<!--end of screenshot.element-->]]>
+
+<!ENTITY % screenshot.attlist "INCLUDE">
+<![%screenshot.attlist;[
+<!ATTLIST screenshot
+ %common.attrib;
+ %screenshot.role.attrib;
+ %local.screenshot.attrib;
+>
+<!--end of screenshot.attlist-->]]>
+<!--end of screenshot.module-->]]>
+
+<!ENTITY % screeninfo.module "INCLUDE">
+<![%screeninfo.module;[
+<!ENTITY % local.screeninfo.attrib "">
+<!ENTITY % screeninfo.role.attrib "%role.attrib;">
+
+<!ENTITY % screeninfo.element "INCLUDE">
+<![%screeninfo.element;[
+<!--doc:Information about how a screen shot was produced.-->
+<!ELEMENT screeninfo %ho; (%para.char.mix;)*
+ %ubiq.exclusion;>
+<!--end of screeninfo.element-->]]>
+
+<!ENTITY % screeninfo.attlist "INCLUDE">
+<![%screeninfo.attlist;[
+<!ATTLIST screeninfo
+ %common.attrib;
+ %screeninfo.role.attrib;
+ %local.screeninfo.attrib;
+>
+<!--end of screeninfo.attlist-->]]>
+<!--end of screeninfo.module-->]]>
+<!--end of screenshot.content.module-->]]>
+
+<!-- Figures etc. ..................... -->
+
+<!ENTITY % figure.module "INCLUDE">
+<![%figure.module;[
+<!ENTITY % local.figure.attrib "">
+<!ENTITY % figure.role.attrib "%role.attrib;">
+
+<!ENTITY % figure.element "INCLUDE">
+<![%figure.element;[
+<!--doc:A formal figure, generally an illustration, with a title.-->
+<!ELEMENT figure %ho; (blockinfo?, (%formalobject.title.content;),
+ (%figure.mix; | %link.char.class;)+)>
+<!--end of figure.element-->]]>
+
+<!-- Float: Whether the Figure is supposed to be rendered
+ where convenient (yes (1) value) or at the place it occurs
+ in the text (no (0) value, the default) -->
+
+
+<!ENTITY % figure.attlist "INCLUDE">
+<![%figure.attlist;[
+<!ATTLIST figure
+ float %yesorno.attvals; '0'
+ floatstyle CDATA #IMPLIED
+ pgwide %yesorno.attvals; #IMPLIED
+ %label.attrib;
+ %common.attrib;
+ %figure.role.attrib;
+ %local.figure.attrib;
+>
+<!--end of figure.attlist-->]]>
+<!--end of figure.module-->]]>
+
+<!ENTITY % informalfigure.module "INCLUDE">
+<![ %informalfigure.module; [
+<!ENTITY % local.informalfigure.attrib "">
+<!ENTITY % informalfigure.role.attrib "%role.attrib;">
+
+<!ENTITY % informalfigure.element "INCLUDE">
+<![ %informalfigure.element; [
+<!--doc:A untitled figure.-->
+<!ELEMENT informalfigure %ho; (blockinfo?, (%figure.mix; | %link.char.class;)+)>
+<!--end of informalfigure.element-->]]>
+
+<!ENTITY % informalfigure.attlist "INCLUDE">
+<![ %informalfigure.attlist; [
+<!--
+Float: Whether the Figure is supposed to be rendered
+where convenient (yes (1) value) or at the place it occurs
+in the text (no (0) value, the default)
+-->
+<!ATTLIST informalfigure
+ float %yesorno.attvals; "0"
+ floatstyle CDATA #IMPLIED
+ pgwide %yesorno.attvals; #IMPLIED
+ %label.attrib;
+ %common.attrib;
+ %informalfigure.role.attrib;
+ %local.informalfigure.attrib;
+>
+<!--end of informalfigure.attlist-->]]>
+<!--end of informalfigure.module-->]]>
+
+<!ENTITY % graphicco.module "INCLUDE">
+<![%graphicco.module;[
+<!ENTITY % local.graphicco.attrib "">
+<!ENTITY % graphicco.role.attrib "%role.attrib;">
+
+<!ENTITY % graphicco.element "INCLUDE">
+<![%graphicco.element;[
+<!--doc:A graphic that contains callout areas.-->
+<!ELEMENT graphicco %ho; (areaspec, graphic, calloutlist*)>
+<!--end of graphicco.element-->]]>
+
+<!ENTITY % graphicco.attlist "INCLUDE">
+<![%graphicco.attlist;[
+<!ATTLIST graphicco
+ %common.attrib;
+ %graphicco.role.attrib;
+ %local.graphicco.attrib;
+>
+<!--end of graphicco.attlist-->]]>
+<!-- AreaSpec (defined above in Examples)-->
+<!-- CalloutList (defined above in Lists)-->
+<!--end of graphicco.module-->]]>
+
+<!-- Graphical data can be the content of Graphic, or you can reference
+ an external file either as an entity (Entitref) or a filename
+ (Fileref). -->
+
+<!ENTITY % graphic.module "INCLUDE">
+<![%graphic.module;[
+<!ENTITY % local.graphic.attrib "">
+<!ENTITY % graphic.role.attrib "%role.attrib;">
+
+<!ENTITY % graphic.element "INCLUDE">
+<![%graphic.element;[
+<!--doc:A displayed graphical object (not an inline).-->
+<!ELEMENT graphic %ho; EMPTY>
+<!--end of graphic.element-->]]>
+
+<!ENTITY % graphic.attlist "INCLUDE">
+<![%graphic.attlist;[
+<!ATTLIST graphic
+ %graphics.attrib;
+ %common.attrib;
+ %graphic.role.attrib;
+ %local.graphic.attrib;
+>
+<!--end of graphic.attlist-->]]>
+<!--end of graphic.module-->]]>
+
+<!ENTITY % inlinegraphic.module "INCLUDE">
+<![%inlinegraphic.module;[
+<!ENTITY % local.inlinegraphic.attrib "">
+<!ENTITY % inlinegraphic.role.attrib "%role.attrib;">
+
+<!ENTITY % inlinegraphic.element "INCLUDE">
+<![%inlinegraphic.element;[
+<!--doc:An object containing or pointing to graphical data that will be rendered inline.-->
+<!ELEMENT inlinegraphic %ho; EMPTY>
+<!--end of inlinegraphic.element-->]]>
+
+<!ENTITY % inlinegraphic.attlist "INCLUDE">
+<![%inlinegraphic.attlist;[
+<!ATTLIST inlinegraphic
+ %graphics.attrib;
+ %common.attrib;
+ %inlinegraphic.role.attrib;
+ %local.inlinegraphic.attrib;
+>
+<!--end of inlinegraphic.attlist-->]]>
+<!--end of inlinegraphic.module-->]]>
+
+<!ENTITY % mediaobject.content.module "INCLUDE">
+<![ %mediaobject.content.module; [
+
+<!ENTITY % mediaobject.module "INCLUDE">
+<![ %mediaobject.module; [
+<!ENTITY % local.mediaobject.attrib "">
+<!ENTITY % mediaobject.role.attrib "%role.attrib;">
+
+<!ENTITY % mediaobject.element "INCLUDE">
+<![ %mediaobject.element; [
+<!--doc:A displayed media object (video, audio, image, etc.).-->
+<!ELEMENT mediaobject %ho; (objectinfo?,
+ (%mediaobject.mix;)+,
+ caption?)>
+<!--end of mediaobject.element-->]]>
+
+<!ENTITY % mediaobject.attlist "INCLUDE">
+<![ %mediaobject.attlist; [
+<!ATTLIST mediaobject
+ %common.attrib;
+ %mediaobject.role.attrib;
+ %local.mediaobject.attrib;
+>
+<!--end of mediaobject.attlist-->]]>
+<!--end of mediaobject.module-->]]>
+
+<!ENTITY % inlinemediaobject.module "INCLUDE">
+<![ %inlinemediaobject.module; [
+<!ENTITY % local.inlinemediaobject.attrib "">
+<!ENTITY % inlinemediaobject.role.attrib "%role.attrib;">
+
+<!ENTITY % inlinemediaobject.element "INCLUDE">
+<![ %inlinemediaobject.element; [
+<!--doc:An inline media object (video, audio, image, and so on).-->
+<!ELEMENT inlinemediaobject %ho; (objectinfo?,
+ (%mediaobject.mix;)+)>
+<!--end of inlinemediaobject.element-->]]>
+
+<!ENTITY % inlinemediaobject.attlist "INCLUDE">
+<![ %inlinemediaobject.attlist; [
+<!ATTLIST inlinemediaobject
+ %common.attrib;
+ %inlinemediaobject.role.attrib;
+ %local.inlinemediaobject.attrib;
+>
+<!--end of inlinemediaobject.attlist-->]]>
+<!--end of inlinemediaobject.module-->]]>
+
+<!ENTITY % videoobject.module "INCLUDE">
+<![ %videoobject.module; [
+<!ENTITY % local.videoobject.attrib "">
+<!ENTITY % videoobject.role.attrib "%role.attrib;">
+
+<!ENTITY % videoobject.element "INCLUDE">
+<![ %videoobject.element; [
+<!--doc:A wrapper for video data and its associated meta-information.-->
+<!ELEMENT videoobject %ho; (objectinfo?, videodata)>
+<!--end of videoobject.element-->]]>
+
+<!ENTITY % videoobject.attlist "INCLUDE">
+<![ %videoobject.attlist; [
+<!ATTLIST videoobject
+ %common.attrib;
+ %videoobject.role.attrib;
+ %local.videoobject.attrib;
+>
+<!--end of videoobject.attlist-->]]>
+<!--end of videoobject.module-->]]>
+
+<!ENTITY % audioobject.module "INCLUDE">
+<![ %audioobject.module; [
+<!ENTITY % local.audioobject.attrib "">
+<!ENTITY % audioobject.role.attrib "%role.attrib;">
+
+<!ENTITY % audioobject.element "INCLUDE">
+<![ %audioobject.element; [
+<!--doc:A wrapper for audio data and its associated meta-information.-->
+<!ELEMENT audioobject %ho; (objectinfo?, audiodata)>
+<!--end of audioobject.element-->]]>
+
+<!ENTITY % audioobject.attlist "INCLUDE">
+<![ %audioobject.attlist; [
+<!ATTLIST audioobject
+ %common.attrib;
+ %audioobject.role.attrib;
+ %local.audioobject.attrib;
+>
+<!--end of audioobject.attlist-->]]>
+<!--end of audioobject.module-->]]>
+
+<!ENTITY % imageobject.module "INCLUDE">
+<![ %imageobject.module; [
+<!ENTITY % local.imageobject.attrib "">
+<!ENTITY % imageobject.role.attrib "%role.attrib;">
+
+<!ENTITY % imageobject.element "INCLUDE">
+<![ %imageobject.element; [
+<!--doc:A wrapper for image data and its associated meta-information.-->
+<!ELEMENT imageobject %ho; (objectinfo?, imagedata)>
+<!--end of imageobject.element-->]]>
+
+<!ENTITY % imageobject.attlist "INCLUDE">
+<![ %imageobject.attlist; [
+<!ATTLIST imageobject
+ %common.attrib;
+ %imageobject.role.attrib;
+ %local.imageobject.attrib;
+>
+<!--end of imageobject.attlist-->]]>
+<!--end of imageobject.module-->]]>
+
+<!ENTITY % textobject.module "INCLUDE">
+<![ %textobject.module; [
+<!ENTITY % local.textobject.attrib "">
+<!ENTITY % textobject.role.attrib "%role.attrib;">
+
+<!ENTITY % textobject.element "INCLUDE">
+<![ %textobject.element; [
+<!--doc:A wrapper for a text description of an object and its associated meta-information.-->
+<!ELEMENT textobject %ho; (objectinfo?, (phrase|textdata|(%textobject.mix;)+))>
+<!--end of textobject.element-->]]>
+
+<!ENTITY % textobject.attlist "INCLUDE">
+<![ %textobject.attlist; [
+<!ATTLIST textobject
+ %common.attrib;
+ %textobject.role.attrib;
+ %local.textobject.attrib;
+>
+<!--end of textobject.attlist-->]]>
+<!--end of textobject.module-->]]>
+
+<!ENTITY % objectinfo.module "INCLUDE">
+<![ %objectinfo.module; [
+<!ENTITY % local.objectinfo.attrib "">
+<!ENTITY % objectinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % objectinfo.element "INCLUDE">
+<![ %objectinfo.element; [
+<!--doc:Meta-information for an object.-->
+<!ELEMENT objectinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of objectinfo.element-->]]>
+
+<!ENTITY % objectinfo.attlist "INCLUDE">
+<![ %objectinfo.attlist; [
+<!ATTLIST objectinfo
+ %common.attrib;
+ %objectinfo.role.attrib;
+ %local.objectinfo.attrib;
+>
+<!--end of objectinfo.attlist-->]]>
+<!--end of objectinfo.module-->]]>
+
+<!--EntityRef: Name of an external entity containing the content
+ of the object data-->
+<!--FileRef: Filename, qualified by a pathname if desired,
+ designating the file containing the content of the object data-->
+<!--Format: Notation of the element content, if any-->
+<!--SrcCredit: Information about the source of the image-->
+<!ENTITY % local.objectdata.attrib "">
+<!ENTITY % objectdata.attrib
+ "
+ entityref ENTITY #IMPLIED
+ fileref CDATA #IMPLIED
+ format (%notation.class;)
+ #IMPLIED
+ srccredit CDATA #IMPLIED
+ %local.objectdata.attrib;"
+>
+
+<!ENTITY % videodata.module "INCLUDE">
+<![ %videodata.module; [
+<!ENTITY % local.videodata.attrib "">
+<!ENTITY % videodata.role.attrib "%role.attrib;">
+
+<!ENTITY % videodata.element "INCLUDE">
+<![ %videodata.element; [
+<!--doc:Pointer to external video data.-->
+<!ELEMENT videodata %ho; EMPTY>
+<!--end of videodata.element-->]]>
+
+<!ENTITY % videodata.attlist "INCLUDE">
+<![ %videodata.attlist; [
+
+<!--Width: Same as CALS reprowid (desired width)-->
+<!--Depth: Same as CALS reprodep (desired depth)-->
+<!--Align: Same as CALS hplace with 'none' removed; #IMPLIED means
+ application-specific-->
+<!--Scale: Conflation of CALS hscale and vscale-->
+<!--Scalefit: Same as CALS scalefit-->
+<!ATTLIST videodata
+ width CDATA #IMPLIED
+ contentwidth CDATA #IMPLIED
+ depth CDATA #IMPLIED
+ contentdepth CDATA #IMPLIED
+ align (left
+ |right
+ |center) #IMPLIED
+ valign (top
+ |middle
+ |bottom) #IMPLIED
+ scale CDATA #IMPLIED
+ scalefit %yesorno.attvals;
+ #IMPLIED
+ %objectdata.attrib;
+ %common.attrib;
+ %videodata.role.attrib;
+ %local.videodata.attrib;
+>
+<!--end of videodata.attlist-->]]>
+<!--end of videodata.module-->]]>
+
+<!ENTITY % audiodata.module "INCLUDE">
+<![ %audiodata.module; [
+<!ENTITY % local.audiodata.attrib "">
+<!ENTITY % audiodata.role.attrib "%role.attrib;">
+
+<!ENTITY % audiodata.element "INCLUDE">
+<![ %audiodata.element; [
+<!--doc:Pointer to external audio data.-->
+<!ELEMENT audiodata %ho; EMPTY>
+<!--end of audiodata.element-->]]>
+
+<!ENTITY % audiodata.attlist "INCLUDE">
+<![ %audiodata.attlist; [
+<!ATTLIST audiodata
+ %objectdata.attrib;
+ %common.attrib;
+ %audiodata.role.attrib;
+ %local.audiodata.attrib;
+>
+<!--end of audiodata.attlist-->]]>
+<!--end of audiodata.module-->]]>
+
+<!ENTITY % imagedata.module "INCLUDE">
+<![ %imagedata.module; [
+<!ENTITY % local.imagedata.attrib "">
+<!ENTITY % imagedata.role.attrib "%role.attrib;">
+
+<!ENTITY % imagedata.element "INCLUDE">
+<![ %imagedata.element; [
+<!--doc:Pointer to external image data.-->
+<!ELEMENT imagedata %ho; EMPTY>
+<!--end of imagedata.element-->]]>
+
+<!ENTITY % imagedata.attlist "INCLUDE">
+<![ %imagedata.attlist; [
+
+<!--Width: Same as CALS reprowid (desired width)-->
+<!--Depth: Same as CALS reprodep (desired depth)-->
+<!--Align: Same as CALS hplace with 'none' removed; #IMPLIED means
+ application-specific-->
+<!--Scale: Conflation of CALS hscale and vscale-->
+<!--Scalefit: Same as CALS scalefit-->
+<!ATTLIST imagedata
+ width CDATA #IMPLIED
+ contentwidth CDATA #IMPLIED
+ depth CDATA #IMPLIED
+ contentdepth CDATA #IMPLIED
+ align (left
+ |right
+ |center) #IMPLIED
+ valign (top
+ |middle
+ |bottom) #IMPLIED
+ scale CDATA #IMPLIED
+ scalefit %yesorno.attvals;
+ #IMPLIED
+ %objectdata.attrib;
+ %common.attrib;
+ %imagedata.role.attrib;
+ %local.imagedata.attrib;
+>
+<!--end of imagedata.attlist-->]]>
+<!--end of imagedata.module-->]]>
+
+<!ENTITY % textdata.module "INCLUDE">
+<![ %textdata.module; [
+<!ENTITY % local.textdata.attrib "">
+<!ENTITY % textdata.role.attrib "%role.attrib;">
+
+<!ENTITY % textdata.element "INCLUDE">
+<![ %textdata.element; [
+<!--doc:Pointer to external text data.-->
+<!ELEMENT textdata %ho; EMPTY>
+<!--end of textdata.element-->]]>
+
+<!ENTITY % textdata.attlist "INCLUDE">
+<![ %textdata.attlist; [
+<!ATTLIST textdata
+ encoding CDATA #IMPLIED
+ %objectdata.attrib;
+ %common.attrib;
+ %textdata.role.attrib;
+ %local.textdata.attrib;
+>
+<!--end of textdata.attlist-->]]>
+<!--end of textdata.module-->]]>
+
+<!ENTITY % mediaobjectco.module "INCLUDE">
+<![ %mediaobjectco.module; [
+<!ENTITY % local.mediaobjectco.attrib "">
+<!ENTITY % mediaobjectco.role.attrib "%role.attrib;">
+
+<!ENTITY % mediaobjectco.element "INCLUDE">
+<![ %mediaobjectco.element; [
+<!--doc:A media object that contains callouts.-->
+<!ELEMENT mediaobjectco %ho; (objectinfo?, imageobjectco,
+ (imageobjectco|textobject)*)>
+<!--end of mediaobjectco.element-->]]>
+
+<!ENTITY % mediaobjectco.attlist "INCLUDE">
+<![ %mediaobjectco.attlist; [
+<!ATTLIST mediaobjectco
+ %common.attrib;
+ %mediaobjectco.role.attrib;
+ %local.mediaobjectco.attrib;
+>
+<!--end of mediaobjectco.attlist-->]]>
+<!--end of mediaobjectco.module-->]]>
+
+<!ENTITY % imageobjectco.module "INCLUDE">
+<![ %imageobjectco.module; [
+<!ENTITY % local.imageobjectco.attrib "">
+<!ENTITY % imageobjectco.role.attrib "%role.attrib;">
+
+<!ENTITY % imageobjectco.element "INCLUDE">
+<![ %imageobjectco.element; [
+<!--doc:A wrapper for an image object with callouts.-->
+<!ELEMENT imageobjectco %ho; (areaspec, imageobject, calloutlist*)>
+<!--end of imageobjectco.element-->]]>
+
+<!ENTITY % imageobjectco.attlist "INCLUDE">
+<![ %imageobjectco.attlist; [
+<!ATTLIST imageobjectco
+ %common.attrib;
+ %imageobjectco.role.attrib;
+ %local.imageobjectco.attrib;
+>
+<!--end of imageobjectco.attlist-->]]>
+<!--end of imageobjectco.module-->]]>
+<!--end of mediaobject.content.module-->]]>
+
+<!-- Equations ........................ -->
+
+<!-- This PE provides a mechanism for replacing equation content, -->
+<!-- perhaps adding a new or different model (e.g., MathML) -->
+<!ENTITY % equation.content "(alt?, (graphic+|mediaobject+|mathphrase+))">
+<!ENTITY % inlineequation.content "(alt?, (graphic+|inlinemediaobject+|mathphrase+))">
+
+<!ENTITY % equation.module "INCLUDE">
+<![%equation.module;[
+<!ENTITY % local.equation.attrib "">
+<!ENTITY % equation.role.attrib "%role.attrib;">
+
+<!ENTITY % equation.element "INCLUDE">
+<![%equation.element;[
+<!--doc:A displayed mathematical equation.-->
+<!ELEMENT equation %ho; (blockinfo?, (%formalobject.title.content;)?,
+ (informalequation | %equation.content;))>
+<!--end of equation.element-->]]>
+
+<!ENTITY % equation.attlist "INCLUDE">
+<![%equation.attlist;[
+<!ATTLIST equation
+ floatstyle CDATA #IMPLIED
+ %label.attrib;
+ %common.attrib;
+ %equation.role.attrib;
+ %local.equation.attrib;
+>
+<!--end of equation.attlist-->]]>
+<!--end of equation.module-->]]>
+
+<!ENTITY % informalequation.module "INCLUDE">
+<![%informalequation.module;[
+<!ENTITY % local.informalequation.attrib "">
+<!ENTITY % informalequation.role.attrib "%role.attrib;">
+
+<!ENTITY % informalequation.element "INCLUDE">
+<![%informalequation.element;[
+<!--doc:A displayed mathematical equation without a title.-->
+<!ELEMENT informalequation %ho; (blockinfo?, %equation.content;) >
+<!--end of informalequation.element-->]]>
+
+<!ENTITY % informalequation.attlist "INCLUDE">
+<![%informalequation.attlist;[
+<!ATTLIST informalequation
+ floatstyle CDATA #IMPLIED
+ %common.attrib;
+ %informalequation.role.attrib;
+ %local.informalequation.attrib;
+>
+<!--end of informalequation.attlist-->]]>
+<!--end of informalequation.module-->]]>
+
+<!ENTITY % inlineequation.module "INCLUDE">
+<![%inlineequation.module;[
+<!ENTITY % local.inlineequation.attrib "">
+<!ENTITY % inlineequation.role.attrib "%role.attrib;">
+
+<!ENTITY % inlineequation.element "INCLUDE">
+<![%inlineequation.element;[
+<!--doc:A mathematical equation or expression occurring inline.-->
+<!ELEMENT inlineequation %ho; (%inlineequation.content;)>
+<!--end of inlineequation.element-->]]>
+
+<!ENTITY % inlineequation.attlist "INCLUDE">
+<![%inlineequation.attlist;[
+<!ATTLIST inlineequation
+ %common.attrib;
+ %inlineequation.role.attrib;
+ %local.inlineequation.attrib;
+>
+<!--end of inlineequation.attlist-->]]>
+<!--end of inlineequation.module-->]]>
+
+<!ENTITY % alt.module "INCLUDE">
+<![%alt.module;[
+<!ENTITY % local.alt.attrib "">
+<!ENTITY % alt.role.attrib "%role.attrib;">
+
+<!ENTITY % alt.element "INCLUDE">
+<![%alt.element;[
+<!--doc:Text representation for a graphical element.-->
+<!ELEMENT alt %ho; (#PCDATA)>
+<!--end of alt.element-->]]>
+
+<!ENTITY % alt.attlist "INCLUDE">
+<![%alt.attlist;[
+<!ATTLIST alt
+ %common.attrib;
+ %alt.role.attrib;
+ %local.alt.attrib;
+>
+<!--end of alt.attlist-->]]>
+<!--end of alt.module-->]]>
+
+<!ENTITY % mathphrase.module "INCLUDE">
+<![%mathphrase.module;[
+<!ENTITY % local.mathphrase.attrib "">
+<!ENTITY % mathphrase.role.attrib "%role.attrib;">
+
+<!ENTITY % mathphrase.element "INCLUDE">
+<![%mathphrase.element;[
+<!--doc:A mathematical phrase, an expression that can be represented with ordinary text and a small amount of markup.-->
+<!ELEMENT mathphrase %ho; (#PCDATA|subscript|superscript|emphasis)*>
+<!--end of mathphrase.element-->]]>
+
+<!ENTITY % mathphrase.attlist "INCLUDE">
+<![%mathphrase.attlist;[
+<!ATTLIST mathphrase
+ %common.attrib;
+ %mathphrase.role.attrib;
+ %local.mathphrase.attrib;
+>
+<!--end of mathphrase.attlist-->]]>
+<!--end of mathphrase.module-->]]>
+
+<!-- Tables ........................... -->
+
+<!ENTITY % table.module "INCLUDE">
+<![%table.module;[
+
+<!-- Choose a table model. CALS or OASIS XML Exchange -->
+
+<!ENTITY % cals.table.module "INCLUDE">
+<![%cals.table.module;[
+<!ENTITY % exchange.table.module "IGNORE">
+]]>
+<!ENTITY % exchange.table.module "INCLUDE">
+
+<!-- Do we allow the HTML table model as well? -->
+<!ENTITY % allow.html.tables "INCLUDE">
+<![%allow.html.tables;[
+ <!-- ====================================================== -->
+ <!-- xhtmltbl.mod defines HTML tables and sets parameter
+ entities so that, when the CALS table module is read,
+ we end up allowing any table to be CALS or HTML.
+ i.e. This include must come first! -->
+ <!-- ====================================================== -->
+
+<!ENTITY % htmltbl
+ PUBLIC "-//OASIS//ELEMENTS DocBook XML HTML Tables V4.5//EN"
+ "htmltblx.mod">
+%htmltbl;
+<!--end of allow.html.tables-->]]>
+
+<!ENTITY % tables.role.attrib "%role.attrib;">
+
+<![%cals.table.module;[
+<!-- Add label and role attributes to table and informaltable -->
+<!ENTITY % bodyatt "
+ floatstyle CDATA #IMPLIED
+ rowheader (firstcol|norowheader) #IMPLIED
+ %label.attrib;"
+>
+
+<!-- Add common attributes to Table, TGroup, TBody, THead, TFoot, Row,
+ EntryTbl, and Entry (and InformalTable element). -->
+<!ENTITY % secur
+ "%common.attrib;
+ %tables.role.attrib;">
+
+<!ENTITY % common.table.attribs
+ "%bodyatt;
+ %secur;">
+
+<!-- Content model for Table. -->
+<!ENTITY % tbl.table.mdl
+ "(blockinfo?, (%formalobject.title.content;), (%ndxterm.class;)*,
+ textobject*,
+ (graphic+|mediaobject+|tgroup+))">
+
+<!-- Allow either objects or inlines; beware of REs between elements. -->
+<!ENTITY % tbl.entry.mdl "%para.char.mix; | %tabentry.mix;">
+
+<!-- Reference CALS Table Model -->
+<!ENTITY % tablemodel
+ PUBLIC "-//OASIS//DTD DocBook CALS Table Model V4.5//EN"
+ "calstblx.dtd">
+]]>
+
+<![%exchange.table.module;[
+<!-- Add common attributes and the Label attribute to Table and -->
+<!-- InformalTable. -->
+<!ENTITY % bodyatt
+ "%common.attrib;
+ rowheader (firstcol|norowheader) #IMPLIED
+ %label.attrib;
+ %tables.role.attrib;">
+
+<!ENTITY % common.table.attribs
+ "%bodyatt;">
+
+<!-- Add common attributes to TGroup, ColSpec, TBody, THead, Row, Entry -->
+
+<!ENTITY % tbl.tgroup.att "%common.attrib;">
+<!ENTITY % tbl.colspec.att "%common.attrib;">
+<!ENTITY % tbl.tbody.att "%common.attrib;">
+<!ENTITY % tbl.thead.att "%common.attrib;">
+<!ENTITY % tbl.row.att "%common.attrib;">
+<!ENTITY % tbl.entry.att "%common.attrib;">
+
+<!-- Content model for Table. -->
+<!ENTITY % tbl.table.mdl
+ "(blockinfo?, (%formalobject.title.content;), (%ndxterm.class;)*,
+ textobject*,
+ (graphic+|mediaobject+|tgroup+))">
+
+<!-- Allow either objects or inlines; beware of REs between elements. -->
+<!ENTITY % tbl.entry.mdl "(%para.char.mix; | %tabentry.mix;)*">
+
+<!-- Reference OASIS Exchange Table Model -->
+<!ENTITY % tablemodel
+ PUBLIC "-//OASIS//DTD XML Exchange Table Model 19990315//EN"
+ "soextblx.dtd">
+]]>
+
+%tablemodel;
+
+<!--end of table.module-->]]>
+
+<!ENTITY % informaltable.module "INCLUDE">
+<![%informaltable.module;[
+
+<!-- Note that InformalTable is dependent on some of the entity
+ declarations that customize Table. -->
+
+<!ENTITY % local.informaltable.attrib "">
+
+<!-- the following entity may have been declared by the XHTML table module -->
+<!ENTITY % informal.tbl.table.mdl "textobject*, (graphic+|mediaobject+|tgroup+)">
+
+<!ENTITY % informaltable.element "INCLUDE">
+<![%informaltable.element;[
+<!--doc:A table without a title.-->
+<!ELEMENT informaltable %ho; (blockinfo?, (%informal.tbl.table.mdl;))>
+<!--end of informaltable.element-->]]>
+
+<!-- Frame, Colsep, and Rowsep must be repeated because
+ they are not in entities in the table module. -->
+<!-- includes TabStyle, ToCentry, ShortEntry,
+ Orient, PgWide -->
+<!-- includes Label -->
+<!-- includes common attributes -->
+
+<!ENTITY % informaltable.attlist "INCLUDE">
+<![%informaltable.attlist;[
+<!ATTLIST informaltable
+ frame (%tbl.frame.attval;) #IMPLIED
+ colsep %yesorno.attvals; #IMPLIED
+ rowsep %yesorno.attvals; #IMPLIED
+ %common.table.attribs;
+ %tbl.table.att;
+ %local.informaltable.attrib;
+>
+<!--end of informaltable.attlist-->]]>
+<!--end of informaltable.module-->]]>
+
+<!ENTITY % caption.module "INCLUDE">
+<![ %caption.module; [
+<!ENTITY % local.caption.attrib "">
+<!ENTITY % caption.role.attrib "%role.attrib;">
+
+<!ENTITY % caption.element "INCLUDE">
+<![ %caption.element; [
+<!--doc:A caption.-->
+<!ELEMENT caption %ho; (#PCDATA | %textobject.mix;)*>
+<!--end of caption.element-->]]>
+
+<!ENTITY % caption.attlist "INCLUDE">
+<![ %caption.attlist; [
+<!-- attrs comes from HTML tables ... -->
+
+<![ %allow.html.tables; [
+<!-- common.attrib, but without ID because ID is in attrs -->
+<!ENTITY % caption.attlist.content "
+ %caption.role.attrib;
+ %attrs;
+ align (top|bottom|left|right) #IMPLIED
+ %local.caption.attrib;
+">
+]]>
+<!ENTITY % caption.attlist.content "
+ %common.attrib;
+ %caption.role.attrib;
+ %local.caption.attrib;
+">
+
+<!ATTLIST caption %caption.attlist.content;>
+
+<!--end of caption.attlist-->]]>
+<!--end of caption.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Synopses ............................................................. -->
+
+<!-- Synopsis ......................... -->
+
+<!ENTITY % synopsis.module "INCLUDE">
+<![%synopsis.module;[
+<!ENTITY % local.synopsis.attrib "">
+<!ENTITY % synopsis.role.attrib "%role.attrib;">
+
+<!ENTITY % synopsis.element "INCLUDE">
+<![%synopsis.element;[
+<!--doc:A general-purpose element for representing the syntax of commands or functions.-->
+<!ELEMENT synopsis %ho; (%para.char.mix;|graphic|mediaobject|co|coref|textobject|lineannotation)*>
+<!--end of synopsis.element-->]]>
+
+<!ENTITY % synopsis.attlist "INCLUDE">
+<![%synopsis.attlist;[
+<!ATTLIST synopsis
+ %label.attrib;
+ %linespecific.attrib;
+ %common.attrib;
+ %synopsis.role.attrib;
+ %local.synopsis.attrib;
+>
+<!--end of synopsis.attlist-->]]>
+
+<!-- LineAnnotation (defined in the Inlines section, below)-->
+<!--end of synopsis.module-->]]>
+
+<!-- CmdSynopsis ...................... -->
+
+<!ENTITY % cmdsynopsis.content.module "INCLUDE">
+<![%cmdsynopsis.content.module;[
+<!ENTITY % cmdsynopsis.module "INCLUDE">
+<![%cmdsynopsis.module;[
+<!ENTITY % local.cmdsynopsis.attrib "">
+<!ENTITY % cmdsynopsis.role.attrib "%role.attrib;">
+
+<!ENTITY % cmdsynopsis.element "INCLUDE">
+<![%cmdsynopsis.element;[
+<!--doc:A syntax summary for a software command.-->
+<!ELEMENT cmdsynopsis %ho; ((command | arg | group | sbr)+, synopfragment*)>
+<!--end of cmdsynopsis.element-->]]>
+
+<!-- Sepchar: Character that should separate command and all
+ top-level arguments; alternate value might be e.g., &Delta; -->
+
+
+<!ENTITY % cmdsynopsis.attlist "INCLUDE">
+<![%cmdsynopsis.attlist;[
+<!ATTLIST cmdsynopsis
+ %label.attrib;
+ sepchar CDATA " "
+ cmdlength CDATA #IMPLIED
+ %common.attrib;
+ %cmdsynopsis.role.attrib;
+ %local.cmdsynopsis.attrib;
+>
+<!--end of cmdsynopsis.attlist-->]]>
+<!--end of cmdsynopsis.module-->]]>
+
+<!ENTITY % arg.module "INCLUDE">
+<![%arg.module;[
+<!ENTITY % local.arg.attrib "">
+<!ENTITY % arg.role.attrib "%role.attrib;">
+
+<!ENTITY % arg.element "INCLUDE">
+<![%arg.element;[
+<!--doc:An argument in a CmdSynopsis.-->
+<!ELEMENT arg %ho; (#PCDATA
+ | arg
+ | group
+ | option
+ | synopfragmentref
+ | replaceable
+ | sbr)*>
+<!--end of arg.element-->]]>
+
+<!-- Choice: Whether Arg must be supplied: Opt (optional to
+ supply, e.g. [arg]; the default), Req (required to supply,
+ e.g. {arg}), or Plain (required to supply, e.g. arg) -->
+<!-- Rep: whether Arg is repeatable: Norepeat (e.g. arg without
+ ellipsis; the default), or Repeat (e.g. arg...) -->
+
+
+<!ENTITY % arg.attlist "INCLUDE">
+<![%arg.attlist;[
+<!ATTLIST arg
+ choice (opt
+ |req
+ |plain) 'opt'
+ rep (norepeat
+ |repeat) 'norepeat'
+ %common.attrib;
+ %arg.role.attrib;
+ %local.arg.attrib;
+>
+<!--end of arg.attlist-->]]>
+<!--end of arg.module-->]]>
+
+<!ENTITY % group.module "INCLUDE">
+<![%group.module;[
+
+<!ENTITY % local.group.attrib "">
+<!ENTITY % group.role.attrib "%role.attrib;">
+
+<!ENTITY % group.element "INCLUDE">
+<![%group.element;[
+<!--doc:A group of elements in a CmdSynopsis.-->
+<!ELEMENT group %ho; ((arg | group | option | synopfragmentref
+ | replaceable | sbr)+)>
+<!--end of group.element-->]]>
+
+<!-- Choice: Whether Group must be supplied: Opt (optional to
+ supply, e.g. [g1|g2|g3]; the default), Req (required to
+ supply, e.g. {g1|g2|g3}), Plain (required to supply,
+ e.g. g1|g2|g3), OptMult (can supply zero or more, e.g.
+ [[g1|g2|g3]]), or ReqMult (must supply one or more, e.g.
+ {{g1|g2|g3}}) -->
+<!-- Rep: whether Group is repeatable: Norepeat (e.g. group
+ without ellipsis; the default), or Repeat (e.g. group...) -->
+
+
+<!ENTITY % group.attlist "INCLUDE">
+<![%group.attlist;[
+<!ATTLIST group
+ choice (opt
+ |req
+ |plain) 'opt'
+ rep (norepeat
+ |repeat) 'norepeat'
+ %common.attrib;
+ %group.role.attrib;
+ %local.group.attrib;
+>
+<!--end of group.attlist-->]]>
+<!--end of group.module-->]]>
+
+<!ENTITY % sbr.module "INCLUDE">
+<![%sbr.module;[
+<!ENTITY % local.sbr.attrib "">
+<!-- Synopsis break -->
+<!ENTITY % sbr.role.attrib "%role.attrib;">
+
+<!ENTITY % sbr.element "INCLUDE">
+<![%sbr.element;[
+<!--doc:An explicit line break in a command synopsis.-->
+<!ELEMENT sbr %ho; EMPTY>
+<!--end of sbr.element-->]]>
+
+<!ENTITY % sbr.attlist "INCLUDE">
+<![%sbr.attlist;[
+<!ATTLIST sbr
+ %common.attrib;
+ %sbr.role.attrib;
+ %local.sbr.attrib;
+>
+<!--end of sbr.attlist-->]]>
+<!--end of sbr.module-->]]>
+
+<!ENTITY % synopfragmentref.module "INCLUDE">
+<![%synopfragmentref.module;[
+<!ENTITY % local.synopfragmentref.attrib "">
+<!ENTITY % synopfragmentref.role.attrib "%role.attrib;">
+
+<!ENTITY % synopfragmentref.element "INCLUDE">
+<![%synopfragmentref.element;[
+<!--doc:A reference to a fragment of a command synopsis.-->
+<!ELEMENT synopfragmentref %ho; (#PCDATA)>
+<!--end of synopfragmentref.element-->]]>
+
+<!-- to SynopFragment of complex synopsis
+ material for separate referencing -->
+
+
+<!ENTITY % synopfragmentref.attlist "INCLUDE">
+<![%synopfragmentref.attlist;[
+<!ATTLIST synopfragmentref
+ %linkendreq.attrib; %common.attrib;
+ %synopfragmentref.role.attrib;
+ %local.synopfragmentref.attrib;
+>
+<!--end of synopfragmentref.attlist-->]]>
+<!--end of synopfragmentref.module-->]]>
+
+<!ENTITY % synopfragment.module "INCLUDE">
+<![%synopfragment.module;[
+<!ENTITY % local.synopfragment.attrib "">
+<!ENTITY % synopfragment.role.attrib "%role.attrib;">
+
+<!ENTITY % synopfragment.element "INCLUDE">
+<![%synopfragment.element;[
+<!--doc:A portion of a CmdSynopsis broken out from the main body of the synopsis.-->
+<!ELEMENT synopfragment %ho; ((arg | group)+)>
+<!--end of synopfragment.element-->]]>
+
+<!ENTITY % synopfragment.attlist "INCLUDE">
+<![%synopfragment.attlist;[
+<!ATTLIST synopfragment
+ %idreq.common.attrib;
+ %synopfragment.role.attrib;
+ %local.synopfragment.attrib;
+>
+<!--end of synopfragment.attlist-->]]>
+<!--end of synopfragment.module-->]]>
+
+<!-- Command (defined in the Inlines section, below)-->
+<!-- Option (defined in the Inlines section, below)-->
+<!-- Replaceable (defined in the Inlines section, below)-->
+<!--end of cmdsynopsis.content.module-->]]>
+
+<!-- FuncSynopsis ..................... -->
+
+<!ENTITY % funcsynopsis.content.module "INCLUDE">
+<![%funcsynopsis.content.module;[
+<!ENTITY % funcsynopsis.module "INCLUDE">
+<![%funcsynopsis.module;[
+
+<!ENTITY % local.funcsynopsis.attrib "">
+<!ENTITY % funcsynopsis.role.attrib "%role.attrib;">
+
+<!ENTITY % funcsynopsis.element "INCLUDE">
+<![%funcsynopsis.element;[
+<!--doc:The syntax summary for a function definition.-->
+<!ELEMENT funcsynopsis %ho; ((funcsynopsisinfo | funcprototype)+)>
+<!--end of funcsynopsis.element-->]]>
+
+<!ENTITY % funcsynopsis.attlist "INCLUDE">
+<![%funcsynopsis.attlist;[
+<!ATTLIST funcsynopsis
+ %label.attrib;
+ %common.attrib;
+ %funcsynopsis.role.attrib;
+ %local.funcsynopsis.attrib;
+>
+<!--end of funcsynopsis.attlist-->]]>
+<!--end of funcsynopsis.module-->]]>
+
+<!ENTITY % funcsynopsisinfo.module "INCLUDE">
+<![%funcsynopsisinfo.module;[
+<!ENTITY % local.funcsynopsisinfo.attrib "">
+<!ENTITY % funcsynopsisinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % funcsynopsisinfo.element "INCLUDE">
+<![%funcsynopsisinfo.element;[
+<!--doc:Information supplementing the FuncDefs of a FuncSynopsis.-->
+<!ELEMENT funcsynopsisinfo %ho; (%cptr.char.mix;|textobject|lineannotation)*>
+<!--end of funcsynopsisinfo.element-->]]>
+
+<!ENTITY % funcsynopsisinfo.attlist "INCLUDE">
+<![%funcsynopsisinfo.attlist;[
+<!ATTLIST funcsynopsisinfo
+ %linespecific.attrib;
+ %common.attrib;
+ %funcsynopsisinfo.role.attrib;
+ %local.funcsynopsisinfo.attrib;
+>
+<!--end of funcsynopsisinfo.attlist-->]]>
+<!--end of funcsynopsisinfo.module-->]]>
+
+<!ENTITY % funcprototype.module "INCLUDE">
+<![%funcprototype.module;[
+<!ENTITY % local.funcprototype.attrib "">
+<!ENTITY % funcprototype.role.attrib "%role.attrib;">
+
+<!ENTITY % funcprototype.element "INCLUDE">
+<![%funcprototype.element;[
+<!--doc:The prototype of a function.-->
+<!ELEMENT funcprototype %ho; (modifier*,
+ funcdef,
+ (void|varargs|(paramdef+, varargs?)),
+ modifier*)>
+
+<!--end of funcprototype.element-->]]>
+
+<!ENTITY % funcprototype.attlist "INCLUDE">
+<![%funcprototype.attlist;[
+<!ATTLIST funcprototype
+ %common.attrib;
+ %funcprototype.role.attrib;
+ %local.funcprototype.attrib;
+>
+<!--end of funcprototype.attlist-->]]>
+<!--end of funcprototype.module-->]]>
+
+<!ENTITY % funcdef.module "INCLUDE">
+<![%funcdef.module;[
+<!ENTITY % local.funcdef.attrib "">
+<!ENTITY % funcdef.role.attrib "%role.attrib;">
+
+<!ENTITY % funcdef.element "INCLUDE">
+<![%funcdef.element;[
+<!--doc:A function (subroutine) name and its return type.-->
+<!ELEMENT funcdef %ho; (#PCDATA
+ | type
+ | replaceable
+ | function)*>
+<!--end of funcdef.element-->]]>
+
+<!ENTITY % funcdef.attlist "INCLUDE">
+<![%funcdef.attlist;[
+<!ATTLIST funcdef
+ %common.attrib;
+ %funcdef.role.attrib;
+ %local.funcdef.attrib;
+>
+<!--end of funcdef.attlist-->]]>
+<!--end of funcdef.module-->]]>
+
+<!ENTITY % void.module "INCLUDE">
+<![%void.module;[
+<!ENTITY % local.void.attrib "">
+<!ENTITY % void.role.attrib "%role.attrib;">
+
+<!ENTITY % void.element "INCLUDE">
+<![%void.element;[
+<!--doc:An empty element in a function synopsis indicating that the function in question takes no arguments.-->
+<!ELEMENT void %ho; EMPTY>
+<!--end of void.element-->]]>
+
+<!ENTITY % void.attlist "INCLUDE">
+<![%void.attlist;[
+<!ATTLIST void
+ %common.attrib;
+ %void.role.attrib;
+ %local.void.attrib;
+>
+<!--end of void.attlist-->]]>
+<!--end of void.module-->]]>
+
+<!ENTITY % varargs.module "INCLUDE">
+<![%varargs.module;[
+<!ENTITY % local.varargs.attrib "">
+<!ENTITY % varargs.role.attrib "%role.attrib;">
+
+<!ENTITY % varargs.element "INCLUDE">
+<![%varargs.element;[
+<!--doc:An empty element in a function synopsis indicating a variable number of arguments.-->
+<!ELEMENT varargs %ho; EMPTY>
+<!--end of varargs.element-->]]>
+
+<!ENTITY % varargs.attlist "INCLUDE">
+<![%varargs.attlist;[
+<!ATTLIST varargs
+ %common.attrib;
+ %varargs.role.attrib;
+ %local.varargs.attrib;
+>
+<!--end of varargs.attlist-->]]>
+<!--end of varargs.module-->]]>
+
+<!-- Processing assumes that only one Parameter will appear in a
+ ParamDef, and that FuncParams will be used at most once, for
+ providing information on the "inner parameters" for parameters that
+ are pointers to functions. -->
+
+<!ENTITY % paramdef.module "INCLUDE">
+<![%paramdef.module;[
+<!ENTITY % local.paramdef.attrib "">
+<!ENTITY % paramdef.role.attrib "%role.attrib;">
+
+<!ENTITY % paramdef.element "INCLUDE">
+<![%paramdef.element;[
+<!--doc:Information about a function parameter in a programming language.-->
+<!ELEMENT paramdef %ho; (#PCDATA
+ | initializer
+ | type
+ | replaceable
+ | parameter
+ | funcparams)*>
+<!--end of paramdef.element-->]]>
+
+<!ENTITY % paramdef.attlist "INCLUDE">
+<![%paramdef.attlist;[
+<!ATTLIST paramdef
+ choice (opt
+ |req) #IMPLIED
+ %common.attrib;
+ %paramdef.role.attrib;
+ %local.paramdef.attrib;
+>
+<!--end of paramdef.attlist-->]]>
+<!--end of paramdef.module-->]]>
+
+<!ENTITY % funcparams.module "INCLUDE">
+<![%funcparams.module;[
+<!ENTITY % local.funcparams.attrib "">
+<!ENTITY % funcparams.role.attrib "%role.attrib;">
+
+<!ENTITY % funcparams.element "INCLUDE">
+<![%funcparams.element;[
+<!--doc:Parameters for a function referenced through a function pointer in a synopsis.-->
+<!ELEMENT funcparams %ho; (%cptr.char.mix;)*>
+<!--end of funcparams.element-->]]>
+
+<!ENTITY % funcparams.attlist "INCLUDE">
+<![%funcparams.attlist;[
+<!ATTLIST funcparams
+ %common.attrib;
+ %funcparams.role.attrib;
+ %local.funcparams.attrib;
+>
+<!--end of funcparams.attlist-->]]>
+<!--end of funcparams.module-->]]>
+
+<!-- LineAnnotation (defined in the Inlines section, below)-->
+<!-- Replaceable (defined in the Inlines section, below)-->
+<!-- Function (defined in the Inlines section, below)-->
+<!-- Parameter (defined in the Inlines section, below)-->
+<!--end of funcsynopsis.content.module-->]]>
+
+<!-- ClassSynopsis ..................... -->
+
+<!ENTITY % classsynopsis.content.module "INCLUDE">
+<![%classsynopsis.content.module;[
+
+<!ENTITY % classsynopsis.module "INCLUDE">
+<![%classsynopsis.module;[
+<!ENTITY % local.classsynopsis.attrib "">
+<!ENTITY % classsynopsis.role.attrib "%role.attrib;">
+
+<!ENTITY % classsynopsis.element "INCLUDE">
+<![%classsynopsis.element;[
+<!--doc:The syntax summary for a class definition.-->
+<!ELEMENT classsynopsis %ho; ((ooclass|oointerface|ooexception)+,
+ (classsynopsisinfo
+ |fieldsynopsis|%method.synop.class;)*)>
+<!--end of classsynopsis.element-->]]>
+
+<!ENTITY % classsynopsis.attlist "INCLUDE">
+<![%classsynopsis.attlist;[
+<!ATTLIST classsynopsis
+ language CDATA #IMPLIED
+ class (class|interface) "class"
+ %common.attrib;
+ %classsynopsis.role.attrib;
+ %local.classsynopsis.attrib;
+>
+<!--end of classsynopsis.attlist-->]]>
+<!--end of classsynopsis.module-->]]>
+
+<!ENTITY % classsynopsisinfo.module "INCLUDE">
+<![ %classsynopsisinfo.module; [
+<!ENTITY % local.classsynopsisinfo.attrib "">
+<!ENTITY % classsynopsisinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % classsynopsisinfo.element "INCLUDE">
+<![ %classsynopsisinfo.element; [
+<!--doc:Information supplementing the contents of a ClassSynopsis.-->
+<!ELEMENT classsynopsisinfo %ho; (%cptr.char.mix;|textobject|lineannotation)*>
+<!--end of classsynopsisinfo.element-->]]>
+
+<!ENTITY % classsynopsisinfo.attlist "INCLUDE">
+<![ %classsynopsisinfo.attlist; [
+<!ATTLIST classsynopsisinfo
+ %linespecific.attrib;
+ %common.attrib;
+ %classsynopsisinfo.role.attrib;
+ %local.classsynopsisinfo.attrib;
+>
+<!--end of classsynopsisinfo.attlist-->]]>
+<!--end of classsynopsisinfo.module-->]]>
+
+<!ENTITY % ooclass.module "INCLUDE">
+<![%ooclass.module;[
+<!ENTITY % local.ooclass.attrib "">
+<!ENTITY % ooclass.role.attrib "%role.attrib;">
+
+<!ENTITY % ooclass.element "INCLUDE">
+<![%ooclass.element;[
+<!--doc:A class in an object-oriented programming language.-->
+<!ELEMENT ooclass %ho; ((modifier|package)*, classname)>
+<!--end of ooclass.element-->]]>
+
+<!ENTITY % ooclass.attlist "INCLUDE">
+<![%ooclass.attlist;[
+<!ATTLIST ooclass
+ %common.attrib;
+ %ooclass.role.attrib;
+ %local.ooclass.attrib;
+>
+<!--end of ooclass.attlist-->]]>
+<!--end of ooclass.module-->]]>
+
+<!ENTITY % oointerface.module "INCLUDE">
+<![%oointerface.module;[
+<!ENTITY % local.oointerface.attrib "">
+<!ENTITY % oointerface.role.attrib "%role.attrib;">
+
+<!ENTITY % oointerface.element "INCLUDE">
+<![%oointerface.element;[
+<!--doc:An interface in an object-oriented programming language.-->
+<!ELEMENT oointerface %ho; ((modifier|package)*, interfacename)>
+<!--end of oointerface.element-->]]>
+
+<!ENTITY % oointerface.attlist "INCLUDE">
+<![%oointerface.attlist;[
+<!ATTLIST oointerface
+ %common.attrib;
+ %oointerface.role.attrib;
+ %local.oointerface.attrib;
+>
+<!--end of oointerface.attlist-->]]>
+<!--end of oointerface.module-->]]>
+
+<!ENTITY % ooexception.module "INCLUDE">
+<![%ooexception.module;[
+<!ENTITY % local.ooexception.attrib "">
+<!ENTITY % ooexception.role.attrib "%role.attrib;">
+
+<!ENTITY % ooexception.element "INCLUDE">
+<![%ooexception.element;[
+<!--doc:An exception in an object-oriented programming language.-->
+<!ELEMENT ooexception %ho; ((modifier|package)*, exceptionname)>
+<!--end of ooexception.element-->]]>
+
+<!ENTITY % ooexception.attlist "INCLUDE">
+<![%ooexception.attlist;[
+<!ATTLIST ooexception
+ %common.attrib;
+ %ooexception.role.attrib;
+ %local.ooexception.attrib;
+>
+<!--end of ooexception.attlist-->]]>
+<!--end of ooexception.module-->]]>
+
+<!ENTITY % modifier.module "INCLUDE">
+<![%modifier.module;[
+<!ENTITY % local.modifier.attrib "">
+<!ENTITY % modifier.role.attrib "%role.attrib;">
+
+<!ENTITY % modifier.element "INCLUDE">
+<![%modifier.element;[
+<!--doc:Modifiers in a synopsis.-->
+<!ELEMENT modifier %ho; (%smallcptr.char.mix;)*>
+<!--end of modifier.element-->]]>
+
+<!ENTITY % modifier.attlist "INCLUDE">
+<![%modifier.attlist;[
+<!ATTLIST modifier
+ %common.attrib;
+ %modifier.role.attrib;
+ %local.modifier.attrib;
+>
+<!--end of modifier.attlist-->]]>
+<!--end of modifier.module-->]]>
+
+<!ENTITY % interfacename.module "INCLUDE">
+<![%interfacename.module;[
+<!ENTITY % local.interfacename.attrib "">
+<!ENTITY % interfacename.role.attrib "%role.attrib;">
+
+<!ENTITY % interfacename.element "INCLUDE">
+<![%interfacename.element;[
+<!--doc:The name of an interface.-->
+<!ELEMENT interfacename %ho; (%cptr.char.mix;)*>
+<!--end of interfacename.element-->]]>
+
+<!ENTITY % interfacename.attlist "INCLUDE">
+<![%interfacename.attlist;[
+<!ATTLIST interfacename
+ %common.attrib;
+ %interfacename.role.attrib;
+ %local.interfacename.attrib;
+>
+<!--end of interfacename.attlist-->]]>
+<!--end of interfacename.module-->]]>
+
+<!ENTITY % exceptionname.module "INCLUDE">
+<![%exceptionname.module;[
+<!ENTITY % local.exceptionname.attrib "">
+<!ENTITY % exceptionname.role.attrib "%role.attrib;">
+
+<!ENTITY % exceptionname.element "INCLUDE">
+<![%exceptionname.element;[
+<!--doc:The name of an exception.-->
+<!ELEMENT exceptionname %ho; (%smallcptr.char.mix;)*>
+<!--end of exceptionname.element-->]]>
+
+<!ENTITY % exceptionname.attlist "INCLUDE">
+<![%exceptionname.attlist;[
+<!ATTLIST exceptionname
+ %common.attrib;
+ %exceptionname.role.attrib;
+ %local.exceptionname.attrib;
+>
+<!--end of exceptionname.attlist-->]]>
+<!--end of exceptionname.module-->]]>
+
+<!ENTITY % fieldsynopsis.module "INCLUDE">
+<![%fieldsynopsis.module;[
+<!ENTITY % local.fieldsynopsis.attrib "">
+<!ENTITY % fieldsynopsis.role.attrib "%role.attrib;">
+
+<!ENTITY % fieldsynopsis.element "INCLUDE">
+<![%fieldsynopsis.element;[
+<!--doc:The name of a field in a class definition.-->
+<!ELEMENT fieldsynopsis %ho; (modifier*, type?, varname, initializer?)>
+<!--end of fieldsynopsis.element-->]]>
+
+<!ENTITY % fieldsynopsis.attlist "INCLUDE">
+<![%fieldsynopsis.attlist;[
+<!ATTLIST fieldsynopsis
+ language CDATA #IMPLIED
+ %common.attrib;
+ %fieldsynopsis.role.attrib;
+ %local.fieldsynopsis.attrib;
+>
+<!--end of fieldsynopsis.attlist-->]]>
+<!--end of fieldsynopsis.module-->]]>
+
+<!ENTITY % initializer.module "INCLUDE">
+<![%initializer.module;[
+<!ENTITY % local.initializer.attrib "">
+<!ENTITY % initializer.role.attrib "%role.attrib;">
+
+<!ENTITY % initializer.element "INCLUDE">
+<![%initializer.element;[
+<!--doc:The initializer for a FieldSynopsis.-->
+<!ELEMENT initializer %ho; (%smallcptr.char.mix;)*>
+<!--end of initializer.element-->]]>
+
+<!ENTITY % initializer.attlist "INCLUDE">
+<![%initializer.attlist;[
+<!ATTLIST initializer
+ %common.attrib;
+ %initializer.role.attrib;
+ %local.initializer.attrib;
+>
+<!--end of initializer.attlist-->]]>
+<!--end of initializer.module-->]]>
+
+<!ENTITY % constructorsynopsis.module "INCLUDE">
+<![%constructorsynopsis.module;[
+<!ENTITY % local.constructorsynopsis.attrib "">
+<!ENTITY % constructorsynopsis.role.attrib "%role.attrib;">
+
+<!ENTITY % constructorsynopsis.element "INCLUDE">
+<![%constructorsynopsis.element;[
+<!--doc:A syntax summary for a constructor.-->
+<!ELEMENT constructorsynopsis %ho; (modifier*,
+ methodname?,
+ (methodparam+|void?),
+ exceptionname*)>
+<!--end of constructorsynopsis.element-->]]>
+
+<!ENTITY % constructorsynopsis.attlist "INCLUDE">
+<![%constructorsynopsis.attlist;[
+<!ATTLIST constructorsynopsis
+ language CDATA #IMPLIED
+ %common.attrib;
+ %constructorsynopsis.role.attrib;
+ %local.constructorsynopsis.attrib;
+>
+<!--end of constructorsynopsis.attlist-->]]>
+<!--end of constructorsynopsis.module-->]]>
+
+<!ENTITY % destructorsynopsis.module "INCLUDE">
+<![%destructorsynopsis.module;[
+<!ENTITY % local.destructorsynopsis.attrib "">
+<!ENTITY % destructorsynopsis.role.attrib "%role.attrib;">
+
+<!ENTITY % destructorsynopsis.element "INCLUDE">
+<![%destructorsynopsis.element;[
+<!--doc:A syntax summary for a destructor.-->
+<!ELEMENT destructorsynopsis %ho; (modifier*,
+ methodname?,
+ (methodparam+|void?),
+ exceptionname*)>
+<!--end of destructorsynopsis.element-->]]>
+
+<!ENTITY % destructorsynopsis.attlist "INCLUDE">
+<![%destructorsynopsis.attlist;[
+<!ATTLIST destructorsynopsis
+ language CDATA #IMPLIED
+ %common.attrib;
+ %destructorsynopsis.role.attrib;
+ %local.destructorsynopsis.attrib;
+>
+<!--end of destructorsynopsis.attlist-->]]>
+<!--end of destructorsynopsis.module-->]]>
+
+<!ENTITY % methodsynopsis.module "INCLUDE">
+<![%methodsynopsis.module;[
+<!ENTITY % local.methodsynopsis.attrib "">
+<!ENTITY % methodsynopsis.role.attrib "%role.attrib;">
+
+<!ENTITY % methodsynopsis.element "INCLUDE">
+<![%methodsynopsis.element;[
+<!--doc:A syntax summary for a method.-->
+<!ELEMENT methodsynopsis %ho; (modifier*,
+ (type|void)?,
+ methodname,
+ (methodparam+|void?),
+ exceptionname*,
+ modifier*)>
+<!--end of methodsynopsis.element-->]]>
+
+<!ENTITY % methodsynopsis.attlist "INCLUDE">
+<![%methodsynopsis.attlist;[
+<!ATTLIST methodsynopsis
+ language CDATA #IMPLIED
+ %common.attrib;
+ %methodsynopsis.role.attrib;
+ %local.methodsynopsis.attrib;
+>
+<!--end of methodsynopsis.attlist-->]]>
+<!--end of methodsynopsis.module-->]]>
+
+<!ENTITY % methodname.module "INCLUDE">
+<![%methodname.module;[
+<!ENTITY % local.methodname.attrib "">
+<!ENTITY % methodname.role.attrib "%role.attrib;">
+
+<!ENTITY % methodname.element "INCLUDE">
+<![%methodname.element;[
+<!--doc:The name of a method.-->
+<!ELEMENT methodname %ho; (%smallcptr.char.mix;)*>
+<!--end of methodname.element-->]]>
+
+<!ENTITY % methodname.attlist "INCLUDE">
+<![%methodname.attlist;[
+<!ATTLIST methodname
+ %common.attrib;
+ %methodname.role.attrib;
+ %local.methodname.attrib;
+>
+<!--end of methodname.attlist-->]]>
+<!--end of methodname.module-->]]>
+
+<!ENTITY % methodparam.module "INCLUDE">
+<![%methodparam.module;[
+<!ENTITY % local.methodparam.attrib "">
+<!ENTITY % methodparam.role.attrib "%role.attrib;">
+
+<!ENTITY % methodparam.element "INCLUDE">
+<![%methodparam.element;[
+<!--doc:Parameters to a method.-->
+<!ELEMENT methodparam %ho; (modifier*,
+ type?,
+ ((parameter,initializer?)|funcparams),
+ modifier*)>
+<!--end of methodparam.element-->]]>
+
+<!ENTITY % methodparam.attlist "INCLUDE">
+<![%methodparam.attlist;[
+<!ATTLIST methodparam
+ choice (opt
+ |req
+ |plain) "req"
+ rep (norepeat
+ |repeat) "norepeat"
+ %common.attrib;
+ %methodparam.role.attrib;
+ %local.methodparam.attrib;
+>
+<!--end of methodparam.attlist-->]]>
+<!--end of methodparam.module-->]]>
+<!--end of classsynopsis.content.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Document information entities and elements ........................... -->
+
+<!-- The document information elements include some elements that are
+ currently used only in the document hierarchy module. They are
+ defined here so that they will be available for use in customized
+ document hierarchies. -->
+
+<!-- .................................. -->
+
+<!ENTITY % docinfo.content.module "INCLUDE">
+<![%docinfo.content.module;[
+
+<!-- Ackno ............................ -->
+
+<!ENTITY % ackno.module "INCLUDE">
+<![%ackno.module;[
+<!ENTITY % local.ackno.attrib "">
+<!ENTITY % ackno.role.attrib "%role.attrib;">
+
+<!ENTITY % ackno.element "INCLUDE">
+<![%ackno.element;[
+<!--doc:Acknowledgements in an Article.-->
+<!ELEMENT ackno %ho; (%docinfo.char.mix;)*>
+<!--end of ackno.element-->]]>
+
+<!ENTITY % ackno.attlist "INCLUDE">
+<![%ackno.attlist;[
+<!ATTLIST ackno
+ %common.attrib;
+ %ackno.role.attrib;
+ %local.ackno.attrib;
+>
+<!--end of ackno.attlist-->]]>
+<!--end of ackno.module-->]]>
+
+<!-- Address .......................... -->
+
+<!ENTITY % address.content.module "INCLUDE">
+<![%address.content.module;[
+<!ENTITY % address.module "INCLUDE">
+<![%address.module;[
+<!ENTITY % local.address.attrib "">
+<!ENTITY % address.role.attrib "%role.attrib;">
+
+<!ENTITY % address.element "INCLUDE">
+<![%address.element;[
+<!--doc:A real-world address, generally a postal address.-->
+<!ELEMENT address %ho; (#PCDATA|personname|%person.ident.mix;
+ |street|pob|postcode|city|state|country|phone
+ |fax|email|otheraddr)*>
+<!--end of address.element-->]]>
+
+<!ENTITY % address.attlist "INCLUDE">
+<![%address.attlist;[
+<!ATTLIST address
+ %linespecific.attrib;
+ %common.attrib;
+ %address.role.attrib;
+ %local.address.attrib;
+>
+<!--end of address.attlist-->]]>
+<!--end of address.module-->]]>
+
+ <!ENTITY % street.module "INCLUDE">
+ <![%street.module;[
+ <!ENTITY % local.street.attrib "">
+ <!ENTITY % street.role.attrib "%role.attrib;">
+
+<!ENTITY % street.element "INCLUDE">
+<![%street.element;[
+<!--doc:A street address in an address.-->
+<!ELEMENT street %ho; (%docinfo.char.mix;)*>
+<!--end of street.element-->]]>
+
+<!ENTITY % street.attlist "INCLUDE">
+<![%street.attlist;[
+<!ATTLIST street
+ %common.attrib;
+ %street.role.attrib;
+ %local.street.attrib;
+>
+<!--end of street.attlist-->]]>
+ <!--end of street.module-->]]>
+
+ <!ENTITY % pob.module "INCLUDE">
+ <![%pob.module;[
+ <!ENTITY % local.pob.attrib "">
+ <!ENTITY % pob.role.attrib "%role.attrib;">
+
+<!ENTITY % pob.element "INCLUDE">
+<![%pob.element;[
+<!--doc:A post office box in an address.-->
+<!ELEMENT pob %ho; (%docinfo.char.mix;)*>
+<!--end of pob.element-->]]>
+
+<!ENTITY % pob.attlist "INCLUDE">
+<![%pob.attlist;[
+<!ATTLIST pob
+ %common.attrib;
+ %pob.role.attrib;
+ %local.pob.attrib;
+>
+<!--end of pob.attlist-->]]>
+ <!--end of pob.module-->]]>
+
+ <!ENTITY % postcode.module "INCLUDE">
+ <![%postcode.module;[
+ <!ENTITY % local.postcode.attrib "">
+ <!ENTITY % postcode.role.attrib "%role.attrib;">
+
+<!ENTITY % postcode.element "INCLUDE">
+<![%postcode.element;[
+<!--doc:A postal code in an address.-->
+<!ELEMENT postcode %ho; (%docinfo.char.mix;)*>
+<!--end of postcode.element-->]]>
+
+<!ENTITY % postcode.attlist "INCLUDE">
+<![%postcode.attlist;[
+<!ATTLIST postcode
+ %common.attrib;
+ %postcode.role.attrib;
+ %local.postcode.attrib;
+>
+<!--end of postcode.attlist-->]]>
+ <!--end of postcode.module-->]]>
+
+ <!ENTITY % city.module "INCLUDE">
+ <![%city.module;[
+ <!ENTITY % local.city.attrib "">
+ <!ENTITY % city.role.attrib "%role.attrib;">
+
+<!ENTITY % city.element "INCLUDE">
+<![%city.element;[
+<!--doc:The name of a city in an address.-->
+<!ELEMENT city %ho; (%docinfo.char.mix;)*>
+<!--end of city.element-->]]>
+
+<!ENTITY % city.attlist "INCLUDE">
+<![%city.attlist;[
+<!ATTLIST city
+ %common.attrib;
+ %city.role.attrib;
+ %local.city.attrib;
+>
+<!--end of city.attlist-->]]>
+ <!--end of city.module-->]]>
+
+ <!ENTITY % state.module "INCLUDE">
+ <![%state.module;[
+ <!ENTITY % local.state.attrib "">
+ <!ENTITY % state.role.attrib "%role.attrib;">
+
+<!ENTITY % state.element "INCLUDE">
+<![%state.element;[
+<!--doc:A state or province in an address.-->
+<!ELEMENT state %ho; (%docinfo.char.mix;)*>
+<!--end of state.element-->]]>
+
+<!ENTITY % state.attlist "INCLUDE">
+<![%state.attlist;[
+<!ATTLIST state
+ %common.attrib;
+ %state.role.attrib;
+ %local.state.attrib;
+>
+<!--end of state.attlist-->]]>
+ <!--end of state.module-->]]>
+
+ <!ENTITY % country.module "INCLUDE">
+ <![%country.module;[
+ <!ENTITY % local.country.attrib "">
+ <!ENTITY % country.role.attrib "%role.attrib;">
+
+<!ENTITY % country.element "INCLUDE">
+<![%country.element;[
+<!--doc:The name of a country.-->
+<!ELEMENT country %ho; (%docinfo.char.mix;)*>
+<!--end of country.element-->]]>
+
+<!ENTITY % country.attlist "INCLUDE">
+<![%country.attlist;[
+<!ATTLIST country
+ %common.attrib;
+ %country.role.attrib;
+ %local.country.attrib;
+>
+<!--end of country.attlist-->]]>
+ <!--end of country.module-->]]>
+
+ <!ENTITY % phone.module "INCLUDE">
+ <![%phone.module;[
+ <!ENTITY % local.phone.attrib "">
+ <!ENTITY % phone.role.attrib "%role.attrib;">
+
+<!ENTITY % phone.element "INCLUDE">
+<![%phone.element;[
+<!--doc:A telephone number.-->
+<!ELEMENT phone %ho; (%docinfo.char.mix;)*>
+<!--end of phone.element-->]]>
+
+<!ENTITY % phone.attlist "INCLUDE">
+<![%phone.attlist;[
+<!ATTLIST phone
+ %common.attrib;
+ %phone.role.attrib;
+ %local.phone.attrib;
+>
+<!--end of phone.attlist-->]]>
+ <!--end of phone.module-->]]>
+
+ <!ENTITY % fax.module "INCLUDE">
+ <![%fax.module;[
+ <!ENTITY % local.fax.attrib "">
+ <!ENTITY % fax.role.attrib "%role.attrib;">
+
+<!ENTITY % fax.element "INCLUDE">
+<![%fax.element;[
+<!--doc:A fax number.-->
+<!ELEMENT fax %ho; (%docinfo.char.mix;)*>
+<!--end of fax.element-->]]>
+
+<!ENTITY % fax.attlist "INCLUDE">
+<![%fax.attlist;[
+<!ATTLIST fax
+ %common.attrib;
+ %fax.role.attrib;
+ %local.fax.attrib;
+>
+<!--end of fax.attlist-->]]>
+ <!--end of fax.module-->]]>
+
+ <!-- Email (defined in the Inlines section, below)-->
+
+ <!ENTITY % otheraddr.module "INCLUDE">
+ <![%otheraddr.module;[
+ <!ENTITY % local.otheraddr.attrib "">
+ <!ENTITY % otheraddr.role.attrib "%role.attrib;">
+
+<!ENTITY % otheraddr.element "INCLUDE">
+<![%otheraddr.element;[
+<!--doc:Uncategorized information in address.-->
+<!ELEMENT otheraddr %ho; (%docinfo.char.mix;)*>
+<!--end of otheraddr.element-->]]>
+
+<!ENTITY % otheraddr.attlist "INCLUDE">
+<![%otheraddr.attlist;[
+<!ATTLIST otheraddr
+ %common.attrib;
+ %otheraddr.role.attrib;
+ %local.otheraddr.attrib;
+>
+<!--end of otheraddr.attlist-->]]>
+ <!--end of otheraddr.module-->]]>
+<!--end of address.content.module-->]]>
+
+<!-- Affiliation ...................... -->
+
+<!ENTITY % affiliation.content.module "INCLUDE">
+<![%affiliation.content.module;[
+<!ENTITY % affiliation.module "INCLUDE">
+<![%affiliation.module;[
+<!ENTITY % local.affiliation.attrib "">
+<!ENTITY % affiliation.role.attrib "%role.attrib;">
+
+<!ENTITY % affiliation.element "INCLUDE">
+<![%affiliation.element;[
+<!--doc:The institutional affiliation of an individual.-->
+<!ELEMENT affiliation %ho; (shortaffil?, jobtitle*, orgname?, orgdiv*,
+ address*)>
+<!--end of affiliation.element-->]]>
+
+<!ENTITY % affiliation.attlist "INCLUDE">
+<![%affiliation.attlist;[
+<!ATTLIST affiliation
+ %common.attrib;
+ %affiliation.role.attrib;
+ %local.affiliation.attrib;
+>
+<!--end of affiliation.attlist-->]]>
+<!--end of affiliation.module-->]]>
+
+ <!ENTITY % shortaffil.module "INCLUDE">
+ <![%shortaffil.module;[
+ <!ENTITY % local.shortaffil.attrib "">
+ <!ENTITY % shortaffil.role.attrib "%role.attrib;">
+
+<!ENTITY % shortaffil.element "INCLUDE">
+<![%shortaffil.element;[
+<!--doc:A brief description of an affiliation.-->
+<!ELEMENT shortaffil %ho; (%docinfo.char.mix;)*>
+<!--end of shortaffil.element-->]]>
+
+<!ENTITY % shortaffil.attlist "INCLUDE">
+<![%shortaffil.attlist;[
+<!ATTLIST shortaffil
+ %common.attrib;
+ %shortaffil.role.attrib;
+ %local.shortaffil.attrib;
+>
+<!--end of shortaffil.attlist-->]]>
+ <!--end of shortaffil.module-->]]>
+
+ <!ENTITY % jobtitle.module "INCLUDE">
+ <![%jobtitle.module;[
+ <!ENTITY % local.jobtitle.attrib "">
+ <!ENTITY % jobtitle.role.attrib "%role.attrib;">
+
+<!ENTITY % jobtitle.element "INCLUDE">
+<![%jobtitle.element;[
+<!--doc:The title of an individual in an organization.-->
+<!ELEMENT jobtitle %ho; (%docinfo.char.mix;)*>
+<!--end of jobtitle.element-->]]>
+
+<!ENTITY % jobtitle.attlist "INCLUDE">
+<![%jobtitle.attlist;[
+<!ATTLIST jobtitle
+ %common.attrib;
+ %jobtitle.role.attrib;
+ %local.jobtitle.attrib;
+>
+<!--end of jobtitle.attlist-->]]>
+ <!--end of jobtitle.module-->]]>
+
+ <!-- OrgName (defined elsewhere in this section)-->
+
+ <!ENTITY % orgdiv.module "INCLUDE">
+ <![%orgdiv.module;[
+ <!ENTITY % local.orgdiv.attrib "">
+ <!ENTITY % orgdiv.role.attrib "%role.attrib;">
+
+<!ENTITY % orgdiv.element "INCLUDE">
+<![%orgdiv.element;[
+<!--doc:A division of an organization.-->
+<!ELEMENT orgdiv %ho; (%docinfo.char.mix;)*>
+<!--end of orgdiv.element-->]]>
+
+<!ENTITY % orgdiv.attlist "INCLUDE">
+<![%orgdiv.attlist;[
+<!ATTLIST orgdiv
+ %common.attrib;
+ %orgdiv.role.attrib;
+ %local.orgdiv.attrib;
+>
+<!--end of orgdiv.attlist-->]]>
+ <!--end of orgdiv.module-->]]>
+
+ <!-- Address (defined elsewhere in this section)-->
+<!--end of affiliation.content.module-->]]>
+
+<!-- ArtPageNums ...................... -->
+
+<!ENTITY % artpagenums.module "INCLUDE">
+<![%artpagenums.module;[
+<!ENTITY % local.artpagenums.attrib "">
+<!ENTITY % artpagenums.role.attrib "%role.attrib;">
+
+<!ENTITY % artpagenums.element "INCLUDE">
+<![%artpagenums.element;[
+<!--doc:The page numbers of an article as published.-->
+<!ELEMENT artpagenums %ho; (%docinfo.char.mix;)*>
+<!--end of artpagenums.element-->]]>
+
+<!ENTITY % artpagenums.attlist "INCLUDE">
+<![%artpagenums.attlist;[
+<!ATTLIST artpagenums
+ %common.attrib;
+ %artpagenums.role.attrib;
+ %local.artpagenums.attrib;
+>
+<!--end of artpagenums.attlist-->]]>
+<!--end of artpagenums.module-->]]>
+
+<!-- PersonName -->
+
+<!ENTITY % personname.module "INCLUDE">
+<![%personname.module;[
+<!ENTITY % local.personname.attrib "">
+<!ENTITY % personname.role.attrib "%role.attrib;">
+
+<!ENTITY % personname.element "INCLUDE">
+<![%personname.element;[
+<!--doc:The personal name of an individual.-->
+<!ELEMENT personname %ho; ((honorific|firstname|surname|lineage|othername)+)>
+<!--end of personname.element-->]]>
+
+<!ENTITY % personname.attlist "INCLUDE">
+<![%personname.attlist;[
+<!ATTLIST personname
+ %common.attrib;
+ %personname.role.attrib;
+ %local.personname.attrib;
+>
+<!--end of personname.attlist-->]]>
+<!--end of personname.module-->]]>
+
+<!-- Author ........................... -->
+
+<!ENTITY % author.module "INCLUDE">
+<![%author.module;[
+<!ENTITY % local.author.attrib "">
+<!ENTITY % author.role.attrib "%role.attrib;">
+
+<!ENTITY % author.element "INCLUDE">
+<![%author.element;[
+<!--doc:The name of an individual author.-->
+<!ELEMENT author %ho; ((personname|(%person.ident.mix;)+),(personblurb|email|address)*)>
+<!--end of author.element-->]]>
+
+<!ENTITY % author.attlist "INCLUDE">
+<![%author.attlist;[
+<!ATTLIST author
+ %common.attrib;
+ %author.role.attrib;
+ %local.author.attrib;
+>
+<!--end of author.attlist-->]]>
+<!--(see "Personal identity elements" for %person.ident.mix;)-->
+<!--end of author.module-->]]>
+
+<!-- AuthorGroup ...................... -->
+
+<!ENTITY % authorgroup.content.module "INCLUDE">
+<![%authorgroup.content.module;[
+<!ENTITY % authorgroup.module "INCLUDE">
+<![%authorgroup.module;[
+<!ENTITY % local.authorgroup.attrib "">
+<!ENTITY % authorgroup.role.attrib "%role.attrib;">
+
+<!ENTITY % authorgroup.element "INCLUDE">
+<![%authorgroup.element;[
+<!--doc:Wrapper for author information when a document has multiple authors or collabarators.-->
+<!ELEMENT authorgroup %ho; ((author|editor|collab|corpauthor|corpcredit|othercredit)+)>
+<!--end of authorgroup.element-->]]>
+
+<!ENTITY % authorgroup.attlist "INCLUDE">
+<![%authorgroup.attlist;[
+<!ATTLIST authorgroup
+ %common.attrib;
+ %authorgroup.role.attrib;
+ %local.authorgroup.attrib;
+>
+<!--end of authorgroup.attlist-->]]>
+<!--end of authorgroup.module-->]]>
+
+ <!-- Author (defined elsewhere in this section)-->
+ <!-- Editor (defined elsewhere in this section)-->
+
+ <!ENTITY % collab.content.module "INCLUDE">
+ <![%collab.content.module;[
+ <!ENTITY % collab.module "INCLUDE">
+ <![%collab.module;[
+ <!ENTITY % local.collab.attrib "">
+ <!ENTITY % collab.role.attrib "%role.attrib;">
+
+<!ENTITY % collab.element "INCLUDE">
+<![%collab.element;[
+<!--doc:Identifies a collaborator.-->
+<!ELEMENT collab %ho; (collabname, affiliation*)>
+<!--end of collab.element-->]]>
+
+<!ENTITY % collab.attlist "INCLUDE">
+<![%collab.attlist;[
+<!ATTLIST collab
+ %common.attrib;
+ %collab.role.attrib;
+ %local.collab.attrib;
+>
+<!--end of collab.attlist-->]]>
+ <!--end of collab.module-->]]>
+
+ <!ENTITY % collabname.module "INCLUDE">
+ <![%collabname.module;[
+ <!ENTITY % local.collabname.attrib "">
+ <!ENTITY % collabname.role.attrib "%role.attrib;">
+
+<!ENTITY % collabname.element "INCLUDE">
+<![%collabname.element;[
+<!--doc:The name of a collaborator.-->
+<!ELEMENT collabname %ho; (%docinfo.char.mix;)*>
+<!--end of collabname.element-->]]>
+
+<!ENTITY % collabname.attlist "INCLUDE">
+<![%collabname.attlist;[
+<!ATTLIST collabname
+ %common.attrib;
+ %collabname.role.attrib;
+ %local.collabname.attrib;
+>
+<!--end of collabname.attlist-->]]>
+ <!--end of collabname.module-->]]>
+
+ <!-- Affiliation (defined elsewhere in this section)-->
+ <!--end of collab.content.module-->]]>
+
+ <!-- CorpAuthor (defined elsewhere in this section)-->
+ <!-- OtherCredit (defined elsewhere in this section)-->
+
+<!--end of authorgroup.content.module-->]]>
+
+<!-- AuthorInitials ................... -->
+
+<!ENTITY % authorinitials.module "INCLUDE">
+<![%authorinitials.module;[
+<!ENTITY % local.authorinitials.attrib "">
+<!ENTITY % authorinitials.role.attrib "%role.attrib;">
+
+<!ENTITY % authorinitials.element "INCLUDE">
+<![%authorinitials.element;[
+<!--doc:The initials or other short identifier for an author.-->
+<!ELEMENT authorinitials %ho; (%docinfo.char.mix;)*>
+<!--end of authorinitials.element-->]]>
+
+<!ENTITY % authorinitials.attlist "INCLUDE">
+<![%authorinitials.attlist;[
+<!ATTLIST authorinitials
+ %common.attrib;
+ %authorinitials.role.attrib;
+ %local.authorinitials.attrib;
+>
+<!--end of authorinitials.attlist-->]]>
+<!--end of authorinitials.module-->]]>
+
+<!-- ConfGroup ........................ -->
+
+<!ENTITY % confgroup.content.module "INCLUDE">
+<![%confgroup.content.module;[
+<!ENTITY % confgroup.module "INCLUDE">
+<![%confgroup.module;[
+<!ENTITY % local.confgroup.attrib "">
+<!ENTITY % confgroup.role.attrib "%role.attrib;">
+
+<!ENTITY % confgroup.element "INCLUDE">
+<![%confgroup.element;[
+<!--doc:A wrapper for document meta-information about a conference.-->
+<!ELEMENT confgroup %ho; ((confdates|conftitle|confnum|address|confsponsor)*)>
+<!--end of confgroup.element-->]]>
+
+<!ENTITY % confgroup.attlist "INCLUDE">
+<![%confgroup.attlist;[
+<!ATTLIST confgroup
+ %common.attrib;
+ %confgroup.role.attrib;
+ %local.confgroup.attrib;
+>
+<!--end of confgroup.attlist-->]]>
+<!--end of confgroup.module-->]]>
+
+ <!ENTITY % confdates.module "INCLUDE">
+ <![%confdates.module;[
+ <!ENTITY % local.confdates.attrib "">
+ <!ENTITY % confdates.role.attrib "%role.attrib;">
+
+<!ENTITY % confdates.element "INCLUDE">
+<![%confdates.element;[
+<!--doc:The dates of a conference for which a document was written.-->
+<!ELEMENT confdates %ho; (%docinfo.char.mix;)*>
+<!--end of confdates.element-->]]>
+
+<!ENTITY % confdates.attlist "INCLUDE">
+<![%confdates.attlist;[
+<!ATTLIST confdates
+ %common.attrib;
+ %confdates.role.attrib;
+ %local.confdates.attrib;
+>
+<!--end of confdates.attlist-->]]>
+ <!--end of confdates.module-->]]>
+
+ <!ENTITY % conftitle.module "INCLUDE">
+ <![%conftitle.module;[
+ <!ENTITY % local.conftitle.attrib "">
+ <!ENTITY % conftitle.role.attrib "%role.attrib;">
+
+<!ENTITY % conftitle.element "INCLUDE">
+<![%conftitle.element;[
+<!--doc:The title of a conference for which a document was written.-->
+<!ELEMENT conftitle %ho; (%docinfo.char.mix;)*>
+<!--end of conftitle.element-->]]>
+
+<!ENTITY % conftitle.attlist "INCLUDE">
+<![%conftitle.attlist;[
+<!ATTLIST conftitle
+ %common.attrib;
+ %conftitle.role.attrib;
+ %local.conftitle.attrib;
+>
+<!--end of conftitle.attlist-->]]>
+ <!--end of conftitle.module-->]]>
+
+ <!ENTITY % confnum.module "INCLUDE">
+ <![%confnum.module;[
+ <!ENTITY % local.confnum.attrib "">
+ <!ENTITY % confnum.role.attrib "%role.attrib;">
+
+<!ENTITY % confnum.element "INCLUDE">
+<![%confnum.element;[
+<!--doc:An identifier, frequently numerical, associated with a conference for which a document was written.-->
+<!ELEMENT confnum %ho; (%docinfo.char.mix;)*>
+<!--end of confnum.element-->]]>
+
+<!ENTITY % confnum.attlist "INCLUDE">
+<![%confnum.attlist;[
+<!ATTLIST confnum
+ %common.attrib;
+ %confnum.role.attrib;
+ %local.confnum.attrib;
+>
+<!--end of confnum.attlist-->]]>
+ <!--end of confnum.module-->]]>
+
+ <!-- Address (defined elsewhere in this section)-->
+
+ <!ENTITY % confsponsor.module "INCLUDE">
+ <![%confsponsor.module;[
+ <!ENTITY % local.confsponsor.attrib "">
+ <!ENTITY % confsponsor.role.attrib "%role.attrib;">
+
+<!ENTITY % confsponsor.element "INCLUDE">
+<![%confsponsor.element;[
+<!--doc:The sponsor of a conference for which a document was written.-->
+<!ELEMENT confsponsor %ho; (%docinfo.char.mix;)*>
+<!--end of confsponsor.element-->]]>
+
+<!ENTITY % confsponsor.attlist "INCLUDE">
+<![%confsponsor.attlist;[
+<!ATTLIST confsponsor
+ %common.attrib;
+ %confsponsor.role.attrib;
+ %local.confsponsor.attrib;
+>
+<!--end of confsponsor.attlist-->]]>
+ <!--end of confsponsor.module-->]]>
+<!--end of confgroup.content.module-->]]>
+
+<!-- ContractNum ...................... -->
+
+<!ENTITY % contractnum.module "INCLUDE">
+<![%contractnum.module;[
+<!ENTITY % local.contractnum.attrib "">
+<!ENTITY % contractnum.role.attrib "%role.attrib;">
+
+<!ENTITY % contractnum.element "INCLUDE">
+<![%contractnum.element;[
+<!--doc:The contract number of a document.-->
+<!ELEMENT contractnum %ho; (%docinfo.char.mix;)*>
+<!--end of contractnum.element-->]]>
+
+<!ENTITY % contractnum.attlist "INCLUDE">
+<![%contractnum.attlist;[
+<!ATTLIST contractnum
+ %common.attrib;
+ %contractnum.role.attrib;
+ %local.contractnum.attrib;
+>
+<!--end of contractnum.attlist-->]]>
+<!--end of contractnum.module-->]]>
+
+<!-- ContractSponsor .................. -->
+
+<!ENTITY % contractsponsor.module "INCLUDE">
+<![%contractsponsor.module;[
+<!ENTITY % local.contractsponsor.attrib "">
+<!ENTITY % contractsponsor.role.attrib "%role.attrib;">
+
+<!ENTITY % contractsponsor.element "INCLUDE">
+<![%contractsponsor.element;[
+<!--doc:The sponsor of a contract.-->
+<!ELEMENT contractsponsor %ho; (%docinfo.char.mix;)*>
+<!--end of contractsponsor.element-->]]>
+
+<!ENTITY % contractsponsor.attlist "INCLUDE">
+<![%contractsponsor.attlist;[
+<!ATTLIST contractsponsor
+ %common.attrib;
+ %contractsponsor.role.attrib;
+ %local.contractsponsor.attrib;
+>
+<!--end of contractsponsor.attlist-->]]>
+<!--end of contractsponsor.module-->]]>
+
+<!-- Copyright ........................ -->
+
+<!ENTITY % copyright.content.module "INCLUDE">
+<![%copyright.content.module;[
+<!ENTITY % copyright.module "INCLUDE">
+<![%copyright.module;[
+<!ENTITY % local.copyright.attrib "">
+<!ENTITY % copyright.role.attrib "%role.attrib;">
+
+<!ENTITY % copyright.element "INCLUDE">
+<![%copyright.element;[
+<!--doc:Copyright information about a document.-->
+<!ELEMENT copyright %ho; (year+, holder*)>
+<!--end of copyright.element-->]]>
+
+<!ENTITY % copyright.attlist "INCLUDE">
+<![%copyright.attlist;[
+<!ATTLIST copyright
+ %common.attrib;
+ %copyright.role.attrib;
+ %local.copyright.attrib;
+>
+<!--end of copyright.attlist-->]]>
+<!--end of copyright.module-->]]>
+
+ <!ENTITY % year.module "INCLUDE">
+ <![%year.module;[
+ <!ENTITY % local.year.attrib "">
+ <!ENTITY % year.role.attrib "%role.attrib;">
+
+<!ENTITY % year.element "INCLUDE">
+<![%year.element;[
+<!--doc:The year of publication of a document.-->
+<!ELEMENT year %ho; (%docinfo.char.mix;)*>
+<!--end of year.element-->]]>
+
+<!ENTITY % year.attlist "INCLUDE">
+<![%year.attlist;[
+<!ATTLIST year
+ %common.attrib;
+ %year.role.attrib;
+ %local.year.attrib;
+>
+<!--end of year.attlist-->]]>
+ <!--end of year.module-->]]>
+
+ <!ENTITY % holder.module "INCLUDE">
+ <![%holder.module;[
+ <!ENTITY % local.holder.attrib "">
+ <!ENTITY % holder.role.attrib "%role.attrib;">
+
+<!ENTITY % holder.element "INCLUDE">
+<![%holder.element;[
+<!--doc:The name of the individual or organization that holds a copyright.-->
+<!ELEMENT holder %ho; (%docinfo.char.mix;)*>
+<!--end of holder.element-->]]>
+
+<!ENTITY % holder.attlist "INCLUDE">
+<![%holder.attlist;[
+<!ATTLIST holder
+ %common.attrib;
+ %holder.role.attrib;
+ %local.holder.attrib;
+>
+<!--end of holder.attlist-->]]>
+ <!--end of holder.module-->]]>
+<!--end of copyright.content.module-->]]>
+
+<!-- CorpAuthor ....................... -->
+
+<!ENTITY % corpauthor.module "INCLUDE">
+<![%corpauthor.module;[
+<!ENTITY % local.corpauthor.attrib "">
+<!ENTITY % corpauthor.role.attrib "%role.attrib;">
+
+<!ENTITY % corpauthor.element "INCLUDE">
+<![%corpauthor.element;[
+<!--doc:A corporate author, as opposed to an individual.-->
+<!ELEMENT corpauthor %ho; (%docinfo.char.mix;)*>
+<!--end of corpauthor.element-->]]>
+
+<!ENTITY % corpauthor.attlist "INCLUDE">
+<![%corpauthor.attlist;[
+<!ATTLIST corpauthor
+ %common.attrib;
+ %corpauthor.role.attrib;
+ %local.corpauthor.attrib;
+>
+<!--end of corpauthor.attlist-->]]>
+<!--end of corpauthor.module-->]]>
+
+<!-- CorpCredit ...................... -->
+
+<!ENTITY % corpcredit.module "INCLUDE">
+<![%corpcredit.module;[
+<!ENTITY % local.corpcredit.attrib "">
+<!ENTITY % corpcredit.role.attrib "%role.attrib;">
+
+<!ENTITY % corpcredit.element "INCLUDE">
+<![%corpcredit.element;[
+<!--doc:A corporation or organization credited in a document.-->
+<!ELEMENT corpcredit %ho; (%docinfo.char.mix;)*>
+<!--end of corpcredit.element-->]]>
+
+<!ENTITY % corpcredit.attlist "INCLUDE">
+<![%corpcredit.attlist;[
+<!ATTLIST corpcredit
+ class (graphicdesigner
+ |productioneditor
+ |copyeditor
+ |technicaleditor
+ |translator
+ |other) #IMPLIED
+ %common.attrib;
+ %corpcredit.role.attrib;
+ %local.corpcredit.attrib;
+>
+<!--end of corpcredit.attlist-->]]>
+<!--end of corpcredit.module-->]]>
+
+<!-- CorpName ......................... -->
+
+<!ENTITY % corpname.module "INCLUDE">
+<![%corpname.module;[
+<!ENTITY % local.corpname.attrib "">
+
+<!ENTITY % corpname.element "INCLUDE">
+<![%corpname.element;[
+<!--doc:The name of a corporation.-->
+<!ELEMENT corpname %ho; (%docinfo.char.mix;)*>
+<!--end of corpname.element-->]]>
+<!ENTITY % corpname.role.attrib "%role.attrib;">
+
+<!ENTITY % corpname.attlist "INCLUDE">
+<![%corpname.attlist;[
+<!ATTLIST corpname
+ %common.attrib;
+ %corpname.role.attrib;
+ %local.corpname.attrib;
+>
+<!--end of corpname.attlist-->]]>
+<!--end of corpname.module-->]]>
+
+<!-- Date ............................. -->
+
+<!ENTITY % date.module "INCLUDE">
+<![%date.module;[
+<!ENTITY % local.date.attrib "">
+<!ENTITY % date.role.attrib "%role.attrib;">
+
+<!ENTITY % date.element "INCLUDE">
+<![%date.element;[
+<!--doc:The date of publication or revision of a document.-->
+<!ELEMENT date %ho; (%docinfo.char.mix;)*>
+<!--end of date.element-->]]>
+
+<!ENTITY % date.attlist "INCLUDE">
+<![%date.attlist;[
+<!ATTLIST date
+ %common.attrib;
+ %date.role.attrib;
+ %local.date.attrib;
+>
+<!--end of date.attlist-->]]>
+<!--end of date.module-->]]>
+
+<!-- Edition .......................... -->
+
+<!ENTITY % edition.module "INCLUDE">
+<![%edition.module;[
+<!ENTITY % local.edition.attrib "">
+<!ENTITY % edition.role.attrib "%role.attrib;">
+
+<!ENTITY % edition.element "INCLUDE">
+<![%edition.element;[
+<!--doc:The name or number of an edition of a document.-->
+<!ELEMENT edition %ho; (%docinfo.char.mix;)*>
+<!--end of edition.element-->]]>
+
+<!ENTITY % edition.attlist "INCLUDE">
+<![%edition.attlist;[
+<!ATTLIST edition
+ %common.attrib;
+ %edition.role.attrib;
+ %local.edition.attrib;
+>
+<!--end of edition.attlist-->]]>
+<!--end of edition.module-->]]>
+
+<!-- Editor ........................... -->
+
+<!ENTITY % editor.module "INCLUDE">
+<![%editor.module;[
+<!ENTITY % local.editor.attrib "">
+<!ENTITY % editor.role.attrib "%role.attrib;">
+
+<!ENTITY % editor.element "INCLUDE">
+<![%editor.element;[
+<!--doc:The name of the editor of a document.-->
+<!ELEMENT editor %ho; ((personname|(%person.ident.mix;)+),(personblurb|email|address)*)>
+<!--end of editor.element-->]]>
+
+<!ENTITY % editor.attlist "INCLUDE">
+<![%editor.attlist;[
+<!ATTLIST editor
+ %common.attrib;
+ %editor.role.attrib;
+ %local.editor.attrib;
+>
+<!--end of editor.attlist-->]]>
+ <!--(see "Personal identity elements" for %person.ident.mix;)-->
+<!--end of editor.module-->]]>
+
+<!-- ISBN ............................. -->
+
+<!ENTITY % isbn.module "INCLUDE">
+<![%isbn.module;[
+<!ENTITY % local.isbn.attrib "">
+<!ENTITY % isbn.role.attrib "%role.attrib;">
+
+<!ENTITY % isbn.element "INCLUDE">
+<![%isbn.element;[
+<!--doc:The International Standard Book Number of a document.-->
+<!ELEMENT isbn %ho; (%docinfo.char.mix;)*>
+<!--end of isbn.element-->]]>
+
+<!ENTITY % isbn.attlist "INCLUDE">
+<![%isbn.attlist;[
+<!ATTLIST isbn
+ %common.attrib;
+ %isbn.role.attrib;
+ %local.isbn.attrib;
+>
+<!--end of isbn.attlist-->]]>
+<!--end of isbn.module-->]]>
+
+<!-- ISSN ............................. -->
+
+<!ENTITY % issn.module "INCLUDE">
+<![%issn.module;[
+<!ENTITY % local.issn.attrib "">
+<!ENTITY % issn.role.attrib "%role.attrib;">
+
+<!ENTITY % issn.element "INCLUDE">
+<![%issn.element;[
+<!--doc:The International Standard Serial Number of a periodical.-->
+<!ELEMENT issn %ho; (%docinfo.char.mix;)*>
+<!--end of issn.element-->]]>
+
+<!ENTITY % issn.attlist "INCLUDE">
+<![%issn.attlist;[
+<!ATTLIST issn
+ %common.attrib;
+ %issn.role.attrib;
+ %local.issn.attrib;
+>
+<!--end of issn.attlist-->]]>
+<!--end of issn.module-->]]>
+
+<!-- BiblioId ................. -->
+<!ENTITY % biblio.class.attrib
+ "class (uri
+ |doi
+ |isbn
+ |isrn
+ |issn
+ |libraryofcongress
+ |pubnumber
+ |other) #IMPLIED
+ otherclass CDATA #IMPLIED"
+>
+
+<!ENTITY % biblioid.module "INCLUDE">
+<![%biblioid.module;[
+<!ENTITY % local.biblioid.attrib "">
+<!ENTITY % biblioid.role.attrib "%role.attrib;">
+
+<!ENTITY % biblioid.element "INCLUDE">
+<![%biblioid.element;[
+<!--doc:An identifier for a document.-->
+<!ELEMENT biblioid %ho; (%docinfo.char.mix;)*>
+<!--end of biblioid.element-->]]>
+
+<!ENTITY % biblioid.attlist "INCLUDE">
+<![%biblioid.attlist;[
+<!ATTLIST biblioid
+ %biblio.class.attrib;
+ %common.attrib;
+ %biblioid.role.attrib;
+ %local.biblioid.attrib;
+>
+<!--end of biblioid.attlist-->]]>
+<!--end of biblioid.module-->]]>
+
+<!-- CiteBiblioId ................. -->
+
+<!ENTITY % citebiblioid.module "INCLUDE">
+<![%citebiblioid.module;[
+<!ENTITY % local.citebiblioid.attrib "">
+<!ENTITY % citebiblioid.role.attrib "%role.attrib;">
+
+<!ENTITY % citebiblioid.element "INCLUDE">
+<![%citebiblioid.element;[
+<!--doc:A citation of a bibliographic identifier.-->
+<!ELEMENT citebiblioid %ho; (%docinfo.char.mix;)*>
+<!--end of citebiblioid.element-->]]>
+
+<!ENTITY % citebiblioid.attlist "INCLUDE">
+<![%citebiblioid.attlist;[
+<!ATTLIST citebiblioid
+ %biblio.class.attrib;
+ %common.attrib;
+ %citebiblioid.role.attrib;
+ %local.citebiblioid.attrib;
+>
+<!--end of citebiblioid.attlist-->]]>
+<!--end of citebiblioid.module-->]]>
+
+<!-- BiblioSource ................. -->
+
+<!ENTITY % bibliosource.module "INCLUDE">
+<![%bibliosource.module;[
+<!ENTITY % local.bibliosource.attrib "">
+<!ENTITY % bibliosource.role.attrib "%role.attrib;">
+
+<!ENTITY % bibliosource.element "INCLUDE">
+<![%bibliosource.element;[
+<!--doc:The source of a document.-->
+<!ELEMENT bibliosource %ho; (%docinfo.char.mix;)*>
+<!--end of bibliosource.element-->]]>
+
+<!ENTITY % bibliosource.attlist "INCLUDE">
+<![%bibliosource.attlist;[
+<!ATTLIST bibliosource
+ %biblio.class.attrib;
+ %common.attrib;
+ %bibliosource.role.attrib;
+ %local.bibliosource.attrib;
+>
+<!--end of bibliosource.attlist-->]]>
+<!--end of bibliosource.module-->]]>
+
+<!-- BiblioRelation ................. -->
+
+<!ENTITY % bibliorelation.module "INCLUDE">
+<![%bibliorelation.module;[
+<!ENTITY % local.bibliorelation.attrib "">
+<!ENTITY % local.bibliorelation.types "">
+
+<!ENTITY % bibliorelation.type.attrib
+ "type (isversionof
+ |hasversion
+ |isreplacedby
+ |replaces
+ |isrequiredby
+ |requires
+ |ispartof
+ |haspart
+ |isreferencedby
+ |references
+ |isformatof
+ |hasformat
+ |othertype
+ %local.bibliorelation.types;) #IMPLIED
+ othertype CDATA #IMPLIED
+">
+
+<!ENTITY % bibliorelation.role.attrib "%role.attrib;">
+
+<!ENTITY % bibliorelation.element "INCLUDE">
+<![%bibliorelation.element;[
+<!--doc:The relationship of a document to another.-->
+<!ELEMENT bibliorelation %ho; (%docinfo.char.mix;)*>
+<!--end of bibliorelation.element-->]]>
+
+<!ENTITY % bibliorelation.attlist "INCLUDE">
+<![%bibliorelation.attlist;[
+<!ATTLIST bibliorelation
+ %biblio.class.attrib;
+ %bibliorelation.type.attrib;
+ %common.attrib;
+ %bibliorelation.role.attrib;
+ %local.bibliorelation.attrib;
+>
+<!--end of bibliorelation.attlist-->]]>
+<!--end of bibliorelation.module-->]]>
+
+<!-- BiblioCoverage ................. -->
+
+<!ENTITY % bibliocoverage.module "INCLUDE">
+<![%bibliocoverage.module;[
+<!ENTITY % local.bibliocoverage.attrib "">
+<!ENTITY % bibliocoverage.role.attrib "%role.attrib;">
+
+<!ENTITY % bibliocoverage.element "INCLUDE">
+<![%bibliocoverage.element;[
+<!--doc:The spatial or temporal coverage of a document.-->
+<!ELEMENT bibliocoverage %ho; (%docinfo.char.mix;)*>
+<!--end of bibliocoverage.element-->]]>
+
+<!ENTITY % bibliocoverage.attlist "INCLUDE">
+<![%bibliocoverage.attlist;[
+<!ATTLIST bibliocoverage
+ spatial (dcmipoint|iso3166|dcmibox|tgn|otherspatial) #IMPLIED
+ otherspatial CDATA #IMPLIED
+ temporal (dcmiperiod|w3c-dtf|othertemporal) #IMPLIED
+ othertemporal CDATA #IMPLIED
+ %common.attrib;
+ %bibliocoverage.role.attrib;
+ %local.bibliocoverage.attrib;
+>
+<!--end of bibliocoverage.attlist-->]]>
+<!--end of bibliocoverage.module-->]]>
+
+<!-- InvPartNumber .................... -->
+
+<!ENTITY % invpartnumber.module "INCLUDE">
+<![%invpartnumber.module;[
+<!ENTITY % local.invpartnumber.attrib "">
+<!ENTITY % invpartnumber.role.attrib "%role.attrib;">
+
+<!ENTITY % invpartnumber.element "INCLUDE">
+<![%invpartnumber.element;[
+<!--doc:An inventory part number.-->
+<!ELEMENT invpartnumber %ho; (%docinfo.char.mix;)*>
+<!--end of invpartnumber.element-->]]>
+
+<!ENTITY % invpartnumber.attlist "INCLUDE">
+<![%invpartnumber.attlist;[
+<!ATTLIST invpartnumber
+ %common.attrib;
+ %invpartnumber.role.attrib;
+ %local.invpartnumber.attrib;
+>
+<!--end of invpartnumber.attlist-->]]>
+<!--end of invpartnumber.module-->]]>
+
+<!-- IssueNum ......................... -->
+
+<!ENTITY % issuenum.module "INCLUDE">
+<![%issuenum.module;[
+<!ENTITY % local.issuenum.attrib "">
+<!ENTITY % issuenum.role.attrib "%role.attrib;">
+
+<!ENTITY % issuenum.element "INCLUDE">
+<![%issuenum.element;[
+<!--doc:The number of an issue of a journal.-->
+<!ELEMENT issuenum %ho; (%docinfo.char.mix;)*>
+<!--end of issuenum.element-->]]>
+
+<!ENTITY % issuenum.attlist "INCLUDE">
+<![%issuenum.attlist;[
+<!ATTLIST issuenum
+ %common.attrib;
+ %issuenum.role.attrib;
+ %local.issuenum.attrib;
+>
+<!--end of issuenum.attlist-->]]>
+<!--end of issuenum.module-->]]>
+
+<!-- LegalNotice ...................... -->
+
+<!ENTITY % legalnotice.module "INCLUDE">
+<![%legalnotice.module;[
+<!ENTITY % local.legalnotice.attrib "">
+<!ENTITY % legalnotice.role.attrib "%role.attrib;">
+
+<!ENTITY % legalnotice.element "INCLUDE">
+<![%legalnotice.element;[
+<!--doc:A statement of legal obligations or requirements.-->
+<!ELEMENT legalnotice %ho; (blockinfo?, title?, (%legalnotice.mix;)+)
+ %formal.exclusion;>
+<!--end of legalnotice.element-->]]>
+
+<!ENTITY % legalnotice.attlist "INCLUDE">
+<![%legalnotice.attlist;[
+<!ATTLIST legalnotice
+ %common.attrib;
+ %legalnotice.role.attrib;
+ %local.legalnotice.attrib;
+>
+<!--end of legalnotice.attlist-->]]>
+<!--end of legalnotice.module-->]]>
+
+<!-- ModeSpec ......................... -->
+
+<!ENTITY % modespec.module "INCLUDE">
+<![%modespec.module;[
+<!ENTITY % local.modespec.attrib "">
+<!ENTITY % modespec.role.attrib "%role.attrib;">
+
+<!ENTITY % modespec.element "INCLUDE">
+<![%modespec.element;[
+<!--doc:Application-specific information necessary for the completion of an OLink.-->
+<!ELEMENT modespec %ho; (%docinfo.char.mix;)*
+ %ubiq.exclusion;>
+<!--end of modespec.element-->]]>
+
+<!-- Application: Type of action required for completion
+ of the links to which the ModeSpec is relevant (e.g.,
+ retrieval query) -->
+
+
+<!ENTITY % modespec.attlist "INCLUDE">
+<![%modespec.attlist;[
+<!ATTLIST modespec
+ application NOTATION
+ (%notation.class;) #IMPLIED
+ %common.attrib;
+ %modespec.role.attrib;
+ %local.modespec.attrib;
+>
+<!--end of modespec.attlist-->]]>
+<!--end of modespec.module-->]]>
+
+<!-- OrgName .......................... -->
+
+<!ENTITY % orgname.module "INCLUDE">
+<![%orgname.module;[
+<!ENTITY % local.orgname.attrib "">
+<!ENTITY % orgname.role.attrib "%role.attrib;">
+
+<!ENTITY % orgname.element "INCLUDE">
+<![%orgname.element;[
+<!--doc:The name of an organization other than a corporation.-->
+<!ELEMENT orgname %ho; (%docinfo.char.mix;)*>
+<!--end of orgname.element-->]]>
+
+<!ENTITY % orgname.attlist "INCLUDE">
+<![%orgname.attlist;[
+<!ATTLIST orgname
+ %common.attrib;
+ class (corporation|nonprofit|consortium|informal|other) #IMPLIED
+ otherclass CDATA #IMPLIED
+ %orgname.role.attrib;
+ %local.orgname.attrib;
+>
+<!--end of orgname.attlist-->]]>
+<!--end of orgname.module-->]]>
+
+<!-- OtherCredit ...................... -->
+
+<!ENTITY % othercredit.module "INCLUDE">
+<![%othercredit.module;[
+<!ENTITY % local.othercredit.attrib "">
+<!ENTITY % othercredit.role.attrib "%role.attrib;">
+
+<!ENTITY % othercredit.element "INCLUDE">
+<![%othercredit.element;[
+<!--doc:A person or entity, other than an author or editor, credited in a document.-->
+<!ELEMENT othercredit %ho; ((personname|(%person.ident.mix;)+),
+ (personblurb|email|address)*)>
+<!--end of othercredit.element-->]]>
+
+<!ENTITY % othercredit.attlist "INCLUDE">
+<![%othercredit.attlist;[
+<!ATTLIST othercredit
+ class (graphicdesigner
+ |productioneditor
+ |copyeditor
+ |technicaleditor
+ |translator
+ |other) #IMPLIED
+ %common.attrib;
+ %othercredit.role.attrib;
+ %local.othercredit.attrib;
+>
+<!--end of othercredit.attlist-->]]>
+ <!--(see "Personal identity elements" for %person.ident.mix;)-->
+<!--end of othercredit.module-->]]>
+
+<!-- PageNums ......................... -->
+
+<!ENTITY % pagenums.module "INCLUDE">
+<![%pagenums.module;[
+<!ENTITY % local.pagenums.attrib "">
+<!ENTITY % pagenums.role.attrib "%role.attrib;">
+
+<!ENTITY % pagenums.element "INCLUDE">
+<![%pagenums.element;[
+<!--doc:The numbers of the pages in a book, for use in a bibliographic entry.-->
+<!ELEMENT pagenums %ho; (%docinfo.char.mix;)*>
+<!--end of pagenums.element-->]]>
+
+<!ENTITY % pagenums.attlist "INCLUDE">
+<![%pagenums.attlist;[
+<!ATTLIST pagenums
+ %common.attrib;
+ %pagenums.role.attrib;
+ %local.pagenums.attrib;
+>
+<!--end of pagenums.attlist-->]]>
+<!--end of pagenums.module-->]]>
+
+<!-- Personal identity elements ....... -->
+
+<!-- These elements are used only within Author, Editor, and
+OtherCredit. -->
+
+<!ENTITY % person.ident.module "INCLUDE">
+<![%person.ident.module;[
+ <!ENTITY % contrib.module "INCLUDE">
+ <![%contrib.module;[
+ <!ENTITY % local.contrib.attrib "">
+ <!ENTITY % contrib.role.attrib "%role.attrib;">
+
+<!ENTITY % contrib.element "INCLUDE">
+<![%contrib.element;[
+<!--doc:A summary of the contributions made to a document by a credited source.-->
+<!ELEMENT contrib %ho; (%docinfo.char.mix;)*>
+<!--end of contrib.element-->]]>
+
+<!ENTITY % contrib.attlist "INCLUDE">
+<![%contrib.attlist;[
+<!ATTLIST contrib
+ %common.attrib;
+ %contrib.role.attrib;
+ %local.contrib.attrib;
+>
+<!--end of contrib.attlist-->]]>
+ <!--end of contrib.module-->]]>
+
+ <!ENTITY % firstname.module "INCLUDE">
+ <![%firstname.module;[
+ <!ENTITY % local.firstname.attrib "">
+ <!ENTITY % firstname.role.attrib "%role.attrib;">
+
+<!ENTITY % firstname.element "INCLUDE">
+<![%firstname.element;[
+<!--doc:The first name of a person.-->
+<!ELEMENT firstname %ho; (%docinfo.char.mix;)*>
+<!--end of firstname.element-->]]>
+
+<!ENTITY % firstname.attlist "INCLUDE">
+<![%firstname.attlist;[
+<!ATTLIST firstname
+ %common.attrib;
+ %firstname.role.attrib;
+ %local.firstname.attrib;
+>
+<!--end of firstname.attlist-->]]>
+ <!--end of firstname.module-->]]>
+
+ <!ENTITY % honorific.module "INCLUDE">
+ <![%honorific.module;[
+ <!ENTITY % local.honorific.attrib "">
+ <!ENTITY % honorific.role.attrib "%role.attrib;">
+
+<!ENTITY % honorific.element "INCLUDE">
+<![%honorific.element;[
+<!--doc:The title of a person.-->
+<!ELEMENT honorific %ho; (%docinfo.char.mix;)*>
+<!--end of honorific.element-->]]>
+
+<!ENTITY % honorific.attlist "INCLUDE">
+<![%honorific.attlist;[
+<!ATTLIST honorific
+ %common.attrib;
+ %honorific.role.attrib;
+ %local.honorific.attrib;
+>
+<!--end of honorific.attlist-->]]>
+ <!--end of honorific.module-->]]>
+
+ <!ENTITY % lineage.module "INCLUDE">
+ <![%lineage.module;[
+ <!ENTITY % local.lineage.attrib "">
+ <!ENTITY % lineage.role.attrib "%role.attrib;">
+
+<!ENTITY % lineage.element "INCLUDE">
+<![%lineage.element;[
+<!--doc:The portion of a person's name indicating a relationship to ancestors.-->
+<!ELEMENT lineage %ho; (%docinfo.char.mix;)*>
+<!--end of lineage.element-->]]>
+
+<!ENTITY % lineage.attlist "INCLUDE">
+<![%lineage.attlist;[
+<!ATTLIST lineage
+ %common.attrib;
+ %lineage.role.attrib;
+ %local.lineage.attrib;
+>
+<!--end of lineage.attlist-->]]>
+ <!--end of lineage.module-->]]>
+
+ <!ENTITY % othername.module "INCLUDE">
+ <![%othername.module;[
+ <!ENTITY % local.othername.attrib "">
+ <!ENTITY % othername.role.attrib "%role.attrib;">
+
+<!ENTITY % othername.element "INCLUDE">
+<![%othername.element;[
+<!--doc:A component of a persons name that is not a first name, surname, or lineage.-->
+<!ELEMENT othername %ho; (%docinfo.char.mix;)*>
+<!--end of othername.element-->]]>
+
+<!ENTITY % othername.attlist "INCLUDE">
+<![%othername.attlist;[
+<!ATTLIST othername
+ %common.attrib;
+ %othername.role.attrib;
+ %local.othername.attrib;
+>
+<!--end of othername.attlist-->]]>
+ <!--end of othername.module-->]]>
+
+ <!ENTITY % surname.module "INCLUDE">
+ <![%surname.module;[
+ <!ENTITY % local.surname.attrib "">
+ <!ENTITY % surname.role.attrib "%role.attrib;">
+
+<!ENTITY % surname.element "INCLUDE">
+<![%surname.element;[
+<!--doc:A family name; in western cultures the last name.-->
+<!ELEMENT surname %ho; (%docinfo.char.mix;)*>
+<!--end of surname.element-->]]>
+
+<!ENTITY % surname.attlist "INCLUDE">
+<![%surname.attlist;[
+<!ATTLIST surname
+ %common.attrib;
+ %surname.role.attrib;
+ %local.surname.attrib;
+>
+<!--end of surname.attlist-->]]>
+ <!--end of surname.module-->]]>
+<!--end of person.ident.module-->]]>
+
+<!-- PrintHistory ..................... -->
+
+<!ENTITY % printhistory.module "INCLUDE">
+<![%printhistory.module;[
+<!ENTITY % local.printhistory.attrib "">
+<!ENTITY % printhistory.role.attrib "%role.attrib;">
+
+<!ENTITY % printhistory.element "INCLUDE">
+<![%printhistory.element;[
+<!--doc:The printing history of a document.-->
+<!ELEMENT printhistory %ho; ((%para.class;)+)>
+<!--end of printhistory.element-->]]>
+
+<!ENTITY % printhistory.attlist "INCLUDE">
+<![%printhistory.attlist;[
+<!ATTLIST printhistory
+ %common.attrib;
+ %printhistory.role.attrib;
+ %local.printhistory.attrib;
+>
+<!--end of printhistory.attlist-->]]>
+<!--end of printhistory.module-->]]>
+
+<!-- ProductName ...................... -->
+
+<!ENTITY % productname.module "INCLUDE">
+<![%productname.module;[
+<!ENTITY % local.productname.attrib "">
+<!ENTITY % productname.role.attrib "%role.attrib;">
+
+<!ENTITY % productname.element "INCLUDE">
+<![%productname.element;[
+<!--doc:The formal name of a product.-->
+<!ELEMENT productname %ho; (%para.char.mix;)*>
+<!--end of productname.element-->]]>
+
+<!-- Class: More precisely identifies the item the element names -->
+
+
+<!ENTITY % productname.attlist "INCLUDE">
+<![%productname.attlist;[
+<!ATTLIST productname
+ class (service
+ |trade
+ |registered
+ |copyright) 'trade'
+ %common.attrib;
+ %productname.role.attrib;
+ %local.productname.attrib;
+>
+<!--end of productname.attlist-->]]>
+<!--end of productname.module-->]]>
+
+<!-- ProductNumber .................... -->
+
+<!ENTITY % productnumber.module "INCLUDE">
+<![%productnumber.module;[
+<!ENTITY % local.productnumber.attrib "">
+<!ENTITY % productnumber.role.attrib "%role.attrib;">
+
+<!ENTITY % productnumber.element "INCLUDE">
+<![%productnumber.element;[
+<!--doc:A number assigned to a product.-->
+<!ELEMENT productnumber %ho; (%docinfo.char.mix;)*>
+<!--end of productnumber.element-->]]>
+
+<!ENTITY % productnumber.attlist "INCLUDE">
+<![%productnumber.attlist;[
+<!ATTLIST productnumber
+ %common.attrib;
+ %productnumber.role.attrib;
+ %local.productnumber.attrib;
+>
+<!--end of productnumber.attlist-->]]>
+<!--end of productnumber.module-->]]>
+
+<!-- PubDate .......................... -->
+
+<!ENTITY % pubdate.module "INCLUDE">
+<![%pubdate.module;[
+<!ENTITY % local.pubdate.attrib "">
+<!ENTITY % pubdate.role.attrib "%role.attrib;">
+
+<!ENTITY % pubdate.element "INCLUDE">
+<![%pubdate.element;[
+<!--doc:The date of publication of a document.-->
+<!ELEMENT pubdate %ho; (%docinfo.char.mix;)*>
+<!--end of pubdate.element-->]]>
+
+<!ENTITY % pubdate.attlist "INCLUDE">
+<![%pubdate.attlist;[
+<!ATTLIST pubdate
+ %common.attrib;
+ %pubdate.role.attrib;
+ %local.pubdate.attrib;
+>
+<!--end of pubdate.attlist-->]]>
+<!--end of pubdate.module-->]]>
+
+<!-- Publisher ........................ -->
+
+<!ENTITY % publisher.content.module "INCLUDE">
+<![%publisher.content.module;[
+<!ENTITY % publisher.module "INCLUDE">
+<![%publisher.module;[
+<!ENTITY % local.publisher.attrib "">
+<!ENTITY % publisher.role.attrib "%role.attrib;">
+
+<!ENTITY % publisher.element "INCLUDE">
+<![%publisher.element;[
+<!--doc:The publisher of a document.-->
+<!ELEMENT publisher %ho; (publishername, address*)>
+<!--end of publisher.element-->]]>
+
+<!ENTITY % publisher.attlist "INCLUDE">
+<![%publisher.attlist;[
+<!ATTLIST publisher
+ %common.attrib;
+ %publisher.role.attrib;
+ %local.publisher.attrib;
+>
+<!--end of publisher.attlist-->]]>
+<!--end of publisher.module-->]]>
+
+ <!ENTITY % publishername.module "INCLUDE">
+ <![%publishername.module;[
+ <!ENTITY % local.publishername.attrib "">
+ <!ENTITY % publishername.role.attrib "%role.attrib;">
+
+<!ENTITY % publishername.element "INCLUDE">
+<![%publishername.element;[
+<!--doc:The name of the publisher of a document.-->
+<!ELEMENT publishername %ho; (%docinfo.char.mix;)*>
+<!--end of publishername.element-->]]>
+
+<!ENTITY % publishername.attlist "INCLUDE">
+<![%publishername.attlist;[
+<!ATTLIST publishername
+ %common.attrib;
+ %publishername.role.attrib;
+ %local.publishername.attrib;
+>
+<!--end of publishername.attlist-->]]>
+ <!--end of publishername.module-->]]>
+
+ <!-- Address (defined elsewhere in this section)-->
+<!--end of publisher.content.module-->]]>
+
+<!-- PubsNumber ....................... -->
+
+<!ENTITY % pubsnumber.module "INCLUDE">
+<![%pubsnumber.module;[
+<!ENTITY % local.pubsnumber.attrib "">
+<!ENTITY % pubsnumber.role.attrib "%role.attrib;">
+
+<!ENTITY % pubsnumber.element "INCLUDE">
+<![%pubsnumber.element;[
+<!--doc:A number assigned to a publication other than an ISBN or ISSN or inventory part number.-->
+<!ELEMENT pubsnumber %ho; (%docinfo.char.mix;)*>
+<!--end of pubsnumber.element-->]]>
+
+<!ENTITY % pubsnumber.attlist "INCLUDE">
+<![%pubsnumber.attlist;[
+<!ATTLIST pubsnumber
+ %common.attrib;
+ %pubsnumber.role.attrib;
+ %local.pubsnumber.attrib;
+>
+<!--end of pubsnumber.attlist-->]]>
+<!--end of pubsnumber.module-->]]>
+
+<!-- ReleaseInfo ...................... -->
+
+<!ENTITY % releaseinfo.module "INCLUDE">
+<![%releaseinfo.module;[
+<!ENTITY % local.releaseinfo.attrib "">
+<!ENTITY % releaseinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % releaseinfo.element "INCLUDE">
+<![%releaseinfo.element;[
+<!--doc:Information about a particular release of a document.-->
+<!ELEMENT releaseinfo %ho; (%docinfo.char.mix;)*>
+<!--end of releaseinfo.element-->]]>
+
+<!ENTITY % releaseinfo.attlist "INCLUDE">
+<![%releaseinfo.attlist;[
+<!ATTLIST releaseinfo
+ %common.attrib;
+ %releaseinfo.role.attrib;
+ %local.releaseinfo.attrib;
+>
+<!--end of releaseinfo.attlist-->]]>
+<!--end of releaseinfo.module-->]]>
+
+<!-- RevHistory ....................... -->
+
+<!ENTITY % revhistory.content.module "INCLUDE">
+<![%revhistory.content.module;[
+<!ENTITY % revhistory.module "INCLUDE">
+<![%revhistory.module;[
+<!ENTITY % local.revhistory.attrib "">
+<!ENTITY % revhistory.role.attrib "%role.attrib;">
+
+<!ENTITY % revhistory.element "INCLUDE">
+<![%revhistory.element;[
+<!--doc:A history of the revisions to a document.-->
+<!ELEMENT revhistory %ho; (revision+)>
+<!--end of revhistory.element-->]]>
+
+<!ENTITY % revhistory.attlist "INCLUDE">
+<![%revhistory.attlist;[
+<!ATTLIST revhistory
+ %common.attrib;
+ %revhistory.role.attrib;
+ %local.revhistory.attrib;
+>
+<!--end of revhistory.attlist-->]]>
+<!--end of revhistory.module-->]]>
+
+<!ENTITY % revision.module "INCLUDE">
+<![%revision.module;[
+<!ENTITY % local.revision.attrib "">
+<!ENTITY % revision.role.attrib "%role.attrib;">
+
+<!ENTITY % revision.element "INCLUDE">
+<![%revision.element;[
+<!--doc:An entry describing a single revision in the history of the revisions to a document.-->
+<!ELEMENT revision %ho; (revnumber?, date, (author|authorinitials)*,
+ (revremark|revdescription)?)>
+<!--end of revision.element-->]]>
+
+<!ENTITY % revision.attlist "INCLUDE">
+<![%revision.attlist;[
+<!ATTLIST revision
+ %common.attrib;
+ %revision.role.attrib;
+ %local.revision.attrib;
+>
+<!--end of revision.attlist-->]]>
+<!--end of revision.module-->]]>
+
+<!ENTITY % revnumber.module "INCLUDE">
+<![%revnumber.module;[
+<!ENTITY % local.revnumber.attrib "">
+<!ENTITY % revnumber.role.attrib "%role.attrib;">
+
+<!ENTITY % revnumber.element "INCLUDE">
+<![%revnumber.element;[
+<!--doc:A document revision number.-->
+<!ELEMENT revnumber %ho; (%docinfo.char.mix;)*>
+<!--end of revnumber.element-->]]>
+
+<!ENTITY % revnumber.attlist "INCLUDE">
+<![%revnumber.attlist;[
+<!ATTLIST revnumber
+ %common.attrib;
+ %revnumber.role.attrib;
+ %local.revnumber.attrib;
+>
+<!--end of revnumber.attlist-->]]>
+<!--end of revnumber.module-->]]>
+
+<!-- Date (defined elsewhere in this section)-->
+<!-- AuthorInitials (defined elsewhere in this section)-->
+
+<!ENTITY % revremark.module "INCLUDE">
+<![%revremark.module;[
+<!ENTITY % local.revremark.attrib "">
+<!ENTITY % revremark.role.attrib "%role.attrib;">
+
+<!ENTITY % revremark.element "INCLUDE">
+<![%revremark.element;[
+<!--doc:A description of a revision to a document.-->
+<!ELEMENT revremark %ho; (%docinfo.char.mix;)*>
+<!--end of revremark.element-->]]>
+
+<!ENTITY % revremark.attlist "INCLUDE">
+<![%revremark.attlist;[
+<!ATTLIST revremark
+ %common.attrib;
+ %revremark.role.attrib;
+ %local.revremark.attrib;
+>
+<!--end of revremark.attlist-->]]>
+<!--end of revremark.module-->]]>
+
+<!ENTITY % revdescription.module "INCLUDE">
+<![ %revdescription.module; [
+<!ENTITY % local.revdescription.attrib "">
+<!ENTITY % revdescription.role.attrib "%role.attrib;">
+
+<!ENTITY % revdescription.element "INCLUDE">
+<![ %revdescription.element; [
+<!--doc:A extended description of a revision to a document.-->
+<!ELEMENT revdescription %ho; ((%revdescription.mix;)+)>
+<!--end of revdescription.element-->]]>
+
+<!ENTITY % revdescription.attlist "INCLUDE">
+<![ %revdescription.attlist; [
+<!ATTLIST revdescription
+ %common.attrib;
+ %revdescription.role.attrib;
+ %local.revdescription.attrib;
+>
+<!--end of revdescription.attlist-->]]>
+<!--end of revdescription.module-->]]>
+<!--end of revhistory.content.module-->]]>
+
+<!-- SeriesVolNums .................... -->
+
+<!ENTITY % seriesvolnums.module "INCLUDE">
+<![%seriesvolnums.module;[
+<!ENTITY % local.seriesvolnums.attrib "">
+<!ENTITY % seriesvolnums.role.attrib "%role.attrib;">
+
+<!ENTITY % seriesvolnums.element "INCLUDE">
+<![%seriesvolnums.element;[
+<!--doc:Numbers of the volumes in a series of books.-->
+<!ELEMENT seriesvolnums %ho; (%docinfo.char.mix;)*>
+<!--end of seriesvolnums.element-->]]>
+
+<!ENTITY % seriesvolnums.attlist "INCLUDE">
+<![%seriesvolnums.attlist;[
+<!ATTLIST seriesvolnums
+ %common.attrib;
+ %seriesvolnums.role.attrib;
+ %local.seriesvolnums.attrib;
+>
+<!--end of seriesvolnums.attlist-->]]>
+<!--end of seriesvolnums.module-->]]>
+
+<!-- VolumeNum ........................ -->
+
+<!ENTITY % volumenum.module "INCLUDE">
+<![%volumenum.module;[
+<!ENTITY % local.volumenum.attrib "">
+<!ENTITY % volumenum.role.attrib "%role.attrib;">
+
+<!ENTITY % volumenum.element "INCLUDE">
+<![%volumenum.element;[
+<!--doc:The volume number of a document in a set (as of books in a set or articles in a journal).-->
+<!ELEMENT volumenum %ho; (%docinfo.char.mix;)*>
+<!--end of volumenum.element-->]]>
+
+<!ENTITY % volumenum.attlist "INCLUDE">
+<![%volumenum.attlist;[
+<!ATTLIST volumenum
+ %common.attrib;
+ %volumenum.role.attrib;
+ %local.volumenum.attrib;
+>
+<!--end of volumenum.attlist-->]]>
+<!--end of volumenum.module-->]]>
+
+<!-- .................................. -->
+
+<!--end of docinfo.content.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Inline, link, and ubiquitous elements ................................ -->
+
+<!-- Technical and computer terms ......................................... -->
+
+<!ENTITY % accel.module "INCLUDE">
+<![%accel.module;[
+<!ENTITY % local.accel.attrib "">
+<!ENTITY % accel.role.attrib "%role.attrib;">
+
+<!ENTITY % accel.element "INCLUDE">
+<![%accel.element;[
+<!--doc:A graphical user interface (GUI) keyboard shortcut.-->
+<!ELEMENT accel %ho; (%smallcptr.char.mix;)*>
+<!--end of accel.element-->]]>
+
+<!ENTITY % accel.attlist "INCLUDE">
+<![%accel.attlist;[
+<!ATTLIST accel
+ %common.attrib;
+ %accel.role.attrib;
+ %local.accel.attrib;
+>
+<!--end of accel.attlist-->]]>
+<!--end of accel.module-->]]>
+
+<!ENTITY % action.module "INCLUDE">
+<![%action.module;[
+<!ENTITY % local.action.attrib "">
+<!ENTITY % action.role.attrib "%role.attrib;">
+
+<!ENTITY % action.element "INCLUDE">
+<![%action.element;[
+<!--doc:A response to a user event.-->
+<!ELEMENT action %ho; (%cptr.char.mix;)*>
+<!--end of action.element-->]]>
+
+<!ENTITY % action.attlist "INCLUDE">
+<![%action.attlist;[
+<!ATTLIST action
+ %moreinfo.attrib;
+ %common.attrib;
+ %action.role.attrib;
+ %local.action.attrib;
+>
+<!--end of action.attlist-->]]>
+<!--end of action.module-->]]>
+
+<!ENTITY % application.module "INCLUDE">
+<![%application.module;[
+<!ENTITY % local.application.attrib "">
+<!ENTITY % application.role.attrib "%role.attrib;">
+
+<!ENTITY % application.element "INCLUDE">
+<![%application.element;[
+<!--doc:The name of a software program.-->
+<!ELEMENT application %ho; (%para.char.mix;)*>
+<!--end of application.element-->]]>
+
+<!ENTITY % application.attlist "INCLUDE">
+<![%application.attlist;[
+<!ATTLIST application
+ class (hardware
+ |software) #IMPLIED
+ %moreinfo.attrib;
+ %common.attrib;
+ %application.role.attrib;
+ %local.application.attrib;
+>
+<!--end of application.attlist-->]]>
+<!--end of application.module-->]]>
+
+<!ENTITY % classname.module "INCLUDE">
+<![%classname.module;[
+<!ENTITY % local.classname.attrib "">
+<!ENTITY % classname.role.attrib "%role.attrib;">
+
+<!ENTITY % classname.element "INCLUDE">
+<![%classname.element;[
+<!--doc:The name of a class, in the object-oriented programming sense.-->
+<!ELEMENT classname %ho; (%smallcptr.char.mix;)*>
+<!--end of classname.element-->]]>
+
+<!ENTITY % classname.attlist "INCLUDE">
+<![%classname.attlist;[
+<!ATTLIST classname
+ %common.attrib;
+ %classname.role.attrib;
+ %local.classname.attrib;
+>
+<!--end of classname.attlist-->]]>
+<!--end of classname.module-->]]>
+
+<!ENTITY % package.module "INCLUDE">
+<![%package.module;[
+<!ENTITY % local.package.attrib "">
+<!ENTITY % package.role.attrib "%role.attrib;">
+
+<!ENTITY % package.element "INCLUDE">
+<![%package.element;[
+<!--doc:A package.-->
+<!ELEMENT package %ho; (%smallcptr.char.mix;)*>
+<!--end of package.element-->]]>
+
+<!ENTITY % package.attlist "INCLUDE">
+<![%package.attlist;[
+<!ATTLIST package
+ %common.attrib;
+ %package.role.attrib;
+ %local.package.attrib;
+>
+<!--end of package.attlist-->]]>
+<!--end of package.module-->]]>
+
+<!ENTITY % co.module "INCLUDE">
+<![%co.module;[
+<!ENTITY % local.co.attrib "">
+<!-- CO is a callout area of the LineColumn unit type (a single character
+ position); the position is directly indicated by the location of CO. -->
+<!ENTITY % co.role.attrib "%role.attrib;">
+
+<!ENTITY % co.element "INCLUDE">
+<![%co.element;[
+<!--doc:The location of a callout embedded in text.-->
+<!ELEMENT co %ho; EMPTY>
+<!--end of co.element-->]]>
+
+<!-- bug number/symbol override or initialization -->
+<!-- to any related information -->
+
+
+<!ENTITY % co.attlist "INCLUDE">
+<![%co.attlist;[
+<!ATTLIST co
+ %label.attrib;
+ %linkends.attrib;
+ %idreq.common.attrib;
+ %co.role.attrib;
+ %local.co.attrib;
+>
+<!--end of co.attlist-->]]>
+<!--end of co.module-->]]>
+
+<!ENTITY % coref.module "INCLUDE">
+<![%coref.module;[
+<!ENTITY % local.coref.attrib "">
+<!-- COREF is a reference to a CO -->
+<!ENTITY % coref.role.attrib "%role.attrib;">
+
+<!ENTITY % coref.element "INCLUDE">
+<![%coref.element;[
+<!--doc:A cross reference to a co.-->
+<!ELEMENT coref %ho; EMPTY>
+<!--end of coref.element-->]]>
+
+<!-- bug number/symbol override or initialization -->
+<!-- to any related information -->
+
+<!ENTITY % coref.attlist "INCLUDE">
+<![%coref.attlist;[
+<!ATTLIST coref
+ %label.attrib;
+ %linkendreq.attrib;
+ %common.attrib;
+ %coref.role.attrib;
+ %local.coref.attrib;
+>
+<!--end of coref.attlist-->]]>
+<!--end of coref.module-->]]>
+
+<!ENTITY % command.module "INCLUDE">
+<![%command.module;[
+<!ENTITY % local.command.attrib "">
+<!ENTITY % command.role.attrib "%role.attrib;">
+
+<!ENTITY % command.element "INCLUDE">
+<![%command.element;[
+<!--doc:The name of an executable program or other software command.-->
+<!ELEMENT command %ho; (%cptr.char.mix;)*>
+<!--end of command.element-->]]>
+
+<!ENTITY % command.attlist "INCLUDE">
+<![%command.attlist;[
+<!ATTLIST command
+ %moreinfo.attrib;
+ %common.attrib;
+ %command.role.attrib;
+ %local.command.attrib;
+>
+<!--end of command.attlist-->]]>
+<!--end of command.module-->]]>
+
+<!ENTITY % computeroutput.module "INCLUDE">
+<![%computeroutput.module;[
+<!ENTITY % local.computeroutput.attrib "">
+<!ENTITY % computeroutput.role.attrib "%role.attrib;">
+
+<!ENTITY % computeroutput.element "INCLUDE">
+<![%computeroutput.element;[
+<!--doc:Data, generally text, displayed or presented by a computer.-->
+<!ELEMENT computeroutput %ho; (%cptr.char.mix;|co)*>
+<!--end of computeroutput.element-->]]>
+
+<!ENTITY % computeroutput.attlist "INCLUDE">
+<![%computeroutput.attlist;[
+<!ATTLIST computeroutput
+ %moreinfo.attrib;
+ %common.attrib;
+ %computeroutput.role.attrib;
+ %local.computeroutput.attrib;
+>
+<!--end of computeroutput.attlist-->]]>
+<!--end of computeroutput.module-->]]>
+
+<!ENTITY % database.module "INCLUDE">
+<![%database.module;[
+<!ENTITY % local.database.attrib "">
+<!ENTITY % database.role.attrib "%role.attrib;">
+
+<!ENTITY % database.element "INCLUDE">
+<![%database.element;[
+<!--doc:The name of a database, or part of a database.-->
+<!ELEMENT database %ho; (%cptr.char.mix;)*>
+<!--end of database.element-->]]>
+
+<!-- Class: Type of database the element names; no default -->
+
+
+<!ENTITY % database.attlist "INCLUDE">
+<![%database.attlist;[
+<!ATTLIST database
+ class (name
+ |table
+ |field
+ |key1
+ |key2
+ |record
+ |index
+ |view
+ |primarykey
+ |secondarykey
+ |foreignkey
+ |altkey
+ |procedure
+ |datatype
+ |constraint
+ |rule
+ |user
+ |group) #IMPLIED
+ %moreinfo.attrib;
+ %common.attrib;
+ %database.role.attrib;
+ %local.database.attrib;
+>
+<!--end of database.attlist-->]]>
+<!--end of database.module-->]]>
+
+<!ENTITY % email.module "INCLUDE">
+<![%email.module;[
+<!ENTITY % local.email.attrib "">
+<!ENTITY % email.role.attrib "%role.attrib;">
+
+<!ENTITY % email.element "INCLUDE">
+<![%email.element;[
+<!--doc:An email address.-->
+<!ELEMENT email %ho; (%docinfo.char.mix;)*>
+<!--end of email.element-->]]>
+
+<!ENTITY % email.attlist "INCLUDE">
+<![%email.attlist;[
+<!ATTLIST email
+ %common.attrib;
+ %email.role.attrib;
+ %local.email.attrib;
+>
+<!--end of email.attlist-->]]>
+<!--end of email.module-->]]>
+
+<!ENTITY % envar.module "INCLUDE">
+<![%envar.module;[
+<!ENTITY % local.envar.attrib "">
+<!ENTITY % envar.role.attrib "%role.attrib;">
+
+<!ENTITY % envar.element "INCLUDE">
+<![%envar.element;[
+<!--doc:A software environment variable.-->
+<!ELEMENT envar %ho; (%smallcptr.char.mix;)*>
+<!--end of envar.element-->]]>
+
+<!ENTITY % envar.attlist "INCLUDE">
+<![%envar.attlist;[
+<!ATTLIST envar
+ %common.attrib;
+ %envar.role.attrib;
+ %local.envar.attrib;
+>
+<!--end of envar.attlist-->]]>
+<!--end of envar.module-->]]>
+
+
+<!ENTITY % errorcode.module "INCLUDE">
+<![%errorcode.module;[
+<!ENTITY % local.errorcode.attrib "">
+<!ENTITY % errorcode.role.attrib "%role.attrib;">
+
+<!ENTITY % errorcode.element "INCLUDE">
+<![%errorcode.element;[
+<!--doc:An error code.-->
+<!ELEMENT errorcode %ho; (%smallcptr.char.mix;)*>
+<!--end of errorcode.element-->]]>
+
+<!ENTITY % errorcode.attlist "INCLUDE">
+<![%errorcode.attlist;[
+<!ATTLIST errorcode
+ %moreinfo.attrib;
+ %common.attrib;
+ %errorcode.role.attrib;
+ %local.errorcode.attrib;
+>
+<!--end of errorcode.attlist-->]]>
+<!--end of errorcode.module-->]]>
+
+<!ENTITY % errorname.module "INCLUDE">
+<![%errorname.module;[
+<!ENTITY % local.errorname.attrib "">
+<!ENTITY % errorname.role.attrib "%role.attrib;">
+
+<!ENTITY % errorname.element "INCLUDE">
+<![%errorname.element;[
+<!--doc:An error name.-->
+<!ELEMENT errorname %ho; (%smallcptr.char.mix;)*>
+<!--end of errorname.element-->]]>
+
+<!ENTITY % errorname.attlist "INCLUDE">
+<![%errorname.attlist;[
+<!ATTLIST errorname
+ %common.attrib;
+ %errorname.role.attrib;
+ %local.errorname.attrib;
+>
+<!--end of errorname.attlist-->]]>
+<!--end of errorname.module-->]]>
+
+<!ENTITY % errortext.module "INCLUDE">
+<![%errortext.module;[
+<!ENTITY % local.errortext.attrib "">
+<!ENTITY % errortext.role.attrib "%role.attrib;">
+
+<!ENTITY % errortext.element "INCLUDE">
+<![%errortext.element;[
+<!--doc:An error message..-->
+<!ELEMENT errortext %ho; (%smallcptr.char.mix;)*>
+<!--end of errortext.element-->]]>
+
+<!ENTITY % errortext.attlist "INCLUDE">
+<![%errortext.attlist;[
+<!ATTLIST errortext
+ %common.attrib;
+ %errortext.role.attrib;
+ %local.errortext.attrib;
+>
+<!--end of errortext.attlist-->]]>
+<!--end of errortext.module-->]]>
+
+<!ENTITY % errortype.module "INCLUDE">
+<![%errortype.module;[
+<!ENTITY % local.errortype.attrib "">
+<!ENTITY % errortype.role.attrib "%role.attrib;">
+
+<!ENTITY % errortype.element "INCLUDE">
+<![%errortype.element;[
+<!--doc:The classification of an error message.-->
+<!ELEMENT errortype %ho; (%smallcptr.char.mix;)*>
+<!--end of errortype.element-->]]>
+
+<!ENTITY % errortype.attlist "INCLUDE">
+<![%errortype.attlist;[
+<!ATTLIST errortype
+ %common.attrib;
+ %errortype.role.attrib;
+ %local.errortype.attrib;
+>
+<!--end of errortype.attlist-->]]>
+<!--end of errortype.module-->]]>
+
+<!ENTITY % filename.module "INCLUDE">
+<![%filename.module;[
+<!ENTITY % local.filename.attrib "">
+<!ENTITY % filename.role.attrib "%role.attrib;">
+
+<!ENTITY % filename.element "INCLUDE">
+<![%filename.element;[
+<!--doc:The name of a file.-->
+<!ELEMENT filename %ho; (%cptr.char.mix;)*>
+<!--end of filename.element-->]]>
+
+<!-- Class: Type of filename the element names; no default -->
+<!-- Path: Search path (possibly system-specific) in which
+ file can be found -->
+
+
+<!ENTITY % filename.attlist "INCLUDE">
+<![%filename.attlist;[
+<!ATTLIST filename
+ class (headerfile
+ |partition
+ |devicefile
+ |libraryfile
+ |directory
+ |extension
+ |symlink) #IMPLIED
+ path CDATA #IMPLIED
+ %moreinfo.attrib;
+ %common.attrib;
+ %filename.role.attrib;
+ %local.filename.attrib;
+>
+<!--end of filename.attlist-->]]>
+<!--end of filename.module-->]]>
+
+<!ENTITY % function.module "INCLUDE">
+<![%function.module;[
+<!ENTITY % local.function.attrib "">
+<!ENTITY % function.role.attrib "%role.attrib;">
+
+<!ENTITY % function.element "INCLUDE">
+<![%function.element;[
+<!--doc:The name of a function or subroutine, as in a programming language.-->
+<!ELEMENT function %ho; (%cptr.char.mix;)*>
+<!--end of function.element-->]]>
+
+<!ENTITY % function.attlist "INCLUDE">
+<![%function.attlist;[
+<!ATTLIST function
+ %moreinfo.attrib;
+ %common.attrib;
+ %function.role.attrib;
+ %local.function.attrib;
+>
+<!--end of function.attlist-->]]>
+<!--end of function.module-->]]>
+
+<!ENTITY % guibutton.module "INCLUDE">
+<![%guibutton.module;[
+<!ENTITY % local.guibutton.attrib "">
+<!ENTITY % guibutton.role.attrib "%role.attrib;">
+
+<!ENTITY % guibutton.element "INCLUDE">
+<![%guibutton.element;[
+<!--doc:The text on a button in a GUI.-->
+<!ELEMENT guibutton %ho; (%smallcptr.char.mix;|accel|superscript|subscript)*>
+<!--end of guibutton.element-->]]>
+
+<!ENTITY % guibutton.attlist "INCLUDE">
+<![%guibutton.attlist;[
+<!ATTLIST guibutton
+ %moreinfo.attrib;
+ %common.attrib;
+ %guibutton.role.attrib;
+ %local.guibutton.attrib;
+>
+<!--end of guibutton.attlist-->]]>
+<!--end of guibutton.module-->]]>
+
+<!ENTITY % guiicon.module "INCLUDE">
+<![%guiicon.module;[
+<!ENTITY % local.guiicon.attrib "">
+<!ENTITY % guiicon.role.attrib "%role.attrib;">
+
+<!ENTITY % guiicon.element "INCLUDE">
+<![%guiicon.element;[
+<!--doc:Graphic and/or text appearing as a icon in a GUI.-->
+<!ELEMENT guiicon %ho; (%smallcptr.char.mix;|accel|superscript|subscript)*>
+<!--end of guiicon.element-->]]>
+
+<!ENTITY % guiicon.attlist "INCLUDE">
+<![%guiicon.attlist;[
+<!ATTLIST guiicon
+ %moreinfo.attrib;
+ %common.attrib;
+ %guiicon.role.attrib;
+ %local.guiicon.attrib;
+>
+<!--end of guiicon.attlist-->]]>
+<!--end of guiicon.module-->]]>
+
+<!ENTITY % guilabel.module "INCLUDE">
+<![%guilabel.module;[
+<!ENTITY % local.guilabel.attrib "">
+<!ENTITY % guilabel.role.attrib "%role.attrib;">
+
+<!ENTITY % guilabel.element "INCLUDE">
+<![%guilabel.element;[
+<!--doc:The text of a label in a GUI.-->
+<!ELEMENT guilabel %ho; (%smallcptr.char.mix;|accel|superscript|subscript)*>
+<!--end of guilabel.element-->]]>
+
+<!ENTITY % guilabel.attlist "INCLUDE">
+<![%guilabel.attlist;[
+<!ATTLIST guilabel
+ %moreinfo.attrib;
+ %common.attrib;
+ %guilabel.role.attrib;
+ %local.guilabel.attrib;
+>
+<!--end of guilabel.attlist-->]]>
+<!--end of guilabel.module-->]]>
+
+<!ENTITY % guimenu.module "INCLUDE">
+<![%guimenu.module;[
+<!ENTITY % local.guimenu.attrib "">
+<!ENTITY % guimenu.role.attrib "%role.attrib;">
+
+<!ENTITY % guimenu.element "INCLUDE">
+<![%guimenu.element;[
+<!--doc:The name of a menu in a GUI.-->
+<!ELEMENT guimenu %ho; (%smallcptr.char.mix;|accel|superscript|subscript)*>
+<!--end of guimenu.element-->]]>
+
+<!ENTITY % guimenu.attlist "INCLUDE">
+<![%guimenu.attlist;[
+<!ATTLIST guimenu
+ %moreinfo.attrib;
+ %common.attrib;
+ %guimenu.role.attrib;
+ %local.guimenu.attrib;
+>
+<!--end of guimenu.attlist-->]]>
+<!--end of guimenu.module-->]]>
+
+<!ENTITY % guimenuitem.module "INCLUDE">
+<![%guimenuitem.module;[
+<!ENTITY % local.guimenuitem.attrib "">
+<!ENTITY % guimenuitem.role.attrib "%role.attrib;">
+
+<!ENTITY % guimenuitem.element "INCLUDE">
+<![%guimenuitem.element;[
+<!--doc:The name of a terminal menu item in a GUI.-->
+<!ELEMENT guimenuitem %ho; (%smallcptr.char.mix;|accel|superscript|subscript)*>
+<!--end of guimenuitem.element-->]]>
+
+<!ENTITY % guimenuitem.attlist "INCLUDE">
+<![%guimenuitem.attlist;[
+<!ATTLIST guimenuitem
+ %moreinfo.attrib;
+ %common.attrib;
+ %guimenuitem.role.attrib;
+ %local.guimenuitem.attrib;
+>
+<!--end of guimenuitem.attlist-->]]>
+<!--end of guimenuitem.module-->]]>
+
+<!ENTITY % guisubmenu.module "INCLUDE">
+<![%guisubmenu.module;[
+<!ENTITY % local.guisubmenu.attrib "">
+<!ENTITY % guisubmenu.role.attrib "%role.attrib;">
+
+<!ENTITY % guisubmenu.element "INCLUDE">
+<![%guisubmenu.element;[
+<!--doc:The name of a submenu in a GUI.-->
+<!ELEMENT guisubmenu %ho; (%smallcptr.char.mix;|accel|superscript|subscript)*>
+<!--end of guisubmenu.element-->]]>
+
+<!ENTITY % guisubmenu.attlist "INCLUDE">
+<![%guisubmenu.attlist;[
+<!ATTLIST guisubmenu
+ %moreinfo.attrib;
+ %common.attrib;
+ %guisubmenu.role.attrib;
+ %local.guisubmenu.attrib;
+>
+<!--end of guisubmenu.attlist-->]]>
+<!--end of guisubmenu.module-->]]>
+
+<!ENTITY % hardware.module "INCLUDE">
+<![%hardware.module;[
+<!ENTITY % local.hardware.attrib "">
+<!ENTITY % hardware.role.attrib "%role.attrib;">
+
+<!ENTITY % hardware.element "INCLUDE">
+<![%hardware.element;[
+<!--doc:A physical part of a computer system.-->
+<!ELEMENT hardware %ho; (%cptr.char.mix;)*>
+<!--end of hardware.element-->]]>
+
+<!ENTITY % hardware.attlist "INCLUDE">
+<![%hardware.attlist;[
+<!ATTLIST hardware
+ %moreinfo.attrib;
+ %common.attrib;
+ %hardware.role.attrib;
+ %local.hardware.attrib;
+>
+<!--end of hardware.attlist-->]]>
+<!--end of hardware.module-->]]>
+
+<!ENTITY % interface.module "INCLUDE">
+<![%interface.module;[
+<!ENTITY % local.interface.attrib "">
+<!ENTITY % interface.role.attrib "%role.attrib;">
+
+<!ENTITY % interface.element "INCLUDE">
+<![%interface.element;[
+<!--doc:An element of a GUI.-->
+<!ELEMENT interface %ho; (%smallcptr.char.mix;|accel)*>
+<!--end of interface.element-->]]>
+
+<!-- Class: Type of the Interface item; no default -->
+
+
+<!ENTITY % interface.attlist "INCLUDE">
+<![%interface.attlist;[
+<!ATTLIST interface
+ %moreinfo.attrib;
+ %common.attrib;
+ %interface.role.attrib;
+ %local.interface.attrib;
+>
+<!--end of interface.attlist-->]]>
+<!--end of interface.module-->]]>
+
+<!ENTITY % keycap.module "INCLUDE">
+<![%keycap.module;[
+<!ENTITY % local.keycap.attrib "">
+<!ENTITY % keycap.role.attrib "%role.attrib;">
+
+<!ENTITY % keycap.element "INCLUDE">
+<![%keycap.element;[
+<!--doc:The text printed on a key on a keyboard.-->
+<!ELEMENT keycap %ho; (%cptr.char.mix;)*>
+<!--end of keycap.element-->]]>
+
+<!ENTITY % keycap.attlist "INCLUDE">
+<![%keycap.attlist;[
+<!ATTLIST keycap
+ function (alt
+ |control
+ |shift
+ |meta
+ |escape
+ |enter
+ |tab
+ |backspace
+ |command
+ |option
+ |space
+ |delete
+ |insert
+ |up
+ |down
+ |left
+ |right
+ |home
+ |end
+ |pageup
+ |pagedown
+ |other) #IMPLIED
+ otherfunction CDATA #IMPLIED
+ %moreinfo.attrib;
+ %common.attrib;
+ %keycap.role.attrib;
+ %local.keycap.attrib;
+>
+<!--end of keycap.attlist-->]]>
+<!--end of keycap.module-->]]>
+
+<!ENTITY % keycode.module "INCLUDE">
+<![%keycode.module;[
+<!ENTITY % local.keycode.attrib "">
+<!ENTITY % keycode.role.attrib "%role.attrib;">
+
+<!ENTITY % keycode.element "INCLUDE">
+<![%keycode.element;[
+<!--doc:The internal, frequently numeric, identifier for a key on a keyboard.-->
+<!ELEMENT keycode %ho; (%smallcptr.char.mix;)*>
+<!--end of keycode.element-->]]>
+
+<!ENTITY % keycode.attlist "INCLUDE">
+<![%keycode.attlist;[
+<!ATTLIST keycode
+ %common.attrib;
+ %keycode.role.attrib;
+ %local.keycode.attrib;
+>
+<!--end of keycode.attlist-->]]>
+<!--end of keycode.module-->]]>
+
+<!ENTITY % keycombo.module "INCLUDE">
+<![%keycombo.module;[
+<!ENTITY % local.keycombo.attrib "">
+<!ENTITY % keycombo.role.attrib "%role.attrib;">
+
+<!ENTITY % keycombo.element "INCLUDE">
+<![%keycombo.element;[
+<!--doc:A combination of input actions.-->
+<!ELEMENT keycombo %ho; ((keycap|keycombo|keysym|mousebutton)+)>
+<!--end of keycombo.element-->]]>
+
+<!ENTITY % keycombo.attlist "INCLUDE">
+<![%keycombo.attlist;[
+<!ATTLIST keycombo
+ %keyaction.attrib;
+ %moreinfo.attrib;
+ %common.attrib;
+ %keycombo.role.attrib;
+ %local.keycombo.attrib;
+>
+<!--end of keycombo.attlist-->]]>
+<!--end of keycombo.module-->]]>
+
+<!ENTITY % keysym.module "INCLUDE">
+<![%keysym.module;[
+<!ENTITY % local.keysym.attrib "">
+<!ENTITY % keysysm.role.attrib "%role.attrib;">
+
+<!ENTITY % keysym.element "INCLUDE">
+<![%keysym.element;[
+<!--doc:The symbolic name of a key on a keyboard.-->
+<!ELEMENT keysym %ho; (%smallcptr.char.mix;)*>
+<!--end of keysym.element-->]]>
+
+<!ENTITY % keysym.attlist "INCLUDE">
+<![%keysym.attlist;[
+<!ATTLIST keysym
+ %common.attrib;
+ %keysysm.role.attrib;
+ %local.keysym.attrib;
+>
+<!--end of keysym.attlist-->]]>
+<!--end of keysym.module-->]]>
+
+<!ENTITY % lineannotation.module "INCLUDE">
+<![%lineannotation.module;[
+<!ENTITY % local.lineannotation.attrib "">
+<!ENTITY % lineannotation.role.attrib "%role.attrib;">
+
+<!ENTITY % lineannotation.element "INCLUDE">
+<![%lineannotation.element;[
+<!--doc:A comment on a line in a verbatim listing.-->
+<!ELEMENT lineannotation %ho; (%para.char.mix;)*>
+<!--end of lineannotation.element-->]]>
+
+<!ENTITY % lineannotation.attlist "INCLUDE">
+<![%lineannotation.attlist;[
+<!ATTLIST lineannotation
+ %common.attrib;
+ %lineannotation.role.attrib;
+ %local.lineannotation.attrib;
+>
+<!--end of lineannotation.attlist-->]]>
+<!--end of lineannotation.module-->]]>
+
+<!ENTITY % literal.module "INCLUDE">
+<![%literal.module;[
+<!ENTITY % local.literal.attrib "">
+<!ENTITY % literal.role.attrib "%role.attrib;">
+
+<!ENTITY % literal.element "INCLUDE">
+<![%literal.element;[
+<!--doc:Inline text that is some literal value.-->
+<!ELEMENT literal %ho; (%cptr.char.mix;)*>
+<!--end of literal.element-->]]>
+
+<!ENTITY % literal.attlist "INCLUDE">
+<![%literal.attlist;[
+<!ATTLIST literal
+ %moreinfo.attrib;
+ %common.attrib;
+ %literal.role.attrib;
+ %local.literal.attrib;
+>
+<!--end of literal.attlist-->]]>
+<!--end of literal.module-->]]>
+
+<!ENTITY % code.module "INCLUDE">
+<![%code.module;[
+<!ENTITY % local.code.attrib "">
+<!ENTITY % code.role.attrib "%role.attrib;">
+
+<!ENTITY % code.element "INCLUDE">
+<![%code.element;[
+<!--doc:An inline code fragment.-->
+<!ELEMENT code %ho; (%cptr.char.mix;)*>
+<!--end of code.element-->]]>
+
+<!ENTITY % code.attlist "INCLUDE">
+<![%code.attlist;[
+<!ATTLIST code
+ language CDATA #IMPLIED
+ %common.attrib;
+ %code.role.attrib;
+ %local.code.attrib;
+>
+<!--end of code.attlist-->]]>
+<!--end of code.module-->]]>
+
+<!ENTITY % constant.module "INCLUDE">
+<![ %constant.module; [
+<!ENTITY % local.constant.attrib "">
+<!ENTITY % constant.role.attrib "%role.attrib;">
+
+<!ENTITY % constant.element "INCLUDE">
+<![ %constant.element; [
+<!--doc:A programming or system constant.-->
+<!ELEMENT constant %ho; (%smallcptr.char.mix;)*>
+<!--end of constant.element-->]]>
+
+<!ENTITY % constant.attlist "INCLUDE">
+<![ %constant.attlist; [
+<!ATTLIST constant
+ class (limit) #IMPLIED
+ %common.attrib;
+ %constant.role.attrib;
+ %local.constant.attrib;
+>
+<!--end of constant.attlist-->]]>
+<!--end of constant.module-->]]>
+
+<!ENTITY % varname.module "INCLUDE">
+<![ %varname.module; [
+<!ENTITY % local.varname.attrib "">
+<!ENTITY % varname.role.attrib "%role.attrib;">
+
+<!ENTITY % varname.element "INCLUDE">
+<![ %varname.element; [
+<!--doc:The name of a variable.-->
+<!ELEMENT varname %ho; (%smallcptr.char.mix;)*>
+<!--end of varname.element-->]]>
+
+<!ENTITY % varname.attlist "INCLUDE">
+<![ %varname.attlist; [
+<!ATTLIST varname
+ %common.attrib;
+ %varname.role.attrib;
+ %local.varname.attrib;
+>
+<!--end of varname.attlist-->]]>
+<!--end of varname.module-->]]>
+
+<!ENTITY % markup.module "INCLUDE">
+<![%markup.module;[
+<!ENTITY % local.markup.attrib "">
+<!ENTITY % markup.role.attrib "%role.attrib;">
+
+<!ENTITY % markup.element "INCLUDE">
+<![%markup.element;[
+<!--doc:A string of formatting markup in text that is to be represented literally.-->
+<!ELEMENT markup %ho; (%smallcptr.char.mix;)*>
+<!--end of markup.element-->]]>
+
+<!ENTITY % markup.attlist "INCLUDE">
+<![%markup.attlist;[
+<!ATTLIST markup
+ %common.attrib;
+ %markup.role.attrib;
+ %local.markup.attrib;
+>
+<!--end of markup.attlist-->]]>
+<!--end of markup.module-->]]>
+
+<!ENTITY % medialabel.module "INCLUDE">
+<![%medialabel.module;[
+<!ENTITY % local.medialabel.attrib "">
+<!ENTITY % medialabel.role.attrib "%role.attrib;">
+
+<!ENTITY % medialabel.element "INCLUDE">
+<![%medialabel.element;[
+<!--doc:A name that identifies the physical medium on which some information resides.-->
+<!ELEMENT medialabel %ho; (%smallcptr.char.mix;)*>
+<!--end of medialabel.element-->]]>
+
+<!-- Class: Type of medium named by the element; no default -->
+
+
+<!ENTITY % medialabel.attlist "INCLUDE">
+<![%medialabel.attlist;[
+<!ATTLIST medialabel
+ class (cartridge
+ |cdrom
+ |disk
+ |tape) #IMPLIED
+ %common.attrib;
+ %medialabel.role.attrib;
+ %local.medialabel.attrib;
+>
+<!--end of medialabel.attlist-->]]>
+<!--end of medialabel.module-->]]>
+
+<!ENTITY % menuchoice.content.module "INCLUDE">
+<![%menuchoice.content.module;[
+<!ENTITY % menuchoice.module "INCLUDE">
+<![%menuchoice.module;[
+<!ENTITY % local.menuchoice.attrib "">
+<!ENTITY % menuchoice.role.attrib "%role.attrib;">
+
+<!ENTITY % menuchoice.element "INCLUDE">
+<![%menuchoice.element;[
+<!--doc:A selection or series of selections from a menu.-->
+<!ELEMENT menuchoice %ho; (shortcut?, (guibutton|guiicon|guilabel
+ |guimenu|guimenuitem|guisubmenu|interface)+)>
+<!--end of menuchoice.element-->]]>
+
+<!ENTITY % menuchoice.attlist "INCLUDE">
+<![%menuchoice.attlist;[
+<!ATTLIST menuchoice
+ %moreinfo.attrib;
+ %common.attrib;
+ %menuchoice.role.attrib;
+ %local.menuchoice.attrib;
+>
+<!--end of menuchoice.attlist-->]]>
+<!--end of menuchoice.module-->]]>
+
+<!ENTITY % shortcut.module "INCLUDE">
+<![%shortcut.module;[
+<!-- See also KeyCombo -->
+<!ENTITY % local.shortcut.attrib "">
+<!ENTITY % shortcut.role.attrib "%role.attrib;">
+
+<!ENTITY % shortcut.element "INCLUDE">
+<![%shortcut.element;[
+<!--doc:A key combination for an action that is also accessible through a menu.-->
+<!ELEMENT shortcut %ho; ((keycap|keycombo|keysym|mousebutton)+)>
+<!--end of shortcut.element-->]]>
+
+<!ENTITY % shortcut.attlist "INCLUDE">
+<![%shortcut.attlist;[
+<!ATTLIST shortcut
+ %keyaction.attrib;
+ %moreinfo.attrib;
+ %common.attrib;
+ %shortcut.role.attrib;
+ %local.shortcut.attrib;
+>
+<!--end of shortcut.attlist-->]]>
+<!--end of shortcut.module-->]]>
+<!--end of menuchoice.content.module-->]]>
+
+<!ENTITY % mousebutton.module "INCLUDE">
+<![%mousebutton.module;[
+<!ENTITY % local.mousebutton.attrib "">
+<!ENTITY % mousebutton.role.attrib "%role.attrib;">
+
+<!ENTITY % mousebutton.element "INCLUDE">
+<![%mousebutton.element;[
+<!--doc:The conventional name of a mouse button.-->
+<!ELEMENT mousebutton %ho; (%smallcptr.char.mix;)*>
+<!--end of mousebutton.element-->]]>
+
+<!ENTITY % mousebutton.attlist "INCLUDE">
+<![%mousebutton.attlist;[
+<!ATTLIST mousebutton
+ %moreinfo.attrib;
+ %common.attrib;
+ %mousebutton.role.attrib;
+ %local.mousebutton.attrib;
+>
+<!--end of mousebutton.attlist-->]]>
+<!--end of mousebutton.module-->]]>
+
+<!ENTITY % msgtext.module "INCLUDE">
+<![%msgtext.module;[
+<!ENTITY % local.msgtext.attrib "">
+<!ENTITY % msgtext.role.attrib "%role.attrib;">
+
+<!ENTITY % msgtext.element "INCLUDE">
+<![%msgtext.element;[
+<!--doc:The actual text of a message component in a message set.-->
+<!ELEMENT msgtext %ho; ((%component.mix;)+)>
+<!--end of msgtext.element-->]]>
+
+<!ENTITY % msgtext.attlist "INCLUDE">
+<![%msgtext.attlist;[
+<!ATTLIST msgtext
+ %common.attrib;
+ %msgtext.role.attrib;
+ %local.msgtext.attrib;
+>
+<!--end of msgtext.attlist-->]]>
+<!--end of msgtext.module-->]]>
+
+<!ENTITY % option.module "INCLUDE">
+<![%option.module;[
+<!ENTITY % local.option.attrib "">
+<!ENTITY % option.role.attrib "%role.attrib;">
+
+<!ENTITY % option.element "INCLUDE">
+<![%option.element;[
+<!--doc:An option for a software command.-->
+<!ELEMENT option %ho; (%cptr.char.mix;)*>
+<!--end of option.element-->]]>
+
+<!ENTITY % option.attlist "INCLUDE">
+<![%option.attlist;[
+<!ATTLIST option
+ %common.attrib;
+ %option.role.attrib;
+ %local.option.attrib;
+>
+<!--end of option.attlist-->]]>
+<!--end of option.module-->]]>
+
+<!ENTITY % optional.module "INCLUDE">
+<![%optional.module;[
+<!ENTITY % local.optional.attrib "">
+<!ENTITY % optional.role.attrib "%role.attrib;">
+
+<!ENTITY % optional.element "INCLUDE">
+<![%optional.element;[
+<!--doc:Optional information.-->
+<!ELEMENT optional %ho; (%cptr.char.mix;)*>
+<!--end of optional.element-->]]>
+
+<!ENTITY % optional.attlist "INCLUDE">
+<![%optional.attlist;[
+<!ATTLIST optional
+ %common.attrib;
+ %optional.role.attrib;
+ %local.optional.attrib;
+>
+<!--end of optional.attlist-->]]>
+<!--end of optional.module-->]]>
+
+<!ENTITY % parameter.module "INCLUDE">
+<![%parameter.module;[
+<!ENTITY % local.parameter.attrib "">
+<!ENTITY % parameter.role.attrib "%role.attrib;">
+
+<!ENTITY % parameter.element "INCLUDE">
+<![%parameter.element;[
+<!--doc:A value or a symbolic reference to a value.-->
+<!ELEMENT parameter %ho; (%cptr.char.mix;)*>
+<!--end of parameter.element-->]]>
+
+<!-- Class: Type of the Parameter; no default -->
+
+
+<!ENTITY % parameter.attlist "INCLUDE">
+<![%parameter.attlist;[
+<!ATTLIST parameter
+ class (command
+ |function
+ |option) #IMPLIED
+ %moreinfo.attrib;
+ %common.attrib;
+ %parameter.role.attrib;
+ %local.parameter.attrib;
+>
+<!--end of parameter.attlist-->]]>
+<!--end of parameter.module-->]]>
+
+<!ENTITY % prompt.module "INCLUDE">
+<![%prompt.module;[
+<!ENTITY % local.prompt.attrib "">
+<!ENTITY % prompt.role.attrib "%role.attrib;">
+
+<!ENTITY % prompt.element "INCLUDE">
+<![%prompt.element;[
+<!--doc:A character or string indicating the start of an input field in a computer display.-->
+<!ELEMENT prompt %ho; (%smallcptr.char.mix;|co)*>
+<!--end of prompt.element-->]]>
+
+<!ENTITY % prompt.attlist "INCLUDE">
+<![%prompt.attlist;[
+<!ATTLIST prompt
+ %moreinfo.attrib;
+ %common.attrib;
+ %prompt.role.attrib;
+ %local.prompt.attrib;
+>
+<!--end of prompt.attlist-->]]>
+<!--end of prompt.module-->]]>
+
+<!ENTITY % property.module "INCLUDE">
+<![%property.module;[
+<!ENTITY % local.property.attrib "">
+<!ENTITY % property.role.attrib "%role.attrib;">
+
+<!ENTITY % property.element "INCLUDE">
+<![%property.element;[
+<!--doc:A unit of data associated with some part of a computer system.-->
+<!ELEMENT property %ho; (%cptr.char.mix;)*>
+<!--end of property.element-->]]>
+
+<!ENTITY % property.attlist "INCLUDE">
+<![%property.attlist;[
+<!ATTLIST property
+ %moreinfo.attrib;
+ %common.attrib;
+ %property.role.attrib;
+ %local.property.attrib;
+>
+<!--end of property.attlist-->]]>
+<!--end of property.module-->]]>
+
+<!ENTITY % replaceable.module "INCLUDE">
+<![%replaceable.module;[
+<!ENTITY % local.replaceable.attrib "">
+<!ENTITY % replaceable.role.attrib "%role.attrib;">
+
+<!ENTITY % replaceable.element "INCLUDE">
+<![%replaceable.element;[
+<!--doc:Content that may or must be replaced by the user.-->
+<!ELEMENT replaceable %ho; (#PCDATA
+ | %link.char.class;
+ | optional
+ | %base.char.class;
+ | %other.char.class;
+ | inlinegraphic
+ | inlinemediaobject
+ | co)*>
+<!--end of replaceable.element-->]]>
+
+<!-- Class: Type of information the element represents; no
+ default -->
+
+
+<!ENTITY % replaceable.attlist "INCLUDE">
+<![%replaceable.attlist;[
+<!ATTLIST replaceable
+ class (command
+ |function
+ |option
+ |parameter) #IMPLIED
+ %common.attrib;
+ %replaceable.role.attrib;
+ %local.replaceable.attrib;
+>
+<!--end of replaceable.attlist-->]]>
+<!--end of replaceable.module-->]]>
+
+<!ENTITY % returnvalue.module "INCLUDE">
+<![%returnvalue.module;[
+<!ENTITY % local.returnvalue.attrib "">
+<!ENTITY % returnvalue.role.attrib "%role.attrib;">
+
+<!ENTITY % returnvalue.element "INCLUDE">
+<![%returnvalue.element;[
+<!--doc:The value returned by a function.-->
+<!ELEMENT returnvalue %ho; (%smallcptr.char.mix;)*>
+<!--end of returnvalue.element-->]]>
+
+<!ENTITY % returnvalue.attlist "INCLUDE">
+<![%returnvalue.attlist;[
+<!ATTLIST returnvalue
+ %common.attrib;
+ %returnvalue.role.attrib;
+ %local.returnvalue.attrib;
+>
+<!--end of returnvalue.attlist-->]]>
+<!--end of returnvalue.module-->]]>
+
+<!ENTITY % sgmltag.module "INCLUDE">
+<![%sgmltag.module;[
+<!ENTITY % local.sgmltag.attrib "">
+<!ENTITY % sgmltag.role.attrib "%role.attrib;">
+
+<!ENTITY % sgmltag.element "INCLUDE">
+<![%sgmltag.element;[
+<!--doc:A component of SGML markup.-->
+<!ELEMENT sgmltag %ho; (%smallcptr.char.mix;)*>
+<!--end of sgmltag.element-->]]>
+
+<!-- Class: Type of SGML construct the element names; no default -->
+
+
+<!ENTITY % sgmltag.attlist "INCLUDE">
+<![%sgmltag.attlist;[
+<!ATTLIST sgmltag
+ class (attribute
+ |attvalue
+ |element
+ |endtag
+ |emptytag
+ |genentity
+ |numcharref
+ |paramentity
+ |pi
+ |xmlpi
+ |starttag
+ |sgmlcomment
+ |prefix
+ |namespace
+ |localname) #IMPLIED
+ namespace CDATA #IMPLIED
+ %common.attrib;
+ %sgmltag.role.attrib;
+ %local.sgmltag.attrib;
+>
+<!--end of sgmltag.attlist-->]]>
+<!--end of sgmltag.module-->]]>
+
+<!ENTITY % structfield.module "INCLUDE">
+<![%structfield.module;[
+<!ENTITY % local.structfield.attrib "">
+<!ENTITY % structfield.role.attrib "%role.attrib;">
+
+<!ENTITY % structfield.element "INCLUDE">
+<![%structfield.element;[
+<!--doc:A field in a structure (in the programming language sense).-->
+<!ELEMENT structfield %ho; (%smallcptr.char.mix;)*>
+<!--end of structfield.element-->]]>
+
+<!ENTITY % structfield.attlist "INCLUDE">
+<![%structfield.attlist;[
+<!ATTLIST structfield
+ %common.attrib;
+ %structfield.role.attrib;
+ %local.structfield.attrib;
+>
+<!--end of structfield.attlist-->]]>
+<!--end of structfield.module-->]]>
+
+<!ENTITY % structname.module "INCLUDE">
+<![%structname.module;[
+<!ENTITY % local.structname.attrib "">
+<!ENTITY % structname.role.attrib "%role.attrib;">
+
+<!ENTITY % structname.element "INCLUDE">
+<![%structname.element;[
+<!--doc:The name of a structure (in the programming language sense).-->
+<!ELEMENT structname %ho; (%smallcptr.char.mix;)*>
+<!--end of structname.element-->]]>
+
+<!ENTITY % structname.attlist "INCLUDE">
+<![%structname.attlist;[
+<!ATTLIST structname
+ %common.attrib;
+ %structname.role.attrib;
+ %local.structname.attrib;
+>
+<!--end of structname.attlist-->]]>
+<!--end of structname.module-->]]>
+
+<!ENTITY % symbol.module "INCLUDE">
+<![%symbol.module;[
+<!ENTITY % local.symbol.attrib "">
+<!ENTITY % symbol.role.attrib "%role.attrib;">
+
+<!ENTITY % symbol.element "INCLUDE">
+<![%symbol.element;[
+<!--doc:A name that is replaced by a value before processing.-->
+<!ELEMENT symbol %ho; (%smallcptr.char.mix;)*>
+<!--end of symbol.element-->]]>
+
+<!-- Class: Type of symbol; no default -->
+
+
+<!ENTITY % symbol.attlist "INCLUDE">
+<![%symbol.attlist;[
+<!ATTLIST symbol
+ class (limit) #IMPLIED
+ %common.attrib;
+ %symbol.role.attrib;
+ %local.symbol.attrib;
+>
+<!--end of symbol.attlist-->]]>
+<!--end of symbol.module-->]]>
+
+<!ENTITY % systemitem.module "INCLUDE">
+<![%systemitem.module;[
+<!ENTITY % local.systemitem.attrib "">
+<!ENTITY % systemitem.role.attrib "%role.attrib;">
+
+<!ENTITY % systemitem.element "INCLUDE">
+<![%systemitem.element;[
+<!--doc:A system-related item or term.-->
+<!ELEMENT systemitem %ho; (%cptr.char.mix; | acronym | co)*>
+<!--end of systemitem.element-->]]>
+
+<!-- Class: Type of system item the element names; no default -->
+
+<!ENTITY % systemitem.attlist "INCLUDE">
+<![%systemitem.attlist;[
+<!ATTLIST systemitem
+ class (constant
+ |daemon
+ |domainname
+ |etheraddress
+ |event
+ |eventhandler
+ |filesystem
+ |fqdomainname
+ |groupname
+ |ipaddress
+ |library
+ |macro
+ |netmask
+ |newsgroup
+ |osname
+ |protocol
+ |resource
+ |systemname
+ |username
+ |process
+ |server
+ |service) #IMPLIED
+ %moreinfo.attrib;
+ %common.attrib;
+ %systemitem.role.attrib;
+ %local.systemitem.attrib;
+>
+<!--end of systemitem.attlist-->]]>
+<!--end of systemitem.module-->]]>
+
+<!ENTITY % uri.module "INCLUDE">
+<![%uri.module;[
+<!ENTITY % local.uri.attrib "">
+<!ENTITY % uri.role.attrib "%role.attrib;">
+
+<!ENTITY % uri.element "INCLUDE">
+<![%uri.element;[
+<!--doc:A Uniform Resource Identifier.-->
+<!ELEMENT uri %ho; (%smallcptr.char.mix;)*>
+<!--end of uri.element-->]]>
+
+<!-- Type: Type of URI; no default -->
+
+<!ENTITY % uri.attlist "INCLUDE">
+<![%uri.attlist;[
+<!ATTLIST uri
+ type CDATA #IMPLIED
+ %common.attrib;
+ %uri.role.attrib;
+ %local.uri.attrib;
+>
+<!--end of uri.attlist-->]]>
+<!--end of uri.module-->]]>
+
+<!ENTITY % token.module "INCLUDE">
+<![%token.module;[
+<!ENTITY % local.token.attrib "">
+<!ENTITY % token.role.attrib "%role.attrib;">
+
+<!ENTITY % token.element "INCLUDE">
+<![%token.element;[
+<!--doc:A unit of information.-->
+<!ELEMENT token %ho; (%smallcptr.char.mix;)*>
+<!--end of token.element-->]]>
+
+<!ENTITY % token.attlist "INCLUDE">
+<![%token.attlist;[
+<!ATTLIST token
+ %common.attrib;
+ %token.role.attrib;
+ %local.token.attrib;
+>
+<!--end of token.attlist-->]]>
+<!--end of token.module-->]]>
+
+<!ENTITY % type.module "INCLUDE">
+<![%type.module;[
+<!ENTITY % local.type.attrib "">
+<!ENTITY % type.role.attrib "%role.attrib;">
+
+<!ENTITY % type.element "INCLUDE">
+<![%type.element;[
+<!--doc:The classification of a value.-->
+<!ELEMENT type %ho; (%smallcptr.char.mix;)*>
+<!--end of type.element-->]]>
+
+<!ENTITY % type.attlist "INCLUDE">
+<![%type.attlist;[
+<!ATTLIST type
+ %common.attrib;
+ %type.role.attrib;
+ %local.type.attrib;
+>
+<!--end of type.attlist-->]]>
+<!--end of type.module-->]]>
+
+<!ENTITY % userinput.module "INCLUDE">
+<![%userinput.module;[
+<!ENTITY % local.userinput.attrib "">
+<!ENTITY % userinput.role.attrib "%role.attrib;">
+
+<!ENTITY % userinput.element "INCLUDE">
+<![%userinput.element;[
+<!--doc:Data entered by the user.-->
+<!ELEMENT userinput %ho; (%cptr.char.mix;|co)*>
+<!--end of userinput.element-->]]>
+
+<!ENTITY % userinput.attlist "INCLUDE">
+<![%userinput.attlist;[
+<!ATTLIST userinput
+ %moreinfo.attrib;
+ %common.attrib;
+ %userinput.role.attrib;
+ %local.userinput.attrib;
+>
+<!--end of userinput.attlist-->]]>
+<!--end of userinput.module-->]]>
+
+<!ENTITY % termdef.module "INCLUDE">
+<![%termdef.module;[
+<!ENTITY % local.termdef.attrib "">
+<!ENTITY % termdef.role.attrib "%role.attrib;">
+
+<!ENTITY % termdef.element "INCLUDE">
+<![%termdef.element;[
+<!--doc:An inline definition of a term.-->
+<!ELEMENT termdef %ho; (%para.char.mix;)*>
+<!--end of termdef.element-->]]>
+
+<!ENTITY % termdef.attlist "INCLUDE">
+<![%termdef.attlist;[
+<!ATTLIST termdef
+ %common.attrib;
+ %termdef.role.attrib;
+ %local.termdef.attrib;
+>
+<!--end of termdef.attlist-->]]>
+<!--end of termdef.module-->]]>
+
+<!-- General words and phrases ............................................ -->
+
+<!ENTITY % abbrev.module "INCLUDE">
+<![%abbrev.module;[
+<!ENTITY % local.abbrev.attrib "">
+<!ENTITY % abbrev.role.attrib "%role.attrib;">
+
+<!ENTITY % abbrev.element "INCLUDE">
+<![%abbrev.element;[
+<!--doc:An abbreviation, especially one followed by a period.-->
+<!ELEMENT abbrev %ho; (%word.char.mix;)*>
+<!--end of abbrev.element-->]]>
+
+<!ENTITY % abbrev.attlist "INCLUDE">
+<![%abbrev.attlist;[
+<!ATTLIST abbrev
+ %common.attrib;
+ %abbrev.role.attrib;
+ %local.abbrev.attrib;
+>
+<!--end of abbrev.attlist-->]]>
+<!--end of abbrev.module-->]]>
+
+<!ENTITY % acronym.module "INCLUDE">
+<![%acronym.module;[
+<!ENTITY % local.acronym.attrib "">
+<!ENTITY % acronym.role.attrib "%role.attrib;">
+
+<!ENTITY % acronym.element "INCLUDE">
+<![%acronym.element;[
+<!--doc:An often pronounceable word made from the initial (or selected) letters of a name or phrase.-->
+<!ELEMENT acronym %ho; (%word.char.mix;)*
+ %acronym.exclusion;>
+<!--end of acronym.element-->]]>
+
+<!ENTITY % acronym.attlist "INCLUDE">
+<![%acronym.attlist;[
+<!ATTLIST acronym
+ %common.attrib;
+ %acronym.role.attrib;
+ %local.acronym.attrib;
+>
+<!--end of acronym.attlist-->]]>
+<!--end of acronym.module-->]]>
+
+<!ENTITY % citation.module "INCLUDE">
+<![%citation.module;[
+<!ENTITY % local.citation.attrib "">
+<!ENTITY % citation.role.attrib "%role.attrib;">
+
+<!ENTITY % citation.element "INCLUDE">
+<![%citation.element;[
+<!--doc:An inline bibliographic reference to another published work.-->
+<!ELEMENT citation %ho; (%para.char.mix;)*>
+<!--end of citation.element-->]]>
+
+<!ENTITY % citation.attlist "INCLUDE">
+<![%citation.attlist;[
+<!ATTLIST citation
+ %common.attrib;
+ %citation.role.attrib;
+ %local.citation.attrib;
+>
+<!--end of citation.attlist-->]]>
+<!--end of citation.module-->]]>
+
+<!ENTITY % citerefentry.module "INCLUDE">
+<![%citerefentry.module;[
+<!ENTITY % local.citerefentry.attrib "">
+<!ENTITY % citerefentry.role.attrib "%role.attrib;">
+
+<!ENTITY % citerefentry.element "INCLUDE">
+<![%citerefentry.element;[
+<!--doc:A citation to a reference page.-->
+<!ELEMENT citerefentry %ho; (refentrytitle, manvolnum?)>
+<!--end of citerefentry.element-->]]>
+
+<!ENTITY % citerefentry.attlist "INCLUDE">
+<![%citerefentry.attlist;[
+<!ATTLIST citerefentry
+ %common.attrib;
+ %citerefentry.role.attrib;
+ %local.citerefentry.attrib;
+>
+<!--end of citerefentry.attlist-->]]>
+<!--end of citerefentry.module-->]]>
+
+<!ENTITY % refentrytitle.module "INCLUDE">
+<![%refentrytitle.module;[
+<!ENTITY % local.refentrytitle.attrib "">
+<!ENTITY % refentrytitle.role.attrib "%role.attrib;">
+
+<!ENTITY % refentrytitle.element "INCLUDE">
+<![%refentrytitle.element;[
+<!--doc:The title of a reference page.-->
+<!ELEMENT refentrytitle %ho; (%para.char.mix;)*>
+<!--end of refentrytitle.element-->]]>
+
+<!ENTITY % refentrytitle.attlist "INCLUDE">
+<![%refentrytitle.attlist;[
+<!ATTLIST refentrytitle
+ %common.attrib;
+ %refentrytitle.role.attrib;
+ %local.refentrytitle.attrib;
+>
+<!--end of refentrytitle.attlist-->]]>
+<!--end of refentrytitle.module-->]]>
+
+<!ENTITY % manvolnum.module "INCLUDE">
+<![%manvolnum.module;[
+<!ENTITY % local.manvolnum.attrib "">
+<!ENTITY % namvolnum.role.attrib "%role.attrib;">
+
+<!ENTITY % manvolnum.element "INCLUDE">
+<![%manvolnum.element;[
+<!--doc:A reference volume number.-->
+<!ELEMENT manvolnum %ho; (%word.char.mix;)*>
+<!--end of manvolnum.element-->]]>
+
+<!ENTITY % manvolnum.attlist "INCLUDE">
+<![%manvolnum.attlist;[
+<!ATTLIST manvolnum
+ %common.attrib;
+ %namvolnum.role.attrib;
+ %local.manvolnum.attrib;
+>
+<!--end of manvolnum.attlist-->]]>
+<!--end of manvolnum.module-->]]>
+
+<!ENTITY % citetitle.module "INCLUDE">
+<![%citetitle.module;[
+<!ENTITY % local.citetitle.attrib "">
+<!ENTITY % citetitle.role.attrib "%role.attrib;">
+
+<!ENTITY % citetitle.element "INCLUDE">
+<![%citetitle.element;[
+<!--doc:The title of a cited work.-->
+<!ELEMENT citetitle %ho; (%para.char.mix;)*>
+<!--end of citetitle.element-->]]>
+
+<!-- Pubwork: Genre of published work cited; no default -->
+
+
+<!ENTITY % citetitle.attlist "INCLUDE">
+<![%citetitle.attlist;[
+<!ATTLIST citetitle
+ pubwork (article
+ |book
+ |chapter
+ |part
+ |refentry
+ |section
+ |journal
+ |series
+ |set
+ |manuscript
+ |cdrom
+ |dvd
+ |wiki
+ |gopher
+ |bbs
+ |emailmessage
+ |webpage
+ |newsposting) #IMPLIED
+ %common.attrib;
+ %citetitle.role.attrib;
+ %local.citetitle.attrib;
+>
+<!--end of citetitle.attlist-->]]>
+<!--end of citetitle.module-->]]>
+
+<!ENTITY % emphasis.module "INCLUDE">
+<![%emphasis.module;[
+<!ENTITY % local.emphasis.attrib "">
+<!ENTITY % emphasis.role.attrib "%role.attrib;">
+
+<!ENTITY % emphasis.element "INCLUDE">
+<![%emphasis.element;[
+<!--doc:Emphasized text.-->
+<!ELEMENT emphasis %ho; (%para.char.mix;)*>
+<!--end of emphasis.element-->]]>
+
+<!ENTITY % emphasis.attlist "INCLUDE">
+<![%emphasis.attlist;[
+<!ATTLIST emphasis
+ %common.attrib;
+ %emphasis.role.attrib;
+ %local.emphasis.attrib;
+>
+<!--end of emphasis.attlist-->]]>
+<!--end of emphasis.module-->]]>
+
+<!ENTITY % foreignphrase.module "INCLUDE">
+<![%foreignphrase.module;[
+<!ENTITY % local.foreignphrase.attrib "">
+<!ENTITY % foreignphrase.role.attrib "%role.attrib;">
+
+<!ENTITY % foreignphrase.element "INCLUDE">
+<![%foreignphrase.element;[
+<!--doc:A word or phrase in a language other than the primary language of the document.-->
+<!ELEMENT foreignphrase %ho; (%para.char.mix;)*>
+<!--end of foreignphrase.element-->]]>
+
+<!ENTITY % foreignphrase.attlist "INCLUDE">
+<![%foreignphrase.attlist;[
+<!ATTLIST foreignphrase
+ %common.attrib;
+ %foreignphrase.role.attrib;
+ %local.foreignphrase.attrib;
+>
+<!--end of foreignphrase.attlist-->]]>
+<!--end of foreignphrase.module-->]]>
+
+<!ENTITY % glossterm.module "INCLUDE">
+<![%glossterm.module;[
+<!ENTITY % local.glossterm.attrib "">
+<!ENTITY % glossterm.role.attrib "%role.attrib;">
+
+<!ENTITY % glossterm.element "INCLUDE">
+<![%glossterm.element;[
+<!--doc:A glossary term.-->
+<!ELEMENT glossterm %ho; (%para.char.mix;)*
+ %glossterm.exclusion;>
+<!--end of glossterm.element-->]]>
+
+<!-- to GlossEntry if Glossterm used in text -->
+<!-- BaseForm: Provides the form of GlossTerm to be used
+ for indexing -->
+
+<!ENTITY % glossterm.attlist "INCLUDE">
+<![%glossterm.attlist;[
+<!ATTLIST glossterm
+ baseform CDATA #IMPLIED
+ %linkend.attrib;
+ %common.attrib;
+ %glossterm.role.attrib;
+ %local.glossterm.attrib;
+>
+<!--end of glossterm.attlist-->]]>
+<!--end of glossterm.module-->]]>
+
+<!ENTITY % firstterm.module "INCLUDE">
+<![%firstterm.module;[
+<!ENTITY % local.firstterm.attrib "">
+<!ENTITY % firstterm.role.attrib "%role.attrib;">
+
+<!ENTITY % firstterm.element "INCLUDE">
+<![%firstterm.element;[
+<!--doc:The first occurrence of a term.-->
+<!ELEMENT firstterm %ho; (%para.char.mix;)*
+ %glossterm.exclusion;>
+<!--end of firstterm.element-->]]>
+
+<!-- to GlossEntry or other explanation -->
+
+
+<!ENTITY % firstterm.attlist "INCLUDE">
+<![%firstterm.attlist;[
+<!ATTLIST firstterm
+ baseform CDATA #IMPLIED
+ %linkend.attrib;
+ %common.attrib;
+ %firstterm.role.attrib;
+ %local.firstterm.attrib;
+>
+<!--end of firstterm.attlist-->]]>
+<!--end of firstterm.module-->]]>
+
+<!ENTITY % phrase.module "INCLUDE">
+<![%phrase.module;[
+<!ENTITY % local.phrase.attrib "">
+<!ENTITY % phrase.role.attrib "%role.attrib;">
+
+<!ENTITY % phrase.element "INCLUDE">
+<![%phrase.element;[
+<!--doc:A span of text.-->
+<!ELEMENT phrase %ho; (%para.char.mix;)*>
+<!--end of phrase.element-->]]>
+
+<!ENTITY % phrase.attlist "INCLUDE">
+<![%phrase.attlist;[
+<!ATTLIST phrase
+ %common.attrib;
+ %phrase.role.attrib;
+ %local.phrase.attrib;
+>
+<!--end of phrase.attlist-->]]>
+<!--end of phrase.module-->]]>
+
+<!ENTITY % quote.module "INCLUDE">
+<![%quote.module;[
+<!ENTITY % local.quote.attrib "">
+<!ENTITY % quote.role.attrib "%role.attrib;">
+
+<!ENTITY % quote.element "INCLUDE">
+<![%quote.element;[
+<!--doc:An inline quotation.-->
+<!ELEMENT quote %ho; (%para.char.mix;)*>
+<!--end of quote.element-->]]>
+
+<!ENTITY % quote.attlist "INCLUDE">
+<![%quote.attlist;[
+<!ATTLIST quote
+ %common.attrib;
+ %quote.role.attrib;
+ %local.quote.attrib;
+>
+<!--end of quote.attlist-->]]>
+<!--end of quote.module-->]]>
+
+<!ENTITY % ssscript.module "INCLUDE">
+<![%ssscript.module;[
+<!ENTITY % local.ssscript.attrib "">
+<!ENTITY % ssscript.role.attrib "%role.attrib;">
+
+<!ENTITY % subscript.element "INCLUDE">
+<![%subscript.element;[
+<!--doc:A subscript (as in H{^2}O, the molecular formula for water).-->
+<!ELEMENT subscript %ho; (#PCDATA
+ | %link.char.class;
+ | emphasis
+ | replaceable
+ | symbol
+ | inlinegraphic
+ | inlinemediaobject
+ | %base.char.class;
+ | %other.char.class;)*
+ %ubiq.exclusion;>
+<!--end of subscript.element-->]]>
+
+<!ENTITY % subscript.attlist "INCLUDE">
+<![%subscript.attlist;[
+<!ATTLIST subscript
+ %common.attrib;
+ %ssscript.role.attrib;
+ %local.ssscript.attrib;
+>
+<!--end of subscript.attlist-->]]>
+
+<!ENTITY % superscript.element "INCLUDE">
+<![%superscript.element;[
+<!--doc:A superscript (as in x^2, the mathematical notation for x multiplied by itself).-->
+<!ELEMENT superscript %ho; (#PCDATA
+ | %link.char.class;
+ | emphasis
+ | replaceable
+ | symbol
+ | inlinegraphic
+ | inlinemediaobject
+ | %base.char.class;
+ | %other.char.class;)*
+ %ubiq.exclusion;>
+<!--end of superscript.element-->]]>
+
+<!ENTITY % superscript.attlist "INCLUDE">
+<![%superscript.attlist;[
+<!ATTLIST superscript
+ %common.attrib;
+ %ssscript.role.attrib;
+ %local.ssscript.attrib;
+>
+<!--end of superscript.attlist-->]]>
+<!--end of ssscript.module-->]]>
+
+<!ENTITY % trademark.module "INCLUDE">
+<![%trademark.module;[
+<!ENTITY % local.trademark.attrib "">
+<!ENTITY % trademark.role.attrib "%role.attrib;">
+
+<!ENTITY % trademark.element "INCLUDE">
+<![%trademark.element;[
+<!--doc:A trademark.-->
+<!ELEMENT trademark %ho; (#PCDATA
+ | %link.char.class;
+ | %tech.char.class;
+ | %base.char.class;
+ | %other.char.class;
+ | inlinegraphic
+ | inlinemediaobject
+ | emphasis)*>
+<!--end of trademark.element-->]]>
+
+<!-- Class: More precisely identifies the item the element names -->
+
+
+<!ENTITY % trademark.attlist "INCLUDE">
+<![%trademark.attlist;[
+<!ATTLIST trademark
+ class (service
+ |trade
+ |registered
+ |copyright) 'trade'
+ %common.attrib;
+ %trademark.role.attrib;
+ %local.trademark.attrib;
+>
+<!--end of trademark.attlist-->]]>
+<!--end of trademark.module-->]]>
+
+<!ENTITY % wordasword.module "INCLUDE">
+<![%wordasword.module;[
+<!ENTITY % local.wordasword.attrib "">
+<!ENTITY % wordasword.role.attrib "%role.attrib;">
+
+<!ENTITY % wordasword.element "INCLUDE">
+<![%wordasword.element;[
+<!--doc:A word meant specifically as a word and not representing anything else.-->
+<!ELEMENT wordasword %ho; (%word.char.mix;)*>
+<!--end of wordasword.element-->]]>
+
+<!ENTITY % wordasword.attlist "INCLUDE">
+<![%wordasword.attlist;[
+<!ATTLIST wordasword
+ %common.attrib;
+ %wordasword.role.attrib;
+ %local.wordasword.attrib;
+>
+<!--end of wordasword.attlist-->]]>
+<!--end of wordasword.module-->]]>
+
+<!-- Links and cross-references ........................................... -->
+
+<!ENTITY % link.module "INCLUDE">
+<![%link.module;[
+<!ENTITY % local.link.attrib "">
+<!ENTITY % link.role.attrib "%role.attrib;">
+
+<!ENTITY % link.element "INCLUDE">
+<![%link.element;[
+<!--doc:A hypertext link.-->
+<!ELEMENT link %ho; (%para.char.mix;)*
+ %links.exclusion;>
+<!--end of link.element-->]]>
+
+<!-- Endterm: ID of element containing text that is to be
+ fetched from elsewhere in the document to appear as
+ the content of this element -->
+<!-- to linked-to object -->
+<!-- Type: Freely assignable parameter -->
+
+
+<!ENTITY % link.attlist "INCLUDE">
+<![%link.attlist;[
+<!ATTLIST link
+ endterm IDREF #IMPLIED
+ xrefstyle CDATA #IMPLIED
+ type CDATA #IMPLIED
+ %linkendreq.attrib;
+ %common.attrib;
+ %link.role.attrib;
+ %local.link.attrib;
+>
+<!--end of link.attlist-->]]>
+<!--end of link.module-->]]>
+
+<!ENTITY % olink.module "INCLUDE">
+<![%olink.module;[
+<!ENTITY % local.olink.attrib "">
+<!ENTITY % olink.role.attrib "%role.attrib;">
+
+<!ENTITY % olink.element "INCLUDE">
+<![%olink.element;[
+<!--doc:A link that addresses its target indirectly, through an entity.-->
+<!ELEMENT olink %ho; (%para.char.mix;)*
+ %links.exclusion;>
+<!--end of olink.element-->]]>
+
+<!-- TargetDocEnt: Name of an entity to be the target of the link -->
+<!-- LinkMode: ID of a ModeSpec containing instructions for
+ operating on the entity named by TargetDocEnt -->
+<!-- LocalInfo: Information that may be passed to ModeSpec -->
+<!-- Type: Freely assignable parameter -->
+
+
+<!ENTITY % olink.attlist "INCLUDE">
+<![%olink.attlist;[
+<!ATTLIST olink
+ targetdocent ENTITY #IMPLIED
+ linkmode IDREF #IMPLIED
+ localinfo CDATA #IMPLIED
+ type CDATA #IMPLIED
+ targetdoc CDATA #IMPLIED
+ targetptr CDATA #IMPLIED
+ xrefstyle CDATA #IMPLIED
+ %common.attrib;
+ %olink.role.attrib;
+ %local.olink.attrib;
+>
+<!--end of olink.attlist-->]]>
+<!--end of olink.module-->]]>
+
+<!ENTITY % ulink.module "INCLUDE">
+<![%ulink.module;[
+<!ENTITY % local.ulink.attrib "">
+<!ENTITY % ulink.role.attrib "%role.attrib;">
+
+<!ENTITY % ulink.element "INCLUDE">
+<![%ulink.element;[
+<!--doc:A link that addresses its target by means of a URL (Uniform Resource Locator).-->
+<!ELEMENT ulink %ho; (%para.char.mix;)*
+ %links.exclusion;>
+<!--end of ulink.element-->]]>
+
+<!-- URL: uniform resource locator; the target of the ULink -->
+<!-- Type: Freely assignable parameter -->
+
+
+<!ENTITY % ulink.attlist "INCLUDE">
+<![%ulink.attlist;[
+<!ATTLIST ulink
+ url CDATA #REQUIRED
+ type CDATA #IMPLIED
+ xrefstyle CDATA #IMPLIED
+ %common.attrib;
+ %ulink.role.attrib;
+ %local.ulink.attrib;
+>
+<!--end of ulink.attlist-->]]>
+<!--end of ulink.module-->]]>
+
+<!ENTITY % footnoteref.module "INCLUDE">
+<![%footnoteref.module;[
+<!ENTITY % local.footnoteref.attrib "">
+<!ENTITY % footnoteref.role.attrib "%role.attrib;">
+
+<!ENTITY % footnoteref.element "INCLUDE">
+<![%footnoteref.element;[
+<!--doc:A cross reference to a footnote (a footnote mark).-->
+<!ELEMENT footnoteref %ho; EMPTY>
+<!--end of footnoteref.element-->]]>
+
+<!-- to footnote content supplied elsewhere -->
+
+
+<!ENTITY % footnoteref.attlist "INCLUDE">
+<![%footnoteref.attlist;[
+<!ATTLIST footnoteref
+ %linkendreq.attrib; %label.attrib;
+ %common.attrib;
+ %footnoteref.role.attrib;
+ %local.footnoteref.attrib;
+>
+<!--end of footnoteref.attlist-->]]>
+<!--end of footnoteref.module-->]]>
+
+<!ENTITY % xref.module "INCLUDE">
+<![%xref.module;[
+<!ENTITY % local.xref.attrib "">
+<!ENTITY % xref.role.attrib "%role.attrib;">
+
+<!ENTITY % xref.element "INCLUDE">
+<![%xref.element;[
+<!--doc:A cross reference to another part of the document.-->
+<!ELEMENT xref %ho; EMPTY>
+<!--end of xref.element-->]]>
+
+<!-- Endterm: ID of element containing text that is to be
+ fetched from elsewhere in the document to appear as
+ the content of this element -->
+<!-- to linked-to object -->
+
+
+<!ENTITY % xref.attlist "INCLUDE">
+<![%xref.attlist;[
+<!ATTLIST xref
+ endterm IDREF #IMPLIED
+ xrefstyle CDATA #IMPLIED
+ %common.attrib;
+ %linkendreq.attrib;
+ %xref.role.attrib;
+ %local.xref.attrib;
+>
+<!--end of xref.attlist-->]]>
+<!--end of xref.module-->]]>
+
+<!ENTITY % biblioref.module "INCLUDE">
+<![%biblioref.module;[
+<!ENTITY % local.biblioref.attrib "">
+<!ENTITY % biblioref.role.attrib "%role.attrib;">
+
+<!ENTITY % biblioref.element "INCLUDE">
+<![%biblioref.element;[
+<!--doc:A cross reference to a bibliographic entry.-->
+<!ELEMENT biblioref %ho; EMPTY>
+<!--end of biblioref.element-->]]>
+
+<!ENTITY % biblioref.attlist "INCLUDE">
+<![%biblioref.attlist;[
+<!ATTLIST biblioref
+ endterm IDREF #IMPLIED
+ xrefstyle CDATA #IMPLIED
+ units CDATA #IMPLIED
+ begin CDATA #IMPLIED
+ end CDATA #IMPLIED
+ %common.attrib;
+ %linkendreq.attrib;
+ %biblioref.role.attrib;
+ %local.biblioref.attrib;
+>
+<!--end of biblioref.attlist-->]]>
+<!--end of biblioref.module-->]]>
+
+<!-- Ubiquitous elements .................................................. -->
+
+<!ENTITY % anchor.module "INCLUDE">
+<![%anchor.module;[
+<!ENTITY % local.anchor.attrib "">
+<!ENTITY % anchor.role.attrib "%role.attrib;">
+
+<!ENTITY % anchor.element "INCLUDE">
+<![%anchor.element;[
+<!--doc:A spot in the document.-->
+<!ELEMENT anchor %ho; EMPTY>
+<!--end of anchor.element-->]]>
+
+<!-- required -->
+<!-- replaces Lang -->
+
+
+<!ENTITY % anchor.attlist "INCLUDE">
+<![%anchor.attlist;[
+<!ATTLIST anchor
+ %idreq.attrib; %pagenum.attrib; %remap.attrib;
+ %xreflabel.attrib;
+ %revisionflag.attrib;
+ %effectivity.attrib;
+ %anchor.role.attrib;
+ %local.anchor.attrib;
+>
+<!--end of anchor.attlist-->]]>
+<!--end of anchor.module-->]]>
+
+<!ENTITY % beginpage.module "INCLUDE">
+<![%beginpage.module;[
+<!ENTITY % local.beginpage.attrib "">
+<!ENTITY % beginpage.role.attrib "%role.attrib;">
+
+<!ENTITY % beginpage.element "INCLUDE">
+<![%beginpage.element;[
+<!--doc:The location of a page break in a print version of the document.-->
+<!ELEMENT beginpage %ho; EMPTY>
+<!--end of beginpage.element-->]]>
+
+<!-- PageNum: Number of page that begins at this point -->
+
+
+<!ENTITY % beginpage.attlist "INCLUDE">
+<![%beginpage.attlist;[
+<!ATTLIST beginpage
+ %pagenum.attrib;
+ %common.attrib;
+ %beginpage.role.attrib;
+ %local.beginpage.attrib;
+>
+<!--end of beginpage.attlist-->]]>
+<!--end of beginpage.module-->]]>
+
+<!-- IndexTerms appear in the text flow for generating or linking an
+ index. -->
+
+<!ENTITY % indexterm.content.module "INCLUDE">
+<![%indexterm.content.module;[
+<!ENTITY % indexterm.module "INCLUDE">
+<![%indexterm.module;[
+<!ENTITY % local.indexterm.attrib "">
+<!ENTITY % indexterm.role.attrib "%role.attrib;">
+
+<!ENTITY % indexterm.element "INCLUDE">
+<![%indexterm.element;[
+<!--doc:A wrapper for terms to be indexed.-->
+<!ELEMENT indexterm %ho; (primary?, ((secondary, ((tertiary, (see|seealso+)?)
+ | see | seealso+)?) | see | seealso+)?)
+ %ubiq.exclusion;>
+<!--end of indexterm.element-->]]>
+
+<!-- Scope: Indicates which generated indices the IndexTerm
+ should appear in: Global (whole document set), Local (this
+ document only), or All (both) -->
+<!-- Significance: Whether this IndexTerm is the most pertinent
+ of its series (Preferred) or not (Normal, the default) -->
+<!-- Class: Indicates type of IndexTerm; default is Singular,
+ or EndOfRange if StartRef is supplied; StartOfRange value
+ must be supplied explicitly on starts of ranges -->
+<!-- StartRef: ID of the IndexTerm that starts the indexing
+ range ended by this IndexTerm -->
+<!-- Zone: IDs of the elements to which the IndexTerm applies,
+ and indicates that the IndexTerm applies to those entire
+ elements rather than the point at which the IndexTerm
+ occurs -->
+
+
+<!ENTITY % indexterm.attlist "INCLUDE">
+<![%indexterm.attlist;[
+<!ATTLIST indexterm
+ %pagenum.attrib;
+ scope (all
+ |global
+ |local) #IMPLIED
+ significance (preferred
+ |normal) "normal"
+ class (singular
+ |startofrange
+ |endofrange) #IMPLIED
+ startref IDREF #IMPLIED
+ zone IDREFS #IMPLIED
+ type CDATA #IMPLIED
+ %common.attrib;
+ %indexterm.role.attrib;
+ %local.indexterm.attrib;
+>
+<!--end of indexterm.attlist-->]]>
+<!--end of indexterm.module-->]]>
+
+<!ENTITY % primsecter.module "INCLUDE">
+<![%primsecter.module;[
+<!ENTITY % local.primsecter.attrib "">
+<!ENTITY % primsecter.role.attrib "%role.attrib;">
+
+
+<!ENTITY % primary.element "INCLUDE">
+<![%primary.element;[
+<!--doc:The primary word or phrase under which an index term should be sorted.-->
+<!ELEMENT primary %ho; (%ndxterm.char.mix;)*>
+<!--end of primary.element-->]]>
+<!-- SortAs: Alternate sort string for index sorting, e.g.,
+ "fourteen" for an element containing "14" -->
+
+<!ENTITY % primary.attlist "INCLUDE">
+<![%primary.attlist;[
+<!ATTLIST primary
+ sortas CDATA #IMPLIED
+ %common.attrib;
+ %primsecter.role.attrib;
+ %local.primsecter.attrib;
+>
+<!--end of primary.attlist-->]]>
+
+
+<!ENTITY % secondary.element "INCLUDE">
+<![%secondary.element;[
+<!--doc:A secondary word or phrase in an index term.-->
+<!ELEMENT secondary %ho; (%ndxterm.char.mix;)*>
+<!--end of secondary.element-->]]>
+<!-- SortAs: Alternate sort string for index sorting, e.g.,
+ "fourteen" for an element containing "14" -->
+
+<!ENTITY % secondary.attlist "INCLUDE">
+<![%secondary.attlist;[
+<!ATTLIST secondary
+ sortas CDATA #IMPLIED
+ %common.attrib;
+ %primsecter.role.attrib;
+ %local.primsecter.attrib;
+>
+<!--end of secondary.attlist-->]]>
+
+
+<!ENTITY % tertiary.element "INCLUDE">
+<![%tertiary.element;[
+<!--doc:A tertiary word or phrase in an index term.-->
+<!ELEMENT tertiary %ho; (%ndxterm.char.mix;)*>
+<!--end of tertiary.element-->]]>
+<!-- SortAs: Alternate sort string for index sorting, e.g.,
+ "fourteen" for an element containing "14" -->
+
+<!ENTITY % tertiary.attlist "INCLUDE">
+<![%tertiary.attlist;[
+<!ATTLIST tertiary
+ sortas CDATA #IMPLIED
+ %common.attrib;
+ %primsecter.role.attrib;
+ %local.primsecter.attrib;
+>
+<!--end of tertiary.attlist-->]]>
+
+<!--end of primsecter.module-->]]>
+
+<!ENTITY % seeseealso.module "INCLUDE">
+<![%seeseealso.module;[
+<!ENTITY % local.seeseealso.attrib "">
+<!ENTITY % seeseealso.role.attrib "%role.attrib;">
+
+<!ENTITY % see.element "INCLUDE">
+<![%see.element;[
+<!--doc:Part of an index term directing the reader instead to another entry in the index.-->
+<!ELEMENT see %ho; (%ndxterm.char.mix;)*>
+<!--end of see.element-->]]>
+
+<!ENTITY % see.attlist "INCLUDE">
+<![%see.attlist;[
+<!ATTLIST see
+ %common.attrib;
+ %seeseealso.role.attrib;
+ %local.seeseealso.attrib;
+>
+<!--end of see.attlist-->]]>
+
+<!ENTITY % seealso.element "INCLUDE">
+<![%seealso.element;[
+<!--doc:Part of an index term directing the reader also to another entry in the index.-->
+<!ELEMENT seealso %ho; (%ndxterm.char.mix;)*>
+<!--end of seealso.element-->]]>
+
+<!ENTITY % seealso.attlist "INCLUDE">
+<![%seealso.attlist;[
+<!ATTLIST seealso
+ %common.attrib;
+ %seeseealso.role.attrib;
+ %local.seeseealso.attrib;
+>
+<!--end of seealso.attlist-->]]>
+<!--end of seeseealso.module-->]]>
+<!--end of indexterm.content.module-->]]>
+
+<!-- End of DocBook XML information pool module V4.5 ...................... -->
+<!-- ...................................................................... -->
diff --git a/doc/editor_configs/serna/scons/dtd/docbook.cat b/doc/editor_configs/serna/scons/dtd/docbook.cat
new file mode 100644
index 0000000..dc5cfb9
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/docbook.cat
@@ -0,0 +1,113 @@
+ -- ...................................................................... --
+ -- Catalog data for DocBook XML V4.5 .................................... --
+ -- File docbook.cat ..................................................... --
+
+ -- 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/.
+ --
+
+ -- This is the catalog data file for DocBook XML V4.5. It is provided as
+ a convenience in building your own catalog files. You need not use
+ the filenames listed here, and need not use the filename method of
+ identifying storage objects at all. See the documentation for
+ detailed information on the files associated with the DocBook DTD.
+ See SGML Open Technical Resolution 9401 for detailed information
+ on supplying and using catalog data.
+ --
+
+ -- ...................................................................... --
+ -- DocBook driver file .................................................. --
+
+PUBLIC "-//OASIS//DTD DocBook SCons XML V4.5//EN"
+ "scons.dtd"
+
+ -- ...................................................................... --
+ -- DocBook modules ...................................................... --
+
+PUBLIC "-//OASIS//DTD DocBook CALS Table Model V4.5//EN"
+ "calstblx.dtd"
+
+PUBLIC "-//OASIS//ELEMENTS DocBook XML HTML Tables V4.5//EN"
+ "htmltblx.mod"
+
+PUBLIC "-//OASIS//DTD XML Exchange Table Model 19990315//EN"
+ "soextblx.dtd"
+
+PUBLIC "-//OASIS//ELEMENTS DocBook Information Pool V4.5//EN"
+ "dbpoolx.mod"
+
+PUBLIC "-//OASIS//ELEMENTS DocBook Document Hierarchy V4.5//EN"
+ "dbhierx.mod"
+
+PUBLIC "-//OASIS//ENTITIES DocBook Additional General Entities V4.5//EN"
+ "dbgenent.mod"
+
+PUBLIC "-//OASIS//ENTITIES DocBook Notations V4.5//EN"
+ "dbnotnx.mod"
+
+PUBLIC "-//OASIS//ENTITIES DocBook Character Entities V4.5//EN"
+ "dbcentx.mod"
+
+ -- ...................................................................... --
+ -- ISO entity sets ...................................................... --
+
+PUBLIC "ISO 8879:1986//ENTITIES Diacritical Marks//EN//XML"
+ "ent/isodia.ent"
+
+PUBLIC "ISO 8879:1986//ENTITIES Numeric and Special Graphic//EN//XML"
+ "ent/isonum.ent"
+
+PUBLIC "ISO 8879:1986//ENTITIES Publishing//EN//XML"
+ "ent/isopub.ent"
+
+PUBLIC "ISO 8879:1986//ENTITIES General Technical//EN//XML"
+ "ent/isotech.ent"
+
+PUBLIC "ISO 8879:1986//ENTITIES Added Latin 1//EN//XML"
+ "ent/isolat1.ent"
+
+PUBLIC "ISO 8879:1986//ENTITIES Added Latin 2//EN//XML"
+ "ent/isolat2.ent"
+
+PUBLIC "ISO 8879:1986//ENTITIES Greek Letters//EN//XML"
+ "ent/isogrk1.ent"
+
+PUBLIC "ISO 8879:1986//ENTITIES Monotoniko Greek//EN//XML"
+ "ent/isogrk2.ent"
+
+PUBLIC "ISO 8879:1986//ENTITIES Greek Symbols//EN//XML"
+ "ent/isogrk3.ent"
+
+PUBLIC "ISO 8879:1986//ENTITIES Alternative Greek Symbols//EN//XML"
+ "ent/isogrk4.ent"
+
+PUBLIC "ISO 8879:1986//ENTITIES Added Math Symbols: Arrow Relations//EN//XML"
+ "ent/isoamsa.ent"
+
+PUBLIC "ISO 8879:1986//ENTITIES Added Math Symbols: Binary Operators//EN//XML"
+ "ent/isoamsb.ent"
+
+PUBLIC "ISO 8879:1986//ENTITIES Added Math Symbols: Delimiters//EN//XML"
+ "ent/isoamsc.ent"
+
+PUBLIC "ISO 8879:1986//ENTITIES Added Math Symbols: Negated Relations//EN//XML"
+ "ent/isoamsn.ent"
+
+PUBLIC "ISO 8879:1986//ENTITIES Added Math Symbols: Ordinary//EN//XML"
+ "ent/isoamso.ent"
+
+PUBLIC "ISO 8879:1986//ENTITIES Added Math Symbols: Relations//EN//XML"
+ "ent/isoamsr.ent"
+
+PUBLIC "ISO 8879:1986//ENTITIES Box and Line Drawing//EN//XML"
+ "ent/isobox.ent"
+
+PUBLIC "ISO 8879:1986//ENTITIES Russian Cyrillic//EN//XML"
+ "ent/isocyr1.ent"
+
+PUBLIC "ISO 8879:1986//ENTITIES Non-Russian Cyrillic//EN//XML"
+ "ent/isocyr2.ent"
+
+ -- End of catalog data for DocBook XML V4.5 ............................. --
+ -- ...................................................................... --
diff --git a/doc/editor_configs/serna/scons/dtd/ent/README b/doc/editor_configs/serna/scons/dtd/ent/README
new file mode 100644
index 0000000..c0da542
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/ent/README
@@ -0,0 +1,14 @@
+XML Entity Declarations for Characters
+
+The character entity sets distributed with DocBook XML are direct
+copies of the official entities located at
+
+ http://www.w3.org/2003/entities/
+
+They are distributed for historical compatibility and user convenience.
+The DocBook Technical Committee no longer attempts to maintain these
+definitions and will periodically update them from the W3C site if and
+as they are updated there.
+
+Please direct all questions or comments about the entities to the
+individuals or working groups who maintain the official sets.
diff --git a/doc/editor_configs/serna/scons/dtd/ent/isoamsa.ent b/doc/editor_configs/serna/scons/dtd/ent/isoamsa.ent
new file mode 100644
index 0000000..daf09e9
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/ent/isoamsa.ent
@@ -0,0 +1,97 @@
+
+<!--
+ File isoamsa.ent produced by the XSL script entities.xsl
+ from input data in unicode.xml.
+
+ Please report any errors to David Carlisle
+ via the public W3C list www-math@w3.org.
+
+ The numeric character values assigned to each entity
+ (should) match the Unicode assignments in Unicode 4.0.
+
+ Entity names in this file are derived from files carrying the
+ following notice:
+
+ (C) International Organization for Standardization 1986
+ Permission to copy in any form is granted for use with
+ conforming SGML systems and applications as defined in
+ ISO 8879, provided this notice is included in all copies.
+
+-->
+
+
+<!--
+ Version: $Id: isoamsa.ent,v 1.1 2009-03-30 14:59:35 sorin Exp $
+
+ Public identifier: ISO 8879:1986//ENTITIES Added Math Symbols: Arrow Relations//EN//XML
+ System identifier: http://www.w3.org/2003/entities/iso8879/isoamsa.ent
+
+ The public identifier should always be used verbatim.
+ The system identifier may be changed to suit local requirements.
+
+ Typical invocation:
+
+ <!ENTITY % isoamsa PUBLIC
+ "ISO 8879:1986//ENTITIES Added Math Symbols: Arrow Relations//EN//XML"
+ "http://www.w3.org/2003/entities/iso8879/isoamsa.ent"
+ >
+ %isoamsa;
+
+-->
+
+<!ENTITY cularr "&#x021B6;" ><!--ANTICLOCKWISE TOP SEMICIRCLE ARROW -->
+<!ENTITY curarr "&#x021B7;" ><!--CLOCKWISE TOP SEMICIRCLE ARROW -->
+<!ENTITY dArr "&#x021D3;" ><!--DOWNWARDS DOUBLE ARROW -->
+<!ENTITY darr2 "&#x021CA;" ><!--DOWNWARDS PAIRED ARROWS -->
+<!ENTITY dharl "&#x021C3;" ><!--DOWNWARDS HARPOON WITH BARB LEFTWARDS -->
+<!ENTITY dharr "&#x021C2;" ><!--DOWNWARDS HARPOON WITH BARB RIGHTWARDS -->
+<!ENTITY dlarr "&#x02199;" ><!--SOUTH WEST ARROW -->
+<!ENTITY drarr "&#x02198;" ><!--SOUTH EAST ARROW -->
+<!ENTITY hArr "&#x021D4;" ><!--LEFT RIGHT DOUBLE ARROW -->
+<!ENTITY harr "&#x02194;" ><!--LEFT RIGHT ARROW -->
+<!ENTITY harrw "&#x021AD;" ><!--LEFT RIGHT WAVE ARROW -->
+<!ENTITY lAarr "&#x021DA;" ><!--LEFTWARDS TRIPLE ARROW -->
+<!ENTITY Larr "&#x0219E;" ><!--LEFTWARDS TWO HEADED ARROW -->
+<!ENTITY larr2 "&#x021C7;" ><!--LEFTWARDS PAIRED ARROWS -->
+<!ENTITY larrhk "&#x021A9;" ><!--LEFTWARDS ARROW WITH HOOK -->
+<!ENTITY larrlp "&#x021AB;" ><!--LEFTWARDS ARROW WITH LOOP -->
+<!ENTITY larrtl "&#x021A2;" ><!--LEFTWARDS ARROW WITH TAIL -->
+<!ENTITY lhard "&#x021BD;" ><!--LEFTWARDS HARPOON WITH BARB DOWNWARDS -->
+<!ENTITY lharu "&#x021BC;" ><!--LEFTWARDS HARPOON WITH BARB UPWARDS -->
+<!ENTITY lrarr2 "&#x021C6;" ><!--LEFTWARDS ARROW OVER RIGHTWARDS ARROW -->
+<!ENTITY lrhar2 "&#x021CB;" ><!--LEFTWARDS HARPOON OVER RIGHTWARDS HARPOON -->
+<!ENTITY lsh "&#x021B0;" ><!--UPWARDS ARROW WITH TIP LEFTWARDS -->
+<!ENTITY map "&#x021A6;" ><!--RIGHTWARDS ARROW FROM BAR -->
+<!ENTITY mumap "&#x022B8;" ><!--MULTIMAP -->
+<!ENTITY nearr "&#x02197;" ><!--NORTH EAST ARROW -->
+<!ENTITY nhArr "&#x021CE;" ><!--LEFT RIGHT DOUBLE ARROW WITH STROKE -->
+<!ENTITY nharr "&#x021AE;" ><!--LEFT RIGHT ARROW WITH STROKE -->
+<!ENTITY nlArr "&#x021CD;" ><!--LEFTWARDS DOUBLE ARROW WITH STROKE -->
+<!ENTITY nlarr "&#x0219A;" ><!--LEFTWARDS ARROW WITH STROKE -->
+<!ENTITY nrArr "&#x021CF;" ><!--RIGHTWARDS DOUBLE ARROW WITH STROKE -->
+<!ENTITY nrarr "&#x0219B;" ><!--RIGHTWARDS ARROW WITH STROKE -->
+<!ENTITY nwarr "&#x02196;" ><!--NORTH WEST ARROW -->
+<!ENTITY olarr "&#x021BA;" ><!--ANTICLOCKWISE OPEN CIRCLE ARROW -->
+<!ENTITY orarr "&#x021BB;" ><!--CLOCKWISE OPEN CIRCLE ARROW -->
+<!ENTITY rAarr "&#x021DB;" ><!--RIGHTWARDS TRIPLE ARROW -->
+<!ENTITY Rarr "&#x021A0;" ><!--RIGHTWARDS TWO HEADED ARROW -->
+<!ENTITY rarr2 "&#x021C9;" ><!--RIGHTWARDS PAIRED ARROWS -->
+<!ENTITY rarrhk "&#x021AA;" ><!--RIGHTWARDS ARROW WITH HOOK -->
+<!ENTITY rarrlp "&#x021AC;" ><!--RIGHTWARDS ARROW WITH LOOP -->
+<!ENTITY rarrtl "&#x021A3;" ><!--RIGHTWARDS ARROW WITH TAIL -->
+<!ENTITY rarrw "&#x0219D;" ><!--RIGHTWARDS WAVE ARROW -->
+<!ENTITY rhard "&#x021C1;" ><!--RIGHTWARDS HARPOON WITH BARB DOWNWARDS -->
+<!ENTITY rharu "&#x021C0;" ><!--RIGHTWARDS HARPOON WITH BARB UPWARDS -->
+<!ENTITY rlarr2 "&#x021C4;" ><!--RIGHTWARDS ARROW OVER LEFTWARDS ARROW -->
+<!ENTITY rlhar2 "&#x021CC;" ><!--RIGHTWARDS HARPOON OVER LEFTWARDS HARPOON -->
+<!ENTITY rsh "&#x021B1;" ><!--UPWARDS ARROW WITH TIP RIGHTWARDS -->
+<!ENTITY uArr "&#x021D1;" ><!--UPWARDS DOUBLE ARROW -->
+<!ENTITY uarr2 "&#x021C8;" ><!--UPWARDS PAIRED ARROWS -->
+<!ENTITY uharl "&#x021BF;" ><!--UPWARDS HARPOON WITH BARB LEFTWARDS -->
+<!ENTITY uharr "&#x021BE;" ><!--UPWARDS HARPOON WITH BARB RIGHTWARDS -->
+<!ENTITY vArr "&#x021D5;" ><!--UP DOWN DOUBLE ARROW -->
+<!ENTITY varr "&#x02195;" ><!--UP DOWN ARROW -->
+<!ENTITY xhArr "&#x027FA;" ><!--LONG LEFT RIGHT DOUBLE ARROW -->
+<!ENTITY xharr "&#x027F7;" ><!--LONG LEFT RIGHT ARROW -->
+<!ENTITY xlArr "&#x027F8;" ><!--LONG LEFTWARDS DOUBLE ARROW -->
+<!ENTITY xrArr "&#x027F9;" ><!--LONG RIGHTWARDS DOUBLE ARROW -->
diff --git a/doc/editor_configs/serna/scons/dtd/ent/isoamsb.ent b/doc/editor_configs/serna/scons/dtd/ent/isoamsb.ent
new file mode 100644
index 0000000..717d63a
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/ent/isoamsb.ent
@@ -0,0 +1,83 @@
+
+<!--
+ File isoamsb.ent produced by the XSL script entities.xsl
+ from input data in unicode.xml.
+
+ Please report any errors to David Carlisle
+ via the public W3C list www-math@w3.org.
+
+ The numeric character values assigned to each entity
+ (should) match the Unicode assignments in Unicode 4.0.
+
+ Entity names in this file are derived from files carrying the
+ following notice:
+
+ (C) International Organization for Standardization 1986
+ Permission to copy in any form is granted for use with
+ conforming SGML systems and applications as defined in
+ ISO 8879, provided this notice is included in all copies.
+
+-->
+
+
+<!--
+ Version: $Id: isoamsb.ent,v 1.1 2009-03-30 14:59:35 sorin Exp $
+
+ Public identifier: ISO 8879:1986//ENTITIES Added Math Symbols: Binary Operators//EN//XML
+ System identifier: http://www.w3.org/2003/entities/iso8879/isoamsb.ent
+
+ The public identifier should always be used verbatim.
+ The system identifier may be changed to suit local requirements.
+
+ Typical invocation:
+
+ <!ENTITY % isoamsb PUBLIC
+ "ISO 8879:1986//ENTITIES Added Math Symbols: Binary Operators//EN//XML"
+ "http://www.w3.org/2003/entities/iso8879/isoamsb.ent"
+ >
+ %isoamsb;
+
+-->
+
+<!ENTITY amalg "&#x02A3F;" ><!--AMALGAMATION OR COPRODUCT -->
+<!ENTITY Barwed "&#x02306;" ><!--PERSPECTIVE -->
+<!ENTITY barwed "&#x02305;" ><!--PROJECTIVE -->
+<!ENTITY Cap "&#x022D2;" ><!--DOUBLE INTERSECTION -->
+<!ENTITY coprod "&#x02210;" ><!--N-ARY COPRODUCT -->
+<!ENTITY Cup "&#x022D3;" ><!--DOUBLE UNION -->
+<!ENTITY cuvee "&#x022CE;" ><!--CURLY LOGICAL OR -->
+<!ENTITY cuwed "&#x022CF;" ><!--CURLY LOGICAL AND -->
+<!ENTITY diam "&#x022C4;" ><!--DIAMOND OPERATOR -->
+<!ENTITY divonx "&#x022C7;" ><!--DIVISION TIMES -->
+<!ENTITY intcal "&#x022BA;" ><!--INTERCALATE -->
+<!ENTITY lthree "&#x022CB;" ><!--LEFT SEMIDIRECT PRODUCT -->
+<!ENTITY ltimes "&#x022C9;" ><!--LEFT NORMAL FACTOR SEMIDIRECT PRODUCT -->
+<!ENTITY minusb "&#x0229F;" ><!--SQUARED MINUS -->
+<!ENTITY oast "&#x0229B;" ><!--CIRCLED ASTERISK OPERATOR -->
+<!ENTITY ocir "&#x0229A;" ><!--CIRCLED RING OPERATOR -->
+<!ENTITY odash "&#x0229D;" ><!--CIRCLED DASH -->
+<!ENTITY odot "&#x02299;" ><!--CIRCLED DOT OPERATOR -->
+<!ENTITY ominus "&#x02296;" ><!--CIRCLED MINUS -->
+<!ENTITY oplus "&#x02295;" ><!--CIRCLED PLUS -->
+<!ENTITY osol "&#x02298;" ><!--CIRCLED DIVISION SLASH -->
+<!ENTITY otimes "&#x02297;" ><!--CIRCLED TIMES -->
+<!ENTITY plusb "&#x0229E;" ><!--SQUARED PLUS -->
+<!ENTITY plusdo "&#x02214;" ><!--DOT PLUS -->
+<!ENTITY prod "&#x0220F;" ><!--N-ARY PRODUCT -->
+<!ENTITY rthree "&#x022CC;" ><!--RIGHT SEMIDIRECT PRODUCT -->
+<!ENTITY rtimes "&#x022CA;" ><!--RIGHT NORMAL FACTOR SEMIDIRECT PRODUCT -->
+<!ENTITY sdot "&#x022C5;" ><!--DOT OPERATOR -->
+<!ENTITY sdotb "&#x022A1;" ><!--SQUARED DOT OPERATOR -->
+<!ENTITY setmn "&#x02216;" ><!--SET MINUS -->
+<!ENTITY sqcap "&#x02293;" ><!--SQUARE CAP -->
+<!ENTITY sqcup "&#x02294;" ><!--SQUARE CUP -->
+<!ENTITY ssetmn "&#x02216;" ><!--SET MINUS -->
+<!ENTITY sstarf "&#x022C6;" ><!--STAR OPERATOR -->
+<!ENTITY sum "&#x02211;" ><!--N-ARY SUMMATION -->
+<!ENTITY timesb "&#x022A0;" ><!--SQUARED TIMES -->
+<!ENTITY top "&#x022A4;" ><!--DOWN TACK -->
+<!ENTITY uplus "&#x0228E;" ><!--MULTISET UNION -->
+<!ENTITY wreath "&#x02240;" ><!--WREATH PRODUCT -->
+<!ENTITY xcirc "&#x025EF;" ><!--LARGE CIRCLE -->
+<!ENTITY xdtri "&#x025BD;" ><!--WHITE DOWN-POINTING TRIANGLE -->
+<!ENTITY xutri "&#x025B3;" ><!--WHITE UP-POINTING TRIANGLE -->
diff --git a/doc/editor_configs/serna/scons/dtd/ent/isoamsc.ent b/doc/editor_configs/serna/scons/dtd/ent/isoamsc.ent
new file mode 100644
index 0000000..c218560
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/ent/isoamsc.ent
@@ -0,0 +1,51 @@
+
+<!--
+ File isoamsc.ent produced by the XSL script entities.xsl
+ from input data in unicode.xml.
+
+ Please report any errors to David Carlisle
+ via the public W3C list www-math@w3.org.
+
+ The numeric character values assigned to each entity
+ (should) match the Unicode assignments in Unicode 4.0.
+
+ Entity names in this file are derived from files carrying the
+ following notice:
+
+ (C) International Organization for Standardization 1986
+ Permission to copy in any form is granted for use with
+ conforming SGML systems and applications as defined in
+ ISO 8879, provided this notice is included in all copies.
+
+-->
+
+
+<!--
+ Version: $Id: isoamsc.ent,v 1.1 2009-03-30 14:59:35 sorin Exp $
+
+ Public identifier: ISO 8879:1986//ENTITIES Added Math Symbols: Delimiters//EN//XML
+ System identifier: http://www.w3.org/2003/entities/iso8879/isoamsc.ent
+
+ The public identifier should always be used verbatim.
+ The system identifier may be changed to suit local requirements.
+
+ Typical invocation:
+
+ <!ENTITY % isoamsc PUBLIC
+ "ISO 8879:1986//ENTITIES Added Math Symbols: Delimiters//EN//XML"
+ "http://www.w3.org/2003/entities/iso8879/isoamsc.ent"
+ >
+ %isoamsc;
+
+-->
+
+<!ENTITY dlcorn "&#x0231E;" ><!--BOTTOM LEFT CORNER -->
+<!ENTITY drcorn "&#x0231F;" ><!--BOTTOM RIGHT CORNER -->
+<!ENTITY lceil "&#x02308;" ><!--LEFT CEILING -->
+<!ENTITY lfloor "&#x0230A;" ><!--LEFT FLOOR -->
+<!ENTITY lpargt "&#x029A0;" ><!--SPHERICAL ANGLE OPENING LEFT -->
+<!ENTITY rceil "&#x02309;" ><!--RIGHT CEILING -->
+<!ENTITY rfloor "&#x0230B;" ><!--RIGHT FLOOR -->
+<!ENTITY rpargt "&#x02994;" ><!--RIGHT ARC GREATER-THAN BRACKET -->
+<!ENTITY ulcorn "&#x0231C;" ><!--TOP LEFT CORNER -->
+<!ENTITY urcorn "&#x0231D;" ><!--TOP RIGHT CORNER -->
diff --git a/doc/editor_configs/serna/scons/dtd/ent/isoamsn.ent b/doc/editor_configs/serna/scons/dtd/ent/isoamsn.ent
new file mode 100644
index 0000000..0bca668
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/ent/isoamsn.ent
@@ -0,0 +1,103 @@
+
+<!--
+ File isoamsn.ent produced by the XSL script entities.xsl
+ from input data in unicode.xml.
+
+ Please report any errors to David Carlisle
+ via the public W3C list www-math@w3.org.
+
+ The numeric character values assigned to each entity
+ (should) match the Unicode assignments in Unicode 4.0.
+
+ References to the VARIANT SELECTOR 1 character (&#x0FE00;)
+ should match the uses listed in Unicode Technical Report 25.
+
+ Entity names in this file are derived from files carrying the
+ following notice:
+
+ (C) International Organization for Standardization 1986
+ Permission to copy in any form is granted for use with
+ conforming SGML systems and applications as defined in
+ ISO 8879, provided this notice is included in all copies.
+
+-->
+
+
+<!--
+ Version: $Id: isoamsn.ent,v 1.1 2009-03-30 14:59:35 sorin Exp $
+
+ Public identifier: ISO 8879:1986//ENTITIES Added Math Symbols: Negated Relations//EN//XML
+ System identifier: http://www.w3.org/2003/entities/iso8879/isoamsn.ent
+
+ The public identifier should always be used verbatim.
+ The system identifier may be changed to suit local requirements.
+
+ Typical invocation:
+
+ <!ENTITY % isoamsn PUBLIC
+ "ISO 8879:1986//ENTITIES Added Math Symbols: Negated Relations//EN//XML"
+ "http://www.w3.org/2003/entities/iso8879/isoamsn.ent"
+ >
+ %isoamsn;
+
+-->
+
+<!ENTITY gnap "&#x02A8A;" ><!--GREATER-THAN AND NOT APPROXIMATE -->
+<!ENTITY gnE "&#x02269;" ><!--GREATER-THAN BUT NOT EQUAL TO -->
+<!ENTITY gne "&#x02A88;" ><!--GREATER-THAN AND SINGLE-LINE NOT EQUAL TO -->
+<!ENTITY gnsim "&#x022E7;" ><!--GREATER-THAN BUT NOT EQUIVALENT TO -->
+<!ENTITY gvnE "&#x02269;&#x0FE00;" ><!--GREATER-THAN BUT NOT EQUAL TO - with vertical stroke -->
+<!ENTITY lnap "&#x02A89;" ><!--LESS-THAN AND NOT APPROXIMATE -->
+<!ENTITY lnE "&#x02268;" ><!--LESS-THAN BUT NOT EQUAL TO -->
+<!ENTITY lne "&#x02A87;" ><!--LESS-THAN AND SINGLE-LINE NOT EQUAL TO -->
+<!ENTITY lnsim "&#x022E6;" ><!--LESS-THAN BUT NOT EQUIVALENT TO -->
+<!ENTITY lvnE "&#x02268;&#x0FE00;" ><!--LESS-THAN BUT NOT EQUAL TO - with vertical stroke -->
+<!ENTITY nap "&#x02249;" ><!--NOT ALMOST EQUAL TO -->
+<!ENTITY ncong "&#x02247;" ><!--NEITHER APPROXIMATELY NOR ACTUALLY EQUAL TO -->
+<!ENTITY nequiv "&#x02262;" ><!--NOT IDENTICAL TO -->
+<!ENTITY ngE "&#x02267;&#x00338;" ><!--GREATER-THAN OVER EQUAL TO with slash -->
+<!ENTITY nge "&#x02271;" ><!--NEITHER GREATER-THAN NOR EQUAL TO -->
+<!ENTITY nges "&#x02A7E;&#x00338;" ><!--GREATER-THAN OR SLANTED EQUAL TO with slash -->
+<!ENTITY ngt "&#x0226F;" ><!--NOT GREATER-THAN -->
+<!ENTITY nlE "&#x02266;&#x00338;" ><!--LESS-THAN OVER EQUAL TO with slash -->
+<!ENTITY nle "&#x02270;" ><!--NEITHER LESS-THAN NOR EQUAL TO -->
+<!ENTITY nles "&#x02A7D;&#x00338;" ><!--LESS-THAN OR SLANTED EQUAL TO with slash -->
+<!ENTITY nlt "&#x0226E;" ><!--NOT LESS-THAN -->
+<!ENTITY nltri "&#x022EA;" ><!--NOT NORMAL SUBGROUP OF -->
+<!ENTITY nltrie "&#x022EC;" ><!--NOT NORMAL SUBGROUP OF OR EQUAL TO -->
+<!ENTITY nmid "&#x02224;" ><!--DOES NOT DIVIDE -->
+<!ENTITY npar "&#x02226;" ><!--NOT PARALLEL TO -->
+<!ENTITY npr "&#x02280;" ><!--DOES NOT PRECEDE -->
+<!ENTITY npre "&#x02AAF;&#x00338;" ><!--PRECEDES ABOVE SINGLE-LINE EQUALS SIGN with slash -->
+<!ENTITY nrtri "&#x022EB;" ><!--DOES NOT CONTAIN AS NORMAL SUBGROUP -->
+<!ENTITY nrtrie "&#x022ED;" ><!--DOES NOT CONTAIN AS NORMAL SUBGROUP OR EQUAL -->
+<!ENTITY nsc "&#x02281;" ><!--DOES NOT SUCCEED -->
+<!ENTITY nsce "&#x02AB0;&#x00338;" ><!--SUCCEEDS ABOVE SINGLE-LINE EQUALS SIGN with slash -->
+<!ENTITY nsim "&#x02241;" ><!--NOT TILDE -->
+<!ENTITY nsime "&#x02244;" ><!--NOT ASYMPTOTICALLY EQUAL TO -->
+<!ENTITY nsmid "&#x02224;" ><!--DOES NOT DIVIDE -->
+<!ENTITY nspar "&#x02226;" ><!--NOT PARALLEL TO -->
+<!ENTITY nsub "&#x02284;" ><!--NOT A SUBSET OF -->
+<!ENTITY nsubE "&#x02AC5;&#x00338;" ><!--SUBSET OF ABOVE EQUALS SIGN with slash -->
+<!ENTITY nsube "&#x02288;" ><!--NEITHER A SUBSET OF NOR EQUAL TO -->
+<!ENTITY nsup "&#x02285;" ><!--NOT A SUPERSET OF -->
+<!ENTITY nsupE "&#x02AC6;&#x00338;" ><!--SUPERSET OF ABOVE EQUALS SIGN with slash -->
+<!ENTITY nsupe "&#x02289;" ><!--NEITHER A SUPERSET OF NOR EQUAL TO -->
+<!ENTITY nVDash "&#x022AF;" ><!--NEGATED DOUBLE VERTICAL BAR DOUBLE RIGHT TURNSTILE -->
+<!ENTITY nVdash "&#x022AE;" ><!--DOES NOT FORCE -->
+<!ENTITY nvDash "&#x022AD;" ><!--NOT TRUE -->
+<!ENTITY nvdash "&#x022AC;" ><!--DOES NOT PROVE -->
+<!ENTITY prnap "&#x02AB9;" ><!--PRECEDES ABOVE NOT ALMOST EQUAL TO -->
+<!ENTITY prnE "&#x02AB5;" ><!--PRECEDES ABOVE NOT EQUAL TO -->
+<!ENTITY prnsim "&#x022E8;" ><!--PRECEDES BUT NOT EQUIVALENT TO -->
+<!ENTITY scnap "&#x02ABA;" ><!--SUCCEEDS ABOVE NOT ALMOST EQUAL TO -->
+<!ENTITY scnE "&#x02AB6;" ><!--SUCCEEDS ABOVE NOT EQUAL TO -->
+<!ENTITY scnsim "&#x022E9;" ><!--SUCCEEDS BUT NOT EQUIVALENT TO -->
+<!ENTITY subnE "&#x02ACB;" ><!--SUBSET OF ABOVE NOT EQUAL TO -->
+<!ENTITY subne "&#x0228A;" ><!--SUBSET OF WITH NOT EQUAL TO -->
+<!ENTITY supnE "&#x02ACC;" ><!--SUPERSET OF ABOVE NOT EQUAL TO -->
+<!ENTITY supne "&#x0228B;" ><!--SUPERSET OF WITH NOT EQUAL TO -->
+<!ENTITY vsubnE "&#x02ACB;&#x0FE00;" ><!--SUBSET OF ABOVE NOT EQUAL TO - variant with stroke through bottom members -->
+<!ENTITY vsubne "&#x0228A;&#x0FE00;" ><!--SUBSET OF WITH NOT EQUAL TO - variant with stroke through bottom members -->
+<!ENTITY vsupnE "&#x02ACC;&#x0FE00;" ><!--SUPERSET OF ABOVE NOT EQUAL TO - variant with stroke through bottom members -->
+<!ENTITY vsupne "&#x0228B;&#x0FE00;" ><!--SUPERSET OF WITH NOT EQUAL TO - variant with stroke through bottom members -->
diff --git a/doc/editor_configs/serna/scons/dtd/ent/isoamso.ent b/doc/editor_configs/serna/scons/dtd/ent/isoamso.ent
new file mode 100644
index 0000000..1802e6e
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/ent/isoamso.ent
@@ -0,0 +1,59 @@
+
+<!--
+ File isoamso.ent produced by the XSL script entities.xsl
+ from input data in unicode.xml.
+
+ Please report any errors to David Carlisle
+ via the public W3C list www-math@w3.org.
+
+ The numeric character values assigned to each entity
+ (should) match the Unicode assignments in Unicode 4.0.
+
+ Entity names in this file are derived from files carrying the
+ following notice:
+
+ (C) International Organization for Standardization 1986
+ Permission to copy in any form is granted for use with
+ conforming SGML systems and applications as defined in
+ ISO 8879, provided this notice is included in all copies.
+
+-->
+
+
+<!--
+ Version: $Id: isoamso.ent,v 1.1 2009-03-30 14:59:35 sorin Exp $
+
+ Public identifier: ISO 8879:1986//ENTITIES Added Math Symbols: Ordinary//EN//XML
+ System identifier: http://www.w3.org/2003/entities/iso8879/isoamso.ent
+
+ The public identifier should always be used verbatim.
+ The system identifier may be changed to suit local requirements.
+
+ Typical invocation:
+
+ <!ENTITY % isoamso PUBLIC
+ "ISO 8879:1986//ENTITIES Added Math Symbols: Ordinary//EN//XML"
+ "http://www.w3.org/2003/entities/iso8879/isoamso.ent"
+ >
+ %isoamso;
+
+-->
+
+<!ENTITY ang "&#x02220;" ><!--ANGLE -->
+<!ENTITY angmsd "&#x02221;" ><!--MEASURED ANGLE -->
+<!ENTITY beth "&#x02136;" ><!--BET SYMBOL -->
+<!ENTITY bprime "&#x02035;" ><!--REVERSED PRIME -->
+<!ENTITY comp "&#x02201;" ><!--COMPLEMENT -->
+<!ENTITY daleth "&#x02138;" ><!--DALET SYMBOL -->
+<!ENTITY ell "&#x02113;" ><!--SCRIPT SMALL L -->
+<!ENTITY empty "&#x02205;" ><!--EMPTY SET -->
+<!ENTITY gimel "&#x02137;" ><!--GIMEL SYMBOL -->
+<!ENTITY inodot "&#x00131;" ><!--LATIN SMALL LETTER DOTLESS I -->
+<!ENTITY jnodot "&#x0006A;" ><!--LATIN SMALL LETTER J -->
+<!ENTITY nexist "&#x02204;" ><!--THERE DOES NOT EXIST -->
+<!ENTITY oS "&#x024C8;" ><!--CIRCLED LATIN CAPITAL LETTER S -->
+<!ENTITY planck "&#x0210F;" ><!--PLANCK CONSTANT OVER TWO PI -->
+<!ENTITY real "&#x0211C;" ><!--BLACK-LETTER CAPITAL R -->
+<!ENTITY sbsol "&#x0FE68;" ><!--SMALL REVERSE SOLIDUS -->
+<!ENTITY vprime "&#x02032;" ><!--PRIME -->
+<!ENTITY weierp "&#x02118;" ><!--SCRIPT CAPITAL P -->
diff --git a/doc/editor_configs/serna/scons/dtd/ent/isoamsr.ent b/doc/editor_configs/serna/scons/dtd/ent/isoamsr.ent
new file mode 100644
index 0000000..9040833
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/ent/isoamsr.ent
@@ -0,0 +1,125 @@
+
+<!--
+ File isoamsr.ent produced by the XSL script entities.xsl
+ from input data in unicode.xml.
+
+ Please report any errors to David Carlisle
+ via the public W3C list www-math@w3.org.
+
+ The numeric character values assigned to each entity
+ (should) match the Unicode assignments in Unicode 4.0.
+
+ Entity names in this file are derived from files carrying the
+ following notice:
+
+ (C) International Organization for Standardization 1986
+ Permission to copy in any form is granted for use with
+ conforming SGML systems and applications as defined in
+ ISO 8879, provided this notice is included in all copies.
+
+-->
+
+
+<!--
+ Version: $Id: isoamsr.ent,v 1.1 2009-03-30 14:59:35 sorin Exp $
+
+ Public identifier: ISO 8879:1986//ENTITIES Added Math Symbols: Relations//EN//XML
+ System identifier: http://www.w3.org/2003/entities/iso8879/isoamsr.ent
+
+ The public identifier should always be used verbatim.
+ The system identifier may be changed to suit local requirements.
+
+ Typical invocation:
+
+ <!ENTITY % isoamsr PUBLIC
+ "ISO 8879:1986//ENTITIES Added Math Symbols: Relations//EN//XML"
+ "http://www.w3.org/2003/entities/iso8879/isoamsr.ent"
+ >
+ %isoamsr;
+
+-->
+
+<!ENTITY ape "&#x0224A;" ><!--ALMOST EQUAL OR EQUAL TO -->
+<!ENTITY asymp "&#x02248;" ><!--ALMOST EQUAL TO -->
+<!ENTITY bcong "&#x0224C;" ><!--ALL EQUAL TO -->
+<!ENTITY bepsi "&#x003F6;" ><!--GREEK REVERSED LUNATE EPSILON SYMBOL -->
+<!ENTITY bowtie "&#x022C8;" ><!--BOWTIE -->
+<!ENTITY bsim "&#x0223D;" ><!--REVERSED TILDE -->
+<!ENTITY bsime "&#x022CD;" ><!--REVERSED TILDE EQUALS -->
+<!ENTITY bump "&#x0224E;" ><!--GEOMETRICALLY EQUIVALENT TO -->
+<!ENTITY bumpe "&#x0224F;" ><!--DIFFERENCE BETWEEN -->
+<!ENTITY cire "&#x02257;" ><!--RING EQUAL TO -->
+<!ENTITY colone "&#x02254;" ><!--COLON EQUALS -->
+<!ENTITY cuepr "&#x022DE;" ><!--EQUAL TO OR PRECEDES -->
+<!ENTITY cuesc "&#x022DF;" ><!--EQUAL TO OR SUCCEEDS -->
+<!ENTITY cupre "&#x0227C;" ><!--PRECEDES OR EQUAL TO -->
+<!ENTITY dashv "&#x022A3;" ><!--LEFT TACK -->
+<!ENTITY ecir "&#x02256;" ><!--RING IN EQUAL TO -->
+<!ENTITY ecolon "&#x02255;" ><!--EQUALS COLON -->
+<!ENTITY eDot "&#x02251;" ><!--GEOMETRICALLY EQUAL TO -->
+<!ENTITY efDot "&#x02252;" ><!--APPROXIMATELY EQUAL TO OR THE IMAGE OF -->
+<!ENTITY egs "&#x02A96;" ><!--SLANTED EQUAL TO OR GREATER-THAN -->
+<!ENTITY els "&#x02A95;" ><!--SLANTED EQUAL TO OR LESS-THAN -->
+<!ENTITY erDot "&#x02253;" ><!--IMAGE OF OR APPROXIMATELY EQUAL TO -->
+<!ENTITY esdot "&#x02250;" ><!--APPROACHES THE LIMIT -->
+<!ENTITY fork "&#x022D4;" ><!--PITCHFORK -->
+<!ENTITY frown "&#x02322;" ><!--FROWN -->
+<!ENTITY gap "&#x02A86;" ><!--GREATER-THAN OR APPROXIMATE -->
+<!ENTITY gE "&#x02267;" ><!--GREATER-THAN OVER EQUAL TO -->
+<!ENTITY gEl "&#x02A8C;" ><!--GREATER-THAN ABOVE DOUBLE-LINE EQUAL ABOVE LESS-THAN -->
+<!ENTITY gel "&#x022DB;" ><!--GREATER-THAN EQUAL TO OR LESS-THAN -->
+<!ENTITY ges "&#x02A7E;" ><!--GREATER-THAN OR SLANTED EQUAL TO -->
+<!ENTITY Gg "&#x022D9;" ><!--VERY MUCH GREATER-THAN -->
+<!ENTITY gl "&#x02277;" ><!--GREATER-THAN OR LESS-THAN -->
+<!ENTITY gsdot "&#x022D7;" ><!--GREATER-THAN WITH DOT -->
+<!ENTITY gsim "&#x02273;" ><!--GREATER-THAN OR EQUIVALENT TO -->
+<!ENTITY Gt "&#x0226B;" ><!--MUCH GREATER-THAN -->
+<!ENTITY lap "&#x02A85;" ><!--LESS-THAN OR APPROXIMATE -->
+<!ENTITY ldot "&#x022D6;" ><!--LESS-THAN WITH DOT -->
+<!ENTITY lE "&#x02266;" ><!--LESS-THAN OVER EQUAL TO -->
+<!ENTITY lEg "&#x02A8B;" ><!--LESS-THAN ABOVE DOUBLE-LINE EQUAL ABOVE GREATER-THAN -->
+<!ENTITY leg "&#x022DA;" ><!--LESS-THAN EQUAL TO OR GREATER-THAN -->
+<!ENTITY les "&#x02A7D;" ><!--LESS-THAN OR SLANTED EQUAL TO -->
+<!ENTITY lg "&#x02276;" ><!--LESS-THAN OR GREATER-THAN -->
+<!ENTITY Ll "&#x022D8;" ><!--VERY MUCH LESS-THAN -->
+<!ENTITY lsim "&#x02272;" ><!--LESS-THAN OR EQUIVALENT TO -->
+<!ENTITY Lt "&#x0226A;" ><!--MUCH LESS-THAN -->
+<!ENTITY ltrie "&#x022B4;" ><!--NORMAL SUBGROUP OF OR EQUAL TO -->
+<!ENTITY mid "&#x02223;" ><!--DIVIDES -->
+<!ENTITY models "&#x022A7;" ><!--MODELS -->
+<!ENTITY pr "&#x0227A;" ><!--PRECEDES -->
+<!ENTITY prap "&#x02AB7;" ><!--PRECEDES ABOVE ALMOST EQUAL TO -->
+<!ENTITY pre "&#x02AAF;" ><!--PRECEDES ABOVE SINGLE-LINE EQUALS SIGN -->
+<!ENTITY prsim "&#x0227E;" ><!--PRECEDES OR EQUIVALENT TO -->
+<!ENTITY rtrie "&#x022B5;" ><!--CONTAINS AS NORMAL SUBGROUP OR EQUAL TO -->
+<!ENTITY samalg "&#x02210;" ><!--N-ARY COPRODUCT -->
+<!ENTITY sc "&#x0227B;" ><!--SUCCEEDS -->
+<!ENTITY scap "&#x02AB8;" ><!--SUCCEEDS ABOVE ALMOST EQUAL TO -->
+<!ENTITY sccue "&#x0227D;" ><!--SUCCEEDS OR EQUAL TO -->
+<!ENTITY sce "&#x02AB0;" ><!--SUCCEEDS ABOVE SINGLE-LINE EQUALS SIGN -->
+<!ENTITY scsim "&#x0227F;" ><!--SUCCEEDS OR EQUIVALENT TO -->
+<!ENTITY sfrown "&#x02322;" ><!--FROWN -->
+<!ENTITY smid "&#x02223;" ><!--DIVIDES -->
+<!ENTITY smile "&#x02323;" ><!--SMILE -->
+<!ENTITY spar "&#x02225;" ><!--PARALLEL TO -->
+<!ENTITY sqsub "&#x0228F;" ><!--SQUARE IMAGE OF -->
+<!ENTITY sqsube "&#x02291;" ><!--SQUARE IMAGE OF OR EQUAL TO -->
+<!ENTITY sqsup "&#x02290;" ><!--SQUARE ORIGINAL OF -->
+<!ENTITY sqsupe "&#x02292;" ><!--SQUARE ORIGINAL OF OR EQUAL TO -->
+<!ENTITY ssmile "&#x02323;" ><!--SMILE -->
+<!ENTITY Sub "&#x022D0;" ><!--DOUBLE SUBSET -->
+<!ENTITY subE "&#x02AC5;" ><!--SUBSET OF ABOVE EQUALS SIGN -->
+<!ENTITY Sup "&#x022D1;" ><!--DOUBLE SUPERSET -->
+<!ENTITY supE "&#x02AC6;" ><!--SUPERSET OF ABOVE EQUALS SIGN -->
+<!ENTITY thkap "&#x02248;" ><!--ALMOST EQUAL TO -->
+<!ENTITY thksim "&#x0223C;" ><!--TILDE OPERATOR -->
+<!ENTITY trie "&#x0225C;" ><!--DELTA EQUAL TO -->
+<!ENTITY twixt "&#x0226C;" ><!--BETWEEN -->
+<!ENTITY Vdash "&#x022A9;" ><!--FORCES -->
+<!ENTITY vDash "&#x022A8;" ><!--TRUE -->
+<!ENTITY vdash "&#x022A2;" ><!--RIGHT TACK -->
+<!ENTITY veebar "&#x022BB;" ><!--XOR -->
+<!ENTITY vltri "&#x022B2;" ><!--NORMAL SUBGROUP OF -->
+<!ENTITY vprop "&#x0221D;" ><!--PROPORTIONAL TO -->
+<!ENTITY vrtri "&#x022B3;" ><!--CONTAINS AS NORMAL SUBGROUP -->
+<!ENTITY Vvdash "&#x022AA;" ><!--TRIPLE VERTICAL BAR RIGHT TURNSTILE -->
diff --git a/doc/editor_configs/serna/scons/dtd/ent/isobox.ent b/doc/editor_configs/serna/scons/dtd/ent/isobox.ent
new file mode 100644
index 0000000..a365add
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/ent/isobox.ent
@@ -0,0 +1,81 @@
+
+<!--
+ File isobox.ent produced by the XSL script entities.xsl
+ from input data in unicode.xml.
+
+ Please report any errors to David Carlisle
+ via the public W3C list www-math@w3.org.
+
+ The numeric character values assigned to each entity
+ (should) match the Unicode assignments in Unicode 4.0.
+
+ Entity names in this file are derived from files carrying the
+ following notice:
+
+ (C) International Organization for Standardization 1986
+ Permission to copy in any form is granted for use with
+ conforming SGML systems and applications as defined in
+ ISO 8879, provided this notice is included in all copies.
+
+-->
+
+
+<!--
+ Version: $Id: isobox.ent,v 1.1 2009-03-30 14:59:35 sorin Exp $
+
+ Public identifier: ISO 8879:1986//ENTITIES Box and Line Drawing//EN//XML
+ System identifier: http://www.w3.org/2003/entities/iso8879/isobox.ent
+
+ The public identifier should always be used verbatim.
+ The system identifier may be changed to suit local requirements.
+
+ Typical invocation:
+
+ <!ENTITY % isobox PUBLIC
+ "ISO 8879:1986//ENTITIES Box and Line Drawing//EN//XML"
+ "http://www.w3.org/2003/entities/iso8879/isobox.ent"
+ >
+ %isobox;
+
+-->
+
+<!ENTITY boxDL "&#x02557;" ><!--BOX DRAWINGS DOUBLE DOWN AND LEFT -->
+<!ENTITY boxDl "&#x02556;" ><!--BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE -->
+<!ENTITY boxdL "&#x02555;" ><!--BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE -->
+<!ENTITY boxdl "&#x02510;" ><!--BOX DRAWINGS LIGHT DOWN AND LEFT -->
+<!ENTITY boxDR "&#x02554;" ><!--BOX DRAWINGS DOUBLE DOWN AND RIGHT -->
+<!ENTITY boxDr "&#x02553;" ><!--BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE -->
+<!ENTITY boxdR "&#x02552;" ><!--BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE -->
+<!ENTITY boxdr "&#x0250C;" ><!--BOX DRAWINGS LIGHT DOWN AND RIGHT -->
+<!ENTITY boxH "&#x02550;" ><!--BOX DRAWINGS DOUBLE HORIZONTAL -->
+<!ENTITY boxh "&#x02500;" ><!--BOX DRAWINGS LIGHT HORIZONTAL -->
+<!ENTITY boxHD "&#x02566;" ><!--BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL -->
+<!ENTITY boxHd "&#x02564;" ><!--BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE -->
+<!ENTITY boxhD "&#x02565;" ><!--BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE -->
+<!ENTITY boxhd "&#x0252C;" ><!--BOX DRAWINGS LIGHT DOWN AND HORIZONTAL -->
+<!ENTITY boxHU "&#x02569;" ><!--BOX DRAWINGS DOUBLE UP AND HORIZONTAL -->
+<!ENTITY boxHu "&#x02567;" ><!--BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE -->
+<!ENTITY boxhU "&#x02568;" ><!--BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE -->
+<!ENTITY boxhu "&#x02534;" ><!--BOX DRAWINGS LIGHT UP AND HORIZONTAL -->
+<!ENTITY boxUL "&#x0255D;" ><!--BOX DRAWINGS DOUBLE UP AND LEFT -->
+<!ENTITY boxUl "&#x0255C;" ><!--BOX DRAWINGS UP DOUBLE AND LEFT SINGLE -->
+<!ENTITY boxuL "&#x0255B;" ><!--BOX DRAWINGS UP SINGLE AND LEFT DOUBLE -->
+<!ENTITY boxul "&#x02518;" ><!--BOX DRAWINGS LIGHT UP AND LEFT -->
+<!ENTITY boxUR "&#x0255A;" ><!--BOX DRAWINGS DOUBLE UP AND RIGHT -->
+<!ENTITY boxUr "&#x02559;" ><!--BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE -->
+<!ENTITY boxuR "&#x02558;" ><!--BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE -->
+<!ENTITY boxur "&#x02514;" ><!--BOX DRAWINGS LIGHT UP AND RIGHT -->
+<!ENTITY boxV "&#x02551;" ><!--BOX DRAWINGS DOUBLE VERTICAL -->
+<!ENTITY boxv "&#x02502;" ><!--BOX DRAWINGS LIGHT VERTICAL -->
+<!ENTITY boxVH "&#x0256C;" ><!--BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL -->
+<!ENTITY boxVh "&#x0256B;" ><!--BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE -->
+<!ENTITY boxvH "&#x0256A;" ><!--BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE -->
+<!ENTITY boxvh "&#x0253C;" ><!--BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL -->
+<!ENTITY boxVL "&#x02563;" ><!--BOX DRAWINGS DOUBLE VERTICAL AND LEFT -->
+<!ENTITY boxVl "&#x02562;" ><!--BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE -->
+<!ENTITY boxvL "&#x02561;" ><!--BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE -->
+<!ENTITY boxvl "&#x02524;" ><!--BOX DRAWINGS LIGHT VERTICAL AND LEFT -->
+<!ENTITY boxVR "&#x02560;" ><!--BOX DRAWINGS DOUBLE VERTICAL AND RIGHT -->
+<!ENTITY boxVr "&#x0255F;" ><!--BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE -->
+<!ENTITY boxvR "&#x0255E;" ><!--BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE -->
+<!ENTITY boxvr "&#x0251C;" ><!--BOX DRAWINGS LIGHT VERTICAL AND RIGHT -->
diff --git a/doc/editor_configs/serna/scons/dtd/ent/isocyr1.ent b/doc/editor_configs/serna/scons/dtd/ent/isocyr1.ent
new file mode 100644
index 0000000..8da3cfb
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/ent/isocyr1.ent
@@ -0,0 +1,108 @@
+
+<!--
+ File isocyr1.ent produced by the XSL script entities.xsl
+ from input data in unicode.xml.
+
+ Please report any errors to David Carlisle
+ via the public W3C list www-math@w3.org.
+
+ The numeric character values assigned to each entity
+ (should) match the Unicode assignments in Unicode 4.0.
+
+ Entity names in this file are derived from files carrying the
+ following notice:
+
+ (C) International Organization for Standardization 1986
+ Permission to copy in any form is granted for use with
+ conforming SGML systems and applications as defined in
+ ISO 8879, provided this notice is included in all copies.
+
+-->
+
+
+<!--
+ Version: $Id: isocyr1.ent,v 1.1 2009-03-30 14:59:35 sorin Exp $
+
+ Public identifier: ISO 8879:1986//ENTITIES Russian Cyrillic//EN//XML
+ System identifier: http://www.w3.org/2003/entities/iso8879/isocyr1.ent
+
+ The public identifier should always be used verbatim.
+ The system identifier may be changed to suit local requirements.
+
+ Typical invocation:
+
+ <!ENTITY % isocyr1 PUBLIC
+ "ISO 8879:1986//ENTITIES Russian Cyrillic//EN//XML"
+ "http://www.w3.org/2003/entities/iso8879/isocyr1.ent"
+ >
+ %isocyr1;
+
+-->
+
+<!ENTITY Acy "&#x00410;" ><!--CYRILLIC CAPITAL LETTER A -->
+<!ENTITY acy "&#x00430;" ><!--CYRILLIC SMALL LETTER A -->
+<!ENTITY Bcy "&#x00411;" ><!--CYRILLIC CAPITAL LETTER BE -->
+<!ENTITY bcy "&#x00431;" ><!--CYRILLIC SMALL LETTER BE -->
+<!ENTITY CHcy "&#x00427;" ><!--CYRILLIC CAPITAL LETTER CHE -->
+<!ENTITY chcy "&#x00447;" ><!--CYRILLIC SMALL LETTER CHE -->
+<!ENTITY Dcy "&#x00414;" ><!--CYRILLIC CAPITAL LETTER DE -->
+<!ENTITY dcy "&#x00434;" ><!--CYRILLIC SMALL LETTER DE -->
+<!ENTITY Ecy "&#x0042D;" ><!--CYRILLIC CAPITAL LETTER E -->
+<!ENTITY ecy "&#x0044D;" ><!--CYRILLIC SMALL LETTER E -->
+<!ENTITY Fcy "&#x00424;" ><!--CYRILLIC CAPITAL LETTER EF -->
+<!ENTITY fcy "&#x00444;" ><!--CYRILLIC SMALL LETTER EF -->
+<!ENTITY Gcy "&#x00413;" ><!--CYRILLIC CAPITAL LETTER GHE -->
+<!ENTITY gcy "&#x00433;" ><!--CYRILLIC SMALL LETTER GHE -->
+<!ENTITY HARDcy "&#x0042A;" ><!--CYRILLIC CAPITAL LETTER HARD SIGN -->
+<!ENTITY hardcy "&#x0044A;" ><!--CYRILLIC SMALL LETTER HARD SIGN -->
+<!ENTITY Icy "&#x00418;" ><!--CYRILLIC CAPITAL LETTER I -->
+<!ENTITY icy "&#x00438;" ><!--CYRILLIC SMALL LETTER I -->
+<!ENTITY IEcy "&#x00415;" ><!--CYRILLIC CAPITAL LETTER IE -->
+<!ENTITY iecy "&#x00435;" ><!--CYRILLIC SMALL LETTER IE -->
+<!ENTITY IOcy "&#x00401;" ><!--CYRILLIC CAPITAL LETTER IO -->
+<!ENTITY iocy "&#x00451;" ><!--CYRILLIC SMALL LETTER IO -->
+<!ENTITY Jcy "&#x00419;" ><!--CYRILLIC CAPITAL LETTER SHORT I -->
+<!ENTITY jcy "&#x00439;" ><!--CYRILLIC SMALL LETTER SHORT I -->
+<!ENTITY Kcy "&#x0041A;" ><!--CYRILLIC CAPITAL LETTER KA -->
+<!ENTITY kcy "&#x0043A;" ><!--CYRILLIC SMALL LETTER KA -->
+<!ENTITY KHcy "&#x00425;" ><!--CYRILLIC CAPITAL LETTER HA -->
+<!ENTITY khcy "&#x00445;" ><!--CYRILLIC SMALL LETTER HA -->
+<!ENTITY Lcy "&#x0041B;" ><!--CYRILLIC CAPITAL LETTER EL -->
+<!ENTITY lcy "&#x0043B;" ><!--CYRILLIC SMALL LETTER EL -->
+<!ENTITY Mcy "&#x0041C;" ><!--CYRILLIC CAPITAL LETTER EM -->
+<!ENTITY mcy "&#x0043C;" ><!--CYRILLIC SMALL LETTER EM -->
+<!ENTITY Ncy "&#x0041D;" ><!--CYRILLIC CAPITAL LETTER EN -->
+<!ENTITY ncy "&#x0043D;" ><!--CYRILLIC SMALL LETTER EN -->
+<!ENTITY numero "&#x02116;" ><!--NUMERO SIGN -->
+<!ENTITY Ocy "&#x0041E;" ><!--CYRILLIC CAPITAL LETTER O -->
+<!ENTITY ocy "&#x0043E;" ><!--CYRILLIC SMALL LETTER O -->
+<!ENTITY Pcy "&#x0041F;" ><!--CYRILLIC CAPITAL LETTER PE -->
+<!ENTITY pcy "&#x0043F;" ><!--CYRILLIC SMALL LETTER PE -->
+<!ENTITY Rcy "&#x00420;" ><!--CYRILLIC CAPITAL LETTER ER -->
+<!ENTITY rcy "&#x00440;" ><!--CYRILLIC SMALL LETTER ER -->
+<!ENTITY Scy "&#x00421;" ><!--CYRILLIC CAPITAL LETTER ES -->
+<!ENTITY scy "&#x00441;" ><!--CYRILLIC SMALL LETTER ES -->
+<!ENTITY SHCHcy "&#x00429;" ><!--CYRILLIC CAPITAL LETTER SHCHA -->
+<!ENTITY shchcy "&#x00449;" ><!--CYRILLIC SMALL LETTER SHCHA -->
+<!ENTITY SHcy "&#x00428;" ><!--CYRILLIC CAPITAL LETTER SHA -->
+<!ENTITY shcy "&#x00448;" ><!--CYRILLIC SMALL LETTER SHA -->
+<!ENTITY SOFTcy "&#x0042C;" ><!--CYRILLIC CAPITAL LETTER SOFT SIGN -->
+<!ENTITY softcy "&#x0044C;" ><!--CYRILLIC SMALL LETTER SOFT SIGN -->
+<!ENTITY Tcy "&#x00422;" ><!--CYRILLIC CAPITAL LETTER TE -->
+<!ENTITY tcy "&#x00442;" ><!--CYRILLIC SMALL LETTER TE -->
+<!ENTITY TScy "&#x00426;" ><!--CYRILLIC CAPITAL LETTER TSE -->
+<!ENTITY tscy "&#x00446;" ><!--CYRILLIC SMALL LETTER TSE -->
+<!ENTITY Ucy "&#x00423;" ><!--CYRILLIC CAPITAL LETTER U -->
+<!ENTITY ucy "&#x00443;" ><!--CYRILLIC SMALL LETTER U -->
+<!ENTITY Vcy "&#x00412;" ><!--CYRILLIC CAPITAL LETTER VE -->
+<!ENTITY vcy "&#x00432;" ><!--CYRILLIC SMALL LETTER VE -->
+<!ENTITY YAcy "&#x0042F;" ><!--CYRILLIC CAPITAL LETTER YA -->
+<!ENTITY yacy "&#x0044F;" ><!--CYRILLIC SMALL LETTER YA -->
+<!ENTITY Ycy "&#x0042B;" ><!--CYRILLIC CAPITAL LETTER YERU -->
+<!ENTITY ycy "&#x0044B;" ><!--CYRILLIC SMALL LETTER YERU -->
+<!ENTITY YUcy "&#x0042E;" ><!--CYRILLIC CAPITAL LETTER YU -->
+<!ENTITY yucy "&#x0044E;" ><!--CYRILLIC SMALL LETTER YU -->
+<!ENTITY Zcy "&#x00417;" ><!--CYRILLIC CAPITAL LETTER ZE -->
+<!ENTITY zcy "&#x00437;" ><!--CYRILLIC SMALL LETTER ZE -->
+<!ENTITY ZHcy "&#x00416;" ><!--CYRILLIC CAPITAL LETTER ZHE -->
+<!ENTITY zhcy "&#x00436;" ><!--CYRILLIC SMALL LETTER ZHE -->
diff --git a/doc/editor_configs/serna/scons/dtd/ent/isocyr2.ent b/doc/editor_configs/serna/scons/dtd/ent/isocyr2.ent
new file mode 100644
index 0000000..00f869d
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/ent/isocyr2.ent
@@ -0,0 +1,67 @@
+
+<!--
+ File isocyr2.ent produced by the XSL script entities.xsl
+ from input data in unicode.xml.
+
+ Please report any errors to David Carlisle
+ via the public W3C list www-math@w3.org.
+
+ The numeric character values assigned to each entity
+ (should) match the Unicode assignments in Unicode 4.0.
+
+ Entity names in this file are derived from files carrying the
+ following notice:
+
+ (C) International Organization for Standardization 1986
+ Permission to copy in any form is granted for use with
+ conforming SGML systems and applications as defined in
+ ISO 8879, provided this notice is included in all copies.
+
+-->
+
+
+<!--
+ Version: $Id: isocyr2.ent,v 1.1 2009-03-30 14:59:35 sorin Exp $
+
+ Public identifier: ISO 8879:1986//ENTITIES Non-Russian Cyrillic//EN//XML
+ System identifier: http://www.w3.org/2003/entities/iso8879/isocyr2.ent
+
+ The public identifier should always be used verbatim.
+ The system identifier may be changed to suit local requirements.
+
+ Typical invocation:
+
+ <!ENTITY % isocyr2 PUBLIC
+ "ISO 8879:1986//ENTITIES Non-Russian Cyrillic//EN//XML"
+ "http://www.w3.org/2003/entities/iso8879/isocyr2.ent"
+ >
+ %isocyr2;
+
+-->
+
+<!ENTITY DJcy "&#x00402;" ><!--CYRILLIC CAPITAL LETTER DJE -->
+<!ENTITY djcy "&#x00452;" ><!--CYRILLIC SMALL LETTER DJE -->
+<!ENTITY DScy "&#x00405;" ><!--CYRILLIC CAPITAL LETTER DZE -->
+<!ENTITY dscy "&#x00455;" ><!--CYRILLIC SMALL LETTER DZE -->
+<!ENTITY DZcy "&#x0040F;" ><!--CYRILLIC CAPITAL LETTER DZHE -->
+<!ENTITY dzcy "&#x0045F;" ><!--CYRILLIC SMALL LETTER DZHE -->
+<!ENTITY GJcy "&#x00403;" ><!--CYRILLIC CAPITAL LETTER GJE -->
+<!ENTITY gjcy "&#x00453;" ><!--CYRILLIC SMALL LETTER GJE -->
+<!ENTITY Iukcy "&#x00406;" ><!--CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I -->
+<!ENTITY iukcy "&#x00456;" ><!--CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I -->
+<!ENTITY Jsercy "&#x00408;" ><!--CYRILLIC CAPITAL LETTER JE -->
+<!ENTITY jsercy "&#x00458;" ><!--CYRILLIC SMALL LETTER JE -->
+<!ENTITY Jukcy "&#x00404;" ><!--CYRILLIC CAPITAL LETTER UKRAINIAN IE -->
+<!ENTITY jukcy "&#x00454;" ><!--CYRILLIC SMALL LETTER UKRAINIAN IE -->
+<!ENTITY KJcy "&#x0040C;" ><!--CYRILLIC CAPITAL LETTER KJE -->
+<!ENTITY kjcy "&#x0045C;" ><!--CYRILLIC SMALL LETTER KJE -->
+<!ENTITY LJcy "&#x00409;" ><!--CYRILLIC CAPITAL LETTER LJE -->
+<!ENTITY ljcy "&#x00459;" ><!--CYRILLIC SMALL LETTER LJE -->
+<!ENTITY NJcy "&#x0040A;" ><!--CYRILLIC CAPITAL LETTER NJE -->
+<!ENTITY njcy "&#x0045A;" ><!--CYRILLIC SMALL LETTER NJE -->
+<!ENTITY TSHcy "&#x0040B;" ><!--CYRILLIC CAPITAL LETTER TSHE -->
+<!ENTITY tshcy "&#x0045B;" ><!--CYRILLIC SMALL LETTER TSHE -->
+<!ENTITY Ubrcy "&#x0040E;" ><!--CYRILLIC CAPITAL LETTER SHORT U -->
+<!ENTITY ubrcy "&#x0045E;" ><!--CYRILLIC SMALL LETTER SHORT U -->
+<!ENTITY YIcy "&#x00407;" ><!--CYRILLIC CAPITAL LETTER YI -->
+<!ENTITY yicy "&#x00457;" ><!--CYRILLIC SMALL LETTER YI -->
diff --git a/doc/editor_configs/serna/scons/dtd/ent/isodia.ent b/doc/editor_configs/serna/scons/dtd/ent/isodia.ent
new file mode 100644
index 0000000..b70c4bf
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/ent/isodia.ent
@@ -0,0 +1,55 @@
+
+<!--
+ File isodia.ent produced by the XSL script entities.xsl
+ from input data in unicode.xml.
+
+ Please report any errors to David Carlisle
+ via the public W3C list www-math@w3.org.
+
+ The numeric character values assigned to each entity
+ (should) match the Unicode assignments in Unicode 4.0.
+
+ Entity names in this file are derived from files carrying the
+ following notice:
+
+ (C) International Organization for Standardization 1986
+ Permission to copy in any form is granted for use with
+ conforming SGML systems and applications as defined in
+ ISO 8879, provided this notice is included in all copies.
+
+-->
+
+
+<!--
+ Version: $Id: isodia.ent,v 1.1 2009-03-30 14:59:35 sorin Exp $
+
+ Public identifier: ISO 8879:1986//ENTITIES Diacritical Marks//EN//XML
+ System identifier: http://www.w3.org/2003/entities/iso8879/isodia.ent
+
+ The public identifier should always be used verbatim.
+ The system identifier may be changed to suit local requirements.
+
+ Typical invocation:
+
+ <!ENTITY % isodia PUBLIC
+ "ISO 8879:1986//ENTITIES Diacritical Marks//EN//XML"
+ "http://www.w3.org/2003/entities/iso8879/isodia.ent"
+ >
+ %isodia;
+
+-->
+
+<!ENTITY acute "&#x000B4;" ><!--ACUTE ACCENT -->
+<!ENTITY breve "&#x002D8;" ><!--BREVE -->
+<!ENTITY caron "&#x002C7;" ><!--CARON -->
+<!ENTITY cedil "&#x000B8;" ><!--CEDILLA -->
+<!ENTITY circ "&#x002C6;" ><!--MODIFIER LETTER CIRCUMFLEX ACCENT -->
+<!ENTITY dblac "&#x002DD;" ><!--DOUBLE ACUTE ACCENT -->
+<!ENTITY die "&#x000A8;" ><!--DIAERESIS -->
+<!ENTITY dot "&#x002D9;" ><!--DOT ABOVE -->
+<!ENTITY grave "&#x00060;" ><!--GRAVE ACCENT -->
+<!ENTITY macr "&#x000AF;" ><!--MACRON -->
+<!ENTITY ogon "&#x002DB;" ><!--OGONEK -->
+<!ENTITY ring "&#x002DA;" ><!--RING ABOVE -->
+<!ENTITY tilde "&#x002DC;" ><!--SMALL TILDE -->
+<!ENTITY uml "&#x000A8;" ><!--DIAERESIS -->
diff --git a/doc/editor_configs/serna/scons/dtd/ent/isogrk1.ent b/doc/editor_configs/serna/scons/dtd/ent/isogrk1.ent
new file mode 100644
index 0000000..c1d7d81
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/ent/isogrk1.ent
@@ -0,0 +1,90 @@
+
+<!--
+ File isogrk1.ent produced by the XSL script entities.xsl
+ from input data in unicode.xml.
+
+ Please report any errors to David Carlisle
+ via the public W3C list www-math@w3.org.
+
+ The numeric character values assigned to each entity
+ (should) match the Unicode assignments in Unicode 4.0.
+
+ Entity names in this file are derived from files carrying the
+ following notice:
+
+ (C) International Organization for Standardization 1986
+ Permission to copy in any form is granted for use with
+ conforming SGML systems and applications as defined in
+ ISO 8879, provided this notice is included in all copies.
+
+-->
+
+
+<!--
+ Version: $Id: isogrk1.ent,v 1.1 2009-03-30 14:59:35 sorin Exp $
+
+ Public identifier: ISO 8879:1986//ENTITIES Greek Letters//EN//XML
+ System identifier: http://www.w3.org/2003/entities/iso8879/isogrk1.ent
+
+ The public identifier should always be used verbatim.
+ The system identifier may be changed to suit local requirements.
+
+ Typical invocation:
+
+ <!ENTITY % isogrk1 PUBLIC
+ "ISO 8879:1986//ENTITIES Greek Letters//EN//XML"
+ "http://www.w3.org/2003/entities/iso8879/isogrk1.ent"
+ >
+ %isogrk1;
+
+-->
+
+<!ENTITY Agr "&#x00391;" ><!--GREEK CAPITAL LETTER ALPHA -->
+<!ENTITY agr "&#x003B1;" ><!--GREEK SMALL LETTER ALPHA -->
+<!ENTITY Bgr "&#x00392;" ><!--GREEK CAPITAL LETTER BETA -->
+<!ENTITY bgr "&#x003B2;" ><!--GREEK SMALL LETTER BETA -->
+<!ENTITY Dgr "&#x00394;" ><!--GREEK CAPITAL LETTER DELTA -->
+<!ENTITY dgr "&#x003B4;" ><!--GREEK SMALL LETTER DELTA -->
+<!ENTITY EEgr "&#x00397;" ><!--GREEK CAPITAL LETTER ETA -->
+<!ENTITY eegr "&#x003B7;" ><!--GREEK SMALL LETTER ETA -->
+<!ENTITY Egr "&#x00395;" ><!--GREEK CAPITAL LETTER EPSILON -->
+<!ENTITY egr "&#x003B5;" ><!--GREEK SMALL LETTER EPSILON -->
+<!ENTITY Ggr "&#x00393;" ><!--GREEK CAPITAL LETTER GAMMA -->
+<!ENTITY ggr "&#x003B3;" ><!--GREEK SMALL LETTER GAMMA -->
+<!ENTITY Igr "&#x00399;" ><!--GREEK CAPITAL LETTER IOTA -->
+<!ENTITY igr "&#x003B9;" ><!--GREEK SMALL LETTER IOTA -->
+<!ENTITY Kgr "&#x0039A;" ><!--GREEK CAPITAL LETTER KAPPA -->
+<!ENTITY kgr "&#x003BA;" ><!--GREEK SMALL LETTER KAPPA -->
+<!ENTITY KHgr "&#x003A7;" ><!--GREEK CAPITAL LETTER CHI -->
+<!ENTITY khgr "&#x003C7;" ><!--GREEK SMALL LETTER CHI -->
+<!ENTITY Lgr "&#x0039B;" ><!--GREEK CAPITAL LETTER LAMDA -->
+<!ENTITY lgr "&#x003BB;" ><!--GREEK SMALL LETTER LAMDA -->
+<!ENTITY Mgr "&#x0039C;" ><!--GREEK CAPITAL LETTER MU -->
+<!ENTITY mgr "&#x003BC;" ><!--GREEK SMALL LETTER MU -->
+<!ENTITY Ngr "&#x0039D;" ><!--GREEK CAPITAL LETTER NU -->
+<!ENTITY ngr "&#x003BD;" ><!--GREEK SMALL LETTER NU -->
+<!ENTITY Ogr "&#x0039F;" ><!--GREEK CAPITAL LETTER OMICRON -->
+<!ENTITY ogr "&#x003BF;" ><!--GREEK SMALL LETTER OMICRON -->
+<!ENTITY OHgr "&#x003A9;" ><!--GREEK CAPITAL LETTER OMEGA -->
+<!ENTITY ohgr "&#x003C9;" ><!--GREEK SMALL LETTER OMEGA -->
+<!ENTITY Pgr "&#x003A0;" ><!--GREEK CAPITAL LETTER PI -->
+<!ENTITY pgr "&#x003C0;" ><!--GREEK SMALL LETTER PI -->
+<!ENTITY PHgr "&#x003A6;" ><!--GREEK CAPITAL LETTER PHI -->
+<!ENTITY phgr "&#x003C6;" ><!--GREEK SMALL LETTER PHI -->
+<!ENTITY PSgr "&#x003A8;" ><!--GREEK CAPITAL LETTER PSI -->
+<!ENTITY psgr "&#x003C8;" ><!--GREEK SMALL LETTER PSI -->
+<!ENTITY Rgr "&#x003A1;" ><!--GREEK CAPITAL LETTER RHO -->
+<!ENTITY rgr "&#x003C1;" ><!--GREEK SMALL LETTER RHO -->
+<!ENTITY sfgr "&#x003C2;" ><!--GREEK SMALL LETTER FINAL SIGMA -->
+<!ENTITY Sgr "&#x003A3;" ><!--GREEK CAPITAL LETTER SIGMA -->
+<!ENTITY sgr "&#x003C3;" ><!--GREEK SMALL LETTER SIGMA -->
+<!ENTITY Tgr "&#x003A4;" ><!--GREEK CAPITAL LETTER TAU -->
+<!ENTITY tgr "&#x003C4;" ><!--GREEK SMALL LETTER TAU -->
+<!ENTITY THgr "&#x00398;" ><!--GREEK CAPITAL LETTER THETA -->
+<!ENTITY thgr "&#x003B8;" ><!--GREEK SMALL LETTER THETA -->
+<!ENTITY Ugr "&#x003A5;" ><!--GREEK CAPITAL LETTER UPSILON -->
+<!ENTITY ugr "&#x003C5;" ><!--GREEK SMALL LETTER UPSILON -->
+<!ENTITY Xgr "&#x0039E;" ><!--GREEK CAPITAL LETTER XI -->
+<!ENTITY xgr "&#x003BE;" ><!--GREEK SMALL LETTER XI -->
+<!ENTITY Zgr "&#x00396;" ><!--GREEK CAPITAL LETTER ZETA -->
+<!ENTITY zgr "&#x003B6;" ><!--GREEK SMALL LETTER ZETA -->
diff --git a/doc/editor_configs/serna/scons/dtd/ent/isogrk2.ent b/doc/editor_configs/serna/scons/dtd/ent/isogrk2.ent
new file mode 100644
index 0000000..1874082
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/ent/isogrk2.ent
@@ -0,0 +1,61 @@
+
+<!--
+ File isogrk2.ent produced by the XSL script entities.xsl
+ from input data in unicode.xml.
+
+ Please report any errors to David Carlisle
+ via the public W3C list www-math@w3.org.
+
+ The numeric character values assigned to each entity
+ (should) match the Unicode assignments in Unicode 4.0.
+
+ Entity names in this file are derived from files carrying the
+ following notice:
+
+ (C) International Organization for Standardization 1986
+ Permission to copy in any form is granted for use with
+ conforming SGML systems and applications as defined in
+ ISO 8879, provided this notice is included in all copies.
+
+-->
+
+
+<!--
+ Version: $Id: isogrk2.ent,v 1.1 2009-03-30 14:59:35 sorin Exp $
+
+ Public identifier: ISO 8879:1986//ENTITIES Monotoniko Greek//EN//XML
+ System identifier: http://www.w3.org/2003/entities/iso8879/isogrk2.ent
+
+ The public identifier should always be used verbatim.
+ The system identifier may be changed to suit local requirements.
+
+ Typical invocation:
+
+ <!ENTITY % isogrk2 PUBLIC
+ "ISO 8879:1986//ENTITIES Monotoniko Greek//EN//XML"
+ "http://www.w3.org/2003/entities/iso8879/isogrk2.ent"
+ >
+ %isogrk2;
+
+-->
+
+<!ENTITY Aacgr "&#x00386;" ><!--GREEK CAPITAL LETTER ALPHA WITH TONOS -->
+<!ENTITY aacgr "&#x003AC;" ><!--GREEK SMALL LETTER ALPHA WITH TONOS -->
+<!ENTITY Eacgr "&#x00388;" ><!--GREEK CAPITAL LETTER EPSILON WITH TONOS -->
+<!ENTITY eacgr "&#x003AD;" ><!--GREEK SMALL LETTER EPSILON WITH TONOS -->
+<!ENTITY EEacgr "&#x00389;" ><!--GREEK CAPITAL LETTER ETA WITH TONOS -->
+<!ENTITY eeacgr "&#x003AE;" ><!--GREEK SMALL LETTER ETA WITH TONOS -->
+<!ENTITY Iacgr "&#x0038A;" ><!--GREEK CAPITAL LETTER IOTA WITH TONOS -->
+<!ENTITY iacgr "&#x003AF;" ><!--GREEK SMALL LETTER IOTA WITH TONOS -->
+<!ENTITY idiagr "&#x00390;" ><!--GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS -->
+<!ENTITY Idigr "&#x003AA;" ><!--GREEK CAPITAL LETTER IOTA WITH DIALYTIKA -->
+<!ENTITY idigr "&#x003CA;" ><!--GREEK SMALL LETTER IOTA WITH DIALYTIKA -->
+<!ENTITY Oacgr "&#x0038C;" ><!--GREEK CAPITAL LETTER OMICRON WITH TONOS -->
+<!ENTITY oacgr "&#x003CC;" ><!--GREEK SMALL LETTER OMICRON WITH TONOS -->
+<!ENTITY OHacgr "&#x0038F;" ><!--GREEK CAPITAL LETTER OMEGA WITH TONOS -->
+<!ENTITY ohacgr "&#x003CE;" ><!--GREEK SMALL LETTER OMEGA WITH TONOS -->
+<!ENTITY Uacgr "&#x0038E;" ><!--GREEK CAPITAL LETTER UPSILON WITH TONOS -->
+<!ENTITY uacgr "&#x003CD;" ><!--GREEK SMALL LETTER UPSILON WITH TONOS -->
+<!ENTITY udiagr "&#x003B0;" ><!--GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS -->
+<!ENTITY Udigr "&#x003AB;" ><!--GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA -->
+<!ENTITY udigr "&#x003CB;" ><!--GREEK SMALL LETTER UPSILON WITH DIALYTIKA -->
diff --git a/doc/editor_configs/serna/scons/dtd/ent/isogrk3.ent b/doc/editor_configs/serna/scons/dtd/ent/isogrk3.ent
new file mode 100644
index 0000000..7fdb12b
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/ent/isogrk3.ent
@@ -0,0 +1,84 @@
+
+<!--
+ File isogrk3.ent produced by the XSL script entities.xsl
+ from input data in unicode.xml.
+
+ Please report any errors to David Carlisle
+ via the public W3C list www-math@w3.org.
+
+ The numeric character values assigned to each entity
+ (should) match the Unicode assignments in Unicode 4.0.
+
+ Entity names in this file are derived from files carrying the
+ following notice:
+
+ (C) International Organization for Standardization 1986
+ Permission to copy in any form is granted for use with
+ conforming SGML systems and applications as defined in
+ ISO 8879, provided this notice is included in all copies.
+
+-->
+
+
+<!--
+ Version: $Id: isogrk3.ent,v 1.1 2009-03-30 14:59:35 sorin Exp $
+
+ Public identifier: ISO 8879:1986//ENTITIES Greek Symbols//EN//XML
+ System identifier: http://www.w3.org/2003/entities/iso8879/isogrk3.ent
+
+ The public identifier should always be used verbatim.
+ The system identifier may be changed to suit local requirements.
+
+ Typical invocation:
+
+ <!ENTITY % isogrk3 PUBLIC
+ "ISO 8879:1986//ENTITIES Greek Symbols//EN//XML"
+ "http://www.w3.org/2003/entities/iso8879/isogrk3.ent"
+ >
+ %isogrk3;
+
+-->
+
+<!ENTITY alpha "&#x003B1;" ><!--GREEK SMALL LETTER ALPHA -->
+<!ENTITY beta "&#x003B2;" ><!--GREEK SMALL LETTER BETA -->
+<!ENTITY chi "&#x003C7;" ><!--GREEK SMALL LETTER CHI -->
+<!ENTITY Delta "&#x00394;" ><!--GREEK CAPITAL LETTER DELTA -->
+<!ENTITY delta "&#x003B4;" ><!--GREEK SMALL LETTER DELTA -->
+<!ENTITY epsi "&#x003F5;" ><!--GREEK LUNATE EPSILON SYMBOL -->
+<!ENTITY epsis "&#x003F5;" ><!--GREEK LUNATE EPSILON SYMBOL -->
+<!ENTITY epsiv "&#x003B5;" ><!--GREEK SMALL LETTER EPSILON -->
+<!ENTITY eta "&#x003B7;" ><!--GREEK SMALL LETTER ETA -->
+<!ENTITY Gamma "&#x00393;" ><!--GREEK CAPITAL LETTER GAMMA -->
+<!ENTITY gamma "&#x003B3;" ><!--GREEK SMALL LETTER GAMMA -->
+<!ENTITY gammad "&#x003DD;" ><!--GREEK SMALL LETTER DIGAMMA -->
+<!ENTITY iota "&#x003B9;" ><!--GREEK SMALL LETTER IOTA -->
+<!ENTITY kappa "&#x003BA;" ><!--GREEK SMALL LETTER KAPPA -->
+<!ENTITY kappav "&#x003F0;" ><!--GREEK KAPPA SYMBOL -->
+<!ENTITY Lambda "&#x0039B;" ><!--GREEK CAPITAL LETTER LAMDA -->
+<!ENTITY lambda "&#x003BB;" ><!--GREEK SMALL LETTER LAMDA -->
+<!ENTITY mu "&#x003BC;" ><!--GREEK SMALL LETTER MU -->
+<!ENTITY nu "&#x003BD;" ><!--GREEK SMALL LETTER NU -->
+<!ENTITY Omega "&#x003A9;" ><!--GREEK CAPITAL LETTER OMEGA -->
+<!ENTITY omega "&#x003C9;" ><!--GREEK SMALL LETTER OMEGA -->
+<!ENTITY Phi "&#x003A6;" ><!--GREEK CAPITAL LETTER PHI -->
+<!ENTITY phis "&#x003D5;" ><!--GREEK PHI SYMBOL -->
+<!ENTITY phiv "&#x003C6;" ><!--GREEK SMALL LETTER PHI -->
+<!ENTITY Pi "&#x003A0;" ><!--GREEK CAPITAL LETTER PI -->
+<!ENTITY pi "&#x003C0;" ><!--GREEK SMALL LETTER PI -->
+<!ENTITY piv "&#x003D6;" ><!--GREEK PI SYMBOL -->
+<!ENTITY Psi "&#x003A8;" ><!--GREEK CAPITAL LETTER PSI -->
+<!ENTITY psi "&#x003C8;" ><!--GREEK SMALL LETTER PSI -->
+<!ENTITY rho "&#x003C1;" ><!--GREEK SMALL LETTER RHO -->
+<!ENTITY rhov "&#x003F1;" ><!--GREEK RHO SYMBOL -->
+<!ENTITY Sigma "&#x003A3;" ><!--GREEK CAPITAL LETTER SIGMA -->
+<!ENTITY sigma "&#x003C3;" ><!--GREEK SMALL LETTER SIGMA -->
+<!ENTITY sigmav "&#x003C2;" ><!--GREEK SMALL LETTER FINAL SIGMA -->
+<!ENTITY tau "&#x003C4;" ><!--GREEK SMALL LETTER TAU -->
+<!ENTITY Theta "&#x00398;" ><!--GREEK CAPITAL LETTER THETA -->
+<!ENTITY thetas "&#x003B8;" ><!--GREEK SMALL LETTER THETA -->
+<!ENTITY thetav "&#x003D1;" ><!--GREEK THETA SYMBOL -->
+<!ENTITY Upsi "&#x003D2;" ><!--GREEK UPSILON WITH HOOK SYMBOL -->
+<!ENTITY upsi "&#x003C5;" ><!--GREEK SMALL LETTER UPSILON -->
+<!ENTITY Xi "&#x0039E;" ><!--GREEK CAPITAL LETTER XI -->
+<!ENTITY xi "&#x003BE;" ><!--GREEK SMALL LETTER XI -->
+<!ENTITY zeta "&#x003B6;" ><!--GREEK SMALL LETTER ZETA -->
diff --git a/doc/editor_configs/serna/scons/dtd/ent/isogrk4.ent b/doc/editor_configs/serna/scons/dtd/ent/isogrk4.ent
new file mode 100644
index 0000000..7ee90d9
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/ent/isogrk4.ent
@@ -0,0 +1,85 @@
+<!-- ...................................................................... -->
+<!-- ISO Alternative Greek Symbols Entities V0.3 .......................... -->
+<!-- File iso-grk4.ent .................................................... -->
+
+<!-- Copyright (C) 2001, 2002 Organization for the Advancement of Structured
+ Information Standards (OASIS).
+
+ $Id: iso-grk4.ent,v 1.2 2002/06/13 17:39:20 nwalsh Exp $
+
+ Permission to use, copy, modify and distribute this entity set
+ 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 entities for any purpose. It is provided "as is" without
+ expressed or implied warranty.
+
+ 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/.
+
+ Derived, in part, from:
+
+ * iso-grk4.gml
+
+ Copyright (C) 1986 International Organization for Standardization
+ Permission to copy in any form is granted for use with
+ conforming SGML systems and applications as defined in
+ ISO 8879, provided this notice is included in all copies.
+
+ * http://www.tug.org/applications/jadetex/unicode.xml
+
+ * ftp://ftp.unicode.org/Public/MAPPINGS/VENDORS/MISC/SGML.TXT
+
+ Please use the following formal public identifier to identify it:
+
+ ISO 8879:1986//ENTITIES Alternative Greek Symbols//EN//XML
+-->
+
+<!ENTITY b.alpha "&#x03B1;"> <!-- -->
+<!ENTITY b.beta "&#x03B2;"> <!-- GREEK SMALL LETTER BETA -->
+<!ENTITY b.gamma "&#x03B3;"> <!-- GREEK SMALL LETTER GAMMA -->
+<!ENTITY b.Gamma "&#x0393;"> <!-- GREEK CAPITAL LETTER GAMMA -->
+<!ENTITY b.gammad "&#x03DC;"> <!-- GREEK LETTER DIGAMMA -->
+<!ENTITY b.delta "&#x03B4;"> <!-- GREEK SMALL LETTER DELTA -->
+<!ENTITY b.Delta "&#x0394;"> <!-- GREEK CAPITAL LETTER DELTA -->
+<!ENTITY b.epsi "&#x03B5;"> <!-- -->
+<!ENTITY b.epsiv "&#x03B5;"> <!-- -->
+<!ENTITY b.epsis "&#x03B5;"> <!-- -->
+<!ENTITY b.zeta "&#x03B6;"> <!-- GREEK SMALL LETTER ZETA -->
+<!ENTITY b.eta "&#x03B7;"> <!-- GREEK SMALL LETTER ETA -->
+<!ENTITY b.thetas "&#x03B8;"> <!-- -->
+<!ENTITY b.Theta "&#x0398;"> <!-- GREEK CAPITAL LETTER THETA -->
+<!ENTITY b.thetav "&#x03D1;"> <!-- -->
+<!ENTITY b.iota "&#x03B9;"> <!-- GREEK SMALL LETTER IOTA -->
+<!ENTITY b.kappa "&#x03BA;"> <!-- GREEK SMALL LETTER KAPPA -->
+<!ENTITY b.kappav "&#x03F0;"> <!-- GREEK KAPPA SYMBOL -->
+<!ENTITY b.lambda "&#x03BB;"> <!-- GREEK SMALL LETTER LAMDA -->
+<!ENTITY b.Lambda "&#x039B;"> <!-- GREEK CAPITAL LETTER LAMDA -->
+<!ENTITY b.mu "&#x03BC;"> <!-- GREEK SMALL LETTER MU -->
+<!ENTITY b.nu "&#x03BD;"> <!-- GREEK SMALL LETTER NU -->
+<!ENTITY b.xi "&#x03BE;"> <!-- GREEK SMALL LETTER XI -->
+<!ENTITY b.Xi "&#x039E;"> <!-- GREEK CAPITAL LETTER XI -->
+<!ENTITY b.pi "&#x03C0;"> <!-- GREEK SMALL LETTER PI -->
+<!ENTITY b.Pi "&#x03A0;"> <!-- GREEK CAPITAL LETTER PI -->
+<!ENTITY b.piv "&#x03D6;"> <!-- GREEK PI SYMBOL -->
+<!ENTITY b.rho "&#x03C1;"> <!-- GREEK SMALL LETTER RHO -->
+<!ENTITY b.rhov "&#x03F1;"> <!-- GREEK RHO SYMBOL -->
+<!ENTITY b.sigma "&#x03C3;"> <!-- GREEK SMALL LETTER SIGMA -->
+<!ENTITY b.Sigma "&#x03A3;"> <!-- GREEK CAPITAL LETTER SIGMA -->
+<!ENTITY b.sigmav "&#x03C2;"> <!-- -->
+<!ENTITY b.tau "&#x03C4;"> <!-- GREEK SMALL LETTER TAU -->
+<!ENTITY b.upsi "&#x03C5;"> <!-- GREEK SMALL LETTER UPSILON -->
+<!ENTITY b.Upsi "&#x03D2;"> <!-- -->
+<!ENTITY b.phis "&#x03C6;"> <!-- GREEK SMALL LETTER PHI -->
+<!ENTITY b.Phi "&#x03A6;"> <!-- GREEK CAPITAL LETTER PHI -->
+<!ENTITY b.phiv "&#x03D5;"> <!-- GREEK PHI SYMBOL -->
+<!ENTITY b.chi "&#x03C7;"> <!-- GREEK SMALL LETTER CHI -->
+<!ENTITY b.psi "&#x03C8;"> <!-- GREEK SMALL LETTER PSI -->
+<!ENTITY b.Psi "&#x03A8;"> <!-- GREEK CAPITAL LETTER PSI -->
+<!ENTITY b.omega "&#x03C9;"> <!-- GREEK SMALL LETTER OMEGA -->
+<!ENTITY b.Omega "&#x03A9;"> <!-- GREEK CAPITAL LETTER OMEGA -->
+
+<!-- End of ISO Alternative Greek Symbols Entities V0.3 ................... -->
+<!-- ...................................................................... -->
diff --git a/doc/editor_configs/serna/scons/dtd/ent/isolat1.ent b/doc/editor_configs/serna/scons/dtd/ent/isolat1.ent
new file mode 100644
index 0000000..93508f0
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/ent/isolat1.ent
@@ -0,0 +1,103 @@
+
+<!--
+ File isolat1.ent produced by the XSL script entities.xsl
+ from input data in unicode.xml.
+
+ Please report any errors to David Carlisle
+ via the public W3C list www-math@w3.org.
+
+ The numeric character values assigned to each entity
+ (should) match the Unicode assignments in Unicode 4.0.
+
+ Entity names in this file are derived from files carrying the
+ following notice:
+
+ (C) International Organization for Standardization 1986
+ Permission to copy in any form is granted for use with
+ conforming SGML systems and applications as defined in
+ ISO 8879, provided this notice is included in all copies.
+
+-->
+
+
+<!--
+ Version: $Id: isolat1.ent,v 1.1 2009-03-30 14:59:35 sorin Exp $
+
+ Public identifier: ISO 8879:1986//ENTITIES Added Latin 1//EN//XML
+ System identifier: http://www.w3.org/2003/entities/iso8879/isolat1.ent
+
+ The public identifier should always be used verbatim.
+ The system identifier may be changed to suit local requirements.
+
+ Typical invocation:
+
+ <!ENTITY % isolat1 PUBLIC
+ "ISO 8879:1986//ENTITIES Added Latin 1//EN//XML"
+ "http://www.w3.org/2003/entities/iso8879/isolat1.ent"
+ >
+ %isolat1;
+
+-->
+
+<!ENTITY Aacute "&#x000C1;" ><!--LATIN CAPITAL LETTER A WITH ACUTE -->
+<!ENTITY aacute "&#x000E1;" ><!--LATIN SMALL LETTER A WITH ACUTE -->
+<!ENTITY Acirc "&#x000C2;" ><!--LATIN CAPITAL LETTER A WITH CIRCUMFLEX -->
+<!ENTITY acirc "&#x000E2;" ><!--LATIN SMALL LETTER A WITH CIRCUMFLEX -->
+<!ENTITY AElig "&#x000C6;" ><!--LATIN CAPITAL LETTER AE -->
+<!ENTITY aelig "&#x000E6;" ><!--LATIN SMALL LETTER AE -->
+<!ENTITY Agrave "&#x000C0;" ><!--LATIN CAPITAL LETTER A WITH GRAVE -->
+<!ENTITY agrave "&#x000E0;" ><!--LATIN SMALL LETTER A WITH GRAVE -->
+<!ENTITY Aring "&#x000C5;" ><!--LATIN CAPITAL LETTER A WITH RING ABOVE -->
+<!ENTITY aring "&#x000E5;" ><!--LATIN SMALL LETTER A WITH RING ABOVE -->
+<!ENTITY Atilde "&#x000C3;" ><!--LATIN CAPITAL LETTER A WITH TILDE -->
+<!ENTITY atilde "&#x000E3;" ><!--LATIN SMALL LETTER A WITH TILDE -->
+<!ENTITY Auml "&#x000C4;" ><!--LATIN CAPITAL LETTER A WITH DIAERESIS -->
+<!ENTITY auml "&#x000E4;" ><!--LATIN SMALL LETTER A WITH DIAERESIS -->
+<!ENTITY Ccedil "&#x000C7;" ><!--LATIN CAPITAL LETTER C WITH CEDILLA -->
+<!ENTITY ccedil "&#x000E7;" ><!--LATIN SMALL LETTER C WITH CEDILLA -->
+<!ENTITY Eacute "&#x000C9;" ><!--LATIN CAPITAL LETTER E WITH ACUTE -->
+<!ENTITY eacute "&#x000E9;" ><!--LATIN SMALL LETTER E WITH ACUTE -->
+<!ENTITY Ecirc "&#x000CA;" ><!--LATIN CAPITAL LETTER E WITH CIRCUMFLEX -->
+<!ENTITY ecirc "&#x000EA;" ><!--LATIN SMALL LETTER E WITH CIRCUMFLEX -->
+<!ENTITY Egrave "&#x000C8;" ><!--LATIN CAPITAL LETTER E WITH GRAVE -->
+<!ENTITY egrave "&#x000E8;" ><!--LATIN SMALL LETTER E WITH GRAVE -->
+<!ENTITY ETH "&#x000D0;" ><!--LATIN CAPITAL LETTER ETH -->
+<!ENTITY eth "&#x000F0;" ><!--LATIN SMALL LETTER ETH -->
+<!ENTITY Euml "&#x000CB;" ><!--LATIN CAPITAL LETTER E WITH DIAERESIS -->
+<!ENTITY euml "&#x000EB;" ><!--LATIN SMALL LETTER E WITH DIAERESIS -->
+<!ENTITY Iacute "&#x000CD;" ><!--LATIN CAPITAL LETTER I WITH ACUTE -->
+<!ENTITY iacute "&#x000ED;" ><!--LATIN SMALL LETTER I WITH ACUTE -->
+<!ENTITY Icirc "&#x000CE;" ><!--LATIN CAPITAL LETTER I WITH CIRCUMFLEX -->
+<!ENTITY icirc "&#x000EE;" ><!--LATIN SMALL LETTER I WITH CIRCUMFLEX -->
+<!ENTITY Igrave "&#x000CC;" ><!--LATIN CAPITAL LETTER I WITH GRAVE -->
+<!ENTITY igrave "&#x000EC;" ><!--LATIN SMALL LETTER I WITH GRAVE -->
+<!ENTITY Iuml "&#x000CF;" ><!--LATIN CAPITAL LETTER I WITH DIAERESIS -->
+<!ENTITY iuml "&#x000EF;" ><!--LATIN SMALL LETTER I WITH DIAERESIS -->
+<!ENTITY Ntilde "&#x000D1;" ><!--LATIN CAPITAL LETTER N WITH TILDE -->
+<!ENTITY ntilde "&#x000F1;" ><!--LATIN SMALL LETTER N WITH TILDE -->
+<!ENTITY Oacute "&#x000D3;" ><!--LATIN CAPITAL LETTER O WITH ACUTE -->
+<!ENTITY oacute "&#x000F3;" ><!--LATIN SMALL LETTER O WITH ACUTE -->
+<!ENTITY Ocirc "&#x000D4;" ><!--LATIN CAPITAL LETTER O WITH CIRCUMFLEX -->
+<!ENTITY ocirc "&#x000F4;" ><!--LATIN SMALL LETTER O WITH CIRCUMFLEX -->
+<!ENTITY Ograve "&#x000D2;" ><!--LATIN CAPITAL LETTER O WITH GRAVE -->
+<!ENTITY ograve "&#x000F2;" ><!--LATIN SMALL LETTER O WITH GRAVE -->
+<!ENTITY Oslash "&#x000D8;" ><!--LATIN CAPITAL LETTER O WITH STROKE -->
+<!ENTITY oslash "&#x000F8;" ><!--LATIN SMALL LETTER O WITH STROKE -->
+<!ENTITY Otilde "&#x000D5;" ><!--LATIN CAPITAL LETTER O WITH TILDE -->
+<!ENTITY otilde "&#x000F5;" ><!--LATIN SMALL LETTER O WITH TILDE -->
+<!ENTITY Ouml "&#x000D6;" ><!--LATIN CAPITAL LETTER O WITH DIAERESIS -->
+<!ENTITY ouml "&#x000F6;" ><!--LATIN SMALL LETTER O WITH DIAERESIS -->
+<!ENTITY szlig "&#x000DF;" ><!--LATIN SMALL LETTER SHARP S -->
+<!ENTITY THORN "&#x000DE;" ><!--LATIN CAPITAL LETTER THORN -->
+<!ENTITY thorn "&#x000FE;" ><!--LATIN SMALL LETTER THORN -->
+<!ENTITY Uacute "&#x000DA;" ><!--LATIN CAPITAL LETTER U WITH ACUTE -->
+<!ENTITY uacute "&#x000FA;" ><!--LATIN SMALL LETTER U WITH ACUTE -->
+<!ENTITY Ucirc "&#x000DB;" ><!--LATIN CAPITAL LETTER U WITH CIRCUMFLEX -->
+<!ENTITY ucirc "&#x000FB;" ><!--LATIN SMALL LETTER U WITH CIRCUMFLEX -->
+<!ENTITY Ugrave "&#x000D9;" ><!--LATIN CAPITAL LETTER U WITH GRAVE -->
+<!ENTITY ugrave "&#x000F9;" ><!--LATIN SMALL LETTER U WITH GRAVE -->
+<!ENTITY Uuml "&#x000DC;" ><!--LATIN CAPITAL LETTER U WITH DIAERESIS -->
+<!ENTITY uuml "&#x000FC;" ><!--LATIN SMALL LETTER U WITH DIAERESIS -->
+<!ENTITY Yacute "&#x000DD;" ><!--LATIN CAPITAL LETTER Y WITH ACUTE -->
+<!ENTITY yacute "&#x000FD;" ><!--LATIN SMALL LETTER Y WITH ACUTE -->
+<!ENTITY yuml "&#x000FF;" ><!--LATIN SMALL LETTER Y WITH DIAERESIS -->
diff --git a/doc/editor_configs/serna/scons/dtd/ent/isolat2.ent b/doc/editor_configs/serna/scons/dtd/ent/isolat2.ent
new file mode 100644
index 0000000..89d87cd
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/ent/isolat2.ent
@@ -0,0 +1,162 @@
+
+<!--
+ File isolat2.ent produced by the XSL script entities.xsl
+ from input data in unicode.xml.
+
+ Please report any errors to David Carlisle
+ via the public W3C list www-math@w3.org.
+
+ The numeric character values assigned to each entity
+ (should) match the Unicode assignments in Unicode 4.0.
+
+ Entity names in this file are derived from files carrying the
+ following notice:
+
+ (C) International Organization for Standardization 1986
+ Permission to copy in any form is granted for use with
+ conforming SGML systems and applications as defined in
+ ISO 8879, provided this notice is included in all copies.
+
+-->
+
+
+<!--
+ Version: $Id: isolat2.ent,v 1.1 2009-03-30 14:59:35 sorin Exp $
+
+ Public identifier: ISO 8879:1986//ENTITIES Added Latin 2//EN//XML
+ System identifier: http://www.w3.org/2003/entities/iso8879/isolat2.ent
+
+ The public identifier should always be used verbatim.
+ The system identifier may be changed to suit local requirements.
+
+ Typical invocation:
+
+ <!ENTITY % isolat2 PUBLIC
+ "ISO 8879:1986//ENTITIES Added Latin 2//EN//XML"
+ "http://www.w3.org/2003/entities/iso8879/isolat2.ent"
+ >
+ %isolat2;
+
+-->
+
+<!ENTITY Abreve "&#x00102;" ><!--LATIN CAPITAL LETTER A WITH BREVE -->
+<!ENTITY abreve "&#x00103;" ><!--LATIN SMALL LETTER A WITH BREVE -->
+<!ENTITY Amacr "&#x00100;" ><!--LATIN CAPITAL LETTER A WITH MACRON -->
+<!ENTITY amacr "&#x00101;" ><!--LATIN SMALL LETTER A WITH MACRON -->
+<!ENTITY Aogon "&#x00104;" ><!--LATIN CAPITAL LETTER A WITH OGONEK -->
+<!ENTITY aogon "&#x00105;" ><!--LATIN SMALL LETTER A WITH OGONEK -->
+<!ENTITY Cacute "&#x00106;" ><!--LATIN CAPITAL LETTER C WITH ACUTE -->
+<!ENTITY cacute "&#x00107;" ><!--LATIN SMALL LETTER C WITH ACUTE -->
+<!ENTITY Ccaron "&#x0010C;" ><!--LATIN CAPITAL LETTER C WITH CARON -->
+<!ENTITY ccaron "&#x0010D;" ><!--LATIN SMALL LETTER C WITH CARON -->
+<!ENTITY Ccirc "&#x00108;" ><!--LATIN CAPITAL LETTER C WITH CIRCUMFLEX -->
+<!ENTITY ccirc "&#x00109;" ><!--LATIN SMALL LETTER C WITH CIRCUMFLEX -->
+<!ENTITY Cdot "&#x0010A;" ><!--LATIN CAPITAL LETTER C WITH DOT ABOVE -->
+<!ENTITY cdot "&#x0010B;" ><!--LATIN SMALL LETTER C WITH DOT ABOVE -->
+<!ENTITY Dcaron "&#x0010E;" ><!--LATIN CAPITAL LETTER D WITH CARON -->
+<!ENTITY dcaron "&#x0010F;" ><!--LATIN SMALL LETTER D WITH CARON -->
+<!ENTITY Dstrok "&#x00110;" ><!--LATIN CAPITAL LETTER D WITH STROKE -->
+<!ENTITY dstrok "&#x00111;" ><!--LATIN SMALL LETTER D WITH STROKE -->
+<!ENTITY Ecaron "&#x0011A;" ><!--LATIN CAPITAL LETTER E WITH CARON -->
+<!ENTITY ecaron "&#x0011B;" ><!--LATIN SMALL LETTER E WITH CARON -->
+<!ENTITY Edot "&#x00116;" ><!--LATIN CAPITAL LETTER E WITH DOT ABOVE -->
+<!ENTITY edot "&#x00117;" ><!--LATIN SMALL LETTER E WITH DOT ABOVE -->
+<!ENTITY Emacr "&#x00112;" ><!--LATIN CAPITAL LETTER E WITH MACRON -->
+<!ENTITY emacr "&#x00113;" ><!--LATIN SMALL LETTER E WITH MACRON -->
+<!ENTITY ENG "&#x0014A;" ><!--LATIN CAPITAL LETTER ENG -->
+<!ENTITY eng "&#x0014B;" ><!--LATIN SMALL LETTER ENG -->
+<!ENTITY Eogon "&#x00118;" ><!--LATIN CAPITAL LETTER E WITH OGONEK -->
+<!ENTITY eogon "&#x00119;" ><!--LATIN SMALL LETTER E WITH OGONEK -->
+<!ENTITY gacute "&#x001F5;" ><!--LATIN SMALL LETTER G WITH ACUTE -->
+<!ENTITY Gbreve "&#x0011E;" ><!--LATIN CAPITAL LETTER G WITH BREVE -->
+<!ENTITY gbreve "&#x0011F;" ><!--LATIN SMALL LETTER G WITH BREVE -->
+<!ENTITY Gcedil "&#x00122;" ><!--LATIN CAPITAL LETTER G WITH CEDILLA -->
+<!ENTITY Gcirc "&#x0011C;" ><!--LATIN CAPITAL LETTER G WITH CIRCUMFLEX -->
+<!ENTITY gcirc "&#x0011D;" ><!--LATIN SMALL LETTER G WITH CIRCUMFLEX -->
+<!ENTITY Gdot "&#x00120;" ><!--LATIN CAPITAL LETTER G WITH DOT ABOVE -->
+<!ENTITY gdot "&#x00121;" ><!--LATIN SMALL LETTER G WITH DOT ABOVE -->
+<!ENTITY Hcirc "&#x00124;" ><!--LATIN CAPITAL LETTER H WITH CIRCUMFLEX -->
+<!ENTITY hcirc "&#x00125;" ><!--LATIN SMALL LETTER H WITH CIRCUMFLEX -->
+<!ENTITY Hstrok "&#x00126;" ><!--LATIN CAPITAL LETTER H WITH STROKE -->
+<!ENTITY hstrok "&#x00127;" ><!--LATIN SMALL LETTER H WITH STROKE -->
+<!ENTITY Idot "&#x00130;" ><!--LATIN CAPITAL LETTER I WITH DOT ABOVE -->
+<!ENTITY IJlig "&#x00132;" ><!--LATIN CAPITAL LIGATURE IJ -->
+<!ENTITY ijlig "&#x00133;" ><!--LATIN SMALL LIGATURE IJ -->
+<!ENTITY Imacr "&#x0012A;" ><!--LATIN CAPITAL LETTER I WITH MACRON -->
+<!ENTITY imacr "&#x0012B;" ><!--LATIN SMALL LETTER I WITH MACRON -->
+<!ENTITY inodot "&#x00131;" ><!--LATIN SMALL LETTER DOTLESS I -->
+<!ENTITY Iogon "&#x0012E;" ><!--LATIN CAPITAL LETTER I WITH OGONEK -->
+<!ENTITY iogon "&#x0012F;" ><!--LATIN SMALL LETTER I WITH OGONEK -->
+<!ENTITY Itilde "&#x00128;" ><!--LATIN CAPITAL LETTER I WITH TILDE -->
+<!ENTITY itilde "&#x00129;" ><!--LATIN SMALL LETTER I WITH TILDE -->
+<!ENTITY Jcirc "&#x00134;" ><!--LATIN CAPITAL LETTER J WITH CIRCUMFLEX -->
+<!ENTITY jcirc "&#x00135;" ><!--LATIN SMALL LETTER J WITH CIRCUMFLEX -->
+<!ENTITY Kcedil "&#x00136;" ><!--LATIN CAPITAL LETTER K WITH CEDILLA -->
+<!ENTITY kcedil "&#x00137;" ><!--LATIN SMALL LETTER K WITH CEDILLA -->
+<!ENTITY kgreen "&#x00138;" ><!--LATIN SMALL LETTER KRA -->
+<!ENTITY Lacute "&#x00139;" ><!--LATIN CAPITAL LETTER L WITH ACUTE -->
+<!ENTITY lacute "&#x0013A;" ><!--LATIN SMALL LETTER L WITH ACUTE -->
+<!ENTITY Lcaron "&#x0013D;" ><!--LATIN CAPITAL LETTER L WITH CARON -->
+<!ENTITY lcaron "&#x0013E;" ><!--LATIN SMALL LETTER L WITH CARON -->
+<!ENTITY Lcedil "&#x0013B;" ><!--LATIN CAPITAL LETTER L WITH CEDILLA -->
+<!ENTITY lcedil "&#x0013C;" ><!--LATIN SMALL LETTER L WITH CEDILLA -->
+<!ENTITY Lmidot "&#x0013F;" ><!--LATIN CAPITAL LETTER L WITH MIDDLE DOT -->
+<!ENTITY lmidot "&#x00140;" ><!--LATIN SMALL LETTER L WITH MIDDLE DOT -->
+<!ENTITY Lstrok "&#x00141;" ><!--LATIN CAPITAL LETTER L WITH STROKE -->
+<!ENTITY lstrok "&#x00142;" ><!--LATIN SMALL LETTER L WITH STROKE -->
+<!ENTITY Nacute "&#x00143;" ><!--LATIN CAPITAL LETTER N WITH ACUTE -->
+<!ENTITY nacute "&#x00144;" ><!--LATIN SMALL LETTER N WITH ACUTE -->
+<!ENTITY napos "&#x00149;" ><!--LATIN SMALL LETTER N PRECEDED BY APOSTROPHE -->
+<!ENTITY Ncaron "&#x00147;" ><!--LATIN CAPITAL LETTER N WITH CARON -->
+<!ENTITY ncaron "&#x00148;" ><!--LATIN SMALL LETTER N WITH CARON -->
+<!ENTITY Ncedil "&#x00145;" ><!--LATIN CAPITAL LETTER N WITH CEDILLA -->
+<!ENTITY ncedil "&#x00146;" ><!--LATIN SMALL LETTER N WITH CEDILLA -->
+<!ENTITY Odblac "&#x00150;" ><!--LATIN CAPITAL LETTER O WITH DOUBLE ACUTE -->
+<!ENTITY odblac "&#x00151;" ><!--LATIN SMALL LETTER O WITH DOUBLE ACUTE -->
+<!ENTITY OElig "&#x00152;" ><!--LATIN CAPITAL LIGATURE OE -->
+<!ENTITY oelig "&#x00153;" ><!--LATIN SMALL LIGATURE OE -->
+<!ENTITY Omacr "&#x0014C;" ><!--LATIN CAPITAL LETTER O WITH MACRON -->
+<!ENTITY omacr "&#x0014D;" ><!--LATIN SMALL LETTER O WITH MACRON -->
+<!ENTITY Racute "&#x00154;" ><!--LATIN CAPITAL LETTER R WITH ACUTE -->
+<!ENTITY racute "&#x00155;" ><!--LATIN SMALL LETTER R WITH ACUTE -->
+<!ENTITY Rcaron "&#x00158;" ><!--LATIN CAPITAL LETTER R WITH CARON -->
+<!ENTITY rcaron "&#x00159;" ><!--LATIN SMALL LETTER R WITH CARON -->
+<!ENTITY Rcedil "&#x00156;" ><!--LATIN CAPITAL LETTER R WITH CEDILLA -->
+<!ENTITY rcedil "&#x00157;" ><!--LATIN SMALL LETTER R WITH CEDILLA -->
+<!ENTITY Sacute "&#x0015A;" ><!--LATIN CAPITAL LETTER S WITH ACUTE -->
+<!ENTITY sacute "&#x0015B;" ><!--LATIN SMALL LETTER S WITH ACUTE -->
+<!ENTITY Scaron "&#x00160;" ><!--LATIN CAPITAL LETTER S WITH CARON -->
+<!ENTITY scaron "&#x00161;" ><!--LATIN SMALL LETTER S WITH CARON -->
+<!ENTITY Scedil "&#x0015E;" ><!--LATIN CAPITAL LETTER S WITH CEDILLA -->
+<!ENTITY scedil "&#x0015F;" ><!--LATIN SMALL LETTER S WITH CEDILLA -->
+<!ENTITY Scirc "&#x0015C;" ><!--LATIN CAPITAL LETTER S WITH CIRCUMFLEX -->
+<!ENTITY scirc "&#x0015D;" ><!--LATIN SMALL LETTER S WITH CIRCUMFLEX -->
+<!ENTITY Tcaron "&#x00164;" ><!--LATIN CAPITAL LETTER T WITH CARON -->
+<!ENTITY tcaron "&#x00165;" ><!--LATIN SMALL LETTER T WITH CARON -->
+<!ENTITY Tcedil "&#x00162;" ><!--LATIN CAPITAL LETTER T WITH CEDILLA -->
+<!ENTITY tcedil "&#x00163;" ><!--LATIN SMALL LETTER T WITH CEDILLA -->
+<!ENTITY Tstrok "&#x00166;" ><!--LATIN CAPITAL LETTER T WITH STROKE -->
+<!ENTITY tstrok "&#x00167;" ><!--LATIN SMALL LETTER T WITH STROKE -->
+<!ENTITY Ubreve "&#x0016C;" ><!--LATIN CAPITAL LETTER U WITH BREVE -->
+<!ENTITY ubreve "&#x0016D;" ><!--LATIN SMALL LETTER U WITH BREVE -->
+<!ENTITY Udblac "&#x00170;" ><!--LATIN CAPITAL LETTER U WITH DOUBLE ACUTE -->
+<!ENTITY udblac "&#x00171;" ><!--LATIN SMALL LETTER U WITH DOUBLE ACUTE -->
+<!ENTITY Umacr "&#x0016A;" ><!--LATIN CAPITAL LETTER U WITH MACRON -->
+<!ENTITY umacr "&#x0016B;" ><!--LATIN SMALL LETTER U WITH MACRON -->
+<!ENTITY Uogon "&#x00172;" ><!--LATIN CAPITAL LETTER U WITH OGONEK -->
+<!ENTITY uogon "&#x00173;" ><!--LATIN SMALL LETTER U WITH OGONEK -->
+<!ENTITY Uring "&#x0016E;" ><!--LATIN CAPITAL LETTER U WITH RING ABOVE -->
+<!ENTITY uring "&#x0016F;" ><!--LATIN SMALL LETTER U WITH RING ABOVE -->
+<!ENTITY Utilde "&#x00168;" ><!--LATIN CAPITAL LETTER U WITH TILDE -->
+<!ENTITY utilde "&#x00169;" ><!--LATIN SMALL LETTER U WITH TILDE -->
+<!ENTITY Wcirc "&#x00174;" ><!--LATIN CAPITAL LETTER W WITH CIRCUMFLEX -->
+<!ENTITY wcirc "&#x00175;" ><!--LATIN SMALL LETTER W WITH CIRCUMFLEX -->
+<!ENTITY Ycirc "&#x00176;" ><!--LATIN CAPITAL LETTER Y WITH CIRCUMFLEX -->
+<!ENTITY ycirc "&#x00177;" ><!--LATIN SMALL LETTER Y WITH CIRCUMFLEX -->
+<!ENTITY Yuml "&#x00178;" ><!--LATIN CAPITAL LETTER Y WITH DIAERESIS -->
+<!ENTITY Zacute "&#x00179;" ><!--LATIN CAPITAL LETTER Z WITH ACUTE -->
+<!ENTITY zacute "&#x0017A;" ><!--LATIN SMALL LETTER Z WITH ACUTE -->
+<!ENTITY Zcaron "&#x0017D;" ><!--LATIN CAPITAL LETTER Z WITH CARON -->
+<!ENTITY zcaron "&#x0017E;" ><!--LATIN SMALL LETTER Z WITH CARON -->
+<!ENTITY Zdot "&#x0017B;" ><!--LATIN CAPITAL LETTER Z WITH DOT ABOVE -->
+<!ENTITY zdot "&#x0017C;" ><!--LATIN SMALL LETTER Z WITH DOT ABOVE -->
diff --git a/doc/editor_configs/serna/scons/dtd/ent/isonum.ent b/doc/editor_configs/serna/scons/dtd/ent/isonum.ent
new file mode 100644
index 0000000..c1536af
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/ent/isonum.ent
@@ -0,0 +1,117 @@
+
+<!--
+ File isonum.ent produced by the XSL script entities.xsl
+ from input data in unicode.xml.
+
+ Please report any errors to David Carlisle
+ via the public W3C list www-math@w3.org.
+
+ The numeric character values assigned to each entity
+ (should) match the Unicode assignments in Unicode 4.0.
+
+ Entity names in this file are derived from files carrying the
+ following notice:
+
+ (C) International Organization for Standardization 1986
+ Permission to copy in any form is granted for use with
+ conforming SGML systems and applications as defined in
+ ISO 8879, provided this notice is included in all copies.
+
+-->
+
+
+<!--
+ Version: $Id: isonum.ent,v 1.1 2009-03-30 14:59:35 sorin Exp $
+
+ Public identifier: ISO 8879:1986//ENTITIES Numeric and Special Graphic//EN//XML
+ System identifier: http://www.w3.org/2003/entities/iso8879/isonum.ent
+
+ The public identifier should always be used verbatim.
+ The system identifier may be changed to suit local requirements.
+
+ Typical invocation:
+
+ <!ENTITY % isonum PUBLIC
+ "ISO 8879:1986//ENTITIES Numeric and Special Graphic//EN//XML"
+ "http://www.w3.org/2003/entities/iso8879/isonum.ent"
+ >
+ %isonum;
+
+-->
+
+<!ENTITY amp "&#38;#38;" ><!--AMPERSAND -->
+<!ENTITY apos "&#x00027;" ><!--APOSTROPHE -->
+<!ENTITY ast "&#x0002A;" ><!--ASTERISK -->
+<!ENTITY brvbar "&#x000A6;" ><!--BROKEN BAR -->
+<!ENTITY bsol "&#x0005C;" ><!--REVERSE SOLIDUS -->
+<!ENTITY cent "&#x000A2;" ><!--CENT SIGN -->
+<!ENTITY colon "&#x0003A;" ><!--COLON -->
+<!ENTITY comma "&#x0002C;" ><!--COMMA -->
+<!ENTITY commat "&#x00040;" ><!--COMMERCIAL AT -->
+<!ENTITY copy "&#x000A9;" ><!--COPYRIGHT SIGN -->
+<!ENTITY curren "&#x000A4;" ><!--CURRENCY SIGN -->
+<!ENTITY darr "&#x02193;" ><!--DOWNWARDS ARROW -->
+<!ENTITY deg "&#x000B0;" ><!--DEGREE SIGN -->
+<!ENTITY divide "&#x000F7;" ><!--DIVISION SIGN -->
+<!ENTITY dollar "&#x00024;" ><!--DOLLAR SIGN -->
+<!ENTITY equals "&#x0003D;" ><!--EQUALS SIGN -->
+<!ENTITY excl "&#x00021;" ><!--EXCLAMATION MARK -->
+<!ENTITY frac12 "&#x000BD;" ><!--VULGAR FRACTION ONE HALF -->
+<!ENTITY frac14 "&#x000BC;" ><!--VULGAR FRACTION ONE QUARTER -->
+<!ENTITY frac18 "&#x0215B;" ><!--VULGAR FRACTION ONE EIGHTH -->
+<!ENTITY frac34 "&#x000BE;" ><!--VULGAR FRACTION THREE QUARTERS -->
+<!ENTITY frac38 "&#x0215C;" ><!--VULGAR FRACTION THREE EIGHTHS -->
+<!ENTITY frac58 "&#x0215D;" ><!--VULGAR FRACTION FIVE EIGHTHS -->
+<!ENTITY frac78 "&#x0215E;" ><!--VULGAR FRACTION SEVEN EIGHTHS -->
+<!ENTITY gt "&#x0003E;" ><!--GREATER-THAN SIGN -->
+<!ENTITY half "&#x000BD;" ><!--VULGAR FRACTION ONE HALF -->
+<!ENTITY horbar "&#x02015;" ><!--HORIZONTAL BAR -->
+<!ENTITY hyphen "&#x02010;" ><!--HYPHEN -->
+<!ENTITY iexcl "&#x000A1;" ><!--INVERTED EXCLAMATION MARK -->
+<!ENTITY iquest "&#x000BF;" ><!--INVERTED QUESTION MARK -->
+<!ENTITY laquo "&#x000AB;" ><!--LEFT-POINTING DOUBLE ANGLE QUOTATION MARK -->
+<!ENTITY larr "&#x02190;" ><!--LEFTWARDS ARROW -->
+<!ENTITY lcub "&#x0007B;" ><!--LEFT CURLY BRACKET -->
+<!ENTITY ldquo "&#x0201C;" ><!--LEFT DOUBLE QUOTATION MARK -->
+<!ENTITY lowbar "&#x0005F;" ><!--LOW LINE -->
+<!ENTITY lpar "&#x00028;" ><!--LEFT PARENTHESIS -->
+<!ENTITY lsqb "&#x0005B;" ><!--LEFT SQUARE BRACKET -->
+<!ENTITY lsquo "&#x02018;" ><!--LEFT SINGLE QUOTATION MARK -->
+<!ENTITY lt "&#38;#60;" ><!--LESS-THAN SIGN -->
+<!ENTITY micro "&#x000B5;" ><!--MICRO SIGN -->
+<!ENTITY middot "&#x000B7;" ><!--MIDDLE DOT -->
+<!ENTITY nbsp "&#x000A0;" ><!--NO-BREAK SPACE -->
+<!ENTITY not "&#x000AC;" ><!--NOT SIGN -->
+<!ENTITY num "&#x00023;" ><!--NUMBER SIGN -->
+<!ENTITY ohm "&#x02126;" ><!--OHM SIGN -->
+<!ENTITY ordf "&#x000AA;" ><!--FEMININE ORDINAL INDICATOR -->
+<!ENTITY ordm "&#x000BA;" ><!--MASCULINE ORDINAL INDICATOR -->
+<!ENTITY para "&#x000B6;" ><!--PILCROW SIGN -->
+<!ENTITY percnt "&#x00025;" ><!--PERCENT SIGN -->
+<!ENTITY period "&#x0002E;" ><!--FULL STOP -->
+<!ENTITY plus "&#x0002B;" ><!--PLUS SIGN -->
+<!ENTITY plusmn "&#x000B1;" ><!--PLUS-MINUS SIGN -->
+<!ENTITY pound "&#x000A3;" ><!--POUND SIGN -->
+<!ENTITY quest "&#x0003F;" ><!--QUESTION MARK -->
+<!ENTITY quot "&#x00022;" ><!--QUOTATION MARK -->
+<!ENTITY raquo "&#x000BB;" ><!--RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK -->
+<!ENTITY rarr "&#x02192;" ><!--RIGHTWARDS ARROW -->
+<!ENTITY rcub "&#x0007D;" ><!--RIGHT CURLY BRACKET -->
+<!ENTITY rdquo "&#x0201D;" ><!--RIGHT DOUBLE QUOTATION MARK -->
+<!ENTITY reg "&#x000AE;" ><!--REGISTERED SIGN -->
+<!ENTITY rpar "&#x00029;" ><!--RIGHT PARENTHESIS -->
+<!ENTITY rsqb "&#x0005D;" ><!--RIGHT SQUARE BRACKET -->
+<!ENTITY rsquo "&#x02019;" ><!--RIGHT SINGLE QUOTATION MARK -->
+<!ENTITY sect "&#x000A7;" ><!--SECTION SIGN -->
+<!ENTITY semi "&#x0003B;" ><!--SEMICOLON -->
+<!ENTITY shy "&#x000AD;" ><!--SOFT HYPHEN -->
+<!ENTITY sol "&#x0002F;" ><!--SOLIDUS -->
+<!ENTITY sung "&#x0266A;" ><!--EIGHTH NOTE -->
+<!ENTITY sup1 "&#x000B9;" ><!--SUPERSCRIPT ONE -->
+<!ENTITY sup2 "&#x000B2;" ><!--SUPERSCRIPT TWO -->
+<!ENTITY sup3 "&#x000B3;" ><!--SUPERSCRIPT THREE -->
+<!ENTITY times "&#x000D7;" ><!--MULTIPLICATION SIGN -->
+<!ENTITY trade "&#x02122;" ><!--TRADE MARK SIGN -->
+<!ENTITY uarr "&#x02191;" ><!--UPWARDS ARROW -->
+<!ENTITY verbar "&#x0007C;" ><!--VERTICAL LINE -->
+<!ENTITY yen "&#x000A5;" ><!--YEN SIGN -->
diff --git a/doc/editor_configs/serna/scons/dtd/ent/isopub.ent b/doc/editor_configs/serna/scons/dtd/ent/isopub.ent
new file mode 100644
index 0000000..ec4fe7c
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/ent/isopub.ent
@@ -0,0 +1,125 @@
+
+<!--
+ File isopub.ent produced by the XSL script entities.xsl
+ from input data in unicode.xml.
+
+ Please report any errors to David Carlisle
+ via the public W3C list www-math@w3.org.
+
+ The numeric character values assigned to each entity
+ (should) match the Unicode assignments in Unicode 4.0.
+
+ Entity names in this file are derived from files carrying the
+ following notice:
+
+ (C) International Organization for Standardization 1986
+ Permission to copy in any form is granted for use with
+ conforming SGML systems and applications as defined in
+ ISO 8879, provided this notice is included in all copies.
+
+-->
+
+
+<!--
+ Version: $Id: isopub.ent,v 1.1 2009-03-30 14:59:35 sorin Exp $
+
+ Public identifier: ISO 8879:1986//ENTITIES Publishing//EN//XML
+ System identifier: http://www.w3.org/2003/entities/iso8879/isopub.ent
+
+ The public identifier should always be used verbatim.
+ The system identifier may be changed to suit local requirements.
+
+ Typical invocation:
+
+ <!ENTITY % isopub PUBLIC
+ "ISO 8879:1986//ENTITIES Publishing//EN//XML"
+ "http://www.w3.org/2003/entities/iso8879/isopub.ent"
+ >
+ %isopub;
+
+-->
+
+<!ENTITY blank "&#x02423;" ><!--OPEN BOX -->
+<!ENTITY blk12 "&#x02592;" ><!--MEDIUM SHADE -->
+<!ENTITY blk14 "&#x02591;" ><!--LIGHT SHADE -->
+<!ENTITY blk34 "&#x02593;" ><!--DARK SHADE -->
+<!ENTITY block "&#x02588;" ><!--FULL BLOCK -->
+<!ENTITY bull "&#x02022;" ><!--BULLET -->
+<!ENTITY caret "&#x02041;" ><!--CARET INSERTION POINT -->
+<!ENTITY check "&#x02713;" ><!--CHECK MARK -->
+<!ENTITY cir "&#x025CB;" ><!--WHITE CIRCLE -->
+<!ENTITY clubs "&#x02663;" ><!--BLACK CLUB SUIT -->
+<!ENTITY copysr "&#x02117;" ><!--SOUND RECORDING COPYRIGHT -->
+<!ENTITY cross "&#x02717;" ><!--BALLOT X -->
+<!ENTITY Dagger "&#x02021;" ><!--DOUBLE DAGGER -->
+<!ENTITY dagger "&#x02020;" ><!--DAGGER -->
+<!ENTITY dash "&#x02010;" ><!--HYPHEN -->
+<!ENTITY diams "&#x02666;" ><!--BLACK DIAMOND SUIT -->
+<!ENTITY dlcrop "&#x0230D;" ><!--BOTTOM LEFT CROP -->
+<!ENTITY drcrop "&#x0230C;" ><!--BOTTOM RIGHT CROP -->
+<!ENTITY dtri "&#x025BF;" ><!--WHITE DOWN-POINTING SMALL TRIANGLE -->
+<!ENTITY dtrif "&#x025BE;" ><!--BLACK DOWN-POINTING SMALL TRIANGLE -->
+<!ENTITY emsp "&#x02003;" ><!--EM SPACE -->
+<!ENTITY emsp13 "&#x02004;" ><!--THREE-PER-EM SPACE -->
+<!ENTITY emsp14 "&#x02005;" ><!--FOUR-PER-EM SPACE -->
+<!ENTITY ensp "&#x02002;" ><!--EN SPACE -->
+<!ENTITY female "&#x02640;" ><!--FEMALE SIGN -->
+<!ENTITY ffilig "&#x0FB03;" ><!--LATIN SMALL LIGATURE FFI -->
+<!ENTITY fflig "&#x0FB00;" ><!--LATIN SMALL LIGATURE FF -->
+<!ENTITY ffllig "&#x0FB04;" ><!--LATIN SMALL LIGATURE FFL -->
+<!ENTITY filig "&#x0FB01;" ><!--LATIN SMALL LIGATURE FI -->
+<!ENTITY flat "&#x0266D;" ><!--MUSIC FLAT SIGN -->
+<!ENTITY fllig "&#x0FB02;" ><!--LATIN SMALL LIGATURE FL -->
+<!ENTITY frac13 "&#x02153;" ><!--VULGAR FRACTION ONE THIRD -->
+<!ENTITY frac15 "&#x02155;" ><!--VULGAR FRACTION ONE FIFTH -->
+<!ENTITY frac16 "&#x02159;" ><!--VULGAR FRACTION ONE SIXTH -->
+<!ENTITY frac23 "&#x02154;" ><!--VULGAR FRACTION TWO THIRDS -->
+<!ENTITY frac25 "&#x02156;" ><!--VULGAR FRACTION TWO FIFTHS -->
+<!ENTITY frac35 "&#x02157;" ><!--VULGAR FRACTION THREE FIFTHS -->
+<!ENTITY frac45 "&#x02158;" ><!--VULGAR FRACTION FOUR FIFTHS -->
+<!ENTITY frac56 "&#x0215A;" ><!--VULGAR FRACTION FIVE SIXTHS -->
+<!ENTITY hairsp "&#x0200A;" ><!--HAIR SPACE -->
+<!ENTITY hearts "&#x02665;" ><!--BLACK HEART SUIT -->
+<!ENTITY hellip "&#x02026;" ><!--HORIZONTAL ELLIPSIS -->
+<!ENTITY hybull "&#x02043;" ><!--HYPHEN BULLET -->
+<!ENTITY incare "&#x02105;" ><!--CARE OF -->
+<!ENTITY ldquor "&#x0201E;" ><!--DOUBLE LOW-9 QUOTATION MARK -->
+<!ENTITY lhblk "&#x02584;" ><!--LOWER HALF BLOCK -->
+<!ENTITY loz "&#x025CA;" ><!--LOZENGE -->
+<!ENTITY lozf "&#x029EB;" ><!--BLACK LOZENGE -->
+<!ENTITY lsquor "&#x0201A;" ><!--SINGLE LOW-9 QUOTATION MARK -->
+<!ENTITY ltri "&#x025C3;" ><!--WHITE LEFT-POINTING SMALL TRIANGLE -->
+<!ENTITY ltrif "&#x025C2;" ><!--BLACK LEFT-POINTING SMALL TRIANGLE -->
+<!ENTITY male "&#x02642;" ><!--MALE SIGN -->
+<!ENTITY malt "&#x02720;" ><!--MALTESE CROSS -->
+<!ENTITY marker "&#x025AE;" ><!--BLACK VERTICAL RECTANGLE -->
+<!ENTITY mdash "&#x02014;" ><!--EM DASH -->
+<!ENTITY mldr "&#x02026;" ><!--HORIZONTAL ELLIPSIS -->
+<!ENTITY natur "&#x0266E;" ><!--MUSIC NATURAL SIGN -->
+<!ENTITY ndash "&#x02013;" ><!--EN DASH -->
+<!ENTITY nldr "&#x02025;" ><!--TWO DOT LEADER -->
+<!ENTITY numsp "&#x02007;" ><!--FIGURE SPACE -->
+<!ENTITY phone "&#x0260E;" ><!--BLACK TELEPHONE -->
+<!ENTITY puncsp "&#x02008;" ><!--PUNCTUATION SPACE -->
+<!ENTITY rdquor "&#x0201D;" ><!--RIGHT DOUBLE QUOTATION MARK -->
+<!ENTITY rect "&#x025AD;" ><!--WHITE RECTANGLE -->
+<!ENTITY rsquor "&#x02019;" ><!--RIGHT SINGLE QUOTATION MARK -->
+<!ENTITY rtri "&#x025B9;" ><!--WHITE RIGHT-POINTING SMALL TRIANGLE -->
+<!ENTITY rtrif "&#x025B8;" ><!--BLACK RIGHT-POINTING SMALL TRIANGLE -->
+<!ENTITY rx "&#x0211E;" ><!--PRESCRIPTION TAKE -->
+<!ENTITY sext "&#x02736;" ><!--SIX POINTED BLACK STAR -->
+<!ENTITY sharp "&#x0266F;" ><!--MUSIC SHARP SIGN -->
+<!ENTITY spades "&#x02660;" ><!--BLACK SPADE SUIT -->
+<!ENTITY squ "&#x025A1;" ><!--WHITE SQUARE -->
+<!ENTITY squf "&#x025AA;" ><!--BLACK SMALL SQUARE -->
+<!ENTITY star "&#x02606;" ><!--WHITE STAR -->
+<!ENTITY starf "&#x02605;" ><!--BLACK STAR -->
+<!ENTITY target "&#x02316;" ><!--POSITION INDICATOR -->
+<!ENTITY telrec "&#x02315;" ><!--TELEPHONE RECORDER -->
+<!ENTITY thinsp "&#x02009;" ><!--THIN SPACE -->
+<!ENTITY uhblk "&#x02580;" ><!--UPPER HALF BLOCK -->
+<!ENTITY ulcrop "&#x0230F;" ><!--TOP LEFT CROP -->
+<!ENTITY urcrop "&#x0230E;" ><!--TOP RIGHT CROP -->
+<!ENTITY utri "&#x025B5;" ><!--WHITE UP-POINTING SMALL TRIANGLE -->
+<!ENTITY utrif "&#x025B4;" ><!--BLACK UP-POINTING SMALL TRIANGLE -->
+<!ENTITY vellip "&#x022EE;" ><!--VERTICAL ELLIPSIS -->
diff --git a/doc/editor_configs/serna/scons/dtd/ent/isotech.ent b/doc/editor_configs/serna/scons/dtd/ent/isotech.ent
new file mode 100644
index 0000000..3493ded
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/ent/isotech.ent
@@ -0,0 +1,103 @@
+
+<!--
+ File isotech.ent produced by the XSL script entities.xsl
+ from input data in unicode.xml.
+
+ Please report any errors to David Carlisle
+ via the public W3C list www-math@w3.org.
+
+ The numeric character values assigned to each entity
+ (should) match the Unicode assignments in Unicode 4.0.
+
+ Entity names in this file are derived from files carrying the
+ following notice:
+
+ (C) International Organization for Standardization 1986
+ Permission to copy in any form is granted for use with
+ conforming SGML systems and applications as defined in
+ ISO 8879, provided this notice is included in all copies.
+
+-->
+
+
+<!--
+ Version: $Id: isotech.ent,v 1.1 2009-03-30 14:59:35 sorin Exp $
+
+ Public identifier: ISO 8879:1986//ENTITIES General Technical//EN//XML
+ System identifier: http://www.w3.org/2003/entities/iso8879/isotech.ent
+
+ The public identifier should always be used verbatim.
+ The system identifier may be changed to suit local requirements.
+
+ Typical invocation:
+
+ <!ENTITY % isotech PUBLIC
+ "ISO 8879:1986//ENTITIES General Technical//EN//XML"
+ "http://www.w3.org/2003/entities/iso8879/isotech.ent"
+ >
+ %isotech;
+
+-->
+
+<!ENTITY aleph "&#x02135;" ><!--ALEF SYMBOL -->
+<!ENTITY and "&#x02227;" ><!--LOGICAL AND -->
+<!ENTITY ang90 "&#x0221F;" ><!--RIGHT ANGLE -->
+<!ENTITY angsph "&#x02222;" ><!--SPHERICAL ANGLE -->
+<!ENTITY angst "&#x0212B;" ><!--ANGSTROM SIGN -->
+<!ENTITY ap "&#x02248;" ><!--ALMOST EQUAL TO -->
+<!ENTITY becaus "&#x02235;" ><!--BECAUSE -->
+<!ENTITY bernou "&#x0212C;" ><!--SCRIPT CAPITAL B -->
+<!ENTITY bottom "&#x022A5;" ><!--UP TACK -->
+<!ENTITY cap "&#x02229;" ><!--INTERSECTION -->
+<!ENTITY compfn "&#x02218;" ><!--RING OPERATOR -->
+<!ENTITY cong "&#x02245;" ><!--APPROXIMATELY EQUAL TO -->
+<!ENTITY conint "&#x0222E;" ><!--CONTOUR INTEGRAL -->
+<!ENTITY cup "&#x0222A;" ><!--UNION -->
+<!ENTITY Dot "&#x000A8;" ><!--DIAERESIS -->
+<!ENTITY DotDot " &#x020DC;" ><!--COMBINING FOUR DOTS ABOVE -->
+<!ENTITY equiv "&#x02261;" ><!--IDENTICAL TO -->
+<!ENTITY exist "&#x02203;" ><!--THERE EXISTS -->
+<!ENTITY fnof "&#x00192;" ><!--LATIN SMALL LETTER F WITH HOOK -->
+<!ENTITY forall "&#x02200;" ><!--FOR ALL -->
+<!ENTITY ge "&#x02265;" ><!--GREATER-THAN OR EQUAL TO -->
+<!ENTITY hamilt "&#x0210B;" ><!--SCRIPT CAPITAL H -->
+<!ENTITY iff "&#x021D4;" ><!--LEFT RIGHT DOUBLE ARROW -->
+<!ENTITY infin "&#x0221E;" ><!--INFINITY -->
+<!ENTITY int "&#x0222B;" ><!--INTEGRAL -->
+<!ENTITY isin "&#x02208;" ><!--ELEMENT OF -->
+<!ENTITY lagran "&#x02112;" ><!--SCRIPT CAPITAL L -->
+<!ENTITY lang "&#x02329;" ><!--LEFT-POINTING ANGLE BRACKET -->
+<!ENTITY lArr "&#x021D0;" ><!--LEFTWARDS DOUBLE ARROW -->
+<!ENTITY le "&#x02264;" ><!--LESS-THAN OR EQUAL TO -->
+<!ENTITY lowast "&#x02217;" ><!--ASTERISK OPERATOR -->
+<!ENTITY minus "&#x02212;" ><!--MINUS SIGN -->
+<!ENTITY mnplus "&#x02213;" ><!--MINUS-OR-PLUS SIGN -->
+<!ENTITY nabla "&#x02207;" ><!--NABLA -->
+<!ENTITY ne "&#x02260;" ><!--NOT EQUAL TO -->
+<!ENTITY ni "&#x0220B;" ><!--CONTAINS AS MEMBER -->
+<!ENTITY notin "&#x02209;" ><!--NOT AN ELEMENT OF -->
+<!ENTITY or "&#x02228;" ><!--LOGICAL OR -->
+<!ENTITY order "&#x02134;" ><!--SCRIPT SMALL O -->
+<!ENTITY par "&#x02225;" ><!--PARALLEL TO -->
+<!ENTITY part "&#x02202;" ><!--PARTIAL DIFFERENTIAL -->
+<!ENTITY permil "&#x02030;" ><!--PER MILLE SIGN -->
+<!ENTITY perp "&#x022A5;" ><!--UP TACK -->
+<!ENTITY phmmat "&#x02133;" ><!--SCRIPT CAPITAL M -->
+<!ENTITY Prime "&#x02033;" ><!--DOUBLE PRIME -->
+<!ENTITY prime "&#x02032;" ><!--PRIME -->
+<!ENTITY prop "&#x0221D;" ><!--PROPORTIONAL TO -->
+<!ENTITY radic "&#x0221A;" ><!--SQUARE ROOT -->
+<!ENTITY rang "&#x0232A;" ><!--RIGHT-POINTING ANGLE BRACKET -->
+<!ENTITY rArr "&#x021D2;" ><!--RIGHTWARDS DOUBLE ARROW -->
+<!ENTITY sim "&#x0223C;" ><!--TILDE OPERATOR -->
+<!ENTITY sime "&#x02243;" ><!--ASYMPTOTICALLY EQUAL TO -->
+<!ENTITY square "&#x025A1;" ><!--WHITE SQUARE -->
+<!ENTITY sub "&#x02282;" ><!--SUBSET OF -->
+<!ENTITY sube "&#x02286;" ><!--SUBSET OF OR EQUAL TO -->
+<!ENTITY sup "&#x02283;" ><!--SUPERSET OF -->
+<!ENTITY supe "&#x02287;" ><!--SUPERSET OF OR EQUAL TO -->
+<!ENTITY tdot " &#x020DB;" ><!--COMBINING THREE DOTS ABOVE -->
+<!ENTITY there4 "&#x02234;" ><!--THEREFORE -->
+<!ENTITY tprime "&#x02034;" ><!--TRIPLE PRIME -->
+<!ENTITY Verbar "&#x02016;" ><!--DOUBLE VERTICAL LINE -->
+<!ENTITY wedgeq "&#x02259;" ><!--ESTIMATES -->
diff --git a/doc/editor_configs/serna/scons/dtd/htmltblx.mod b/doc/editor_configs/serna/scons/dtd/htmltblx.mod
new file mode 100644
index 0000000..811e955
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/htmltblx.mod
@@ -0,0 +1,245 @@
+<!-- ...................................................................... -->
+<!-- DocBook XML HTML Table Module V4.5 ................................... -->
+<!-- File htmltblx.mod .................................................... -->
+
+<!-- Copyright 2003-2006 ArborText, Inc., Norman Walsh, Sun Microsystems,
+ Inc., and the Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ $Id: htmltblx.mod,v 1.1 2009-03-30 14:59:35 sorin Exp $
+
+ Permission to use, copy, modify and distribute the DocBook XML DTD
+ 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 DTD for
+ any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook XML DTD in any way, except for declaring and
+ referencing additional sets of general entities and declaring
+ additional notations, label your DTD as a variant of DocBook. See
+ the maintenance documentation 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/.
+-->
+
+<!-- ...................................................................... -->
+
+<!-- This module contains the definitions for elements that are
+ isomorphic to the HTML elements. One could argue we should
+ instead have based ourselves on the XHTML Table Module, but the
+ HTML one is more like what browsers are likely to accept today
+ and users are likely to use.
+
+ This module has been developed for use with the DocBook V4.5
+ "union table model" in which elements and attlists common to both
+ models are defined (as the union) in the CALS table module by
+ setting various parameter entities appropriately in this file.
+
+ In DTD driver files referring to this module, please use an entity
+ declaration that uses the public identifier shown below:
+
+ <!ENTITY % htmltbl PUBLIC
+ "-//OASIS//ELEMENTS DocBook XML HTML Tables V4.5//EN"
+ "htmltblx.mod">
+ %htmltbl;
+
+ See the documentation for detailed information on the parameter
+ entity and module scheme used in DocBook, customizing DocBook and
+ planning for interchange, and changes made since the last release
+ of DocBook.
+-->
+
+<!--======================= XHTML Tables =======================================-->
+
+<!ENTITY % html.coreattrs
+ "%common.attrib;
+ class CDATA #IMPLIED
+ style CDATA #IMPLIED
+ title CDATA #IMPLIED"
+ >
+
+<!-- Does not contain lang or dir because they are in %common.attribs -->
+<![%sgml.features;[
+<!ENTITY % i18n "">
+]]>
+<!ENTITY % i18n
+ "xml:lang NMTOKEN #IMPLIED"
+ >
+
+<!ENTITY % events
+ "onclick CDATA #IMPLIED
+ ondblclick CDATA #IMPLIED
+ onmousedown CDATA #IMPLIED
+ onmouseup CDATA #IMPLIED
+ onmouseover CDATA #IMPLIED
+ onmousemove CDATA #IMPLIED
+ onmouseout CDATA #IMPLIED
+ onkeypress CDATA #IMPLIED
+ onkeydown CDATA #IMPLIED
+ onkeyup CDATA #IMPLIED"
+ >
+
+<!ENTITY % attrs "%html.coreattrs; %i18n; %events;">
+
+<!ENTITY % cellhalign
+ "align (left|center|right|justify|char) #IMPLIED
+ char CDATA #IMPLIED
+ charoff CDATA #IMPLIED"
+ >
+
+<!ENTITY % cellvalign
+ "valign (top|middle|bottom|baseline) #IMPLIED"
+ >
+
+<!--doc:A group of columns in an HTML table.-->
+<!ELEMENT colgroup %ho; (col)*>
+<!--doc:Specifications for a column in an HTML table.-->
+<!ELEMENT col %ho; EMPTY>
+<!--doc:A row in an HTML table.-->
+<!ELEMENT tr %ho; (th|td)+>
+<!--doc:A table header entry in an HTML table.-->
+<!ELEMENT th %ho; (%para.char.mix; | %tabentry.mix; | table | informaltable)*>
+<!--doc:A table ntry in an HTML table.-->
+<!ELEMENT td %ho; (%para.char.mix; | %tabentry.mix; | table | informaltable)*>
+
+<!ATTLIST colgroup
+ %attrs;
+ span CDATA "1"
+ width CDATA #IMPLIED
+ %cellhalign;
+ %cellvalign;
+ >
+
+<!ATTLIST col
+ %attrs;
+ span CDATA "1"
+ width CDATA #IMPLIED
+ %cellhalign;
+ %cellvalign;
+ >
+
+<!ATTLIST tr
+ %attrs;
+ %cellhalign;
+ %cellvalign;
+ bgcolor CDATA #IMPLIED
+ >
+
+<!ATTLIST th
+ %attrs;
+ abbr CDATA #IMPLIED
+ axis CDATA #IMPLIED
+ headers IDREFS #IMPLIED
+ scope (row|col|rowgroup|colgroup) #IMPLIED
+ rowspan CDATA "1"
+ colspan CDATA "1"
+ %cellhalign;
+ %cellvalign;
+ nowrap (nowrap) #IMPLIED
+ bgcolor CDATA #IMPLIED
+ width CDATA #IMPLIED
+ height CDATA #IMPLIED
+ >
+
+<!ATTLIST td
+ %attrs;
+ abbr CDATA #IMPLIED
+ axis CDATA #IMPLIED
+ headers IDREFS #IMPLIED
+ scope (row|col|rowgroup|colgroup) #IMPLIED
+ rowspan CDATA "1"
+ colspan CDATA "1"
+ %cellhalign;
+ %cellvalign;
+ nowrap (nowrap) #IMPLIED
+ bgcolor CDATA #IMPLIED
+ width CDATA #IMPLIED
+ height CDATA #IMPLIED
+ >
+
+<!-- ====================================================== -->
+<!-- Set up to read in the CALS model configured to
+ merge with the XHTML table model -->
+<!-- ====================================================== -->
+
+<!ENTITY % tables.role.attrib "%role.attrib;">
+
+<!-- Add label and role attributes to table and informaltable -->
+<!ENTITY % bodyatt "
+ floatstyle CDATA #IMPLIED
+ rowheader (firstcol|norowheader) #IMPLIED
+ %label.attrib;"
+>
+
+<!-- Add common attributes to Table, TGroup, TBody, THead, TFoot, Row,
+ EntryTbl, and Entry (and InformalTable element). -->
+
+<!ENTITY % secur "
+ %common.attrib;
+ class CDATA #IMPLIED
+ style CDATA #IMPLIED
+ title CDATA #IMPLIED
+ %i18n;
+ %events;
+ %tables.role.attrib;">
+
+<!ENTITY % common.table.attribs
+ "%bodyatt;
+ %secur;">
+
+<!-- Content model for Table (that also allows HTML tables) -->
+<!ENTITY % tbl.table.mdl
+ "((blockinfo?,
+ (%formalobject.title.content;),
+ (%ndxterm.class;)*,
+ textobject*,
+ (graphic+|mediaobject+|tgroup+))
+ |(caption, (col*|colgroup*), thead?, tfoot?, (tbody+|tr+)))">
+
+<!ENTITY % informal.tbl.table.mdl
+ "(textobject*,
+ (graphic+|mediaobject+|tgroup+))
+ | ((col*|colgroup*), thead?, tfoot?, (tbody+|tr+))">
+
+<!-- Attributes for Table (including HTML ones) -->
+
+<!-- N.B. rules = (none | groups | rows | cols | all) but it can't be spec'd -->
+<!-- that way because 'all' already occurs in a different enumeration in -->
+<!-- CALS tables (frame). -->
+
+<!ENTITY % tbl.table.att '
+ tabstyle CDATA #IMPLIED
+ tocentry %yesorno.attvals; #IMPLIED
+ shortentry %yesorno.attvals; #IMPLIED
+ orient (port|land) #IMPLIED
+ pgwide %yesorno.attvals; #IMPLIED
+ summary CDATA #IMPLIED
+ width CDATA #IMPLIED
+ border CDATA #IMPLIED
+ rules CDATA #IMPLIED
+ cellspacing CDATA #IMPLIED
+ cellpadding CDATA #IMPLIED
+ align (left|center|right) #IMPLIED
+ bgcolor CDATA #IMPLIED
+'>
+
+<!ENTITY % tbl.frame.attval "void|above|below|hsides|lhs|rhs|vsides|box|border|
+top|bottom|topbot|all|sides|none">
+
+<!-- Allow either objects or inlines; beware of REs between elements. -->
+<!ENTITY % tbl.entry.mdl "%para.char.mix; | %tabentry.mix;">
+
+<!-- thead, tfoot, and tbody are defined in both table models,
+ so we set up parameter entities to define union models for them
+ -->
+
+<!ENTITY % tbl.hdft.mdl "(tr+|(colspec*,row+))">
+<!ENTITY % tbl.tbody.mdl "(tr+|row+)">
+<!ENTITY % tbl.valign.attval "top|middle|bottom|baseline">
+
+<!-- End of DocBook XML HTML Table Module V4.5 ............................ -->
+<!-- ...................................................................... -->
diff --git a/doc/editor_configs/serna/scons/dtd/scons.dtd b/doc/editor_configs/serna/scons/dtd/scons.dtd
new file mode 100644
index 0000000..5680838
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/scons.dtd
@@ -0,0 +1,170 @@
+<!-- ...................................................................... -->
+<!-- DocBook SCons XML DTD V4.5 ................................................. -->
+<!-- File docbookx.dtd .................................................... -->
+
+<!-- Copyright 1992-2006 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).
+
+ See also http://docbook.org/specs/
+
+ $Id: docbookx.dtd,v 1.1 2009-03-30 14:59:35 sorin Exp $
+
+ Permission to use, copy, modify and distribute the DocBook SCons XML DTD
+ 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 DTD for
+ any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook DTD in any way, except for declaring and
+ referencing additional sets of general entities and declaring
+ additional notations, label your DTD as a variant of DocBook. See
+ the maintenance documentation 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/.
+-->
+
+<!-- ...................................................................... -->
+
+<!-- This is the driver file for V4.5 of the DocBook DTD.
+ Please use the following formal public identifier to identify it:
+
+ "-//OASIS//DTD DocBook SCons XML V4.5//EN"
+
+ For example, if your document's top-level element is Book, and
+ you are using DocBook directly, use the FPI in the DOCTYPE
+ declaration:
+
+ <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook SCons XML V4.5//EN"
+ "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"
+ [...]>
+
+ Or, if you have a higher-level driver file that customizes DocBook,
+ use the FPI in the parameter entity declaration:
+
+ <!ENTITY % DocBookDTD PUBLIC "-//OASIS//DTD DocBook SCons XML V4.5//EN"
+ "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
+ %DocBookDTD;
+
+ See the documentation for detailed information on the parameter
+ entity and module scheme used in DocBook, customizing DocBook and
+ planning for interchange, and changes made since the last release
+ of DocBook.
+-->
+
+<!-- ...................................................................... -->
+<!-- Enable SGML features ................................................. -->
+
+<!ENTITY % sgml.features "IGNORE">
+<![%sgml.features;[
+<!ENTITY % xml.features "IGNORE">
+]]>
+<!ENTITY % xml.features "INCLUDE">
+
+<![%sgml.features;[
+<![%xml.features;[
+
+<!-- ERROR: Exactly one of xml.features and sgml.features must be turned on! -->
+<!ENTITY % dbnotn SYSTEM "http://www.oasis-open.org/docbook/xml/configerror.txt">
+<!ENTITY % dbcent SYSTEM "http://www.oasis-open.org/docbook/xml/configerror.txt">
+<!ENTITY % dbpool SYSTEM "http://www.oasis-open.org/docbook/xml/configerror.txt">
+<!ENTITY % dbhier SYSTEM "http://www.oasis-open.org/docbook/xml/configerror.txt">
+<!ENTITY % dbgenent SYSTEM "http://www.oasis-open.org/docbook/xml/configerror.txt">
+
+]]>
+]]>
+
+<![%sgml.features;[
+<!ENTITY % ho "- O">
+<!ENTITY % hh "- -">
+]]>
+
+<![%xml.features;[
+<!ENTITY % ho "">
+<!ENTITY % hh "">
+]]>
+
+<!-- ...................................................................... -->
+<!-- Notation declarations ................................................ -->
+
+<!ENTITY % dbnotn.module "INCLUDE">
+<![%dbnotn.module;[
+<!ENTITY % dbnotn PUBLIC
+"-//OASIS//ENTITIES DocBook Notations V4.5//EN"
+"dbnotnx.mod">
+%dbnotn;
+]]>
+
+<!-- ...................................................................... -->
+<!-- ISO character entity sets ............................................ -->
+
+<!ENTITY % dbcent.module "INCLUDE">
+<![%dbcent.module;[
+
+<!ENTITY % dbcent.euro "INCLUDE">
+<![%dbcent.euro;[
+<![%sgml.features;[
+<!ENTITY euro SDATA "[euro ]"><!-- euro sign -->
+]]>
+<![%xml.features;[
+<!ENTITY euro "&#x20AC;"><!-- euro sign, U+20AC NEW -->
+]]>
+]]>
+
+<!ENTITY % dbcent PUBLIC
+"-//OASIS//ENTITIES DocBook Character Entities V4.5//EN"
+"dbcentx.mod">
+%dbcent;
+]]>
+
+<!-- ...................................................................... -->
+<!-- DTD modules .......................................................... -->
+
+<!-- Information pool .............. -->
+
+<!ENTITY % dbpool.module "INCLUDE">
+<![ %dbpool.module; [
+<!ENTITY % dbpool PUBLIC
+"-//OASIS//ELEMENTS DocBook SCons Information Pool V4.5//EN"
+"dbpoolx.mod">
+%dbpool;
+]]>
+
+<!-- Redeclaration placeholder ..... -->
+
+<!ENTITY % intermod.redecl.module "IGNORE">
+<![%intermod.redecl.module;[
+<!-- Defining rdbmods here makes some buggy XML parsers happy. -->
+<!ENTITY % rdbmods "">
+%rdbmods;
+<!--end of intermod.redecl.module-->]]>
+
+<!-- Document hierarchy ............ -->
+
+<!ENTITY % dbhier.module "INCLUDE">
+<![ %dbhier.module; [
+<!ENTITY % dbhier PUBLIC
+"-//OASIS//ELEMENTS DocBook Document Hierarchy V4.5//EN"
+"dbhierx.mod">
+%dbhier;
+]]>
+
+<!-- ...................................................................... -->
+<!-- Other general entities ............................................... -->
+
+<!ENTITY % dbgenent.module "INCLUDE">
+<![ %dbgenent.module; [
+<!ENTITY % dbgenent PUBLIC
+"-//OASIS//ENTITIES DocBook Additional General Entities V4.5//EN"
+"dbgenent.mod">
+%dbgenent;
+]]>
+
+<!-- End of DocBook SCons XML DTD V4.5 .......................................... -->
+<!-- ...................................................................... -->
diff --git a/doc/editor_configs/serna/scons/dtd/soextblx.dtd b/doc/editor_configs/serna/scons/dtd/soextblx.dtd
new file mode 100644
index 0000000..4a92e11
--- /dev/null
+++ b/doc/editor_configs/serna/scons/dtd/soextblx.dtd
@@ -0,0 +1,321 @@
+<!-- XML EXCHANGE TABLE MODEL DECLARATION MODULE -->
+
+<!-- This set of declarations defines the XML version of the Exchange
+ Table Model as of the date shown in the Formal Public Identifier
+ (FPI) for this entity.
+
+ This set of declarations may be referred to using a public external
+ entity declaration and reference as shown in the following three
+ lines:
+
+ <!ENTITY % calstblx
+ PUBLIC "-//OASIS//DTD XML Exchange Table Model 19990315//EN">
+ %calstblx;
+
+ If various parameter entities used within this set of declarations
+ are to be given non-default values, the appropriate declarations
+ should be given before calling in this package (i.e., before the
+ "%calstblx;" reference).
+-->
+
+<!-- The motivation for this XML version of the Exchange Table Model
+ is simply to create an XML version of the SGML Exchange Table
+ Model. By design, no effort has been made to "improve" the model.
+
+ This XML version incorporates the logical bare minimum changes
+ necessary to make the Exchange Table Model a valid XML DTD.
+
+ It has been modified slightly for use in the combined HTML/CALS models
+ supported by DocBook V4.3 and later.
+-->
+
+<!-- The XML version of the Exchange Table Model differs from
+ the SGML version in the following ways:
+
+ The following parameter entities have been removed:
+
+ - tbl.table.excep, tbl.hdft.excep, tbl.row.excep, tbl.entry.excep
+ There are no exceptions in XML. The following normative statement
+ is made in lieu of exceptions: the exchange table model explicitly
+ forbids a table from occurring within another table. If the
+ content model of an entry includes a table element, then this
+ cannot be enforced by the DTD, but it is a deviation from the
+ exchange table model to include a table within a table.
+
+ - tbl.hdft.name, tbl.hdft.mdl, tbl.hdft.excep, tbl.hdft.att
+ The motivation for these elements was to change the table
+ header/footer elements. Since XML does not allow element declarations
+ to contain name groups, and the exchange table model does not
+ allow a table to contain footers, the continued presence of these
+ attributes seems unnecessary.
+
+ The following parameter entity has been added:
+
+ - tbl.thead.att
+ This entity parameterizes the attributes on thead. It replaces
+ the tbl.hdft.att parameter entity.
+
+ Other miscellaneous changes:
+
+ - Tag ommission indicators have been removed
+ - Comments have been removed from declarations
+ - NUMBER attributes have been changed to NMTOKEN
+ - NUTOKEN attributes have been to changed to NMTOKEN
+ - Removed the grouping characters around the content model
+ parameter entry for the 'entry' element. This is necessary
+ so that an entry can contain #PCDATA and be defined as an
+ optional, repeatable OR group beginning with #PCDATA.
+-->
+
+<!-- This entity includes a set of element and attribute declarations
+ that partially defines the Exchange table model. However, the model
+ is not well-defined without the accompanying natural language
+ description of the semantics (meanings) of these various elements,
+ attributes, and attribute values. The semantic writeup, also available
+ from SGML Open, should be used in conjunction with this entity.
+-->
+
+<!-- In order to use the Exchange table model, various parameter entity
+ declarations are required. A brief description is as follows:
+
+ ENTITY NAME WHERE USED WHAT IT IS
+
+ %yesorno In ATTLIST of: An attribute declared value
+ almost all elements for a "boolean" attribute
+
+ %paracon In content model of: The "text" (logical content)
+ <entry> of the model group for <entry>
+
+ %titles In content model of: The "title" part of the model
+ table element group for the table element
+
+ %tbl.table.name In declaration of: The name of the "table"
+ table element element
+
+ %tbl.table-titles.mdl In content model of: The model group for the title
+ table elements part of the content model for
+ table element
+
+ %tbl.table.mdl In content model of: The model group for the content
+ table elements model for table element,
+ often (and by default) defined
+ in terms of %tbl.table-titles.mdl
+ and tgroup
+
+ %tbl.table.att In ATTLIST of: Additional attributes on the
+ table element table element
+
+ %bodyatt In ATTLIST of: Additional attributes on the
+ table element table element (for backward
+ compatibility with the SGML
+ model)
+
+ %tbl.tgroup.mdl In content model of: The model group for the content
+ <tgroup> model for <tgroup>
+
+ %tbl.tgroup.att In ATTLIST of: Additional attributes on the
+ <tgroup> <tgroup> element
+
+ %tbl.thead.att In ATTLIST of: Additional attributes on the
+ <thead> <thead> element
+
+ %tbl.tbody.att In ATTLIST of: Additional attributes on the
+ <tbody> <tbody> element
+
+ %tbl.colspec.att In ATTLIST of: Additional attributes on the
+ <colspec> <colspec> element
+
+ %tbl.row.mdl In content model of: The model group for the content
+ <row> model for <row>
+
+ %tbl.row.att In ATTLIST of: Additional attributes on the
+ <row> <row> element
+
+ %tbl.entry.mdl In content model of: The model group for the content
+ <entry> model for <entry>
+
+ %tbl.entry.att In ATTLIST of: Additional attributes on the
+ <entry> <entry> element
+
+ This set of declarations will use the default definitions shown below
+ for any of these parameter entities that are not declared before this
+ set of declarations is referenced.
+-->
+
+<!-- These definitions are not directly related to the table model, but are
+ used in the default CALS table model and may be defined elsewhere (and
+ prior to the inclusion of this table module) in the referencing DTD. -->
+
+<!ENTITY % yesorno 'NMTOKEN'> <!-- no if zero(s), yes if any other value -->
+<!ENTITY % titles 'title?'>
+<!ENTITY % pcd "#PCDATA">
+<!ENTITY % paracon '%pcd;'> <!-- default for use in entry content -->
+
+<!--
+The parameter entities as defined below change and simplify the CALS table
+model as published (as part of the Example DTD) in MIL-HDBK-28001. The
+resulting simplified DTD has support from the SGML Open vendors and is
+therefore more interoperable among different systems.
+
+These following declarations provide the Exchange default definitions
+for these entities. However, these entities can be redefined (by giving
+the appropriate parameter entity declaration(s) prior to the reference
+to this Table Model declaration set entity) to fit the needs of the
+current application.
+
+Note, however, that changes may have significant effect on the ability to
+interchange table information. These changes may manifest themselves
+in useability, presentation, and possible structure information degradation.
+-->
+
+<!ENTITY % tbl.table.name "table">
+<!ENTITY % tbl.table-titles.mdl "%titles;,">
+<!ENTITY % tbl.table-main.mdl "tgroup+">
+<!ENTITY % tbl.table.mdl "%tbl.table-titles.mdl; %tbl.table-main.mdl;">
+<!ENTITY % tbl.table.att "
+ pgwide %yesorno; #IMPLIED ">
+<!ENTITY % bodyatt "">
+<!ENTITY % tbl.tgroup.mdl "colspec*,thead?,tbody">
+<!ENTITY % tbl.tgroup.att "">
+<!ENTITY % tbl.thead.att "">
+<!ENTITY % tbl.tbody.att "">
+<!ENTITY % tbl.colspec.att "">
+<!ENTITY % tbl.row.mdl "entry+">
+<!ENTITY % tbl.row.att "">
+<!ENTITY % tbl.entry.mdl "(%paracon;)*">
+<!ENTITY % tbl.entry.att "">
+
+<!ENTITY % tbl.frame.attval "top|bottom|topbot|all|sides|none">
+<!ENTITY % tbl.tbody.mdl "row+">
+
+<!-- ===== Element and attribute declarations follow. ===== -->
+
+<!--
+ Default declarations previously defined in this entity and
+ referenced below include:
+ ENTITY % tbl.table.name "table"
+ ENTITY % tbl.table-titles.mdl "%titles;,"
+ ENTITY % tbl.table.mdl "%tbl.table-titles; tgroup+"
+ ENTITY % tbl.table.att "
+ pgwide %yesorno; #IMPLIED "
+-->
+
+<!--doc:???-->
+<!ELEMENT %tbl.table.name; (%tbl.table.mdl;)>
+
+<!ATTLIST %tbl.table.name;
+ frame (%tbl.frame.attval;) #IMPLIED
+ colsep %yesorno; #IMPLIED
+ rowsep %yesorno; #IMPLIED
+ %tbl.table.att;
+ %bodyatt;
+>
+
+<!--
+ Default declarations previously defined in this entity and
+ referenced below include:
+ ENTITY % tbl.tgroup.mdl "colspec*,thead?,tbody"
+ ENTITY % tbl.tgroup.att ""
+-->
+
+<!--doc:A wrapper for the main content of a table, or part of a table.-->
+<!ELEMENT tgroup (%tbl.tgroup.mdl;) >
+
+<!ATTLIST tgroup
+ cols NMTOKEN #REQUIRED
+ colsep %yesorno; #IMPLIED
+ rowsep %yesorno; #IMPLIED
+ align (left|right|center|justify|char) #IMPLIED
+ %tbl.tgroup.att;
+>
+
+<!--
+ Default declarations previously defined in this entity and
+ referenced below include:
+ ENTITY % tbl.colspec.att ""
+-->
+
+<!--doc:Specifications for a column in a table.-->
+<!ELEMENT colspec EMPTY >
+
+<!ATTLIST colspec
+ colnum NMTOKEN #IMPLIED
+ colname NMTOKEN #IMPLIED
+ colwidth CDATA #IMPLIED
+ colsep %yesorno; #IMPLIED
+ rowsep %yesorno; #IMPLIED
+ align (left|right|center|justify|char) #IMPLIED
+ char CDATA #IMPLIED
+ charoff NMTOKEN #IMPLIED
+ %tbl.colspec.att;
+>
+
+<!--
+ Default declarations previously defined in this entity and
+ referenced below include:
+ ENTITY % tbl.thead.att ""
+-->
+
+<!--doc:A table header consisting of one or more rows.-->
+<!ELEMENT thead (row+)>
+
+<!ATTLIST thead
+ valign (top|middle|bottom) #IMPLIED
+ %tbl.thead.att;
+>
+
+<!--
+ Default declarations previously defined in this entity and
+ referenced below include:
+ ENTITY % tbl.tbody.att ""
+-->
+
+<!--doc:A wrapper for the rows of a table or informal table.-->
+<!ELEMENT tbody (%tbl.tbody.mdl;)>
+
+<!ATTLIST tbody
+ valign (top|middle|bottom) #IMPLIED
+ %tbl.tbody.att;
+>
+
+<!--
+ Default declarations previously defined in this entity and
+ referenced below include:
+ ENTITY % tbl.row.mdl "entry+"
+ ENTITY % tbl.row.att ""
+-->
+
+<!--doc:A row in a table.-->
+<!ELEMENT row (%tbl.row.mdl;)>
+
+<!ATTLIST row
+ rowsep %yesorno; #IMPLIED
+ valign (top|middle|bottom) #IMPLIED
+ %tbl.row.att;
+>
+
+
+<!--
+ Default declarations previously defined in this entity and
+ referenced below include:
+ ENTITY % paracon "#PCDATA"
+ ENTITY % tbl.entry.mdl "(%paracon;)*"
+ ENTITY % tbl.entry.att ""
+-->
+
+<!--doc:A cell in a table.-->
+<!ELEMENT entry (%tbl.entry.mdl;)*>
+
+<!ATTLIST entry
+ colname NMTOKEN #IMPLIED
+ namest NMTOKEN #IMPLIED
+ nameend NMTOKEN #IMPLIED
+ morerows NMTOKEN #IMPLIED
+ colsep %yesorno; #IMPLIED
+ rowsep %yesorno; #IMPLIED
+ align (left|right|center|justify|char) #IMPLIED
+ char CDATA #IMPLIED
+ charoff NMTOKEN #IMPLIED
+ valign (top|middle|bottom) #IMPLIED
+ %tbl.entry.att;
+>
diff --git a/doc/editor_configs/serna/scons/scons.csl b/doc/editor_configs/serna/scons/scons.csl
new file mode 100644
index 0000000..da15f71
--- /dev/null
+++ b/doc/editor_configs/serna/scons/scons.csl
@@ -0,0 +1,199 @@
+<?xml version='1.0'?>
+<csl:stylesheet xmlns:csl="http://www.syntext.com/Extensions/CSL-1.0">
+
+ <csl:profile icon="ContentMap_small" inscription="ContentMap"/>
+ <csl:profile name="toc" inscription="TOC"/>
+
+ <csl:define name="any.title.template">
+ <csl:template match="%elem"
+ font-style="italic" font-weight="bold">
+ <csl:number level="multiple"
+ count="section|sect1|sect2|sect3|
+ sect4|sect5|simplesect"
+ from="chapter|article|book|part"
+ format="1."/>
+ <csl:number level="any" count="%elem" format="1. "/>
+ </csl:template>
+ </csl:define>
+
+ <csl:use ref="any.title.template" elem="figure"/>
+ <csl:use ref="any.title.template" elem="table"/>
+ <csl:use ref="any.title.template" elem="equation"/>
+ <csl:use ref="any.title.template" elem="example"/>
+
+ <csl:template match="synopfragment | paramdef">
+ <csl:number format="1"/>
+ <csl:when-closed>
+ <csl:number format="1"/>
+ <csl:text> </csl:text>
+ <csl:collect-text/>
+ </csl:when-closed>
+ </csl:template>
+
+ <!-- Ordered lists -->
+ <csl:define name="ordlist.template">
+ <csl:template match="orderedlist/listitem[
+ (count(ancestor-or-self::orderedlist) mod 5) = %depth]">
+ <csl:number level="single" count="listitem" format="%fmt"/>
+ <csl:when-closed>
+ <csl:number level="single" count="listitem" format="%fmt"/>
+ <csl:text> </csl:text>
+ <csl:collect-text/>
+ </csl:when-closed>
+ </csl:template>
+ </csl:define>
+ <csl:use ref="ordlist.template" depth="0" fmt="I."/>
+ <csl:use ref="ordlist.template" depth="1" fmt="1."/>
+ <csl:use ref="ordlist.template" depth="2" fmt="a."/>
+ <csl:use ref="ordlist.template" depth="3" fmt="i."/>
+ <csl:use ref="ordlist.template" depth="4" fmt="A."/>
+
+ <!-- Steps -->
+ <csl:template match="step[count(../step) = 1]">
+ <csl:text>&#x2022;</csl:text>
+ </csl:template>
+
+ <csl:define name="step.template">
+ <csl:template
+ match="step[(count(ancestor-or-self::step) mod 5) = %depth]">
+ <csl:number count="step" format="%fmt"/>
+ <csl:when-closed>
+ <csl:number count="step" format="%fmt"/>
+ <csl:text> </csl:text>
+ <csl:collect-text/>
+ </csl:when-closed>
+ </csl:template>
+ </csl:define>
+ <csl:use ref="step.template" depth="0" fmt="I."/>
+ <csl:use ref="step.template" depth="1" fmt="1."/>
+ <csl:use ref="step.template" depth="2" fmt="a."/>
+ <csl:use ref="step.template" depth="3" fmt="i."/>
+ <csl:use ref="step.template" depth="4" fmt="A."/>
+
+ <!-- Appendix Titles -->
+ <csl:template match="appendix//chapter | appendix//section |
+ appendix//sect1 | appendix//sect2 |
+ appendix//sect3 | appendix//sect4 |
+ appendix//sect5 | appendix//simplesect"
+ font-style="italic" font-weight="bold">
+ <csl:number level="multiple"
+ count="chapter|section|sect1|sect2|sect3|
+ sect4|sect5|simplesect"
+ format="A."/>
+ <csl:when-closed>
+ <csl:number level="multiple"
+ count="chapter|section|sect1|sect2|sect3|
+ sect4|sect5|simplesect"
+ format="A."/>
+ <csl:text> </csl:text>
+ <csl:collect-text select="title"/>
+ </csl:when-closed>
+ </csl:template>
+
+ <csl:template profiles="toc"
+ match="appendix//chapter | appendix//section |
+ appendix//sect1 | appendix//sect2 |
+ appendix//sect3 | appendix//sect4 |
+ appendix//sect5 | appendix//simplesect">
+ <csl:number level="multiple"
+ count="chapter|section|sect1|sect2|sect3|
+ sect4|sect5|simplesect"
+ format="A."/>
+ <csl:text> </csl:text>
+ <csl:collect-text select="title|subtitle"/>
+ </csl:template>
+
+ <!-- Chapter, Section, etc numbering -->
+ <csl:template match="section | sect1 | sect2 |
+ sect3 | sect4 | sect5 | simplesect"
+ font-style="italic" font-weight="bold">
+ <csl:number level="multiple"
+ count="section|sect1|sect2|sect3|
+ sect4|sect5|simplesect"
+ format="1."/>
+ <csl:when-closed>
+ <csl:number level="multiple"
+ count="section|sect1|sect2|sect3|
+ sect4|sect5|simplesect"
+ format="1."/>
+ <csl:text> </csl:text>
+ <csl:collect-text select="title"/>
+ </csl:when-closed>
+ </csl:template>
+
+ <csl:template match="chapter|preface"
+ font-style="italic" font-weight="bold">
+ <csl:number level="any"
+ count="chapter|preface" format="1."/>
+ <csl:when-closed>
+ <csl:number level="any"
+ count="chapter|preface" format="1."/>
+ <csl:text> </csl:text>
+ <csl:collect-text select="title"/>
+ </csl:when-closed>
+ </csl:template>
+
+ <!-- Chapter, Section, etc titles -->
+ <csl:template match="chapter/title | section/title | sect1/title |
+ sect2/title | sect3/title | sect4/title |
+ sect5/title | simplesect/title"
+ font-style="italic" font-weight="bold">
+ <csl:collect-text/>
+ </csl:template>
+
+ <!-- Tables -->
+ <csl:template match="colspec" font-style="italic">
+ <csl:value-of select="concat(@colname, ' {', @colwidth, '}')"/>
+ </csl:template>
+
+ <!-- Defaults -->
+ <csl:template match="*" mixed-only="true">
+ <csl:collect-text/>
+ </csl:template>
+
+ <csl:template match="*">
+ <csl:when-closed>
+ <csl:collect-text/>
+ </csl:when-closed>
+ </csl:template>
+
+ <csl:template match="processing-instruction()|
+ processing-instruction('se:choice')|comment()"/>
+
+ <!-- TOC Profile -->
+
+ <csl:template profiles="toc" match="figure|table|chapter|equation"
+ font-style="italic">
+ <csl:number level="any" format="1. "/>
+ <csl:collect-text select="title"/>
+ </csl:template>
+
+ <csl:template profiles="toc" match="section | sect1 | sect2 |
+ sect3 | sect4 | sect5 | simplesect">
+ <csl:number level="multiple"
+ count="section|sect1|sect2|sect3|
+ sect4|sect5|simplesect"
+ format="1."/>
+ <csl:text> </csl:text>
+ <csl:collect-text select="title|subtitle"/>
+ </csl:template>
+
+
+ <csl:template profiles="toc"
+ match="artheader|appendix|article|bookinfo|bibliography|
+ bibliodiv|book|colophon|docinfo|dedication|equation|
+ glossary|index|objectinfo|partintro|part|
+ preface|procedure|reference|refentry|refsect1|
+ refsect2|refsect3|refsect1info|refsect2info|
+ refsect3info|set|setindex|setinfo|sect1info|sect2info|
+ sect3info|sect4info|sect5info|qandaset">
+ <csl:collect-text select="title|subtitle"/>
+ </csl:template>
+
+ <csl:template match="/*" profiles="toc">
+ <csl:when-closed>
+ <csl:collect-text/>
+ </csl:when-closed>
+ </csl:template>
+
+</csl:stylesheet>
diff --git a/doc/editor_configs/serna/scons/scons.sdt b/doc/editor_configs/serna/scons/scons.sdt
new file mode 100644
index 0000000..4e35356
--- /dev/null
+++ b/doc/editor_configs/serna/scons/scons.sdt
@@ -0,0 +1,95 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE t:document-template PUBLIC "-//Syntext//DTD Syntext Document Template V2.0//EN" "doctemplate.dtd" []>
+<t:document-template xmlns:t="http://www.syntext.com/Extensions/DocTemplate-2.0">
+ <t:name>SCons Docbook</t:name>
+ <t:category>SCons Docbook V4.5-Based extension V1.0</t:category>
+
+ <t:xml-stylesheet>$SERNA_TEMPLATE_DIR/docbook-xsl-serna/docbook.xsl</t:xml-stylesheet>
+ <t:xml-schema>$SERNA_TEMPLATE_DIR/xsd/scons.xsd</t:xml-schema>
+ <t:dtd-pubid>-//SCONS//DTD DocBook V4.5-Based extension V1.0//EN</t:dtd-pubid>
+ <t:dtd-sysid>http://www.scons.org/dtd/scons.dtd</t:dtd-sysid>
+
+ <t:csl-stylesheet>$SERNA_TEMPLATE_DIR/scons.csl</t:csl-stylesheet>
+
+ <t:xml-catalogs>$SERNA_TEMPLATE_DIR/catalog.xml</t:xml-catalogs>
+
+ <t:folding-rules>
+ <t:elems-per-page>60</t:elems-per-page>
+ <t:fold-if-large>appendix article book chapter glossary index qandaset reference section refsect1 refsect2 refsect3 sect1 sect2 sect3 sect4 sect5 section set</t:fold-if-large>
+ <t:folding-list>appendix article bibliodiv bibliography bibliomisc biblioset book bookinfo chapter example figure glossary glossdiv index indexdiv qandadiv qandaset reference refsect1 refsect2 refsect3 sect1 sect2 sect3 sect4 sect5 section set table </t:folding-list>
+ </t:folding-rules>
+
+ <t:category-pixmap>docbook_4_5_template</t:category-pixmap>
+
+ <t:element-help>$SERNA_TEMPLATE_DIR/docbook-help/docbook.sehelp</t:element-help>
+
+ <t:spellcheck>
+ <t:skip-elements> programlisting literal sgmltag keycombo filename methodname methodparam classname command computeroutput database email envar function keycode varname structname </t:skip-elements>
+ </t:spellcheck>
+
+ <t:publish>
+ <t:name>htmlSingle</t:name>
+ <t:inscription>HTML (Single Chunk)</t:inscription>
+ <t:extension>htm</t:extension>
+ <t:script>runXslt</t:script>
+ <t:stylesheet>$SERNA_STYLESHEETS/docbook-xsl-1.68.1/html/docbook.xsl</t:stylesheet>
+ </t:publish>
+ <t:publish>
+ <t:name>htmlMulti</t:name>
+ <t:inscription>HTML (Multiple Chunks)</t:inscription>
+ <t:extension>htm</t:extension>
+ <t:script>runXslt</t:script>
+ <t:stylesheet>$SERNA_STYLESHEETS/docbook-xsl-1.68.1/html/chunk.xsl</t:stylesheet>
+ </t:publish>
+
+ <t:publish>
+ <t:name>pdfFop</t:name>
+ <t:inscription>PDF (with FOP)</t:inscription>
+ <t:extension>pdf</t:extension>
+ <t:script>runFop</t:script>
+ <t:stylesheet>$SERNA_STYLESHEETS/docbook-xsl-1.68.1/fo/docbook.xsl</t:stylesheet>
+ </t:publish>
+ <t:publish>
+ <t:name>pdfXep</t:name>
+ <t:inscription>PDF (with XEP)</t:inscription>
+ <t:extension>pdf</t:extension>
+ <t:script>runXep</t:script>
+ <t:stylesheet>$SERNA_STYLESHEETS/docbook-xsl-1.68.1/fo/docbook.xsl</t:stylesheet>
+ </t:publish>
+
+ <t:root-elements>appendix article book.class chapter part section set reference</t:root-elements>
+
+ <t:load-plugins>TablePlugin</t:load-plugins>
+
+ <t:template-showup-priority>11</t:template-showup-priority>
+
+ <t:dtd-guess-string>//SCONS//DTD DocBook</t:dtd-guess-string>
+
+ <t:document-skeleton>
+ <t:name>All</t:name>
+ </t:document-skeleton>
+ <t:document-skeleton>
+ <t:name>Article</t:name>
+ <t:content>
+ <article>
+ <title/>
+ </article>
+ </t:content>
+ </t:document-skeleton>
+ <t:document-skeleton>
+ <t:name>Chapter</t:name>
+ <t:content>
+ <chapter>
+ <title/>
+ </chapter>
+ </t:content>
+ </t:document-skeleton>
+ <t:document-skeleton>
+ <t:name>Book</t:name>
+ <t:content>
+ <book>
+ <title/>
+ </book>
+ </t:content>
+ </t:document-skeleton>
+</t:document-template>
diff --git a/doc/editor_configs/serna/scons/xsd/calstblx.xsd b/doc/editor_configs/serna/scons/xsd/calstblx.xsd
new file mode 100644
index 0000000..6f899a3
--- /dev/null
+++ b/doc/editor_configs/serna/scons/xsd/calstblx.xsd
@@ -0,0 +1,390 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- ...................................................................... -->
+<!-- SCons DocBook V4.5-Based extension V1.0 XML CALS Table Model V4.5 .... -->
+<!-- File calstblx.xsd .................................................... -->
+
+<!-- Copyright (c) 2001-7,2010,2011,2012 The SCons Foundation
+
+ Permission is hereby granted, free of charge, to any person obtaining
+ a copy of this software and associated documentation files (the
+ "Software"), to deal in the Software without restriction, including
+ without limitation the rights to use, copy, modify, merge, publish,
+ distribute, sublicense, and/or sell copies of the Software, and to
+ permit persons to whom the Software is furnished to do so, subject to
+ the following conditions:
+
+ The above copyright notice and this permission notice shall be included
+ in all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
+ KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+ WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+ This DTD extension is based on the DocBook CALS Table Model V4.5 with:
+
+ Copyright 1992-2002 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).
+
+ This DTD is based on the CALS Table Model
+ PUBLIC "-//USA-DOD//DTD Table Model 951010//EN"
+
+ $Id: calstblx.dtd 6340 2006-10-03 13:23:24Z nwalsh $
+
+ 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/.
+ For the modified SCons extension files
+
+ scons.xsd, dbpoolx.xsd,
+
+ you can write to its developer mailing list. Check out
+ http://www.scons.org/ and http://www.scons.org/lists.php.
+
+-->
+<!-- ...................................................................... -->
+<!--
+ This module contains the definitions for the CALS Table Model
+ converted to XML. It has been modified slightly for use in the
+ combined HTML/CALS models supported by DocBook V4.5.
+-->
+<!--
+ These definitions are not directly related to the table model, but are
+ used in the default CALS table model and are usually defined elsewhere
+ (and prior to the inclusion of this table module) in a CALS DTD.
+-->
+<!--
+ no if zero(s),
+ yes if any other digits value
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <xs:simpleType name="yesorno">
+ <xs:restriction base="xs:string"/>
+ </xs:simpleType>
+ <xs:group name="titles">
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ </xs:sequence>
+ </xs:group>
+ <!-- default for use in entry content -->
+ <!--
+ The parameter entities as defined below provide the CALS table model
+ as published (as part of the Example DTD) in MIL-HDBK-28001.
+
+ These following declarations provide the CALS-compliant default definitions
+ for these entities. However, these entities can and should be redefined
+ (by giving the appropriate parameter entity declaration(s) prior to the
+ reference to this Table Model declaration set entity) to fit the needs
+ of the current application.
+ -->
+ <xs:group name="tbl.table-titles.mdl">
+ <xs:sequence>
+ <xs:group ref="titles"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="tbl.table-main.mdl">
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="tgroup"/>
+ <xs:element maxOccurs="unbounded" ref="graphic"/>
+ </xs:choice>
+ </xs:group>
+ <xs:complexType name="tbl.tgroup.mdl">
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="colspec"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="spanspec"/>
+ <xs:element minOccurs="0" ref="thead"/>
+ <xs:element minOccurs="0" ref="tfoot"/>
+ <xs:element ref="tbody"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:attributeGroup name="tbl.tgroup.att">
+ <xs:attribute name="tgroupstyle"/>
+ </xs:attributeGroup>
+ <xs:complexType name="tbl.row.mdl">
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="entry"/>
+ <xs:element ref="entrytbl"/>
+ </xs:choice>
+ </xs:complexType>
+ <xs:complexType name="tbl.entrytbl.mdl">
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="colspec"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="spanspec"/>
+ <xs:element minOccurs="0" ref="thead"/>
+ <xs:element ref="tbody"/>
+ </xs:sequence>
+ </xs:complexType>
+ <!-- ===== Element and attribute declarations follow. ===== -->
+ <!-- doc:A formal table in a document. -->
+ <xs:element name="table" substitutionGroup="formal.class">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="tbl.table.mdl">
+ <xs:attributeGroup ref="table.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:attributeGroup name="table.attlist">
+ <xs:attribute name="frame" type="tbl.frame.attval"/>
+ <xs:attribute name="colsep" type="yesorno"/>
+ <xs:attribute name="rowsep" type="yesorno"/>
+ <xs:attributeGroup ref="tbl.table.att"/>
+ <xs:attributeGroup ref="bodyatt"/>
+ <xs:attributeGroup ref="secur"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for the main content of a table, or part of a table. -->
+ <xs:element name="tgroup">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="tbl.tgroup.mdl">
+ <xs:attributeGroup ref="tgroup.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:attributeGroup name="tgroup.attlist">
+ <xs:attribute name="cols" use="required"/>
+ <xs:attributeGroup ref="tbl.tgroup.att"/>
+ <xs:attribute name="colsep" type="yesorno"/>
+ <xs:attribute name="rowsep" type="yesorno"/>
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="left"/>
+ <xs:enumeration value="right"/>
+ <xs:enumeration value="center"/>
+ <xs:enumeration value="justify"/>
+ <xs:enumeration value="char"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="char"/>
+ <xs:attribute name="charoff"/>
+ <xs:attributeGroup ref="secur"/>
+ </xs:attributeGroup>
+ <!-- doc:Specifications for a column in a table. -->
+ <xs:element name="colspec">
+ <xs:complexType>
+ <xs:attributeGroup ref="colspec.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:attributeGroup name="colspec.attlist">
+ <xs:attribute name="colnum"/>
+ <xs:attribute name="colname"/>
+ <xs:attribute name="colwidth"/>
+ <xs:attribute name="colsep" type="yesorno"/>
+ <xs:attribute name="rowsep" type="yesorno"/>
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="left"/>
+ <xs:enumeration value="right"/>
+ <xs:enumeration value="center"/>
+ <xs:enumeration value="justify"/>
+ <xs:enumeration value="char"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="char"/>
+ <xs:attribute name="charoff"/>
+ </xs:attributeGroup>
+ <!-- doc:Formatting information for a spanned column in a table. -->
+ <xs:element name="spanspec">
+ <xs:complexType>
+ <xs:attributeGroup ref="spanspec.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:attributeGroup name="spanspec.attlist">
+ <xs:attribute name="namest" use="required"/>
+ <xs:attribute name="nameend" use="required"/>
+ <xs:attribute name="spanname" use="required"/>
+ <xs:attribute name="colsep" type="yesorno"/>
+ <xs:attribute name="rowsep" type="yesorno"/>
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="left"/>
+ <xs:enumeration value="right"/>
+ <xs:enumeration value="center"/>
+ <xs:enumeration value="justify"/>
+ <xs:enumeration value="char"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="char"/>
+ <xs:attribute name="charoff"/>
+ </xs:attributeGroup>
+ <!-- doc:A table header consisting of one or more rows. -->
+ <xs:element name="thead">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="tbl.hdft.mdl">
+ <xs:attributeGroup ref="thead.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:attributeGroup name="thead.attlist">
+ <xs:attribute name="valign">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="top"/>
+ <xs:enumeration value="middle"/>
+ <xs:enumeration value="bottom"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="secur"/>
+ </xs:attributeGroup>
+ <!-- doc:A table footer consisting of one or more rows. -->
+ <xs:element name="tfoot">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="tbl.hdft.mdl">
+ <xs:attributeGroup ref="tfoot.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:attributeGroup name="tfoot.attlist">
+ <xs:attribute name="valign">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="top"/>
+ <xs:enumeration value="middle"/>
+ <xs:enumeration value="bottom"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="secur"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for the rows of a table or informal table. -->
+ <xs:element name="tbody">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="tbl.tbody.mdl">
+ <xs:attributeGroup ref="tbody.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:attributeGroup name="tbody.attlist">
+ <xs:attribute name="valign">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="top"/>
+ <xs:enumeration value="middle"/>
+ <xs:enumeration value="bottom"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="secur"/>
+ </xs:attributeGroup>
+ <!-- doc:A row in a table. -->
+ <xs:element name="row">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="tbl.row.mdl">
+ <xs:attributeGroup ref="row.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:attributeGroup name="row.attlist">
+ <xs:attribute name="rowsep" type="yesorno"/>
+ <xs:attribute name="valign">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="top"/>
+ <xs:enumeration value="middle"/>
+ <xs:enumeration value="bottom"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="secur"/>
+ </xs:attributeGroup>
+ <!-- doc:A subtable appearing in place of an Entry in a table. -->
+ <xs:element name="entrytbl">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="tbl.entrytbl.mdl">
+ <xs:attributeGroup ref="entrytbl.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:attributeGroup name="entrytbl.attlist">
+ <xs:attribute name="cols" use="required"/>
+ <xs:attributeGroup ref="tbl.tgroup.att"/>
+ <xs:attribute name="colname"/>
+ <xs:attribute name="spanname"/>
+ <xs:attribute name="namest"/>
+ <xs:attribute name="nameend"/>
+ <xs:attribute name="colsep" type="yesorno"/>
+ <xs:attribute name="rowsep" type="yesorno"/>
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="left"/>
+ <xs:enumeration value="right"/>
+ <xs:enumeration value="center"/>
+ <xs:enumeration value="justify"/>
+ <xs:enumeration value="char"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="char"/>
+ <xs:attribute name="charoff"/>
+ <xs:attributeGroup ref="secur"/>
+ </xs:attributeGroup>
+ <!-- doc:A cell in a table. -->
+ <xs:element name="entry">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="tbl.entry.mdl"/>
+ <xs:attributeGroup ref="entry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:attributeGroup name="entry.attlist">
+ <xs:attribute name="colname"/>
+ <xs:attribute name="namest"/>
+ <xs:attribute name="nameend"/>
+ <xs:attribute name="spanname"/>
+ <xs:attribute name="morerows"/>
+ <xs:attribute name="colsep" type="yesorno"/>
+ <xs:attribute name="rowsep" type="yesorno"/>
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="left"/>
+ <xs:enumeration value="right"/>
+ <xs:enumeration value="center"/>
+ <xs:enumeration value="justify"/>
+ <xs:enumeration value="char"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="char"/>
+ <xs:attribute name="charoff"/>
+ <xs:attribute name="rotate" type="yesorno"/>
+ <xs:attribute name="valign">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="top"/>
+ <xs:enumeration value="middle"/>
+ <xs:enumeration value="bottom"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="secur"/>
+ </xs:attributeGroup>
+</xs:schema>
+<!-- End of SCons DocBook V4.5-Based extension V1.0 XML CALS Table Model V4.5 ... -->
+<!-- ............................................................................ -->
diff --git a/doc/editor_configs/serna/scons/xsd/dbhierx.xsd b/doc/editor_configs/serna/scons/xsd/dbhierx.xsd
new file mode 100644
index 0000000..af99df6
--- /dev/null
+++ b/doc/editor_configs/serna/scons/xsd/dbhierx.xsd
@@ -0,0 +1,2186 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- .............................................................................. -->
+<!-- SCons DocBook V4.5-Based extension V1.0 XML document hierarchy module V4.5 ... -->
+<!-- File dbhierx.xsd ............................................................. -->
+<!-- Copyright (c) 2001-7,2010,2011,2012 The SCons Foundation
+
+ Permission is hereby granted, free of charge, to any person obtaining
+ a copy of this software and associated documentation files (the
+ "Software"), to deal in the Software without restriction, including
+ without limitation the rights to use, copy, modify, merge, publish,
+ distribute, sublicense, and/or sell copies of the Software, and to
+ permit persons to whom the Software is furnished to do so, subject to
+ the following conditions:
+
+ The above copyright notice and this permission notice shall be included
+ in all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
+ KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+ WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+ This DTD extension is based on the DocBook document hierarchy
+ module V4.5 with:
+
+ Copyright 1992-2004 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).
+
+ $Id: dbhierx.mod 6340 2006-10-03 13:23:24Z nwalsh $
+
+ 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/.
+ For the modified SCons extension files
+
+ scons.xsd, dbpoolx.xsd,
+
+ you can write to its developer mailing list. Check out
+ http://www.scons.org/ and http://www.scons.org/lists.php.
+
+-->
+<!-- ...................................................................... -->
+<!--
+ This module contains the definitions for the overall document
+ hierarchies of DocBook documents. It covers computer documentation
+ manuals and manual fragments, as well as reference entries (such as
+ man pages) and technical journals or anthologies containing
+ articles.
+
+ This module depends on the DocBook information pool module. All
+ elements and entities referenced but not defined here are assumed
+ to be defined in the information pool module.
+
+ In DTD driver files referring to this module, please use an entity
+ declaration that uses the public identifier shown below:
+
+ <!ENTITY % dbhier PUBLIC
+ "-//OASIS//ELEMENTS DocBook Document Hierarchy V4.5//EN"
+ "dbhierx.mod">
+ %dbhier;
+
+ See the documentation for detailed information on the parameter
+ entity and module scheme used in DocBook, customizing DocBook and
+ planning for interchange, and changes made since the last release
+ of DocBook.
+-->
+<!-- ...................................................................... -->
+<!-- Entities for module inclusions ....................................... -->
+<!-- ...................................................................... -->
+<!-- Entities for element classes ......................................... -->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <xs:element name="appendix.class" abstract="true">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="beginpage"/>
+ <xs:element minOccurs="0" ref="appendixinfo"/>
+ <xs:group ref="bookcomponent.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ <xs:element minOccurs="0" ref="tocchap"/>
+ <xs:group ref="bookcomponent.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="appendix.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="article.class" abstract="true">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group minOccurs="0" ref="div.title.content"/>
+ <xs:element minOccurs="0" ref="articleinfo"/>
+ <xs:element minOccurs="0" ref="tocchap"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="lot"/>
+ <xs:group ref="bookcomponent.content"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="nav.class"/>
+ <xs:element ref="appendix.class"/>
+ <xs:element ref="colophon"/>
+ <xs:element ref="ackno"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="article.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="book.class" abstract="true">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group minOccurs="0" ref="div.title.content"/>
+ <xs:element minOccurs="0" ref="bookinfo"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="dedication"/>
+ <xs:element ref="toc"/>
+ <xs:element ref="lot"/>
+ <xs:element ref="glossary"/>
+ <xs:element ref="bibliography"/>
+ <xs:element ref="preface"/>
+ <xs:element ref="chapter.class"/>
+ <xs:element ref="reference"/>
+ <xs:element ref="part"/>
+ <xs:element ref="article.class"/>
+ <xs:element ref="appendix.class"/>
+ <xs:group ref="index.class"/>
+ <xs:element ref="colophon"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="book.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="chapter.class" abstract="true">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="beginpage"/>
+ <xs:element minOccurs="0" ref="chapterinfo"/>
+ <xs:group ref="bookcomponent.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ <xs:element minOccurs="0" ref="tocchap"/>
+ <xs:group ref="bookcomponent.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="chapter.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:group name="index.class">
+ <xs:choice>
+ <xs:element ref="index"/>
+ <xs:element ref="setindex"/>
+ </xs:choice>
+ </xs:group>
+ <xs:element name="refentry.class" abstract="true">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="beginpage"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="ndxterm.class"/>
+ <xs:element minOccurs="0" ref="refentryinfo"/>
+ <xs:element minOccurs="0" ref="refmeta"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="remark"/>
+ <xs:element ref="link.char.class"/>
+ </xs:choice>
+ <xs:element maxOccurs="unbounded" ref="refnamediv"/>
+ <xs:element minOccurs="0" ref="refsynopsisdiv"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="refsect1"/>
+ <xs:element maxOccurs="unbounded" ref="refsection"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="refentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="section.class" abstract="true">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="sectioninfo"/>
+ <xs:group ref="sect.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="divcomponent.mix"/>
+ <xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="refentry.class"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="section.class"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="simplesect"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="refentry.class"/>
+ <xs:element maxOccurs="unbounded" ref="section.class"/>
+ <xs:element maxOccurs="unbounded" ref="simplesect"/>
+ </xs:choice>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="section.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:group name="nav.class">
+ <xs:choice>
+ <xs:element ref="toc"/>
+ <xs:element ref="lot"/>
+ <xs:element ref="index"/>
+ <xs:element ref="glossary"/>
+ <xs:element ref="bibliography"/>
+ </xs:choice>
+ </xs:group>
+ <!-- Redeclaration placeholder ............................................ -->
+ <!--
+ For redeclaring entities that are declared after this point while
+ retaining their references to the entities that are declared before
+ this point
+ -->
+ <!-- ...................................................................... -->
+ <!-- Entities for element mixtures ........................................ -->
+ <xs:group name="divcomponent.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="admon.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="synop.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="informal.class"/>
+ <xs:element ref="formal.class"/>
+ <xs:element ref="compound.class"/>
+ <xs:group ref="genobj.class"/>
+ <xs:group ref="descobj.class"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="refcomponent.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="admon.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="synop.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="informal.class"/>
+ <xs:element ref="formal.class"/>
+ <xs:element ref="compound.class"/>
+ <xs:group ref="genobj.class"/>
+ <xs:group ref="descobj.class"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="indexdivcomponent.mix">
+ <xs:choice>
+ <xs:element ref="itemizedlist"/>
+ <xs:element ref="orderedlist"/>
+ <xs:element ref="variablelist"/>
+ <xs:element ref="simplelist"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="synop.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="informal.class"/>
+ <xs:element ref="anchor"/>
+ <xs:element ref="remark"/>
+ <xs:element ref="link.char.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="refname.char.mix">
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="tech.char.class"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="partcontent.mix">
+ <xs:choice>
+ <xs:element ref="appendix.class"/>
+ <xs:element ref="chapter.class"/>
+ <xs:group ref="nav.class"/>
+ <xs:element ref="article.class"/>
+ <xs:element ref="preface"/>
+ <xs:element ref="refentry.class"/>
+ <xs:element ref="reference"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="refinline.char.mix">
+ <xs:sequence>
+ <xs:choice minOccurs="0">
+ <xs:element ref="xref.char.class"/>
+ <xs:element ref="gen.char.class"/>
+ <xs:element ref="link.char.class"/>
+ <xs:element ref="tech.char.class"/>
+ <xs:group ref="base.char.class"/>
+ <xs:element ref="docinfo.char.class"/>
+ <xs:group ref="other.char.class"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="refclass.char.mix">
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="application"/>
+ </xs:sequence>
+ </xs:group>
+ <!-- Redeclaration placeholder 2 .......................................... -->
+ <!--
+ For redeclaring entities that are declared after this point while
+ retaining their references to the entities that are declared before
+ this point
+ -->
+ <!-- ...................................................................... -->
+ <!-- Entities for content models .......................................... -->
+ <xs:group name="div.title.content">
+ <xs:sequence>
+ <xs:element ref="title"/>
+ <xs:element minOccurs="0" ref="subtitle"/>
+ <xs:element minOccurs="0" ref="titleabbrev"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="bookcomponent.title.content">
+ <xs:sequence>
+ <xs:element ref="title"/>
+ <xs:element minOccurs="0" ref="subtitle"/>
+ <xs:element minOccurs="0" ref="titleabbrev"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="sect.title.content">
+ <xs:sequence>
+ <xs:element ref="title"/>
+ <xs:element minOccurs="0" ref="subtitle"/>
+ <xs:element minOccurs="0" ref="titleabbrev"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="refsect.title.content">
+ <xs:sequence>
+ <xs:element ref="title"/>
+ <xs:element minOccurs="0" ref="subtitle"/>
+ <xs:element minOccurs="0" ref="titleabbrev"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="bookcomponent.content">
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="divcomponent.mix"/>
+ <xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="sect1"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="refentry.class"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="simplesect"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="section.class"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="sect1"/>
+ <xs:element maxOccurs="unbounded" ref="refentry.class"/>
+ <xs:element maxOccurs="unbounded" ref="simplesect"/>
+ <xs:element maxOccurs="unbounded" ref="section.class"/>
+ </xs:choice>
+ </xs:choice>
+ </xs:group>
+ <!-- ...................................................................... -->
+ <!-- Set and SetInfo ...................................................... -->
+ <xs:attributeGroup name="set.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A collection of books. -->
+ <xs:element name="set">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group minOccurs="0" ref="div.title.content"/>
+ <xs:element minOccurs="0" ref="setinfo"/>
+ <xs:element minOccurs="0" ref="toc"/>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="set"/>
+ <xs:element ref="book.class"/>
+ </xs:choice>
+ <xs:element minOccurs="0" ref="setindex"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="set.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of set.element -->
+ <!-- FPI: SGML formal public identifier -->
+ <xs:attributeGroup name="set.attlist">
+ <xs:attribute name="fpi"/>
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="set.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of set.attlist -->
+ <!-- end of set.module -->
+ <xs:attributeGroup name="setinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Set. -->
+ <xs:element name="setinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="setinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of setinfo.element -->
+ <!--
+ Contents: IDs of the ToC, Books, and SetIndex that comprise
+ the set, in the order of their appearance
+ -->
+ <xs:attributeGroup name="setinfo.attlist">
+ <xs:attribute name="contents" type="xs:IDREFS"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="setinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of setinfo.attlist -->
+ <!-- end of setinfo.module -->
+ <!-- end of set.content.module -->
+ <!-- ...................................................................... -->
+ <!-- Book and BookInfo .................................................... -->
+ <xs:attributeGroup name="book.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A book. -->
+ <xs:element name="book" substitutionGroup="book.class"/>
+ <!-- end of book.element -->
+ <!-- FPI: SGML formal public identifier -->
+ <xs:attributeGroup name="book.attlist">
+ <xs:attribute name="fpi"/>
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="book.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of book.attlist -->
+ <!-- end of book.module -->
+ <xs:attributeGroup name="bookinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Book. -->
+ <xs:element name="bookinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="bookinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of bookinfo.element -->
+ <!--
+ Contents: IDs of the ToC, LoTs, Prefaces, Parts, Chapters,
+ Appendixes, References, GLossary, Bibliography, and indexes
+ comprising the Book, in the order of their appearance
+ -->
+ <xs:attributeGroup name="bookinfo.attlist">
+ <xs:attribute name="contents" type="xs:IDREFS"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="bookinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of bookinfo.attlist -->
+ <!-- end of bookinfo.module -->
+ <!-- end of book.content.module -->
+ <!-- ...................................................................... -->
+ <!-- Dedication, ToC, and LoT ............................................. -->
+ <xs:attributeGroup name="dedication.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for the dedication section of a book. -->
+ <xs:element name="dedication">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group minOccurs="0" ref="sect.title.content"/>
+ <xs:group maxOccurs="unbounded" ref="legalnotice.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="dedication.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of dedication.element -->
+ <xs:attributeGroup name="dedication.attlist">
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="dedication.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of dedication.attlist -->
+ <!-- end of dedication.module -->
+ <xs:attributeGroup name="colophon.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Text at the back of a book describing facts about its production. -->
+ <xs:element name="colophon">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group minOccurs="0" ref="sect.title.content"/>
+ <xs:group maxOccurs="unbounded" ref="textobject.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="colophon.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of colophon.element -->
+ <xs:attributeGroup name="colophon.attlist">
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="colophon.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of colophon.attlist -->
+ <!-- end of colophon.module -->
+ <xs:attributeGroup name="toc.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A table of contents. -->
+ <xs:element name="toc">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="beginpage"/>
+ <xs:group minOccurs="0" ref="bookcomponent.title.content"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="tocfront"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="tocpart"/>
+ <xs:element ref="tocchap"/>
+ </xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="tocback"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="toc.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of toc.element -->
+ <xs:attributeGroup name="toc.attlist">
+ <xs:attributeGroup ref="pagenum.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="toc.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of toc.attlist -->
+ <!-- end of toc.module -->
+ <xs:attributeGroup name="tocfront.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An entry in a table of contents for a front matter component. -->
+ <xs:element name="tocfront">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="tocfront.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of tocfront.element -->
+ <!-- to element that this entry represents -->
+ <xs:attributeGroup name="tocfront.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="linkend.attrib"/>
+ <xs:attributeGroup ref="pagenum.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="tocfront.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of tocfront.attlist -->
+ <!-- end of tocfront.module -->
+ <xs:attributeGroup name="tocentry.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A component title in a table of contents. -->
+ <xs:element name="tocentry">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="tocentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of tocentry.element -->
+ <!-- to element that this entry represents -->
+ <xs:attributeGroup name="tocentry.attlist">
+ <xs:attributeGroup ref="linkend.attrib"/>
+ <xs:attributeGroup ref="pagenum.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="tocentry.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of tocentry.attlist -->
+ <!-- end of tocentry.module -->
+ <xs:attributeGroup name="tocpart.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An entry in a table of contents for a part of a book. -->
+ <xs:element name="tocpart">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="tocentry"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="tocchap"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="tocpart.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of tocpart.element -->
+ <xs:attributeGroup name="tocpart.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="tocpart.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of tocpart.attlist -->
+ <!-- end of tocpart.module -->
+ <xs:attributeGroup name="tocchap.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An entry in a table of contents for a component in the body of a document. -->
+ <xs:element name="tocchap">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="tocentry"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="toclevel1"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="tocchap.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of tocchap.element -->
+ <xs:attributeGroup name="tocchap.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="tocchap.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of tocchap.attlist -->
+ <!-- end of tocchap.module -->
+ <xs:attributeGroup name="toclevel1.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A top-level entry within a table of contents entry for a chapter-like component. -->
+ <xs:element name="toclevel1">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="tocentry"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="toclevel2"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="toclevel1.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of toclevel1.element -->
+ <xs:attributeGroup name="toclevel1.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="toclevel1.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of toclevel1.attlist -->
+ <!-- end of toclevel1.module -->
+ <xs:attributeGroup name="toclevel2.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A second-level entry within a table of contents entry for a chapter-like component. -->
+ <xs:element name="toclevel2">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="tocentry"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="toclevel3"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="toclevel2.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of toclevel2.element -->
+ <xs:attributeGroup name="toclevel2.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="toclevel2.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of toclevel2.attlist -->
+ <!-- end of toclevel2.module -->
+ <xs:attributeGroup name="toclevel3.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A third-level entry within a table of contents entry for a chapter-like component. -->
+ <xs:element name="toclevel3">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="tocentry"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="toclevel4"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="toclevel3.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of toclevel3.element -->
+ <xs:attributeGroup name="toclevel3.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="toclevel3.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of toclevel3.attlist -->
+ <!-- end of toclevel3.module -->
+ <xs:attributeGroup name="toclevel4.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A fourth-level entry within a table of contents entry for a chapter-like component. -->
+ <xs:element name="toclevel4">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="tocentry"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="toclevel5"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="toclevel4.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of toclevel4.element -->
+ <xs:attributeGroup name="toclevel4.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="toclevel4.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of toclevel4.attlist -->
+ <!-- end of toclevel4.module -->
+ <xs:attributeGroup name="toclevel5.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A fifth-level entry within a table of contents entry for a chapter-like component. -->
+ <xs:element name="toclevel5">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="tocentry"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="toclevel5.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of toclevel5.element -->
+ <xs:attributeGroup name="toclevel5.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="toclevel5.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of toclevel5.attlist -->
+ <!-- end of toclevel5.module -->
+ <xs:attributeGroup name="tocback.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An entry in a table of contents for a back matter component. -->
+ <xs:element name="tocback">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="tocback.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of tocback.element -->
+ <!-- to element that this entry represents -->
+ <xs:attributeGroup name="tocback.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="linkend.attrib"/>
+ <xs:attributeGroup ref="pagenum.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="tocback.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of tocback.attlist -->
+ <!-- end of tocback.module -->
+ <!-- end of toc.content.module -->
+ <xs:attributeGroup name="lot.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A list of the titles of formal objects (as tables or figures) in a document. -->
+ <xs:element name="lot">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="beginpage"/>
+ <xs:group minOccurs="0" ref="bookcomponent.title.content"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="lotentry"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="lot.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of lot.element -->
+ <xs:attributeGroup name="lot.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="lot.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of lot.attlist -->
+ <!-- end of lot.module -->
+ <xs:attributeGroup name="lotentry.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An entry in a list of titles. -->
+ <xs:element name="lotentry">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="lotentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of lotentry.element -->
+ <!--
+ SrcCredit: Information about the source of the entry,
+ as for a list of illustrations
+ -->
+ <!-- linkend: to element that this entry represents -->
+ <xs:attributeGroup name="lotentry.attlist">
+ <xs:attributeGroup ref="linkend.attrib"/>
+ <xs:attributeGroup ref="pagenum.attrib"/>
+ <xs:attribute name="srccredit"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="lotentry.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of lotentry.attlist -->
+ <!-- end of lotentry.module -->
+ <!-- end of lot.content.module -->
+ <!-- ...................................................................... -->
+ <!-- Appendix, Chapter, Part, Preface, Reference, PartIntro ............... -->
+ <xs:attributeGroup name="appendix.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An appendix in a Book or Article. -->
+ <xs:element name="appendix" substitutionGroup="appendix.class"/>
+ <!-- end of appendix.element -->
+ <xs:attributeGroup name="appendix.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="appendix.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of appendix.attlist -->
+ <!-- end of appendix.module -->
+ <xs:attributeGroup name="chapter.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A chapter, as of a book. -->
+ <xs:element name="chapter" substitutionGroup="chapter.class"/>
+ <!-- end of chapter.element -->
+ <xs:attributeGroup name="chapter.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="chapter.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of chapter.attlist -->
+ <!-- end of chapter.module -->
+ <!--
+ Note that Part was to have its content model reduced in V4.5. This
+ change will not be made after all.
+ -->
+ <xs:attributeGroup name="part.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A division in a book. -->
+ <xs:element name="part">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="beginpage"/>
+ <xs:element minOccurs="0" ref="partinfo"/>
+ <xs:group ref="bookcomponent.title.content"/>
+ <xs:element minOccurs="0" ref="partintro"/>
+ <xs:group maxOccurs="unbounded" ref="partcontent.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="part.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of part.element -->
+ <xs:attributeGroup name="part.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="part.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of part.attlist -->
+ <!-- ELEMENT PartIntro (defined below) -->
+ <!-- end of part.module -->
+ <xs:attributeGroup name="preface.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Introductory matter preceding the first chapter of a book. -->
+ <xs:element name="preface">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="beginpage"/>
+ <xs:element minOccurs="0" ref="prefaceinfo"/>
+ <xs:group ref="bookcomponent.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ <xs:element minOccurs="0" ref="tocchap"/>
+ <xs:group ref="bookcomponent.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="preface.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of preface.element -->
+ <xs:attributeGroup name="preface.attlist">
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="preface.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of preface.attlist -->
+ <!-- end of preface.module -->
+ <xs:attributeGroup name="reference.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A collection of reference entries. -->
+ <xs:element name="reference">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="beginpage"/>
+ <xs:element minOccurs="0" ref="referenceinfo"/>
+ <xs:group ref="bookcomponent.title.content"/>
+ <xs:element minOccurs="0" ref="partintro"/>
+ <xs:element maxOccurs="unbounded" ref="refentry.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="reference.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of reference.element -->
+ <xs:attributeGroup name="reference.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="reference.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of reference.attlist -->
+ <!-- ELEMENT PartIntro (defined below) -->
+ <!-- end of reference.module -->
+ <xs:attributeGroup name="partintro.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An introduction to the contents of a part. -->
+ <xs:element name="partintro">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group minOccurs="0" ref="div.title.content"/>
+ <xs:group ref="bookcomponent.content"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="partintro.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of partintro.element -->
+ <xs:attributeGroup name="partintro.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="partintro.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of partintro.attlist -->
+ <!-- end of partintro.module -->
+ <!-- ...................................................................... -->
+ <!-- Other Info elements .................................................. -->
+ <xs:attributeGroup name="appendixinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for an Appendix. -->
+ <xs:element name="appendixinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="appendixinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of appendixinfo.element -->
+ <xs:attributeGroup name="appendixinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="appendixinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of appendixinfo.attlist -->
+ <!-- end of appendixinfo.module -->
+ <xs:attributeGroup name="bibliographyinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Bibliography. -->
+ <xs:element name="bibliographyinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="bibliographyinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of bibliographyinfo.element -->
+ <xs:attributeGroup name="bibliographyinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="bibliographyinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of bibliographyinfo.attlist -->
+ <!-- end of bibliographyinfo.module -->
+ <xs:attributeGroup name="chapterinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Chapter. -->
+ <xs:element name="chapterinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="chapterinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of chapterinfo.element -->
+ <xs:attributeGroup name="chapterinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="chapterinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of chapterinfo.attlist -->
+ <!-- end of chapterinfo.module -->
+ <xs:attributeGroup name="glossaryinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Glossary. -->
+ <xs:element name="glossaryinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="glossaryinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of glossaryinfo.element -->
+ <xs:attributeGroup name="glossaryinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="glossaryinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of glossaryinfo.attlist -->
+ <!-- end of glossaryinfo.module -->
+ <xs:attributeGroup name="indexinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for an Index. -->
+ <xs:element name="indexinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="indexinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of indexinfo.element -->
+ <xs:attributeGroup name="indexinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="indexinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of indexinfo.attlist -->
+ <!-- end of indexinfo.module -->
+ <xs:attributeGroup name="setindexinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a SetIndex. -->
+ <xs:element name="setindexinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="setindexinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of setindexinfo.element -->
+ <xs:attributeGroup name="setindexinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="setindexinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of setindexinfo.attlist -->
+ <!-- end of setindexinfo.module -->
+ <xs:attributeGroup name="partinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Part. -->
+ <xs:element name="partinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="partinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of partinfo.element -->
+ <xs:attributeGroup name="partinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="partinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of partinfo.attlist -->
+ <!-- end of partinfo.module -->
+ <xs:attributeGroup name="prefaceinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Preface. -->
+ <xs:element name="prefaceinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="prefaceinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of prefaceinfo.element -->
+ <xs:attributeGroup name="prefaceinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="prefaceinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of prefaceinfo.attlist -->
+ <!-- end of prefaceinfo.module -->
+ <xs:attributeGroup name="refentryinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Refentry. -->
+ <xs:element name="refentryinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="refentryinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refentryinfo.element -->
+ <xs:attributeGroup name="refentryinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refentryinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refentryinfo.attlist -->
+ <!-- end of refentryinfo.module -->
+ <xs:attributeGroup name="refsectioninfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a refsection. -->
+ <xs:element name="refsectioninfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="refsectioninfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refsectioninfo.element -->
+ <xs:attributeGroup name="refsectioninfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refsectioninfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refsectioninfo.attlist -->
+ <!-- end of refsectioninfo.module -->
+ <xs:attributeGroup name="refsect1info.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a RefSect1. -->
+ <xs:element name="refsect1info">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="refsect1info.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refsect1info.element -->
+ <xs:attributeGroup name="refsect1info.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refsect1info.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refsect1info.attlist -->
+ <!-- end of refsect1info.module -->
+ <xs:attributeGroup name="refsect2info.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a RefSect2. -->
+ <xs:element name="refsect2info">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="refsect2info.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refsect2info.element -->
+ <xs:attributeGroup name="refsect2info.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refsect2info.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refsect2info.attlist -->
+ <!-- end of refsect2info.module -->
+ <xs:attributeGroup name="refsect3info.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a RefSect3. -->
+ <xs:element name="refsect3info">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="refsect3info.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refsect3info.element -->
+ <xs:attributeGroup name="refsect3info.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refsect3info.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refsect3info.attlist -->
+ <!-- end of refsect3info.module -->
+ <xs:attributeGroup name="refsynopsisdivinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a RefSynopsisDiv. -->
+ <xs:element name="refsynopsisdivinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="refsynopsisdivinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refsynopsisdivinfo.element -->
+ <xs:attributeGroup name="refsynopsisdivinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refsynopsisdivinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refsynopsisdivinfo.attlist -->
+ <!-- end of refsynopsisdivinfo.module -->
+ <xs:attributeGroup name="referenceinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Reference. -->
+ <xs:element name="referenceinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="referenceinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of referenceinfo.element -->
+ <xs:attributeGroup name="referenceinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="referenceinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of referenceinfo.attlist -->
+ <!-- end of referenceinfo.module -->
+ <xs:attributeGroup name="sect1info.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Sect1. -->
+ <xs:element name="sect1info">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="sect1info.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sect1info.element -->
+ <xs:attributeGroup name="sect1info.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sect1info.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sect1info.attlist -->
+ <xs:attributeGroup name="sect2info.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Sect2. -->
+ <xs:element name="sect2info">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="sect2info.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sect2info.element -->
+ <xs:attributeGroup name="sect2info.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sect2info.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sect2info.attlist -->
+ <xs:attributeGroup name="sect3info.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Sect3. -->
+ <xs:element name="sect3info">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="sect3info.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sect3info.element -->
+ <xs:attributeGroup name="sect3info.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sect3info.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sect3info.attlist -->
+ <xs:attributeGroup name="sect4info.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Sect4. -->
+ <xs:element name="sect4info">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="sect4info.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sect4info.element -->
+ <xs:attributeGroup name="sect4info.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sect4info.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sect4info.attlist -->
+ <xs:attributeGroup name="sect5info.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Sect5. -->
+ <xs:element name="sect5info">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="sect5info.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sect5info.element -->
+ <xs:attributeGroup name="sect5info.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sect5info.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sect5info.attlist -->
+ <!-- ...................................................................... -->
+ <!-- Section (parallel to Sect*) ......................................... -->
+ <xs:attributeGroup name="section.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A recursive section. -->
+ <xs:element name="section" substitutionGroup="section.class"/>
+ <!-- end of section.element -->
+ <xs:attributeGroup name="section.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="section.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of section.attlist -->
+ <!-- end of section.module -->
+ <xs:attributeGroup name="sectioninfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a recursive section. -->
+ <xs:element name="sectioninfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="sectioninfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sectioninfo.element -->
+ <xs:attributeGroup name="sectioninfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sectioninfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sectioninfo.attlist -->
+ <!-- end of sectioninfo.module -->
+ <!-- end of section.content.module -->
+ <!-- ...................................................................... -->
+ <!-- Sect1, Sect2, Sect3, Sect4, Sect5 .................................... -->
+ <xs:attributeGroup name="sect1.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A top-level section of document. -->
+ <xs:element name="sect1">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="sect1info"/>
+ <xs:group ref="sect.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="divcomponent.mix"/>
+ <xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="refentry.class"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="sect2"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="simplesect"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="refentry.class"/>
+ <xs:element maxOccurs="unbounded" ref="sect2"/>
+ <xs:element maxOccurs="unbounded" ref="simplesect"/>
+ </xs:choice>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="sect1.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sect1.element -->
+ <!--
+ Renderas: Indicates the format in which the heading should
+ appear
+ -->
+ <xs:attributeGroup name="sect1.attlist">
+ <xs:attribute name="renderas">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="sect2"/>
+ <xs:enumeration value="sect3"/>
+ <xs:enumeration value="sect4"/>
+ <xs:enumeration value="sect5"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sect1.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sect1.attlist -->
+ <!-- end of sect1.module -->
+ <xs:attributeGroup name="sect2.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A subsection within a Sect1. -->
+ <xs:element name="sect2">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="sect2info"/>
+ <xs:group ref="sect.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="divcomponent.mix"/>
+ <xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="refentry.class"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="sect3"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="simplesect"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="refentry.class"/>
+ <xs:element maxOccurs="unbounded" ref="sect3"/>
+ <xs:element maxOccurs="unbounded" ref="simplesect"/>
+ </xs:choice>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="sect2.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sect2.element -->
+ <!--
+ Renderas: Indicates the format in which the heading should
+ appear
+ -->
+ <xs:attributeGroup name="sect2.attlist">
+ <xs:attribute name="renderas">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="sect1"/>
+ <xs:enumeration value="sect3"/>
+ <xs:enumeration value="sect4"/>
+ <xs:enumeration value="sect5"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sect2.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sect2.attlist -->
+ <!-- end of sect2.module -->
+ <xs:attributeGroup name="sect3.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A subsection within a Sect2. -->
+ <xs:element name="sect3">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="sect3info"/>
+ <xs:group ref="sect.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="divcomponent.mix"/>
+ <xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="refentry.class"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="sect4"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="simplesect"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="refentry.class"/>
+ <xs:element maxOccurs="unbounded" ref="sect4"/>
+ <xs:element maxOccurs="unbounded" ref="simplesect"/>
+ </xs:choice>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="sect3.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sect3.element -->
+ <!--
+ Renderas: Indicates the format in which the heading should
+ appear
+ -->
+ <xs:attributeGroup name="sect3.attlist">
+ <xs:attribute name="renderas">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="sect1"/>
+ <xs:enumeration value="sect2"/>
+ <xs:enumeration value="sect4"/>
+ <xs:enumeration value="sect5"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sect3.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sect3.attlist -->
+ <!-- end of sect3.module -->
+ <xs:attributeGroup name="sect4.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A subsection within a Sect3. -->
+ <xs:element name="sect4">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="sect4info"/>
+ <xs:group ref="sect.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="divcomponent.mix"/>
+ <xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="refentry.class"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="sect5"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="simplesect"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="refentry.class"/>
+ <xs:element maxOccurs="unbounded" ref="sect5"/>
+ <xs:element maxOccurs="unbounded" ref="simplesect"/>
+ </xs:choice>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="sect4.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sect4.element -->
+ <!--
+ Renderas: Indicates the format in which the heading should
+ appear
+ -->
+ <xs:attributeGroup name="sect4.attlist">
+ <xs:attribute name="renderas">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="sect1"/>
+ <xs:enumeration value="sect2"/>
+ <xs:enumeration value="sect3"/>
+ <xs:enumeration value="sect5"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sect4.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sect4.attlist -->
+ <!-- end of sect4.module -->
+ <xs:attributeGroup name="sect5.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A subsection within a Sect4. -->
+ <xs:element name="sect5">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="sect5info"/>
+ <xs:group ref="sect.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="divcomponent.mix"/>
+ <xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="refentry.class"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="simplesect"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="refentry.class"/>
+ <xs:element maxOccurs="unbounded" ref="simplesect"/>
+ </xs:choice>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="sect5.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sect5.element -->
+ <!--
+ Renderas: Indicates the format in which the heading should
+ appear
+ -->
+ <xs:attributeGroup name="sect5.attlist">
+ <xs:attribute name="renderas">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="sect1"/>
+ <xs:enumeration value="sect2"/>
+ <xs:enumeration value="sect3"/>
+ <xs:enumeration value="sect4"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sect5.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sect5.attlist -->
+ <!-- end of sect5.module -->
+ <xs:attributeGroup name="simplesect.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A section of a document with no subdivisions. -->
+ <xs:element name="simplesect">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="sect.title.content"/>
+ <xs:group maxOccurs="unbounded" ref="divcomponent.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="simplesect.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of simplesect.element -->
+ <xs:attributeGroup name="simplesect.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="simplesect.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of simplesect.attlist -->
+ <!-- end of simplesect.module -->
+ <!-- ...................................................................... -->
+ <!-- Bibliography ......................................................... -->
+ <xs:attributeGroup name="bibliography.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A bibliography. -->
+ <xs:element name="bibliography">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="bibliographyinfo"/>
+ <xs:group minOccurs="0" ref="bookcomponent.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="component.mix"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="bibliodiv"/>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="biblioentry"/>
+ <xs:element ref="bibliomixed"/>
+ </xs:choice>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="bibliography.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of bibliography.element -->
+ <xs:attributeGroup name="bibliography.attlist">
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="bibliography.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of bibliography.attlist -->
+ <!-- end of bibliography.module -->
+ <xs:attributeGroup name="bibliodiv.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A section of a Bibliography. -->
+ <xs:element name="bibliodiv">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group minOccurs="0" ref="sect.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="component.mix"/>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="biblioentry"/>
+ <xs:element ref="bibliomixed"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="bibliodiv.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of bibliodiv.element -->
+ <xs:attributeGroup name="bibliodiv.attlist">
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="bibliodiv.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of bibliodiv.attlist -->
+ <!-- end of bibliodiv.module -->
+ <!-- end of bibliography.content.module -->
+ <!-- ...................................................................... -->
+ <!-- Glossary ............................................................. -->
+ <xs:attributeGroup name="glossary.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A glossary. -->
+ <xs:element name="glossary">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="glossaryinfo"/>
+ <xs:group minOccurs="0" ref="bookcomponent.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="component.mix"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="glossdiv"/>
+ <xs:element maxOccurs="unbounded" ref="glossentry"/>
+ </xs:choice>
+ <xs:element minOccurs="0" ref="bibliography"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="glossary.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of glossary.element -->
+ <xs:attributeGroup name="glossary.attlist">
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="glossary.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of glossary.attlist -->
+ <!-- end of glossary.module -->
+ <xs:attributeGroup name="glossdiv.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A division in a Glossary. -->
+ <xs:element name="glossdiv">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="sect.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="component.mix"/>
+ <xs:element maxOccurs="unbounded" ref="glossentry"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="glossdiv.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of glossdiv.element -->
+ <xs:attributeGroup name="glossdiv.attlist">
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="glossdiv.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of glossdiv.attlist -->
+ <!-- end of glossdiv.module -->
+ <!-- end of glossary.content.module -->
+ <!-- ...................................................................... -->
+ <!-- Index and SetIndex ................................................... -->
+ <xs:attributeGroup name="indexes.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An index. -->
+ <xs:element name="index">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="indexinfo"/>
+ <xs:group minOccurs="0" ref="bookcomponent.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="component.mix"/>
+ <xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="indexdiv"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="indexentry"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="index.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of index.element -->
+ <xs:attributeGroup name="index.attlist">
+ <xs:attribute name="type"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="indexes.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of index.attlist -->
+ <!-- doc:An index to a set of books. -->
+ <xs:element name="setindex">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="setindexinfo"/>
+ <xs:group minOccurs="0" ref="bookcomponent.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="component.mix"/>
+ <xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="indexdiv"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="indexentry"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="setindex.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of setindex.element -->
+ <xs:attributeGroup name="setindex.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="indexes.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of setindex.attlist -->
+ <!-- end of indexes.module -->
+ <!--
+ SegmentedList in this content is useful for marking up permuted
+ indices.
+ -->
+ <xs:attributeGroup name="indexdiv.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A division in an index. -->
+ <xs:element name="indexdiv">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group minOccurs="0" ref="sect.title.content"/>
+ <xs:sequence>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="indexdivcomponent.mix"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="indexentry"/>
+ <xs:element ref="segmentedlist"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:sequence>
+ <xs:attributeGroup ref="indexdiv.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of indexdiv.element -->
+ <xs:attributeGroup name="indexdiv.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="indexdiv.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of indexdiv.attlist -->
+ <!-- end of indexdiv.module -->
+ <!-- Index entries appear in the index, not the text. -->
+ <xs:attributeGroup name="indexentry.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An entry in an index. -->
+ <xs:element name="indexentry">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="primaryie"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="seeie"/>
+ <xs:element ref="seealsoie"/>
+ </xs:choice>
+ <xs:sequence minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="secondaryie"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="seeie"/>
+ <xs:element ref="seealsoie"/>
+ <xs:element ref="tertiaryie"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:sequence>
+ <xs:attributeGroup ref="indexentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of indexentry.element -->
+ <xs:attributeGroup name="indexentry.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="indexentry.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of indexentry.attlist -->
+ <!-- end of indexentry.module -->
+ <xs:attributeGroup name="primsecterie.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A primary term in an index entry, not in the text. -->
+ <xs:element name="primaryie">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="ndxterm.char.mix"/>
+ <xs:attributeGroup ref="primaryie.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of primaryie.element -->
+ <!-- to IndexTerms that these entries represent -->
+ <xs:attributeGroup name="primaryie.attlist">
+ <xs:attributeGroup ref="linkends.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="primsecterie.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of primaryie.attlist -->
+ <!-- doc:A secondary term in an index entry, rather than in the text. -->
+ <xs:element name="secondaryie">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="ndxterm.char.mix"/>
+ <xs:attributeGroup ref="secondaryie.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of secondaryie.element -->
+ <!-- to IndexTerms that these entries represent -->
+ <xs:attributeGroup name="secondaryie.attlist">
+ <xs:attributeGroup ref="linkends.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="primsecterie.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of secondaryie.attlist -->
+ <!-- doc:A tertiary term in an index entry, rather than in the text. -->
+ <xs:element name="tertiaryie">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="ndxterm.char.mix"/>
+ <xs:attributeGroup ref="tertiaryie.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of tertiaryie.element -->
+ <!-- to IndexTerms that these entries represent -->
+ <xs:attributeGroup name="tertiaryie.attlist">
+ <xs:attributeGroup ref="linkends.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="primsecterie.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of tertiaryie.attlist -->
+ <!-- end of primsecterie.module -->
+ <xs:attributeGroup name="seeie.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A See entry in an index, rather than in the text. -->
+ <xs:element name="seeie">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="ndxterm.char.mix"/>
+ <xs:attributeGroup ref="seeie.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of seeie.element -->
+ <!-- to IndexEntry to look up -->
+ <xs:attributeGroup name="seeie.attlist">
+ <xs:attributeGroup ref="linkend.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="seeie.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of seeie.attlist -->
+ <!-- end of seeie.module -->
+ <xs:attributeGroup name="seealsoie.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A See also entry in an index, rather than in the text. -->
+ <xs:element name="seealsoie">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="ndxterm.char.mix"/>
+ <xs:attributeGroup ref="seealsoie.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of seealsoie.element -->
+ <!-- to related IndexEntries -->
+ <xs:attributeGroup name="seealsoie.attlist">
+ <xs:attributeGroup ref="linkends.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="seealsoie.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of seealsoie.attlist -->
+ <!-- end of seealsoie.module -->
+ <!-- end of index.content.module -->
+ <!-- ...................................................................... -->
+ <!-- RefEntry ............................................................. -->
+ <xs:attributeGroup name="refentry.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A reference page (originally a UNIX man-style reference page). -->
+ <xs:element name="refentry" substitutionGroup="refentry.class"/>
+ <!-- end of refentry.element -->
+ <xs:attributeGroup name="refentry.attlist">
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refentry.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refentry.attlist -->
+ <!-- end of refentry.module -->
+ <xs:attributeGroup name="refmeta.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a reference entry. -->
+ <xs:element name="refmeta">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="ndxterm.class"/>
+ <xs:element ref="refentrytitle"/>
+ <xs:element minOccurs="0" ref="manvolnum"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="refmiscinfo"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="ndxterm.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="refmeta.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refmeta.element -->
+ <xs:attributeGroup name="refmeta.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refmeta.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refmeta.attlist -->
+ <!-- end of refmeta.module -->
+ <xs:attributeGroup name="refmiscinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a reference entry other than the title and volume number. -->
+ <xs:element name="refmiscinfo">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="refmiscinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refmiscinfo.element -->
+ <!-- Class: Freely assignable parameter; no default -->
+ <xs:attributeGroup name="refmiscinfo.attlist">
+ <xs:attribute name="class"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refmiscinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refmiscinfo.attlist -->
+ <!-- end of refmiscinfo.module -->
+ <xs:attributeGroup name="refnamediv.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name, purpose, and classification of a reference page. -->
+ <xs:element name="refnamediv">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="refdescriptor"/>
+ <xs:element maxOccurs="unbounded" ref="refname"/>
+ <xs:element ref="refpurpose"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="refclass"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="remark"/>
+ <xs:element ref="link.char.class"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="refnamediv.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refnamediv.element -->
+ <xs:attributeGroup name="refnamediv.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refnamediv.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refnamediv.attlist -->
+ <!-- end of refnamediv.module -->
+ <xs:attributeGroup name="refdescriptor.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A description of the topic of a reference page. -->
+ <xs:element name="refdescriptor">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="refname.char.mix"/>
+ <xs:attributeGroup ref="refdescriptor.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refdescriptor.element -->
+ <xs:attributeGroup name="refdescriptor.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refdescriptor.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refdescriptor.attlist -->
+ <!-- end of refdescriptor.module -->
+ <xs:attributeGroup name="refname.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of (one of) the subject(s) of a reference page. -->
+ <xs:element name="refname">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="refname.char.mix"/>
+ <xs:attributeGroup ref="refname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refname.element -->
+ <xs:attributeGroup name="refname.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refname.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refname.attlist -->
+ <!-- end of refname.module -->
+ <xs:attributeGroup name="refpurpose.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A short (one sentence) synopsis of the topic of a reference page. -->
+ <xs:element name="refpurpose">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="refinline.char.mix"/>
+ <xs:attributeGroup ref="refpurpose.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refpurpose.element -->
+ <xs:attributeGroup name="refpurpose.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refpurpose.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refpurpose.attlist -->
+ <!-- end of refpurpose.module -->
+ <xs:attributeGroup name="refclass.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The scope or other indication of applicability of a reference entry. -->
+ <xs:element name="refclass">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="refclass.char.mix"/>
+ <xs:attributeGroup ref="refclass.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refclass.element -->
+ <xs:attributeGroup name="refclass.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refclass.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refclass.attlist -->
+ <!-- end of refclass.module -->
+ <xs:attributeGroup name="refsynopsisdiv.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A syntactic synopsis of the subject of the reference page. -->
+ <xs:element name="refsynopsisdiv">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="refsynopsisdivinfo"/>
+ <xs:group minOccurs="0" ref="refsect.title.content"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="refcomponent.mix"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="refsect2"/>
+ </xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="refsect2"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="refsynopsisdiv.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refsynopsisdiv.element -->
+ <xs:attributeGroup name="refsynopsisdiv.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refsynopsisdiv.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refsynopsisdiv.attlist -->
+ <!-- end of refsynopsisdiv.module -->
+ <xs:attributeGroup name="refsection.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A recursive section in a refentry. -->
+ <xs:element name="refsection">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="refsectioninfo"/>
+ <xs:group ref="refsect.title.content"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="refcomponent.mix"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="refsection"/>
+ </xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="refsection"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="refsection.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refsection.element -->
+ <xs:attributeGroup name="refsection.attlist">
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refsection.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refsection.attlist -->
+ <!-- end of refsection.module -->
+ <xs:attributeGroup name="refsect1.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A major subsection of a reference entry. -->
+ <xs:element name="refsect1">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="refsect1info"/>
+ <xs:group ref="refsect.title.content"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="refcomponent.mix"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="refsect2"/>
+ </xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="refsect2"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="refsect1.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refsect1.element -->
+ <xs:attributeGroup name="refsect1.attlist">
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refsect1.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refsect1.attlist -->
+ <!-- end of refsect1.module -->
+ <xs:attributeGroup name="refsect2.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A subsection of a RefSect1. -->
+ <xs:element name="refsect2">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="refsect2info"/>
+ <xs:group ref="refsect.title.content"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="refcomponent.mix"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="refsect3"/>
+ </xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="refsect3"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="refsect2.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refsect2.element -->
+ <xs:attributeGroup name="refsect2.attlist">
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refsect2.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refsect2.attlist -->
+ <!-- end of refsect2.module -->
+ <xs:attributeGroup name="refsect3.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A subsection of a RefSect2. -->
+ <xs:element name="refsect3">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="refsect3info"/>
+ <xs:group ref="refsect.title.content"/>
+ <xs:group maxOccurs="unbounded" ref="refcomponent.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="refsect3.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refsect3.element -->
+ <xs:attributeGroup name="refsect3.attlist">
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refsect3.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refsect3.attlist -->
+ <!-- end of refsect3.module -->
+ <!-- end of refentry.content.module -->
+ <!-- ...................................................................... -->
+ <!-- Article .............................................................. -->
+ <!--
+ An Article is a chapter-level, stand-alone document that is often,
+ but need not be, collected into a Book.
+ -->
+ <xs:attributeGroup name="article.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An article. -->
+ <xs:element name="article" substitutionGroup="article.class"/>
+ <!-- end of article.element -->
+ <!--
+ Class: Indicates the type of a particular article;
+ all articles have the same structure and general purpose.
+ No default.
+ -->
+ <!-- ParentBook: ID of the enclosing Book -->
+ <xs:attributeGroup name="article.attlist">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="journalarticle"/>
+ <xs:enumeration value="productsheet"/>
+ <xs:enumeration value="whitepaper"/>
+ <xs:enumeration value="techreport"/>
+ <xs:enumeration value="specification"/>
+ <xs:enumeration value="faq"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="parentbook" type="xs:IDREF"/>
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="article.role.attrib"/>
+ </xs:attributeGroup>
+</xs:schema>
+<!-- end of article.attlist -->
+<!-- end of article.module -->
+<!-- End of SCons DocBook V4.5-Based extension V1.0 XML document hierarchy module V4.5 -->
+<!-- ................................................................................. -->
diff --git a/doc/editor_configs/serna/scons/xsd/dbnotnx.xsd b/doc/editor_configs/serna/scons/xsd/dbnotnx.xsd
new file mode 100644
index 0000000..36f690f
--- /dev/null
+++ b/doc/editor_configs/serna/scons/xsd/dbnotnx.xsd
@@ -0,0 +1,102 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- ...................................................................... -->
+<!-- SCons DocBook V4.5-Based extension V1.0 XML notations ................ -->
+<!-- File dbnotnx.xsd ..................................................... -->
+<!-- Copyright (c) 2001-7,2010,2011,2012 The SCons Foundation
+
+ Permission is hereby granted, free of charge, to any person obtaining
+ a copy of this software and associated documentation files (the
+ "Software"), to deal in the Software without restriction, including
+ without limitation the rights to use, copy, modify, merge, publish,
+ distribute, sublicense, and/or sell copies of the Software, and to
+ permit persons to whom the Software is furnished to do so, subject to
+ the following conditions:
+
+ The above copyright notice and this permission notice shall be included
+ in all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
+ KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+ WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+ This DTD extension is based on the DocBook notations module V4.5 with:
+
+ Copyright 1992-2004 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).
+
+ $Id: dbnotnx.mod 6340 2006-10-03 13:23:24Z nwalsh $
+
+ 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/.
+ For the modified SCons extension files
+
+ scons.xsd, dbpoolx.xsd,
+
+ you can write to its developer mailing list. Check out
+ http://www.scons.org/ and http://www.scons.org/lists.php.
+
+-->
+<!-- ...................................................................... -->
+<!--
+ This module contains the notation declarations used by DocBook.
+
+ In DTD driver files referring to this module, please use an entity
+ declaration that uses the public identifier shown below:
+
+ <!ENTITY % dbnotn PUBLIC
+ "-//OASIS//ENTITIES DocBook Notations V4.5//EN"
+ "dbnotnx.mod">
+ %dbnotn;
+
+ See the documentation for detailed information on the parameter
+ entity and module scheme used in DocBook, customizing DocBook and
+ planning for interchange, and changes made since the last release
+ of DocBook.
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <xs:simpleType name="notation.class">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="BMP"/>
+ <xs:enumeration value="CGM-CHAR"/>
+ <xs:enumeration value="CGM-BINARY"/>
+ <xs:enumeration value="CGM-CLEAR"/>
+ <xs:enumeration value="DITROFF"/>
+ <xs:enumeration value="DVI"/>
+ <xs:enumeration value="EPS"/>
+ <xs:enumeration value="EQN"/>
+ <xs:enumeration value="FAX"/>
+ <xs:enumeration value="GIF"/>
+ <xs:enumeration value="GIF87a"/>
+ <xs:enumeration value="GIF89a"/>
+ <xs:enumeration value="JPG"/>
+ <xs:enumeration value="JPEG"/>
+ <xs:enumeration value="IGES"/>
+ <xs:enumeration value="PCX"/>
+ <xs:enumeration value="PIC"/>
+ <xs:enumeration value="PNG"/>
+ <xs:enumeration value="PS"/>
+ <xs:enumeration value="SGML"/>
+ <xs:enumeration value="TBL"/>
+ <xs:enumeration value="TEX"/>
+ <xs:enumeration value="TIFF"/>
+ <xs:enumeration value="WMF"/>
+ <xs:enumeration value="WPG"/>
+ <xs:enumeration value="SVG"/>
+ <xs:enumeration value="PDF"/>
+ <xs:enumeration value="SWF"/>
+ <xs:enumeration value="linespecific"/>
+ </xs:restriction>
+ </xs:simpleType>
+</xs:schema>
+<!-- WordPerfect Graphic format -->
+<!-- End of SCons DocBook V4.5-Based extension V1.0 XML notations ......... -->
+<!-- ...................................................................... -->
diff --git a/doc/editor_configs/serna/scons/xsd/dbpoolx.xsd b/doc/editor_configs/serna/scons/xsd/dbpoolx.xsd
new file mode 100644
index 0000000..0ce5cb7
--- /dev/null
+++ b/doc/editor_configs/serna/scons/xsd/dbpoolx.xsd
@@ -0,0 +1,8682 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- ...................................................................... -->
+<!-- SCons DocBook V4.5-Based extension V1.0 XML information pool module .. -->
+<!-- File dbpoolx.xsd ..................................................... -->
+<!-- Copyright (c) 2001-7,2010,2011,2012 The SCons Foundation
+
+ Permission is hereby granted, free of charge, to any person obtaining
+ a copy of this software and associated documentation files (the
+ "Software"), to deal in the Software without restriction, including
+ without limitation the rights to use, copy, modify, merge, publish,
+ distribute, sublicense, and/or sell copies of the Software, and to
+ permit persons to whom the Software is furnished to do so, subject to
+ the following conditions:
+
+ The above copyright notice and this permission notice shall be included
+ in all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
+ KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+ WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+ This DTD extension is based on the Docbook XML information pool
+ module V4.5 with:
+
+ Copyright 1992-2004 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).
+
+ $Id: dbpoolx.mod 6340 2006-10-03 13:23:24Z nwalsh $
+
+ 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/.
+ For the modified SCons extension files
+
+ scons.xsd, dbpoolx.xsd,
+
+ you can write to its developer mailing list. Check out
+ http://www.scons.org/ and http://www.scons.org/lists.php.
+
+-->
+<!-- ...................................................................... -->
+<!--
+ This module contains the definitions for the objects, inline
+ elements, and so on that are available to be used as the main
+ content of DocBook documents. Some elements are useful for general
+ publishing, and others are useful specifically for computer
+ documentation.
+
+ This module has the following dependencies on other modules:
+
+ o It assumes that a %notation.class; entity is defined by the
+ driver file or other high-level module. This entity is
+ referenced in the NOTATION attributes for the graphic-related and
+ ModeSpec elements.
+
+ o It assumes that an appropriately parameterized table module is
+ available for use with the table-related elements.
+
+ In DTD driver files referring to this module, please use an entity
+ declaration that uses the public identifier shown below:
+
+ <!ENTITY % dbpool PUBLIC
+ "-//OASIS//ELEMENTS DocBook XML Information Pool V4.5//EN"
+ "dbpoolx.mod">
+ %dbpool;
+
+ See the documentation for detailed information on the parameter
+ entity and module scheme used in DocBook, customizing DocBook and
+ planning for interchange, and changes made since the last release
+ of DocBook.
+-->
+<!-- ...................................................................... -->
+<!-- Forms entities ....................................................... -->
+<!-- These PEs provide the hook by which the forms module can be inserted -->
+<!-- into the DTD. -->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+ <xs:include schemaLocation="htmltblx.xsd"/>
+ <xs:include schemaLocation="calstblx.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <!-- ...................................................................... -->
+ <!-- General-purpose semantics entities ................................... -->
+ <xs:simpleType name="yesorno.attvals">
+ <xs:restriction base="xs:string"/>
+ </xs:simpleType>
+ <!-- ...................................................................... -->
+ <!-- Entities for module inclusions ....................................... -->
+ <!-- ...................................................................... -->
+ <!-- Entities for element classes and mixtures ............................ -->
+ <!-- "Ubiquitous" classes: ndxterm.class and beginpage -->
+ <xs:element name="ndxterm.class" abstract="true">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="primary"/>
+ <xs:choice minOccurs="0">
+ <xs:sequence>
+ <xs:element ref="secondary"/>
+ <xs:choice minOccurs="0">
+ <xs:sequence>
+ <xs:element ref="tertiary"/>
+ <xs:choice minOccurs="0">
+ <xs:element ref="see"/>
+ <xs:element maxOccurs="unbounded" ref="seealso"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:element ref="see"/>
+ <xs:element maxOccurs="unbounded" ref="seealso"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:element ref="see"/>
+ <xs:element maxOccurs="unbounded" ref="seealso"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="indexterm.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- Object-level classes ................................................. -->
+ <xs:element name="list.class" abstract="true"/>
+ <xs:element name="admon.class" abstract="true"/>
+ <xs:element name="linespecific.class" abstract="true"/>
+ <xs:element name="method.synop.class" abstract="true" substitutionGroup="synop.class"/>
+ <xs:element name="synop.class" abstract="true"/>
+ <xs:element name="para.class" abstract="true"/>
+ <xs:element name="informal.class" abstract="true"/>
+ <xs:element name="formal.class" abstract="true"/>
+ <!-- The DocBook TC may produce an official EBNF module for DocBook. -->
+ <!-- This PE provides the hook by which it can be inserted into the DTD. -->
+ <xs:element name="compound.class" abstract="true"/>
+ <xs:group name="genobj.class">
+ <xs:choice>
+ <xs:element ref="anchor"/>
+ <xs:element ref="bridgehead"/>
+ <xs:element ref="remark"/>
+ <xs:element ref="highlights"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="descobj.class">
+ <xs:choice>
+ <xs:element ref="abstract"/>
+ <xs:element ref="authorblurb"/>
+ <xs:element ref="epigraph"/>
+ </xs:choice>
+ </xs:group>
+ <!-- Character-level classes .............................................. -->
+ <xs:element name="xref.char.class" abstract="true"/>
+ <xs:element name="gen.char.class" abstract="true"/>
+ <xs:element name="link.char.class" abstract="true"/>
+ <!-- The DocBook TC may produce an official EBNF module for DocBook. -->
+ <!-- This PE provides the hook by which it can be inserted into the DTD. -->
+ <xs:element name="tech.char.class" abstract="true"/>
+ <xs:group name="base.char.class">
+ <xs:sequence>
+ <xs:element ref="anchor"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="docinfo.char.class" abstract="true"/>
+ <xs:group name="other.char.class">
+ <xs:choice>
+ <xs:element ref="remark"/>
+ <xs:element ref="subscript"/>
+ <xs:element ref="superscript"/>
+ </xs:choice>
+ </xs:group>
+ <xs:element name="inlineobj.char.class" abstract="true"/>
+ <!-- ...................................................................... -->
+ <!-- Entities for content models .......................................... -->
+ <xs:group name="formalobject.title.content">
+ <xs:sequence>
+ <xs:element ref="title"/>
+ <xs:element minOccurs="0" ref="titleabbrev"/>
+ </xs:sequence>
+ </xs:group>
+ <!-- Redeclaration placeholder ............................................ -->
+ <!--
+ For redeclaring entities that are declared after this point while
+ retaining their references to the entities that are declared before
+ this point
+ -->
+ <!-- Object-level mixtures ................................................ -->
+ <!--
+ list admn line synp para infm form cmpd gen desc
+ Component mixture X X X X X X X X X X
+ Sidebar mixture X X X X X X X a X
+ Footnote mixture X X X X X
+ Example mixture X X X X X
+ Highlights mixture X X X
+ Paragraph mixture X X X X
+ Admonition mixture X X X X X X b c
+ Figure mixture X X X
+ Table entry mixture X X X X d
+ Glossary def mixture X X X X X e
+ Legal notice mixture X X X X f
+
+ a. Just Procedure; not Sidebar itself or MsgSet.
+ b. No MsgSet.
+ c. No Highlights.
+ d. Just Graphic; no other informal objects.
+ e. No Anchor, BridgeHead, or Highlights.
+ f. Just BlockQuote; no other informal objects.
+ -->
+ <xs:group name="component.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="admon.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="synop.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="informal.class"/>
+ <xs:element ref="formal.class"/>
+ <xs:element ref="compound.class"/>
+ <xs:group ref="genobj.class"/>
+ <xs:group ref="descobj.class"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="sidebar.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="admon.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="synop.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="informal.class"/>
+ <xs:element ref="formal.class"/>
+ <xs:element ref="procedure"/>
+ <xs:group ref="genobj.class"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="qandaset.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="admon.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="synop.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="informal.class"/>
+ <xs:element ref="formal.class"/>
+ <xs:element ref="procedure"/>
+ <xs:group ref="genobj.class"/>
+ <xs:element ref="ndxterm.class"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="revdescription.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="admon.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="synop.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="informal.class"/>
+ <xs:element ref="formal.class"/>
+ <xs:element ref="procedure"/>
+ <xs:group ref="genobj.class"/>
+ <xs:element ref="ndxterm.class"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="footnote.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="synop.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="informal.class"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="example.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="synop.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="informal.class"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ <xs:element ref="procedure"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="highlights.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="admon.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="ndxterm.class"/>
+ </xs:choice>
+ </xs:group>
+ <!--
+ %formal.class; is explicitly excluded from many contexts in which
+ paragraphs are used
+ -->
+ <xs:group name="para.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="admon.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="informal.class"/>
+ <xs:element ref="formal.class"/>
+ <xs:element ref="sconstruct"/>
+ <xs:element ref="scons_example"/>
+ <xs:element ref="scons_example_file"/>
+ <xs:element ref="scons_output"/>
+ <xs:element ref="sconsdoc"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="summary.mix">
+ <xs:choice>
+ <xs:element ref="example_commands"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="tool.mix">
+ <xs:choice>
+ <xs:element ref="summary"/>
+ <xs:element ref="sets"/>
+ <xs:element ref="uses"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="scons_function.mix">
+ <xs:choice>
+ <xs:element ref="arguments"/>
+ <xs:element ref="summary"/>
+ <xs:element ref="sets"/>
+ <xs:element ref="uses"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="admon.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="synop.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="informal.class"/>
+ <xs:element ref="formal.class"/>
+ <xs:element ref="procedure"/>
+ <xs:element ref="sidebar"/>
+ <xs:element ref="anchor"/>
+ <xs:element ref="bridgehead"/>
+ <xs:element ref="remark"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="figure.mix">
+ <xs:choice>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="synop.class"/>
+ <xs:element ref="informal.class"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="tabentry.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="admon.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="graphic"/>
+ <xs:element ref="mediaobject"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="glossdef.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="synop.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="informal.class"/>
+ <xs:element ref="formal.class"/>
+ <xs:element ref="remark"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="legalnotice.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="admon.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="blockquote"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="textobject.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="admon.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="blockquote"/>
+ </xs:choice>
+ </xs:group>
+ <xs:element name="mediaobject.mix" abstract="true"/>
+ <xs:group name="listpreamble.mix">
+ <xs:choice>
+ <xs:element ref="admon.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="synop.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="informal.class"/>
+ <xs:group ref="genobj.class"/>
+ <xs:group ref="descobj.class"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:group>
+ <!-- Character-level mixtures ............................................. -->
+ <!-- sgml.features -->
+ <!-- not [sgml.features[ -->
+ <!-- ]] not sgml.features -->
+ <!--
+ #PCD xref word link cptr base dnfo othr inob (synop)
+ para.char.mix X X X X X X X X X
+ title.char.mix X X X X X X X X X
+ ndxterm.char.mix X X X X X X X X a
+ cptr.char.mix X X X X X a
+ smallcptr.char.mix X b a
+ word.char.mix X c X X X a
+ docinfo.char.mix X d X b X a
+
+ a. Just InlineGraphic; no InlineEquation.
+ b. Just Replaceable; no other computer terms.
+ c. Just Emphasis and Trademark; no other word elements.
+ d. Just Acronym, Emphasis, and Trademark; no other word elements.
+ -->
+ <xs:group name="para.char.mix">
+ <xs:sequence>
+ <xs:choice minOccurs="0">
+ <xs:element ref="xref.char.class"/>
+ <xs:element ref="gen.char.class"/>
+ <xs:element ref="link.char.class"/>
+ <xs:element ref="tech.char.class"/>
+ <xs:group ref="base.char.class"/>
+ <xs:element ref="docinfo.char.class"/>
+ <xs:group ref="other.char.class"/>
+ <xs:element ref="inlineobj.char.class"/>
+ <xs:element ref="synop.class"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="title.char.mix">
+ <xs:sequence>
+ <xs:choice minOccurs="0">
+ <xs:element ref="xref.char.class"/>
+ <xs:element ref="gen.char.class"/>
+ <xs:element ref="link.char.class"/>
+ <xs:element ref="tech.char.class"/>
+ <xs:group ref="base.char.class"/>
+ <xs:element ref="docinfo.char.class"/>
+ <xs:group ref="other.char.class"/>
+ <xs:element ref="inlineobj.char.class"/>
+ <xs:element ref="ndxterm.class"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="ndxterm.char.mix">
+ <xs:sequence>
+ <xs:choice minOccurs="0">
+ <xs:element ref="xref.char.class"/>
+ <xs:element ref="gen.char.class"/>
+ <xs:element ref="link.char.class"/>
+ <xs:element ref="tech.char.class"/>
+ <xs:group ref="base.char.class"/>
+ <xs:element ref="docinfo.char.class"/>
+ <xs:group ref="other.char.class"/>
+ <xs:element ref="inlinegraphic"/>
+ <xs:element ref="inlinemediaobject"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="cptr.char.mix">
+ <xs:sequence>
+ <xs:choice minOccurs="0">
+ <xs:element ref="link.char.class"/>
+ <xs:element ref="tech.char.class"/>
+ <xs:group ref="base.char.class"/>
+ <xs:group ref="other.char.class"/>
+ <xs:element ref="inlinegraphic"/>
+ <xs:element ref="inlinemediaobject"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="smallcptr.char.mix">
+ <xs:sequence>
+ <xs:choice minOccurs="0">
+ <xs:element ref="replaceable"/>
+ <xs:element ref="inlinegraphic"/>
+ <xs:element ref="inlinemediaobject"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="word.char.mix">
+ <xs:sequence>
+ <xs:choice minOccurs="0">
+ <xs:element ref="acronym"/>
+ <xs:element ref="emphasis"/>
+ <xs:element ref="trademark"/>
+ <xs:element ref="link.char.class"/>
+ <xs:group ref="base.char.class"/>
+ <xs:group ref="other.char.class"/>
+ <xs:element ref="inlinegraphic"/>
+ <xs:element ref="inlinemediaobject"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="docinfo.char.mix">
+ <xs:sequence>
+ <xs:choice minOccurs="0">
+ <xs:element ref="link.char.class"/>
+ <xs:element ref="emphasis"/>
+ <xs:element ref="trademark"/>
+ <xs:element ref="replaceable"/>
+ <xs:group ref="other.char.class"/>
+ <xs:element ref="inlinegraphic"/>
+ <xs:element ref="inlinemediaobject"/>
+ <xs:element ref="ndxterm.class"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+ <!-- ENTITY % bibliocomponent.mix (see Bibliographic section, below) -->
+ <!-- ENTITY % person.ident.mix (see Bibliographic section, below) -->
+ <!-- ...................................................................... -->
+ <!-- Entities for attributes and attribute components ..................... -->
+ <!-- Effectivity attributes ............................................... -->
+ <!--
+ Arch: Computer or chip architecture to which element applies; no
+ default
+ -->
+ <xs:attributeGroup name="arch.attrib">
+ <xs:attribute name="arch"/>
+ </xs:attributeGroup>
+ <!-- Condition: General-purpose effectivity attribute -->
+ <xs:attributeGroup name="condition.attrib">
+ <xs:attribute name="condition"/>
+ </xs:attributeGroup>
+ <!-- Conformance: Standards conformance characteristics -->
+ <xs:attributeGroup name="conformance.attrib">
+ <xs:attribute name="conformance" type="xs:NMTOKENS"/>
+ </xs:attributeGroup>
+ <!-- OS: Operating system to which element applies; no default -->
+ <xs:attributeGroup name="os.attrib">
+ <xs:attribute name="os"/>
+ </xs:attributeGroup>
+ <!-- Revision: Editorial revision to which element belongs; no default -->
+ <xs:attributeGroup name="revision.attrib">
+ <xs:attribute name="revision"/>
+ </xs:attributeGroup>
+ <!-- Security: Security classification; no default -->
+ <xs:attributeGroup name="security.attrib">
+ <xs:attribute name="security"/>
+ </xs:attributeGroup>
+ <!--
+ UserLevel: Level of user experience to which element applies; no
+ default
+ -->
+ <xs:attributeGroup name="userlevel.attrib">
+ <xs:attribute name="userlevel"/>
+ </xs:attributeGroup>
+ <!-- Vendor: Computer vendor to which element applies; no default -->
+ <xs:attributeGroup name="vendor.attrib">
+ <xs:attribute name="vendor"/>
+ </xs:attributeGroup>
+ <!-- Wordsize: Computer word size (32 bit, 64 bit, etc.); no default -->
+ <xs:attributeGroup name="wordsize.attrib">
+ <xs:attribute name="wordsize"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="effectivity.attrib">
+ <xs:attributeGroup ref="arch.attrib"/>
+ <xs:attributeGroup ref="condition.attrib"/>
+ <xs:attributeGroup ref="conformance.attrib"/>
+ <xs:attributeGroup ref="os.attrib"/>
+ <xs:attributeGroup ref="revision.attrib"/>
+ <xs:attributeGroup ref="security.attrib"/>
+ <xs:attributeGroup ref="userlevel.attrib"/>
+ <xs:attributeGroup ref="vendor.attrib"/>
+ <xs:attributeGroup ref="wordsize.attrib"/>
+ </xs:attributeGroup>
+ <!-- Common attributes .................................................... -->
+ <!-- Id: Unique identifier of element; no default -->
+ <xs:attributeGroup name="id.attrib">
+ <xs:attribute name="id" type="xs:ID"/>
+ </xs:attributeGroup>
+ <!--
+ Id: Unique identifier of element; a value must be supplied; no
+ default
+ -->
+ <xs:attributeGroup name="idreq.attrib">
+ <xs:attribute name="id" use="required" type="xs:ID"/>
+ </xs:attributeGroup>
+ <!--
+ Lang: Indicator of language in which element is written, for
+ translation, character set management, etc.; no default
+ -->
+ <xs:attributeGroup name="lang.attrib">
+ <xs:attribute name="lang"/>
+ </xs:attributeGroup>
+ <!-- Remap: Previous role of element before conversion; no default -->
+ <xs:attributeGroup name="remap.attrib">
+ <xs:attribute name="remap"/>
+ </xs:attributeGroup>
+ <!-- Role: New role of element in local environment; no default -->
+ <xs:attributeGroup name="role.attrib">
+ <xs:attribute name="role"/>
+ </xs:attributeGroup>
+ <!--
+ XRefLabel: Alternate labeling string for XRef text generation;
+ default is usually title or other appropriate label text already
+ contained in element
+ -->
+ <xs:attributeGroup name="xreflabel.attrib">
+ <xs:attribute name="xreflabel"/>
+ </xs:attributeGroup>
+ <!--
+ RevisionFlag: Revision status of element; default is that element
+ wasn't revised
+ -->
+ <xs:attributeGroup name="revisionflag.attrib">
+ <xs:attribute name="revisionflag">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="changed"/>
+ <xs:enumeration value="added"/>
+ <xs:enumeration value="deleted"/>
+ <xs:enumeration value="off"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <!-- dir: Bidirectional override -->
+ <xs:attributeGroup name="dir.attrib">
+ <xs:attribute name="dir">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="ltr"/>
+ <xs:enumeration value="rtl"/>
+ <xs:enumeration value="lro"/>
+ <xs:enumeration value="rlo"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <!-- xml:base: base URI -->
+ <xs:attributeGroup name="xml-base.attrib">
+ <xs:attribute ref="xml:base"/>
+ </xs:attributeGroup>
+ <!-- Role is included explicitly on each element -->
+ <xs:attributeGroup name="common.attrib">
+ <xs:attributeGroup ref="id.attrib"/>
+ <xs:attributeGroup ref="lang.attrib"/>
+ <xs:attributeGroup ref="remap.attrib"/>
+ <xs:attributeGroup ref="xreflabel.attrib"/>
+ <xs:attributeGroup ref="revisionflag.attrib"/>
+ <xs:attributeGroup ref="effectivity.attrib"/>
+ <xs:attributeGroup ref="dir.attrib"/>
+ <xs:attributeGroup ref="xml-base.attrib"/>
+ </xs:attributeGroup>
+ <!-- Role is included explicitly on each element -->
+ <xs:attributeGroup name="idreq.common.attrib">
+ <xs:attributeGroup ref="idreq.attrib"/>
+ <xs:attributeGroup ref="lang.attrib"/>
+ <xs:attributeGroup ref="remap.attrib"/>
+ <xs:attributeGroup ref="xreflabel.attrib"/>
+ <xs:attributeGroup ref="revisionflag.attrib"/>
+ <xs:attributeGroup ref="effectivity.attrib"/>
+ <xs:attributeGroup ref="dir.attrib"/>
+ <xs:attributeGroup ref="xml-base.attrib"/>
+ </xs:attributeGroup>
+ <!-- Semi-common attributes and other attribute entities .................. -->
+ <!--
+ EntityRef: Name of an external entity containing the content
+ of the graphic
+ -->
+ <!--
+ FileRef: Filename, qualified by a pathname if desired,
+ designating the file containing the content of the graphic
+ -->
+ <!-- Format: Notation of the element content, if any -->
+ <!-- SrcCredit: Information about the source of the Graphic -->
+ <!-- Width: Same as CALS reprowid (desired width) -->
+ <!-- Depth: Same as CALS reprodep (desired depth) -->
+ <!--
+ Align: Same as CALS hplace with 'none' removed; #IMPLIED means
+ application-specific
+ -->
+ <!-- Scale: Conflation of CALS hscale and vscale -->
+ <!-- Scalefit: Same as CALS scalefit -->
+ <xs:attributeGroup name="graphics.attrib">
+ <xs:attribute name="entityref" type="xs:ENTITY"/>
+ <xs:attribute name="fileref"/>
+ <xs:attribute name="format" type="notation.class"/>
+ <xs:attribute name="srccredit"/>
+ <xs:attribute name="width"/>
+ <xs:attribute name="contentwidth"/>
+ <xs:attribute name="depth"/>
+ <xs:attribute name="contentdepth"/>
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="left"/>
+ <xs:enumeration value="right"/>
+ <xs:enumeration value="center"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="valign">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="top"/>
+ <xs:enumeration value="middle"/>
+ <xs:enumeration value="bottom"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="scale"/>
+ <xs:attribute name="scalefit" type="yesorno.attvals"/>
+ </xs:attributeGroup>
+ <!--
+ Action: Key combination type; default is unspecified if one
+ child element, Simul if there is more than one; if value is
+ Other, the OtherAction attribute must have a nonempty value
+ -->
+ <!-- OtherAction: User-defined key combination type -->
+ <xs:attributeGroup name="keyaction.attrib">
+ <xs:attribute name="action">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="click"/>
+ <xs:enumeration value="double-click"/>
+ <xs:enumeration value="press"/>
+ <xs:enumeration value="seq"/>
+ <xs:enumeration value="simul"/>
+ <xs:enumeration value="other"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otheraction"/>
+ </xs:attributeGroup>
+ <!--
+ Label: Identifying number or string; default is usually the
+ appropriate number or string autogenerated by a formatter
+ -->
+ <xs:attributeGroup name="label.attrib">
+ <xs:attribute name="label"/>
+ </xs:attributeGroup>
+ <!-- xml:space: whitespace treatment -->
+ <xs:attributeGroup name="xml-space.attrib">
+ <xs:attribute ref="xml:space"/>
+ </xs:attributeGroup>
+ <!--
+ Format: whether element is assumed to contain significant white
+ space
+ -->
+ <xs:attributeGroup name="linespecific.attrib">
+ <xs:attribute name="format" default="linespecific">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="linespecific"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="xml-space.attrib"/>
+ <xs:attribute name="linenumbering">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="numbered"/>
+ <xs:enumeration value="unnumbered"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="continuation">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="continues"/>
+ <xs:enumeration value="restarts"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="startinglinenumber"/>
+ <xs:attribute name="language"/>
+ </xs:attributeGroup>
+ <!-- Linkend: link to related information; no default -->
+ <xs:attributeGroup name="linkend.attrib">
+ <xs:attribute name="linkend" type="xs:IDREF"/>
+ </xs:attributeGroup>
+ <!-- Linkend: required link to related information -->
+ <xs:attributeGroup name="linkendreq.attrib">
+ <xs:attribute name="linkend" use="required" type="xs:IDREF"/>
+ </xs:attributeGroup>
+ <!--
+ Linkends: link to one or more sets of related information; no
+ default
+ -->
+ <xs:attributeGroup name="linkends.attrib">
+ <xs:attribute name="linkends" type="xs:IDREFS"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="mark.attrib">
+ <xs:attribute name="mark"/>
+ </xs:attributeGroup>
+ <!-- MoreInfo: whether element's content has an associated RefEntry -->
+ <xs:attributeGroup name="moreinfo.attrib">
+ <xs:attribute name="moreinfo" default="none">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="refentry"/>
+ <xs:enumeration value="none"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <!-- Pagenum: number of page on which element appears; no default -->
+ <xs:attributeGroup name="pagenum.attrib">
+ <xs:attribute name="pagenum"/>
+ </xs:attributeGroup>
+ <!--
+ Status: Editorial or publication status of the element
+ it applies to, such as "in review" or "approved for distribution"
+ -->
+ <xs:attributeGroup name="status.attrib">
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <!--
+ Width: width of the longest line in the element to which it
+ pertains, in number of characters
+ -->
+ <xs:attributeGroup name="width.attrib">
+ <xs:attribute name="width"/>
+ </xs:attributeGroup>
+ <!-- ...................................................................... -->
+ <!-- Title elements ....................................................... -->
+ <xs:attributeGroup name="title.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The text of the title of a section of a document or of a formal block-level element. -->
+ <xs:element name="title">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="title.char.mix"/>
+ <xs:attributeGroup ref="title.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of title.element -->
+ <xs:attributeGroup name="title.attlist">
+ <xs:attributeGroup ref="pagenum.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="title.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of title.attlist -->
+ <!-- end of title.module -->
+ <xs:attributeGroup name="titleabbrev.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The abbreviation of a Title. -->
+ <xs:element name="titleabbrev">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="title.char.mix"/>
+ <xs:attributeGroup ref="titleabbrev.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of titleabbrev.element -->
+ <xs:attributeGroup name="titleabbrev.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="titleabbrev.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of titleabbrev.attlist -->
+ <!-- end of titleabbrev.module -->
+ <xs:attributeGroup name="subtitle.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The subtitle of a document. -->
+ <xs:element name="subtitle">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="title.char.mix"/>
+ <xs:attributeGroup ref="subtitle.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of subtitle.element -->
+ <xs:attributeGroup name="subtitle.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="subtitle.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of subtitle.attlist -->
+ <!-- end of subtitle.module -->
+ <!-- ...................................................................... -->
+ <!-- Bibliographic entities and elements .................................. -->
+ <!--
+ The bibliographic elements are typically used in the document
+ hierarchy. They do not appear in content models of information
+ pool elements. See also the document information elements,
+ below.
+ -->
+ <xs:group name="person.ident.mix">
+ <xs:choice>
+ <xs:element ref="honorific"/>
+ <xs:element ref="firstname"/>
+ <xs:element ref="surname"/>
+ <xs:element ref="lineage"/>
+ <xs:element ref="othername"/>
+ <xs:element ref="affiliation"/>
+ <xs:element ref="authorblurb"/>
+ <xs:element ref="contrib"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="bibliocomponent.mix">
+ <xs:choice>
+ <xs:element ref="abbrev"/>
+ <xs:element ref="abstract"/>
+ <xs:element ref="address"/>
+ <xs:element ref="artpagenums"/>
+ <xs:element ref="author"/>
+ <xs:element ref="authorgroup"/>
+ <xs:element ref="authorinitials"/>
+ <xs:element ref="bibliomisc"/>
+ <xs:element ref="biblioset"/>
+ <xs:element ref="collab"/>
+ <xs:element ref="confgroup"/>
+ <xs:element ref="contractnum"/>
+ <xs:element ref="contractsponsor"/>
+ <xs:element ref="copyright"/>
+ <xs:element ref="corpauthor"/>
+ <xs:element ref="corpname"/>
+ <xs:element ref="corpcredit"/>
+ <xs:element ref="date"/>
+ <xs:element ref="edition"/>
+ <xs:element ref="editor"/>
+ <xs:element ref="invpartnumber"/>
+ <xs:element ref="isbn"/>
+ <xs:element ref="issn"/>
+ <xs:element ref="issuenum"/>
+ <xs:element ref="orgname"/>
+ <xs:element ref="biblioid"/>
+ <xs:element ref="citebiblioid"/>
+ <xs:element ref="bibliosource"/>
+ <xs:element ref="bibliorelation"/>
+ <xs:element ref="bibliocoverage"/>
+ <xs:element ref="othercredit"/>
+ <xs:element ref="pagenums"/>
+ <xs:element ref="printhistory"/>
+ <xs:element ref="productname"/>
+ <xs:element ref="productnumber"/>
+ <xs:element ref="pubdate"/>
+ <xs:element ref="publisher"/>
+ <xs:element ref="publishername"/>
+ <xs:element ref="pubsnumber"/>
+ <xs:element ref="releaseinfo"/>
+ <xs:element ref="revhistory"/>
+ <xs:element ref="seriesvolnums"/>
+ <xs:element ref="subtitle"/>
+ <xs:element ref="title"/>
+ <xs:element ref="titleabbrev"/>
+ <xs:element ref="volumenum"/>
+ <xs:element ref="citetitle"/>
+ <xs:element ref="personname"/>
+ <xs:group ref="person.ident.mix"/>
+ <xs:element ref="ndxterm.class"/>
+ </xs:choice>
+ </xs:group>
+ <!-- I don't think this is well placed, but it needs to be here because of -->
+ <!-- the reference to bibliocomponent.mix -->
+ <xs:group name="info.class">
+ <xs:choice>
+ <xs:element ref="graphic"/>
+ <xs:element ref="mediaobject"/>
+ <xs:element ref="legalnotice"/>
+ <xs:element ref="modespec"/>
+ <xs:element ref="subjectset"/>
+ <xs:element ref="keywordset"/>
+ <xs:element ref="itermset"/>
+ <xs:group ref="bibliocomponent.mix"/>
+ </xs:choice>
+ </xs:group>
+ <!-- BiblioList ........................ -->
+ <xs:attributeGroup name="bibliolist.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for a set of bibliography entries. -->
+ <xs:element name="bibliolist" substitutionGroup="list.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="biblioentry"/>
+ <xs:element ref="bibliomixed"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="bibliolist.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of bibliolist.element -->
+ <xs:attributeGroup name="bibliolist.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="bibliolist.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of bibliolist.attlist -->
+ <!-- end of bibliolist.module -->
+ <xs:attributeGroup name="biblioentry.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An entry in a Bibliography. -->
+ <xs:element name="biblioentry">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="articleinfo"/>
+ <xs:group ref="bibliocomponent.mix"/>
+ </xs:choice>
+ <xs:attributeGroup ref="biblioentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of biblioentry.element -->
+ <xs:attributeGroup name="biblioentry.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="biblioentry.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of biblioentry.attlist -->
+ <!-- end of biblioentry.module -->
+ <xs:attributeGroup name="bibliomixed.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An entry in a Bibliography. -->
+ <xs:element name="bibliomixed">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="bibliocomponent.mix"/>
+ <xs:element ref="bibliomset"/>
+ </xs:choice>
+ <xs:attributeGroup ref="bibliomixed.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of bibliomixed.element -->
+ <xs:attributeGroup name="bibliomixed.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="bibliomixed.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of bibliomixed.attlist -->
+ <!-- end of bibliomixed.module -->
+ <xs:attributeGroup name="articleinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for an Article. -->
+ <xs:element name="articleinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="articleinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of articleinfo.element -->
+ <xs:attributeGroup name="articleinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="articleinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of articleinfo.attlist -->
+ <!-- end of articleinfo.module -->
+ <xs:attributeGroup name="biblioset.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A "raw" container for related bibliographic information. -->
+ <xs:element name="biblioset">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="bibliocomponent.mix"/>
+ <xs:attributeGroup ref="biblioset.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of biblioset.element -->
+ <!-- Relation: Relationship of elements contained within BiblioSet -->
+ <xs:attributeGroup name="biblioset.attlist">
+ <xs:attribute name="relation"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="biblioset.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of biblioset.attlist -->
+ <!-- end of biblioset.module -->
+ <xs:attributeGroup name="bibliomset.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A "cooked" container for related bibliographic information. -->
+ <xs:element name="bibliomset">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="bibliocomponent.mix"/>
+ <xs:element ref="bibliomset"/>
+ </xs:choice>
+ <xs:attributeGroup ref="bibliomset.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of bibliomset.element -->
+ <!-- Relation: Relationship of elements contained within BiblioMSet -->
+ <xs:attributeGroup name="bibliomset.attlist">
+ <xs:attribute name="relation"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="bibliomset.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of bibliomset.attlist -->
+ <!-- end of bibliomset.module -->
+ <xs:attributeGroup name="bibliomisc.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Untyped bibliographic information. -->
+ <xs:element name="bibliomisc">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="bibliomisc.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of bibliomisc.element -->
+ <xs:attributeGroup name="bibliomisc.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="bibliomisc.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of bibliomisc.attlist -->
+ <!-- end of bibliomisc.module -->
+ <!-- ...................................................................... -->
+ <!-- Subject, Keyword, and ITermSet elements .............................. -->
+ <xs:attributeGroup name="subjectset.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A set of terms describing the subject matter of a document. -->
+ <xs:element name="subjectset">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="subject"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="subjectset.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of subjectset.element -->
+ <!-- Scheme: Controlled vocabulary employed in SubjectTerms -->
+ <xs:attributeGroup name="subjectset.attlist">
+ <xs:attribute name="scheme" type="xs:NMTOKEN"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="subjectset.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of subjectset.attlist -->
+ <!-- end of subjectset.module -->
+ <xs:attributeGroup name="subject.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:One of a group of terms describing the subject matter of a document. -->
+ <xs:element name="subject">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="subjectterm"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="subject.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of subject.element -->
+ <!--
+ Weight: Ranking of this group of SubjectTerms relative
+ to others, 0 is low, no highest value specified
+ -->
+ <xs:attributeGroup name="subject.attlist">
+ <xs:attribute name="weight"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="subject.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of subject.attlist -->
+ <!-- end of subject.module -->
+ <xs:attributeGroup name="subjectterm.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A term in a group of terms describing the subject matter of a document. -->
+ <xs:element name="subjectterm">
+ <xs:complexType mixed="true">
+ <xs:attributeGroup ref="subjectterm.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of subjectterm.element -->
+ <xs:attributeGroup name="subjectterm.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="subjectterm.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of subjectterm.attlist -->
+ <!-- end of subjectterm.module -->
+ <!-- end of subjectset.content.module -->
+ <xs:attributeGroup name="keywordset.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A set of keywords describing the content of a document. -->
+ <xs:element name="keywordset">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="keyword"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="keywordset.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of keywordset.element -->
+ <xs:attributeGroup name="keywordset.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="keywordset.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of keywordset.attlist -->
+ <!-- end of keywordset.module -->
+ <xs:attributeGroup name="keyword.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:One of a set of keywords describing the content of a document. -->
+ <xs:element name="keyword">
+ <xs:complexType mixed="true">
+ <xs:attributeGroup ref="keyword.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of keyword.element -->
+ <xs:attributeGroup name="keyword.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="keyword.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of keyword.attlist -->
+ <!-- end of keyword.module -->
+ <!-- end of keywordset.content.module -->
+ <xs:attributeGroup name="itermset.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A set of index terms in the meta-information of a document. -->
+ <xs:element name="itermset">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="indexterm"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="itermset.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of itermset.element -->
+ <xs:attributeGroup name="itermset.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="itermset.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of itermset.attlist -->
+ <!-- end of itermset.module -->
+ <!-- Bibliographic info for "blocks" -->
+ <xs:attributeGroup name="blockinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a block element. -->
+ <xs:element name="blockinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="blockinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of blockinfo.element -->
+ <xs:attributeGroup name="blockinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="blockinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of blockinfo.attlist -->
+ <!-- end of blockinfo.module -->
+ <!-- ...................................................................... -->
+ <!-- Compound (section-ish) elements ...................................... -->
+ <!-- Message set ...................... -->
+ <xs:attributeGroup name="msgset.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A detailed set of messages, usually error messages. -->
+ <xs:element name="msgset" substitutionGroup="compound.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="msgentry"/>
+ <xs:element maxOccurs="unbounded" ref="simplemsgentry"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="msgset.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of msgset.element -->
+ <xs:attributeGroup name="msgset.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="msgset.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of msgset.attlist -->
+ <!-- end of msgset.module -->
+ <xs:attributeGroup name="msgentry.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for an entry in a message set. -->
+ <xs:element name="msgentry">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="msg"/>
+ <xs:element minOccurs="0" ref="msginfo"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="msgexplan"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="msgentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of msgentry.element -->
+ <xs:attributeGroup name="msgentry.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="msgentry.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of msgentry.attlist -->
+ <!-- end of msgentry.module -->
+ <xs:attributeGroup name="simplemsgentry.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for a simpler entry in a message set. -->
+ <xs:element name="simplemsgentry">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="msgtext"/>
+ <xs:element maxOccurs="unbounded" ref="msgexplan"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="simplemsgentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of simplemsgentry.element -->
+ <xs:attributeGroup name="simplemsgentry.attlist">
+ <xs:attribute name="audience"/>
+ <xs:attribute name="level"/>
+ <xs:attribute name="origin"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="simplemsgentry.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of simplemsgentry.attlist -->
+ <!-- end of simplemsgentry.module -->
+ <xs:attributeGroup name="msg.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A message in a message set. -->
+ <xs:element name="msg">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:element ref="msgmain"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="msgsub"/>
+ <xs:element ref="msgrel"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="msg.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of msg.element -->
+ <xs:attributeGroup name="msg.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="msg.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of msg.attlist -->
+ <!-- end of msg.module -->
+ <xs:attributeGroup name="msgmain.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The primary component of a message in a message set. -->
+ <xs:element name="msgmain">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:element ref="msgtext"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="msgmain.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of msgmain.element -->
+ <xs:attributeGroup name="msgmain.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="msgmain.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of msgmain.attlist -->
+ <!-- end of msgmain.module -->
+ <xs:attributeGroup name="msgsub.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A subcomponent of a message in a message set. -->
+ <xs:element name="msgsub">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:element ref="msgtext"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="msgsub.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of msgsub.element -->
+ <xs:attributeGroup name="msgsub.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="msgsub.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of msgsub.attlist -->
+ <!-- end of msgsub.module -->
+ <xs:attributeGroup name="msgrel.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A related component of a message in a message set. -->
+ <xs:element name="msgrel">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:element ref="msgtext"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="msgrel.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of msgrel.element -->
+ <xs:attributeGroup name="msgrel.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="msgrel.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of msgrel.attlist -->
+ <!-- end of msgrel.module -->
+ <!-- MsgText (defined in the Inlines section, below) -->
+ <xs:attributeGroup name="msginfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Information about a message in a message set. -->
+ <xs:element name="msginfo">
+ <xs:complexType>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="msglevel"/>
+ <xs:element ref="msgorig"/>
+ <xs:element ref="msgaud"/>
+ </xs:choice>
+ <xs:attributeGroup ref="msginfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of msginfo.element -->
+ <xs:attributeGroup name="msginfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="msginfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of msginfo.attlist -->
+ <!-- end of msginfo.module -->
+ <xs:attributeGroup name="msglevel.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The level of importance or severity of a message in a message set. -->
+ <xs:element name="msglevel">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="msglevel.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of msglevel.element -->
+ <xs:attributeGroup name="msglevel.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="msglevel.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of msglevel.attlist -->
+ <!-- end of msglevel.module -->
+ <xs:attributeGroup name="msgorig.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The origin of a message in a message set. -->
+ <xs:element name="msgorig">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="msgorig.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of msgorig.element -->
+ <xs:attributeGroup name="msgorig.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="msgorig.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of msgorig.attlist -->
+ <!-- end of msgorig.module -->
+ <xs:attributeGroup name="msgaud.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The audience to which a message in a message set is relevant. -->
+ <xs:element name="msgaud">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="msgaud.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of msgaud.element -->
+ <xs:attributeGroup name="msgaud.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="msgaud.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of msgaud.attlist -->
+ <!-- end of msgaud.module -->
+ <xs:attributeGroup name="msgexplan.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Explanatory material relating to a message in a message set. -->
+ <xs:element name="msgexplan">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:group maxOccurs="unbounded" ref="component.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="msgexplan.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of msgexplan.element -->
+ <xs:attributeGroup name="msgexplan.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="msgexplan.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of msgexplan.attlist -->
+ <!-- end of msgexplan.module -->
+ <!-- end of msgset.content.module -->
+ <xs:attributeGroup name="task.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A task to be completed. -->
+ <xs:element name="task" substitutionGroup="compound.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="ndxterm.class"/>
+ <xs:group ref="formalobject.title.content"/>
+ <xs:element minOccurs="0" ref="tasksummary"/>
+ <xs:element minOccurs="0" ref="taskprerequisites"/>
+ <xs:element ref="procedure"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="example"/>
+ <xs:element minOccurs="0" ref="taskrelated"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="task.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of task.element -->
+ <xs:attributeGroup name="task.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="task.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of task.attlist -->
+ <!-- end of task.module -->
+ <xs:attributeGroup name="tasksummary.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A summary of a task. -->
+ <xs:element name="tasksummary">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:group maxOccurs="unbounded" ref="component.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="tasksummary.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of tasksummary.element -->
+ <xs:attributeGroup name="tasksummary.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="tasksummary.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of tasksummary.attlist -->
+ <!-- end of tasksummary.module -->
+ <xs:attributeGroup name="taskprerequisites.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The prerequisites for a task. -->
+ <xs:element name="taskprerequisites">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:group maxOccurs="unbounded" ref="component.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="taskprerequisites.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of taskprerequisites.element -->
+ <xs:attributeGroup name="taskprerequisites.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="taskprerequisites.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of taskprerequisites.attlist -->
+ <!-- end of taskprerequisites.module -->
+ <xs:attributeGroup name="taskrelated.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Information related to a task. -->
+ <xs:element name="taskrelated">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:group maxOccurs="unbounded" ref="component.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="taskrelated.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of taskrelated.element -->
+ <xs:attributeGroup name="taskrelated.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="taskrelated.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of taskrelated.attlist -->
+ <!-- end of taskrelated.module -->
+ <!-- end of task.content.module -->
+ <!-- QandASet ........................ -->
+ <xs:attributeGroup name="qandaset.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A question-and-answer set. -->
+ <xs:element name="qandaset" substitutionGroup="compound.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="qandaset.mix"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="qandadiv"/>
+ <xs:element maxOccurs="unbounded" ref="qandaentry"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="qandaset.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of qandaset.element -->
+ <xs:attributeGroup name="qandaset.attlist">
+ <xs:attribute name="defaultlabel">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="qanda"/>
+ <xs:enumeration value="number"/>
+ <xs:enumeration value="none"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="qandaset.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of qandaset.attlist -->
+ <!-- end of qandaset.module -->
+ <xs:attributeGroup name="qandadiv.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A titled division in a QandASet. -->
+ <xs:element name="qandadiv">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="qandaset.mix"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="qandadiv"/>
+ <xs:element maxOccurs="unbounded" ref="qandaentry"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="qandadiv.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of qandadiv.element -->
+ <xs:attributeGroup name="qandadiv.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="qandadiv.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of qandadiv.attlist -->
+ <!-- end of qandadiv.module -->
+ <xs:attributeGroup name="qandaentry.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A question/answer set within a QandASet. -->
+ <xs:element name="qandaentry">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:element minOccurs="0" ref="revhistory"/>
+ <xs:element ref="question"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="answer"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="qandaentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of qandaentry.element -->
+ <xs:attributeGroup name="qandaentry.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="qandaentry.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of qandaentry.attlist -->
+ <!-- end of qandaentry.module -->
+ <xs:attributeGroup name="question.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A question in a QandASet. -->
+ <xs:element name="question">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="label"/>
+ <xs:group maxOccurs="unbounded" ref="qandaset.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="question.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of question.element -->
+ <xs:attributeGroup name="question.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="question.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of question.attlist -->
+ <!-- end of question.module -->
+ <xs:attributeGroup name="answer.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An answer to a question posed in a QandASet. -->
+ <xs:element name="answer">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="label"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="qandaset.mix"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="qandaentry"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="answer.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of answer.element -->
+ <xs:attributeGroup name="answer.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="answer.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of answer.attlist -->
+ <!-- end of answer.module -->
+ <xs:attributeGroup name="label.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A label on a Question or Answer. -->
+ <xs:element name="label">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="word.char.mix"/>
+ <xs:attributeGroup ref="label.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of label.element -->
+ <xs:attributeGroup name="label.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="label.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of label.attlist -->
+ <!-- end of label.module -->
+ <!-- end of qandaset.content.module -->
+ <!-- Procedure ........................ -->
+ <xs:attributeGroup name="procedure.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A list of operations to be performed in a well-defined sequence. -->
+ <xs:element name="procedure" substitutionGroup="compound.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="component.mix"/>
+ <xs:element maxOccurs="unbounded" ref="step"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="procedure.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of procedure.element -->
+ <xs:attributeGroup name="procedure.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="procedure.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of procedure.attlist -->
+ <!-- end of procedure.module -->
+ <xs:attributeGroup name="step.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A unit of action in a procedure. -->
+ <xs:element name="step">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="component.mix"/>
+ <xs:sequence minOccurs="0">
+ <xs:choice>
+ <xs:element ref="substeps"/>
+ <xs:element ref="stepalternatives"/>
+ </xs:choice>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="component.mix"/>
+ </xs:sequence>
+ </xs:sequence>
+ <xs:sequence>
+ <xs:choice>
+ <xs:element ref="substeps"/>
+ <xs:element ref="stepalternatives"/>
+ </xs:choice>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="component.mix"/>
+ </xs:sequence>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="step.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of step.element -->
+ <!-- Performance: Whether the Step must be performed -->
+ <!-- not #REQUIRED! -->
+ <xs:attributeGroup name="step.attlist">
+ <xs:attribute name="performance" default="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="optional"/>
+ <xs:enumeration value="required"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="step.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of step.attlist -->
+ <!-- end of step.module -->
+ <xs:attributeGroup name="substeps.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for steps that occur within steps in a procedure. -->
+ <xs:element name="substeps">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="step"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="substeps.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of substeps.element -->
+ <!-- Performance: whether entire set of substeps must be performed -->
+ <!-- not #REQUIRED! -->
+ <xs:attributeGroup name="substeps.attlist">
+ <xs:attribute name="performance" default="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="optional"/>
+ <xs:enumeration value="required"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="substeps.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of substeps.attlist -->
+ <!-- end of substeps.module -->
+ <xs:attributeGroup name="stepalternatives.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Alternative steps in a procedure. -->
+ <xs:element name="stepalternatives">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="step"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="stepalternatives.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of stepalternatives.element -->
+ <!-- Performance: Whether (one of) the alternatives must be performed -->
+ <!-- not #REQUIRED! -->
+ <xs:attributeGroup name="stepalternatives.attlist">
+ <xs:attribute name="performance" default="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="optional"/>
+ <xs:enumeration value="required"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="stepalternatives.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of stepalternatives.attlist -->
+ <!-- end of stepalternatives.module -->
+ <!-- end of procedure.content.module -->
+ <!-- Sidebar .......................... -->
+ <xs:attributeGroup name="sidebarinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Sidebar. -->
+ <xs:element name="sidebarinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="sidebarinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sidebarinfo.element -->
+ <xs:attributeGroup name="sidebarinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sidebarinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sidebarinfo.attlist -->
+ <!-- end of sidebarinfo.module -->
+ <xs:attributeGroup name="sidebar.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A portion of a document that is isolated from the main narrative flow. -->
+ <xs:element name="sidebar" substitutionGroup="compound.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="sidebarinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:group maxOccurs="unbounded" ref="sidebar.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="sidebar.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sidebar.element -->
+ <xs:attributeGroup name="sidebar.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sidebar.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sidebar.attlist -->
+ <!-- end of sidebar.module -->
+ <!-- end of sidebar.content.model -->
+ <!-- ...................................................................... -->
+ <!-- Paragraph-related elements ........................................... -->
+ <xs:attributeGroup name="abstract.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A summary. -->
+ <xs:element name="abstract">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:element maxOccurs="unbounded" ref="para.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="abstract.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of abstract.element -->
+ <xs:attributeGroup name="abstract.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="abstract.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of abstract.attlist -->
+ <!-- end of abstract.module -->
+ <xs:attributeGroup name="authorblurb.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A short description or note about an author. -->
+ <xs:element name="authorblurb">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:element maxOccurs="unbounded" ref="para.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="authorblurb.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of authorblurb.element -->
+ <xs:attributeGroup name="authorblurb.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="authorblurb.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of authorblurb.attlist -->
+ <!-- end of authorblurb.module -->
+ <xs:attributeGroup name="personblurb.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A short description or note about a person. -->
+ <xs:element name="personblurb">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:element maxOccurs="unbounded" ref="para.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="personblurb.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of personblurb.element -->
+ <xs:attributeGroup name="personblurb.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="personblurb.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of personblurb.attlist -->
+ <!-- end of personblurb.module -->
+ <xs:attributeGroup name="blockquote.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A quotation set off from the main text. -->
+ <xs:element name="blockquote" substitutionGroup="informal.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:element minOccurs="0" ref="attribution"/>
+ <xs:group maxOccurs="unbounded" ref="component.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="blockquote.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of blockquote.element -->
+ <xs:attributeGroup name="blockquote.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="blockquote.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of blockquote.attlist -->
+ <!-- end of blockquote.module -->
+ <xs:attributeGroup name="attribution.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The source of a block quote or epigraph. -->
+ <xs:element name="attribution">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="attribution.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of attribution.element -->
+ <xs:attributeGroup name="attribution.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="attribution.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of attribution.attlist -->
+ <!-- end of attribution.module -->
+ <xs:attributeGroup name="bridgehead.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A free-floating heading. -->
+ <xs:element name="bridgehead">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="title.char.mix"/>
+ <xs:attributeGroup ref="bridgehead.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of bridgehead.element -->
+ <!--
+ Renderas: Indicates the format in which the BridgeHead
+ should appear
+ -->
+ <xs:attributeGroup name="bridgehead.attlist">
+ <xs:attribute name="renderas">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="other"/>
+ <xs:enumeration value="sect1"/>
+ <xs:enumeration value="sect2"/>
+ <xs:enumeration value="sect3"/>
+ <xs:enumeration value="sect4"/>
+ <xs:enumeration value="sect5"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="bridgehead.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of bridgehead.attlist -->
+ <!-- end of bridgehead.module -->
+ <xs:attributeGroup name="remark.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A remark (or comment) intended for presentation in a draft manuscript. -->
+ <xs:element name="remark">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="remark.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of remark.element -->
+ <xs:attributeGroup name="remark.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="remark.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of remark.attlist -->
+ <!-- end of remark.module -->
+ <xs:attributeGroup name="epigraph.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A short inscription at the beginning of a document or component. -->
+ <xs:element name="epigraph">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="attribution"/>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="para.class"/>
+ <xs:element ref="literallayout"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="epigraph.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of epigraph.element -->
+ <xs:attributeGroup name="epigraph.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="epigraph.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of epigraph.attlist -->
+ <!-- Attribution (defined above) -->
+ <!-- end of epigraph.module -->
+ <xs:attributeGroup name="footnote.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A footnote. -->
+ <xs:element name="footnote" substitutionGroup="gen.char.class">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="footnote.mix"/>
+ <xs:attributeGroup ref="footnote.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of footnote.element -->
+ <xs:attributeGroup name="footnote.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="footnote.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of footnote.attlist -->
+ <!-- end of footnote.module -->
+ <xs:attributeGroup name="highlights.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A summary of the main points of the discussed component. -->
+ <xs:element name="highlights">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="highlights.mix"/>
+ <xs:attributeGroup ref="highlights.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of highlights.element -->
+ <xs:attributeGroup name="highlights.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="highlights.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of highlights.attlist -->
+ <!-- end of highlights.module -->
+ <xs:attributeGroup name="formalpara.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A paragraph with a title. -->
+ <xs:element name="formalpara" substitutionGroup="para.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="title"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="ndxterm.class"/>
+ <xs:element ref="para"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="formalpara.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of formalpara.element -->
+ <xs:attributeGroup name="formalpara.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="formalpara.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of formalpara.attlist -->
+ <!-- end of formalpara.module -->
+ <xs:attributeGroup name="para.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A paragraph. -->
+ <xs:element name="para" substitutionGroup="para.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:group ref="para.mix"/>
+ </xs:choice>
+ <xs:attributeGroup ref="para.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of para.element -->
+ <xs:attributeGroup name="para.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="para.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of para.attlist -->
+ <!-- end of para.module -->
+ <xs:attributeGroup name="simpara.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A paragraph that contains only text and inline markup, no block elements. -->
+ <xs:element name="simpara" substitutionGroup="para.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="simpara.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of simpara.element -->
+ <xs:attributeGroup name="simpara.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="simpara.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of simpara.attlist -->
+ <!-- end of simpara.module -->
+ <xs:attributeGroup name="sconstruct.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An SConstruct example file. -->
+ <xs:element name="sconstruct" substitutionGroup="linespecific.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:element ref="co"/>
+ <xs:element ref="coref"/>
+ <xs:element ref="lineannotation"/>
+ <xs:element ref="textobject"/>
+ </xs:choice>
+ <xs:attributeGroup ref="sconstruct.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sconstruct.element -->
+ <xs:attributeGroup name="sconstruct.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sconstruct.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sconstruct.attlist -->
+ <!-- end of sconstruct.module -->
+ <xs:attributeGroup name="scons_example.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An SCons example. -->
+ <xs:element name="scons_example" substitutionGroup="linespecific.class">
+ <xs:complexType>
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="file"/>
+ <xs:element ref="directory"/>
+ </xs:choice>
+ <xs:attributeGroup ref="scons_example.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of scons_example.element -->
+ <xs:attributeGroup name="scons_example.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="scons_example.role.attrib"/>
+ <xs:attribute name="name" type="xs:string" use="required" />
+ <xs:attribute name="printme" type="xs:int" use="optional" />
+ </xs:attributeGroup>
+ <!-- end of scons_example.attlist -->
+ <!-- end of scons_example.module -->
+ <xs:attributeGroup name="file.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An SCons example file. -->
+ <xs:element name="file" substitutionGroup="linespecific.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:element ref="co"/>
+ <xs:element ref="coref"/>
+ <xs:element ref="lineannotation"/>
+ <xs:element ref="textobject"/>
+ </xs:choice>
+ <xs:attributeGroup ref="file.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of file.element -->
+ <xs:attributeGroup name="file.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="file.role.attrib"/>
+ <xs:attribute name="name" type="xs:string" use="required" />
+ <xs:attribute name="example" type="xs:string" use="optional" />
+ <xs:attribute name="chmod" type="xs:string" use="optional" />
+ <xs:attribute name="printme" type="xs:int" use="optional" />
+ </xs:attributeGroup>
+ <!-- end of file.attlist -->
+ <!-- end of file.module -->
+ <xs:attributeGroup name="directory.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An SCons example directory. -->
+ <xs:element name="directory" substitutionGroup="linespecific.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:element ref="co"/>
+ <xs:element ref="coref"/>
+ <xs:element ref="lineannotation"/>
+ <xs:element ref="textobject"/>
+ </xs:choice>
+ <xs:attributeGroup ref="directory.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of directory.element -->
+ <xs:attributeGroup name="directory.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="directory.role.attrib"/>
+ <xs:attribute name="name" type="xs:string" use="required" />
+ </xs:attributeGroup>
+ <!-- end of directory.attlist -->
+ <!-- end of directory.module -->
+ <xs:attributeGroup name="scons_example_file.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A SCons example file. -->
+ <xs:element name="scons_example_file" substitutionGroup="linespecific.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:element ref="co"/>
+ <xs:element ref="coref"/>
+ <xs:element ref="lineannotation"/>
+ <xs:element ref="textobject"/>
+ </xs:choice>
+ <xs:attributeGroup ref="scons_example_file.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of scons_example_file.element -->
+ <xs:attributeGroup name="scons_example_file.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="scons_example_file.role.attrib"/>
+ <xs:attribute name="name" type="xs:string" use="required" />
+ <xs:attribute name="example" type="xs:string" use="required" />
+ </xs:attributeGroup>
+ <!-- end of scons_example_file.attlist -->
+ <!-- end of scons_example_file.module -->
+ <xs:attributeGroup name="scons_output.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The output of a SCons command/example. -->
+ <xs:element name="scons_output" substitutionGroup="linespecific.class">
+ <xs:complexType>
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="scons_output_command"/>
+ </xs:choice>
+ <xs:attributeGroup ref="scons_output.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of scons_output.element -->
+ <xs:attributeGroup name="scons_output.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="scons_output.role.attrib"/>
+ <xs:attribute name="name" type="xs:string" />
+ <xs:attribute name="tools" type="xs:string" />
+ <xs:attribute name="example" type="xs:string" use="required" />
+ <xs:attribute name="suffix" type="xs:string" use="required" />
+ </xs:attributeGroup>
+ <!-- end of scons_output.attlist -->
+ <!-- end of scons_output.module -->
+ <xs:attributeGroup name="scons_output_command.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A SCons example file. -->
+ <xs:element name="scons_output_command" substitutionGroup="linespecific.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:element ref="co"/>
+ <xs:element ref="coref"/>
+ <xs:element ref="lineannotation"/>
+ <xs:element ref="textobject"/>
+ </xs:choice>
+ <xs:attributeGroup ref="scons_output_command.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of scons_output_command.element -->
+ <xs:attributeGroup name="scons_output_command.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="scons_output_command.role.attrib"/>
+ <xs:attribute name="edit" type="xs:string" use="optional" />
+ <xs:attribute name="environment" type="xs:string" use="optional" />
+ <xs:attribute name="output" type="xs:string" use="optional" />
+ </xs:attributeGroup>
+ <!-- end of scons_output_command.attlist -->
+ <!-- end of scons_output_command.module -->
+ <xs:attributeGroup name="sconsdoc.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A sconsdoc. -->
+ <xs:element name="sconsdoc" substitutionGroup="para.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="tool"/>
+ <xs:element ref="builder"/>
+ <xs:element ref="scons_function"/>
+ <xs:element ref="cvar"/>
+ </xs:choice>
+ <xs:attributeGroup ref="sconsdoc.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sconsdoc.element -->
+ <xs:attributeGroup name="sconsdoc.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sconsdoc.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sconsdoc.attlist -->
+ <!-- end of sconsdoc.module -->
+ <xs:attributeGroup name="example_commands.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Text that a user sees or might see on a computer screen. -->
+ <xs:element name="example_commands" substitutionGroup="linespecific.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:element ref="co"/>
+ <xs:element ref="coref"/>
+ <xs:element ref="textobject"/>
+ <xs:element ref="lineannotation"/>
+ </xs:choice>
+ <xs:attributeGroup ref="example_commands.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of example_commands.element -->
+ <xs:attributeGroup name="example_commands.attlist">
+ <xs:attributeGroup ref="width.attrib"/>
+ <xs:attributeGroup ref="linespecific.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="example_commands.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of example_commands.attlist -->
+ <!-- end of example_commands.module -->
+ <xs:attributeGroup name="summary.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A summary. -->
+ <xs:element name="summary" substitutionGroup="para.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="component.mix"/>
+ <xs:group ref="summary.mix"/>
+ </xs:choice>
+ <xs:attributeGroup ref="summary.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of summary.element -->
+ <xs:attributeGroup name="summary.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="summary.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of summary.attlist -->
+ <!-- end of summary.module -->
+
+ <xs:attributeGroup name="item.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A item. -->
+ <xs:element name="item">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="item.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of item.element -->
+ <xs:attributeGroup name="item.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="item.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of item.attlist -->
+ <!-- end of item.module -->
+ <xs:attributeGroup name="sets.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A list in which each entry is marked with a bullet or other dingbat. -->
+ <xs:element name="sets" substitutionGroup="list.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="listpreamble.mix"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="item"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="sets.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sets.element -->
+ <!--
+ Spacing: Whether the vertical space in the list should be
+ compressed
+ -->
+ <!--
+ Mark: Keyword, e.g., bullet, dash, checkbox, none;
+ list of keywords and defaults are implementation specific
+ -->
+ <xs:attributeGroup name="sets.attlist">
+ <xs:attribute name="spacing">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="normal"/>
+ <xs:enumeration value="compact"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="mark.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sets.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sets.attlist -->
+ <!-- end of sets.module -->
+ <xs:attributeGroup name="uses.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A list in which each entry is marked with a bullet or other dingbat. -->
+ <xs:element name="uses" substitutionGroup="list.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="listpreamble.mix"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="item"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="uses.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of uses.element -->
+ <!--
+ Spacing: Whether the vertical space in the list should be
+ compressed
+ -->
+ <!--
+ Mark: Keyword, e.g., bullet, dash, checkbox, none;
+ list of keywords and defaults are implementation specific
+ -->
+ <xs:attributeGroup name="uses.attlist">
+ <xs:attribute name="spacing">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="normal"/>
+ <xs:enumeration value="compact"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="mark.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="uses.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of uses.attlist -->
+ <!-- end of uses.module -->
+ <xs:attributeGroup name="tool.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A paragraph. -->
+ <xs:element name="tool" substitutionGroup="para.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.mix"/>
+ <xs:group ref="tool.mix"/>
+ </xs:choice>
+ <xs:attributeGroup ref="tool.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of tool.element -->
+ <xs:attributeGroup name="tool.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="tool.role.attrib"/>
+ <xs:attribute name="name" type="xs:string" use="required" />
+ </xs:attributeGroup>
+ <!-- end of tool.attlist -->
+ <!-- end of tool.module -->
+ <xs:attributeGroup name="builder.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A paragraph. -->
+ <xs:element name="builder" substitutionGroup="para.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.mix"/>
+ <xs:group ref="tool.mix"/>
+ </xs:choice>
+ <xs:attributeGroup ref="builder.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of builder.element -->
+ <xs:attributeGroup name="builder.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="builder.role.attrib"/>
+ <xs:attribute name="name" type="xs:string" use="required" />
+ </xs:attributeGroup>
+ <!-- end of builder.attlist -->
+ <!-- end of builder.module -->
+
+ <xs:attributeGroup name="cvar.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A paragraph. -->
+ <xs:element name="cvar" substitutionGroup="para.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.mix"/>
+ <xs:element ref="summary"/>
+ </xs:choice>
+ <xs:attributeGroup ref="cvar.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of cvar.element -->
+ <xs:attributeGroup name="cvar.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="cvar.role.attrib"/>
+ <xs:attribute name="name" type="xs:string" use="required" />
+ </xs:attributeGroup>
+ <!-- end of cvar.attlist -->
+ <!-- end of cvar.module -->
+ <xs:attributeGroup name="arguments.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A general-purpose element for representing the syntax of commands or functions. -->
+ <xs:element name="arguments" substitutionGroup="synop.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:element ref="graphic"/>
+ <xs:element ref="mediaobject"/>
+ <xs:element ref="co"/>
+ <xs:element ref="coref"/>
+ <xs:element ref="textobject"/>
+ <xs:element ref="lineannotation"/>
+ </xs:choice>
+ <xs:attributeGroup ref="arguments.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of arguments.element -->
+ <xs:attributeGroup name="arguments.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="linespecific.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="arguments.role.attrib"/>
+ <xs:attribute name="signature" type="xs:string" use="optional" />
+ <xs:attribute name="both" type="xs:string" use="optional" />
+ </xs:attributeGroup>
+ <!-- end of arguments.attlist -->
+ <!-- end of arguments.module -->
+ <xs:attributeGroup name="scons_function.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A paragraph. -->
+ <xs:element name="scons_function" substitutionGroup="para.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:group ref="para.mix"/>
+ <xs:group ref="scons_function.mix"/>
+ </xs:choice>
+ <xs:attributeGroup ref="scons_function.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of scons_function.element -->
+ <xs:attributeGroup name="scons_function.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="scons_function.role.attrib"/>
+ <xs:attribute name="name" type="xs:string" use="required" />
+ </xs:attributeGroup>
+ <!-- end of scons_function.attlist -->
+ <!-- end of scons_function.module -->
+ <xs:attributeGroup name="admon.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A note of caution. -->
+ <xs:element name="caution" substitutionGroup="admon.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:group maxOccurs="unbounded" ref="admon.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="caution.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of caution.element -->
+ <xs:attributeGroup name="caution.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="admon.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of caution.attlist -->
+ <!-- doc:An admonition set off from the text. -->
+ <xs:element name="important" substitutionGroup="admon.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:group maxOccurs="unbounded" ref="admon.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="important.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of important.element -->
+ <xs:attributeGroup name="important.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="admon.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of important.attlist -->
+ <!-- doc:A message set off from the text. -->
+ <xs:element name="note" substitutionGroup="admon.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:group maxOccurs="unbounded" ref="admon.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="note.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of note.element -->
+ <xs:attributeGroup name="note.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="admon.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of note.attlist -->
+ <!-- doc:A suggestion to the user, set off from the text. -->
+ <xs:element name="tip" substitutionGroup="admon.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:group maxOccurs="unbounded" ref="admon.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="tip.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of tip.element -->
+ <xs:attributeGroup name="tip.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="admon.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of tip.attlist -->
+ <!-- doc:An admonition set off from the text. -->
+ <xs:element name="warning" substitutionGroup="admon.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:group maxOccurs="unbounded" ref="admon.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="warning.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of warning.element -->
+ <xs:attributeGroup name="warning.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="admon.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of warning.attlist -->
+ <!-- end of admon.module -->
+ <!-- ...................................................................... -->
+ <!-- Lists ................................................................ -->
+ <!-- GlossList ........................ -->
+ <xs:attributeGroup name="glosslist.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for a set of GlossEntrys. -->
+ <xs:element name="glosslist" substitutionGroup="list.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:element maxOccurs="unbounded" ref="glossentry"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="glosslist.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of glosslist.element -->
+ <xs:attributeGroup name="glosslist.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="glosslist.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of glosslist.attlist -->
+ <!-- end of glosslist.module -->
+ <xs:attributeGroup name="glossentry.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An entry in a Glossary or GlossList. -->
+ <xs:element name="glossentry">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="glossterm"/>
+ <xs:element minOccurs="0" ref="acronym"/>
+ <xs:element minOccurs="0" ref="abbrev"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="ndxterm.class"/>
+ <xs:element minOccurs="0" ref="revhistory"/>
+ <xs:choice>
+ <xs:element ref="glosssee"/>
+ <xs:element maxOccurs="unbounded" ref="glossdef"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="glossentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of glossentry.element -->
+ <!--
+ SortAs: String by which the GlossEntry is to be sorted
+ (alphabetized) in lieu of its proper content
+ -->
+ <xs:attributeGroup name="glossentry.attlist">
+ <xs:attribute name="sortas"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="glossentry.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of glossentry.attlist -->
+ <!-- end of glossentry.module -->
+ <!-- GlossTerm (defined in the Inlines section, below) -->
+ <xs:attributeGroup name="glossdef.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A definition in a GlossEntry. -->
+ <xs:element name="glossdef">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="glossdef.mix"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="glossseealso"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="glossdef.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of glossdef.element -->
+ <!-- Subject: List of subjects; keywords for the definition -->
+ <xs:attributeGroup name="glossdef.attlist">
+ <xs:attribute name="subject"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="glossdef.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of glossdef.attlist -->
+ <!-- end of glossdef.module -->
+ <xs:attributeGroup name="glosssee.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A cross-reference from one GlossEntry to another. -->
+ <xs:element name="glosssee">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="glosssee.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of glosssee.element -->
+ <!--
+ OtherTerm: Reference to the GlossEntry whose GlossTerm
+ should be displayed at the point of the GlossSee
+ -->
+ <xs:attributeGroup name="glosssee.attlist">
+ <xs:attribute name="otherterm" type="xs:IDREF"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="glosssee.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of glosssee.attlist -->
+ <!-- end of glosssee.module -->
+ <xs:attributeGroup name="glossseealso.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A cross-reference from one GlossEntry to another. -->
+ <xs:element name="glossseealso">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="glossseealso.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of glossseealso.element -->
+ <!--
+ OtherTerm: Reference to the GlossEntry whose GlossTerm
+ should be displayed at the point of the GlossSeeAlso
+ -->
+ <xs:attributeGroup name="glossseealso.attlist">
+ <xs:attribute name="otherterm" type="xs:IDREF"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="glossseealso.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of glossseealso.attlist -->
+ <!-- end of glossseealso.module -->
+ <!-- end of glossentry.content.module -->
+ <!-- ItemizedList and OrderedList ..... -->
+ <xs:attributeGroup name="itemizedlist.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A list in which each entry is marked with a bullet or other dingbat. -->
+ <xs:element name="itemizedlist" substitutionGroup="list.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="listpreamble.mix"/>
+ <xs:element maxOccurs="unbounded" ref="listitem"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="itemizedlist.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of itemizedlist.element -->
+ <!--
+ Spacing: Whether the vertical space in the list should be
+ compressed
+ -->
+ <!--
+ Mark: Keyword, e.g., bullet, dash, checkbox, none;
+ list of keywords and defaults are implementation specific
+ -->
+ <xs:attributeGroup name="itemizedlist.attlist">
+ <xs:attribute name="spacing">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="normal"/>
+ <xs:enumeration value="compact"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="mark.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="itemizedlist.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of itemizedlist.attlist -->
+ <!-- end of itemizedlist.module -->
+ <xs:attributeGroup name="orderedlist.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A list in which each entry is marked with a sequentially incremented label. -->
+ <xs:element name="orderedlist" substitutionGroup="list.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="listpreamble.mix"/>
+ <xs:element maxOccurs="unbounded" ref="listitem"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="orderedlist.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of orderedlist.element -->
+ <!--
+ Numeration: Style of ListItem numbered; default is expected
+ to be Arabic
+ -->
+ <!--
+ InheritNum: Specifies for a nested list that the numbering
+ of ListItems should include the number of the item
+ within which they are nested (e.g., 1a and 1b within 1,
+ rather than a and b)
+ -->
+ <!--
+ Continuation: Where list numbering begins afresh (Restarts,
+ the default) or continues that of the immediately preceding
+ list (Continues)
+ -->
+ <!--
+ Spacing: Whether the vertical space in the list should be
+ compressed
+ -->
+ <xs:attributeGroup name="orderedlist.attlist">
+ <xs:attribute name="numeration">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="arabic"/>
+ <xs:enumeration value="upperalpha"/>
+ <xs:enumeration value="loweralpha"/>
+ <xs:enumeration value="upperroman"/>
+ <xs:enumeration value="lowerroman"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="inheritnum" default="ignore">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="inherit"/>
+ <xs:enumeration value="ignore"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="continuation" default="restarts">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="continues"/>
+ <xs:enumeration value="restarts"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="spacing">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="normal"/>
+ <xs:enumeration value="compact"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="orderedlist.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of orderedlist.attlist -->
+ <!-- end of orderedlist.module -->
+ <xs:attributeGroup name="listitem.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for the elements of a list item. -->
+ <xs:element name="listitem">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="component.mix"/>
+ <xs:attributeGroup ref="listitem.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of listitem.element -->
+ <!--
+ Override: Indicates the mark to be used for this ListItem
+ instead of the default mark or the mark specified by
+ the Mark attribute on the enclosing ItemizedList
+ -->
+ <xs:attributeGroup name="listitem.attlist">
+ <xs:attribute name="override"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="listitem.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of listitem.attlist -->
+ <!-- end of listitem.module -->
+ <!-- SegmentedList .................... -->
+ <xs:attributeGroup name="segmentedlist.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A segmented list, a list of sets of elements. -->
+ <xs:element name="segmentedlist" substitutionGroup="list.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:element maxOccurs="unbounded" ref="segtitle"/>
+ <xs:element maxOccurs="unbounded" ref="seglistitem"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="segmentedlist.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of segmentedlist.element -->
+ <xs:attributeGroup name="segmentedlist.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="segmentedlist.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of segmentedlist.attlist -->
+ <!-- end of segmentedlist.module -->
+ <xs:attributeGroup name="segtitle.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The title of an element of a list item in a segmented list. -->
+ <xs:element name="segtitle">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="title.char.mix"/>
+ <xs:attributeGroup ref="segtitle.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of segtitle.element -->
+ <xs:attributeGroup name="segtitle.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="segtitle.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of segtitle.attlist -->
+ <!-- end of segtitle.module -->
+ <xs:attributeGroup name="seglistitem.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A list item in a segmented list. -->
+ <xs:element name="seglistitem">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="seg"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="seglistitem.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of seglistitem.element -->
+ <xs:attributeGroup name="seglistitem.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="seglistitem.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of seglistitem.attlist -->
+ <!-- end of seglistitem.module -->
+ <xs:attributeGroup name="seg.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An element of a list item in a segmented list. -->
+ <xs:element name="seg">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="seg.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of seg.element -->
+ <xs:attributeGroup name="seg.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="seg.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of seg.attlist -->
+ <!-- end of seg.module -->
+ <!-- end of segmentedlist.content.module -->
+ <!-- SimpleList ....................... -->
+ <xs:attributeGroup name="simplelist.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An undecorated list of single words or short phrases. -->
+ <xs:element name="simplelist" substitutionGroup="list.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="member"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="simplelist.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of simplelist.element -->
+ <!-- Columns: The number of columns the array should contain -->
+ <!--
+ Type: How the Members of the SimpleList should be
+ formatted: Inline (members separated with commas etc.
+ inline), Vert (top to bottom in n Columns), or Horiz (in
+ the direction of text flow) in n Columns. If Column
+ is 1 or implied, Type=Vert and Type=Horiz give the same
+ results.
+ -->
+ <xs:attributeGroup name="simplelist.attlist">
+ <xs:attribute name="columns"/>
+ <xs:attribute name="type" default="vert">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="inline"/>
+ <xs:enumeration value="vert"/>
+ <xs:enumeration value="horiz"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="simplelist.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of simplelist.attlist -->
+ <!-- end of simplelist.module -->
+ <xs:attributeGroup name="member.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An element of a simple list. -->
+ <xs:element name="member">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="member.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of member.element -->
+ <xs:attributeGroup name="member.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="member.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of member.attlist -->
+ <!-- end of member.module -->
+ <!-- end of simplelist.content.module -->
+ <!-- VariableList ..................... -->
+ <xs:attributeGroup name="variablelist.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A list in which each entry is composed of a set of one or more terms and an associated description. -->
+ <xs:element name="variablelist" substitutionGroup="list.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="listpreamble.mix"/>
+ <xs:element maxOccurs="unbounded" ref="varlistentry"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="variablelist.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of variablelist.element -->
+ <!--
+ TermLength: Length beyond which the presentation engine
+ may consider the Term too long and select an alternate
+ presentation of the Term and, or, its associated ListItem.
+ -->
+ <xs:attributeGroup name="variablelist.attlist">
+ <xs:attribute name="termlength"/>
+ <xs:attribute name="spacing">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="normal"/>
+ <xs:enumeration value="compact"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="variablelist.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of variablelist.attlist -->
+ <!-- end of variablelist.module -->
+ <xs:attributeGroup name="varlistentry.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for a set of terms and the associated description in a variable list. -->
+ <xs:element name="varlistentry">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="term"/>
+ <xs:element ref="listitem"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="varlistentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of varlistentry.element -->
+ <xs:attributeGroup name="varlistentry.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="varlistentry.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of varlistentry.attlist -->
+ <!-- end of varlistentry.module -->
+ <xs:attributeGroup name="term.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The word or phrase being defined or described in a variable list. -->
+ <xs:element name="term">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="term.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of term.element -->
+ <xs:attributeGroup name="term.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="term.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of term.attlist -->
+ <!-- end of term.module -->
+ <!-- ListItem (defined above) -->
+ <!-- end of variablelist.content.module -->
+ <!-- CalloutList ...................... -->
+ <xs:attributeGroup name="calloutlist.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A list of Callouts. -->
+ <xs:element name="calloutlist" substitutionGroup="list.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:element maxOccurs="unbounded" ref="callout"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="calloutlist.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of calloutlist.element -->
+ <xs:attributeGroup name="calloutlist.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="calloutlist.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of calloutlist.attlist -->
+ <!-- end of calloutlist.module -->
+ <xs:attributeGroup name="callout.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A &ldquo;called out&rdquo; description of a marked Area. -->
+ <xs:element name="callout">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="component.mix"/>
+ <xs:attributeGroup ref="callout.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of callout.element -->
+ <!--
+ AreaRefs: IDs of one or more Areas or AreaSets described
+ by this Callout
+ -->
+ <xs:attributeGroup name="callout.attlist">
+ <xs:attribute name="arearefs" use="required" type="xs:IDREFS"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="callout.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of callout.attlist -->
+ <!-- end of callout.module -->
+ <!-- end of calloutlist.content.module -->
+ <!-- ...................................................................... -->
+ <!-- Objects .............................................................. -->
+ <!-- Examples etc. .................... -->
+ <xs:attributeGroup name="example.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A formal example, with a title. -->
+ <xs:element name="example" substitutionGroup="formal.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group ref="formalobject.title.content"/>
+ <xs:group maxOccurs="unbounded" ref="example.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="example.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of example.element -->
+ <xs:attributeGroup name="example.attlist">
+ <xs:attribute name="floatstyle"/>
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="width.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="example.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of example.attlist -->
+ <!-- end of example.module -->
+ <xs:attributeGroup name="informalexample.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A displayed example without a title. -->
+ <xs:element name="informalexample" substitutionGroup="informal.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group maxOccurs="unbounded" ref="example.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="informalexample.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of informalexample.element -->
+ <xs:attributeGroup name="informalexample.attlist">
+ <xs:attribute name="floatstyle"/>
+ <xs:attributeGroup ref="width.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="informalexample.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of informalexample.attlist -->
+ <!-- end of informalexample.module -->
+ <xs:attributeGroup name="programlistingco.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A program listing with associated areas used in callouts. -->
+ <xs:element name="programlistingco" substitutionGroup="linespecific.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="areaspec"/>
+ <xs:element ref="programlisting"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="calloutlist"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="programlistingco.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of programlistingco.element -->
+ <xs:attributeGroup name="programlistingco.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="programlistingco.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of programlistingco.attlist -->
+ <!-- CalloutList (defined above in Lists) -->
+ <!-- end of informalexample.module -->
+ <xs:attributeGroup name="areaspec.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A collection of regions in a graphic or code example. -->
+ <xs:element name="areaspec">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="area"/>
+ <xs:element ref="areaset"/>
+ </xs:choice>
+ <xs:attributeGroup ref="areaspec.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of areaspec.element -->
+ <!--
+ Units: global unit of measure in which coordinates in
+ this spec are expressed:
+
+ - CALSPair "x1,y1 x2,y2": lower-left and upper-right
+ coordinates in a rectangle describing repro area in which
+ graphic is placed, where X and Y dimensions are each some
+ number 0..10000 (taken from CALS graphic attributes)
+
+ - LineColumn "line column": line number and column number
+ at which to start callout text in "linespecific" content
+
+ - LineRange "startline endline": whole lines from startline
+ to endline in "linespecific" content
+
+ - LineColumnPair "line1 col1 line2 col2": starting and ending
+ points of area in "linespecific" content that starts at
+ first position and ends at second position (including the
+ beginnings of any intervening lines)
+
+ - Other: directive to look at value of OtherUnits attribute
+ to get implementation-specific keyword
+
+ The default is implementation-specific; usually dependent on
+ the parent element (GraphicCO gets CALSPair, ProgramListingCO
+ and ScreenCO get LineColumn)
+ -->
+ <!-- OtherUnits: User-defined units -->
+ <xs:attributeGroup name="areaspec.attlist">
+ <xs:attribute name="units">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="calspair"/>
+ <xs:enumeration value="linecolumn"/>
+ <xs:enumeration value="linerange"/>
+ <xs:enumeration value="linecolumnpair"/>
+ <xs:enumeration value="other"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otherunits" type="xs:NMTOKEN"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="areaspec.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of areaspec.attlist -->
+ <!-- end of areaspec.module -->
+ <xs:attributeGroup name="area.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A region defined for a Callout in a graphic or code example. -->
+ <xs:element name="area">
+ <xs:complexType>
+ <xs:attributeGroup ref="area.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of area.element -->
+ <!-- bug number/symbol override or initialization -->
+ <!-- to any related information -->
+ <!--
+ Units: unit of measure in which coordinates in this
+ area are expressed; inherits from AreaSet and AreaSpec
+ -->
+ <!-- OtherUnits: User-defined units -->
+ <xs:attributeGroup name="area.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="linkends.attrib"/>
+ <xs:attribute name="units">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="calspair"/>
+ <xs:enumeration value="linecolumn"/>
+ <xs:enumeration value="linerange"/>
+ <xs:enumeration value="linecolumnpair"/>
+ <xs:enumeration value="other"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otherunits" type="xs:NMTOKEN"/>
+ <xs:attribute name="coords" use="required"/>
+ <xs:attributeGroup ref="idreq.common.attrib"/>
+ <xs:attributeGroup ref="area.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of area.attlist -->
+ <!-- end of area.module -->
+ <xs:attributeGroup name="areaset.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A set of related areas in a graphic or code example. -->
+ <xs:element name="areaset">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="area"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="areaset.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of areaset.element -->
+ <!-- bug number/symbol override or initialization -->
+ <!--
+ Units: unit of measure in which coordinates in this
+ area are expressed; inherits from AreaSpec
+ -->
+ <xs:attributeGroup name="areaset.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attribute name="units">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="calspair"/>
+ <xs:enumeration value="linecolumn"/>
+ <xs:enumeration value="linerange"/>
+ <xs:enumeration value="linecolumnpair"/>
+ <xs:enumeration value="other"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otherunits" type="xs:NMTOKEN"/>
+ <xs:attribute name="coords" use="required"/>
+ <xs:attributeGroup ref="idreq.common.attrib"/>
+ <xs:attributeGroup ref="areaset.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of areaset.attlist -->
+ <!-- end of areaset.module -->
+ <!-- end of areaspec.content.module -->
+ <xs:attributeGroup name="programlisting.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A literal listing of all or part of a program. -->
+ <xs:element name="programlisting" substitutionGroup="linespecific.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:element ref="co"/>
+ <xs:element ref="coref"/>
+ <xs:element ref="lineannotation"/>
+ <xs:element ref="textobject"/>
+ </xs:choice>
+ <xs:attributeGroup ref="programlisting.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of programlisting.element -->
+ <xs:attributeGroup name="programlisting.attlist">
+ <xs:attributeGroup ref="width.attrib"/>
+ <xs:attributeGroup ref="linespecific.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="programlisting.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of programlisting.attlist -->
+ <!-- end of programlisting.module -->
+ <xs:attributeGroup name="literallayout.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A block of text in which line breaks and white space are to be reproduced faithfully. -->
+ <xs:element name="literallayout" substitutionGroup="linespecific.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:element ref="co"/>
+ <xs:element ref="coref"/>
+ <xs:element ref="textobject"/>
+ <xs:element ref="lineannotation"/>
+ </xs:choice>
+ <xs:attributeGroup ref="literallayout.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of literallayout.element -->
+ <xs:attributeGroup name="literallayout.attlist">
+ <xs:attributeGroup ref="width.attrib"/>
+ <xs:attributeGroup ref="linespecific.attrib"/>
+ <xs:attribute name="class" default="normal">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="monospaced"/>
+ <xs:enumeration value="normal"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="literallayout.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of literallayout.attlist -->
+ <!-- LineAnnotation (defined in the Inlines section, below) -->
+ <!-- end of literallayout.module -->
+ <xs:attributeGroup name="screenco.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A screen with associated areas used in callouts. -->
+ <xs:element name="screenco" substitutionGroup="linespecific.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="areaspec"/>
+ <xs:element ref="screen"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="calloutlist"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="screenco.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of screenco.element -->
+ <xs:attributeGroup name="screenco.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="screenco.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of screenco.attlist -->
+ <!-- AreaSpec (defined above) -->
+ <!-- CalloutList (defined above in Lists) -->
+ <!-- end of screenco.module -->
+ <xs:attributeGroup name="screen.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Text that a user sees or might see on a computer screen. -->
+ <xs:element name="screen" substitutionGroup="linespecific.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:element ref="co"/>
+ <xs:element ref="coref"/>
+ <xs:element ref="textobject"/>
+ <xs:element ref="lineannotation"/>
+ </xs:choice>
+ <xs:attributeGroup ref="screen.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of screen.element -->
+ <xs:attributeGroup name="screen.attlist">
+ <xs:attributeGroup ref="width.attrib"/>
+ <xs:attributeGroup ref="linespecific.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="screen.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of screen.attlist -->
+ <!-- end of screen.module -->
+ <xs:attributeGroup name="screenshot.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A representation of what the user sees or might see on a computer screen. -->
+ <xs:element name="screenshot" substitutionGroup="linespecific.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="screeninfo"/>
+ <xs:choice>
+ <xs:element ref="graphic"/>
+ <xs:element ref="graphicco"/>
+ <xs:element ref="mediaobject"/>
+ <xs:element ref="mediaobjectco"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="screenshot.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of screenshot.element -->
+ <xs:attributeGroup name="screenshot.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="screenshot.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of screenshot.attlist -->
+ <!-- end of screenshot.module -->
+ <xs:attributeGroup name="screeninfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Information about how a screen shot was produced. -->
+ <xs:element name="screeninfo">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="screeninfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of screeninfo.element -->
+ <xs:attributeGroup name="screeninfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="screeninfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of screeninfo.attlist -->
+ <!-- end of screeninfo.module -->
+ <!-- end of screenshot.content.module -->
+ <!-- Figures etc. ..................... -->
+ <xs:attributeGroup name="figure.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A formal figure, generally an illustration, with a title. -->
+ <xs:element name="figure" substitutionGroup="formal.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group ref="formalobject.title.content"/>
+ <xs:choice maxOccurs="unbounded">
+ <xs:group ref="figure.mix"/>
+ <xs:element ref="link.char.class"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="figure.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of figure.element -->
+ <!--
+ Float: Whether the Figure is supposed to be rendered
+ where convenient (yes (1) value) or at the place it occurs
+ in the text (no (0) value, the default)
+ -->
+ <xs:attributeGroup name="figure.attlist">
+ <xs:attribute name="float" default="0" type="yesorno.attvals"/>
+ <xs:attribute name="floatstyle"/>
+ <xs:attribute name="pgwide" type="yesorno.attvals"/>
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="figure.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of figure.attlist -->
+ <!-- end of figure.module -->
+ <xs:attributeGroup name="informalfigure.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A untitled figure. -->
+ <xs:element name="informalfigure" substitutionGroup="informal.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:choice maxOccurs="unbounded">
+ <xs:group ref="figure.mix"/>
+ <xs:element ref="link.char.class"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="informalfigure.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of informalfigure.element -->
+ <!--
+ Float: Whether the Figure is supposed to be rendered
+ where convenient (yes (1) value) or at the place it occurs
+ in the text (no (0) value, the default)
+ -->
+ <xs:attributeGroup name="informalfigure.attlist">
+ <xs:attribute name="float" default="0" type="yesorno.attvals"/>
+ <xs:attribute name="floatstyle"/>
+ <xs:attribute name="pgwide" type="yesorno.attvals"/>
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="informalfigure.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of informalfigure.attlist -->
+ <!-- end of informalfigure.module -->
+ <xs:attributeGroup name="graphicco.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A graphic that contains callout areas. -->
+ <xs:element name="graphicco" substitutionGroup="informal.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="areaspec"/>
+ <xs:element ref="graphic"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="calloutlist"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="graphicco.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of graphicco.element -->
+ <xs:attributeGroup name="graphicco.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="graphicco.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of graphicco.attlist -->
+ <!-- AreaSpec (defined above in Examples) -->
+ <!-- CalloutList (defined above in Lists) -->
+ <!-- end of graphicco.module -->
+ <!--
+ Graphical data can be the content of Graphic, or you can reference
+ an external file either as an entity (Entitref) or a filename
+ (Fileref).
+ -->
+ <xs:attributeGroup name="graphic.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A displayed graphical object (not an inline). -->
+ <xs:element name="graphic" substitutionGroup="informal.class">
+ <xs:complexType>
+ <xs:attributeGroup ref="graphic.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of graphic.element -->
+ <xs:attributeGroup name="graphic.attlist">
+ <xs:attributeGroup ref="graphics.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="graphic.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of graphic.attlist -->
+ <!-- end of graphic.module -->
+ <xs:attributeGroup name="inlinegraphic.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An object containing or pointing to graphical data that will be rendered inline. -->
+ <xs:element name="inlinegraphic" substitutionGroup="inlineobj.char.class">
+ <xs:complexType>
+ <xs:attributeGroup ref="inlinegraphic.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of inlinegraphic.element -->
+ <xs:attributeGroup name="inlinegraphic.attlist">
+ <xs:attributeGroup ref="graphics.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="inlinegraphic.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of inlinegraphic.attlist -->
+ <!-- end of inlinegraphic.module -->
+ <xs:attributeGroup name="mediaobject.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A displayed media object (video, audio, image, etc.). -->
+ <xs:element name="mediaobject" substitutionGroup="informal.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="objectinfo"/>
+ <xs:element maxOccurs="unbounded" ref="mediaobject.mix"/>
+ <xs:element minOccurs="0" ref="caption"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="mediaobject.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of mediaobject.element -->
+ <xs:attributeGroup name="mediaobject.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="mediaobject.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of mediaobject.attlist -->
+ <!-- end of mediaobject.module -->
+ <xs:attributeGroup name="inlinemediaobject.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An inline media object (video, audio, image, and so on). -->
+ <xs:element name="inlinemediaobject" substitutionGroup="inlineobj.char.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="objectinfo"/>
+ <xs:element maxOccurs="unbounded" ref="mediaobject.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="inlinemediaobject.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of inlinemediaobject.element -->
+ <xs:attributeGroup name="inlinemediaobject.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="inlinemediaobject.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of inlinemediaobject.attlist -->
+ <!-- end of inlinemediaobject.module -->
+ <xs:attributeGroup name="videoobject.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for video data and its associated meta-information. -->
+ <xs:element name="videoobject" substitutionGroup="mediaobject.mix">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="objectinfo"/>
+ <xs:element ref="videodata"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="videoobject.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of videoobject.element -->
+ <xs:attributeGroup name="videoobject.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="videoobject.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of videoobject.attlist -->
+ <!-- end of videoobject.module -->
+ <xs:attributeGroup name="audioobject.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for audio data and its associated meta-information. -->
+ <xs:element name="audioobject" substitutionGroup="mediaobject.mix">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="objectinfo"/>
+ <xs:element ref="audiodata"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="audioobject.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of audioobject.element -->
+ <xs:attributeGroup name="audioobject.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="audioobject.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of audioobject.attlist -->
+ <!-- end of audioobject.module -->
+ <xs:attributeGroup name="imageobject.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for image data and its associated meta-information. -->
+ <xs:element name="imageobject" substitutionGroup="mediaobject.mix">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="objectinfo"/>
+ <xs:element ref="imagedata"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="imageobject.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of imageobject.element -->
+ <xs:attributeGroup name="imageobject.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="imageobject.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of imageobject.attlist -->
+ <!-- end of imageobject.module -->
+ <xs:attributeGroup name="textobject.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for a text description of an object and its associated meta-information. -->
+ <xs:element name="textobject" substitutionGroup="mediaobject.mix">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="objectinfo"/>
+ <xs:choice>
+ <xs:element ref="phrase"/>
+ <xs:element ref="textdata"/>
+ <xs:group maxOccurs="unbounded" ref="textobject.mix"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="textobject.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of textobject.element -->
+ <xs:attributeGroup name="textobject.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="textobject.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of textobject.attlist -->
+ <!-- end of textobject.module -->
+ <xs:attributeGroup name="objectinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for an object. -->
+ <xs:element name="objectinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="objectinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of objectinfo.element -->
+ <xs:attributeGroup name="objectinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="objectinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of objectinfo.attlist -->
+ <!-- end of objectinfo.module -->
+ <!--
+ EntityRef: Name of an external entity containing the content
+ of the object data
+ -->
+ <!--
+ FileRef: Filename, qualified by a pathname if desired,
+ designating the file containing the content of the object data
+ -->
+ <!-- Format: Notation of the element content, if any -->
+ <!-- SrcCredit: Information about the source of the image -->
+ <xs:attributeGroup name="objectdata.attrib">
+ <xs:attribute name="entityref" type="xs:ENTITY"/>
+ <xs:attribute name="fileref"/>
+ <xs:attribute name="format" type="notation.class"/>
+ <xs:attribute name="srccredit"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="videodata.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Pointer to external video data. -->
+ <xs:element name="videodata">
+ <xs:complexType>
+ <xs:attributeGroup ref="videodata.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of videodata.element -->
+ <!-- Width: Same as CALS reprowid (desired width) -->
+ <!-- Depth: Same as CALS reprodep (desired depth) -->
+ <!--
+ Align: Same as CALS hplace with 'none' removed; #IMPLIED means
+ application-specific
+ -->
+ <!-- Scale: Conflation of CALS hscale and vscale -->
+ <!-- Scalefit: Same as CALS scalefit -->
+ <xs:attributeGroup name="videodata.attlist">
+ <xs:attribute name="width"/>
+ <xs:attribute name="contentwidth"/>
+ <xs:attribute name="depth"/>
+ <xs:attribute name="contentdepth"/>
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="left"/>
+ <xs:enumeration value="right"/>
+ <xs:enumeration value="center"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="valign">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="top"/>
+ <xs:enumeration value="middle"/>
+ <xs:enumeration value="bottom"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="scale"/>
+ <xs:attribute name="scalefit" type="yesorno.attvals"/>
+ <xs:attributeGroup ref="objectdata.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="videodata.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of videodata.attlist -->
+ <!-- end of videodata.module -->
+ <xs:attributeGroup name="audiodata.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Pointer to external audio data. -->
+ <xs:element name="audiodata">
+ <xs:complexType>
+ <xs:attributeGroup ref="audiodata.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of audiodata.element -->
+ <xs:attributeGroup name="audiodata.attlist">
+ <xs:attributeGroup ref="objectdata.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="audiodata.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of audiodata.attlist -->
+ <!-- end of audiodata.module -->
+ <xs:attributeGroup name="imagedata.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Pointer to external image data. -->
+ <xs:element name="imagedata">
+ <xs:complexType>
+ <xs:attributeGroup ref="imagedata.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of imagedata.element -->
+ <!-- Width: Same as CALS reprowid (desired width) -->
+ <!-- Depth: Same as CALS reprodep (desired depth) -->
+ <!--
+ Align: Same as CALS hplace with 'none' removed; #IMPLIED means
+ application-specific
+ -->
+ <!-- Scale: Conflation of CALS hscale and vscale -->
+ <!-- Scalefit: Same as CALS scalefit -->
+ <xs:attributeGroup name="imagedata.attlist">
+ <xs:attribute name="width"/>
+ <xs:attribute name="contentwidth"/>
+ <xs:attribute name="depth"/>
+ <xs:attribute name="contentdepth"/>
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="left"/>
+ <xs:enumeration value="right"/>
+ <xs:enumeration value="center"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="valign">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="top"/>
+ <xs:enumeration value="middle"/>
+ <xs:enumeration value="bottom"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="scale"/>
+ <xs:attribute name="scalefit" type="yesorno.attvals"/>
+ <xs:attributeGroup ref="objectdata.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="imagedata.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of imagedata.attlist -->
+ <!-- end of imagedata.module -->
+ <xs:attributeGroup name="textdata.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Pointer to external text data. -->
+ <xs:element name="textdata">
+ <xs:complexType>
+ <xs:attributeGroup ref="textdata.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of textdata.element -->
+ <xs:attributeGroup name="textdata.attlist">
+ <xs:attribute name="encoding"/>
+ <xs:attributeGroup ref="objectdata.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="textdata.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of textdata.attlist -->
+ <!-- end of textdata.module -->
+ <xs:attributeGroup name="mediaobjectco.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A media object that contains callouts. -->
+ <xs:element name="mediaobjectco" substitutionGroup="informal.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="objectinfo"/>
+ <xs:element ref="imageobjectco"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="imageobjectco"/>
+ <xs:element ref="textobject"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="mediaobjectco.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of mediaobjectco.element -->
+ <xs:attributeGroup name="mediaobjectco.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="mediaobjectco.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of mediaobjectco.attlist -->
+ <!-- end of mediaobjectco.module -->
+ <xs:attributeGroup name="imageobjectco.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for an image object with callouts. -->
+ <xs:element name="imageobjectco" substitutionGroup="mediaobject.mix">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="areaspec"/>
+ <xs:element ref="imageobject"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="calloutlist"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="imageobjectco.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of imageobjectco.element -->
+ <xs:attributeGroup name="imageobjectco.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="imageobjectco.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of imageobjectco.attlist -->
+ <!-- end of imageobjectco.module -->
+ <!-- end of mediaobject.content.module -->
+ <!-- Equations ........................ -->
+ <!-- This PE provides a mechanism for replacing equation content, -->
+ <!-- perhaps adding a new or different model (e.g., MathML) -->
+ <xs:group name="equation.content">
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="alt"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="graphic"/>
+ <xs:element maxOccurs="unbounded" ref="mediaobject"/>
+ <xs:element maxOccurs="unbounded" ref="mathphrase"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+ <xs:complexType name="inlineequation.content">
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="alt"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="graphic"/>
+ <xs:element maxOccurs="unbounded" ref="inlinemediaobject"/>
+ <xs:element maxOccurs="unbounded" ref="mathphrase"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:attributeGroup name="equation.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A displayed mathematical equation. -->
+ <xs:element name="equation" substitutionGroup="formal.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:choice>
+ <xs:element ref="informalequation"/>
+ <xs:group ref="equation.content"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="equation.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of equation.element -->
+ <xs:attributeGroup name="equation.attlist">
+ <xs:attribute name="floatstyle"/>
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="equation.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of equation.attlist -->
+ <!-- end of equation.module -->
+ <xs:attributeGroup name="informalequation.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A displayed mathematical equation without a title. -->
+ <xs:element name="informalequation" substitutionGroup="informal.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group ref="equation.content"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="informalequation.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of informalequation.element -->
+ <xs:attributeGroup name="informalequation.attlist">
+ <xs:attribute name="floatstyle"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="informalequation.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of informalequation.attlist -->
+ <!-- end of informalequation.module -->
+ <xs:attributeGroup name="inlineequation.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A mathematical equation or expression occurring inline. -->
+ <xs:element name="inlineequation" substitutionGroup="inlineobj.char.class">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="inlineequation.content">
+ <xs:attributeGroup ref="inlineequation.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of inlineequation.element -->
+ <xs:attributeGroup name="inlineequation.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="inlineequation.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of inlineequation.attlist -->
+ <!-- end of inlineequation.module -->
+ <xs:attributeGroup name="alt.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Text representation for a graphical element. -->
+ <xs:element name="alt">
+ <xs:complexType mixed="true">
+ <xs:attributeGroup ref="alt.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of alt.element -->
+ <xs:attributeGroup name="alt.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="alt.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of alt.attlist -->
+ <!-- end of alt.module -->
+ <xs:attributeGroup name="mathphrase.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A mathematical phrase, an expression that can be represented with ordinary text and a small amount of markup. -->
+ <xs:element name="mathphrase">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="subscript"/>
+ <xs:element ref="superscript"/>
+ <xs:element ref="emphasis"/>
+ </xs:choice>
+ <xs:attributeGroup ref="mathphrase.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of mathphrase.element -->
+ <xs:attributeGroup name="mathphrase.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="mathphrase.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of mathphrase.attlist -->
+ <!-- end of mathphrase.module -->
+ <!-- Tables ........................... -->
+ <!-- Choose a table model. CALS or OASIS XML Exchange -->
+ <!-- Do we allow the HTML table model as well? -->
+ <!-- ====================================================== -->
+ <!--
+ xhtmltbl.mod defines HTML tables and sets parameter
+ entities so that, when the CALS table module is read,
+ we end up allowing any table to be CALS or HTML.
+ i.e. This include must come first!
+ -->
+ <!-- ====================================================== -->
+ <!-- end of allow.html.tables -->
+ <!-- Add label and role attributes to table and informaltable -->
+ <!--
+ Add common attributes to Table, TGroup, TBody, THead, TFoot, Row,
+ EntryTbl, and Entry (and InformalTable element).
+ -->
+ <!-- Content model for Table. -->
+ <!-- Allow either objects or inlines; beware of REs between elements. -->
+ <!-- Reference CALS Table Model -->
+ <!-- end of table.module -->
+ <!--
+ Note that InformalTable is dependent on some of the entity
+ declarations that customize Table.
+ -->
+ <!-- the following entity may have been declared by the XHTML table module -->
+ <!-- doc:A table without a title. -->
+ <xs:element name="informaltable" substitutionGroup="informal.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group ref="informal.tbl.table.mdl"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="informaltable.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of informaltable.element -->
+ <!--
+ Frame, Colsep, and Rowsep must be repeated because
+ they are not in entities in the table module.
+ -->
+ <!--
+ includes TabStyle, ToCentry, ShortEntry,
+ Orient, PgWide
+ -->
+ <!-- includes Label -->
+ <!-- includes common attributes -->
+ <xs:attributeGroup name="informaltable.attlist">
+ <xs:attribute name="frame" type="tbl.frame.attval"/>
+ <xs:attribute name="colsep" type="yesorno.attvals"/>
+ <xs:attribute name="rowsep" type="yesorno.attvals"/>
+ <xs:attributeGroup ref="common.table.attribs"/>
+ <xs:attributeGroup ref="tbl.table.att"/>
+ </xs:attributeGroup>
+ <!-- end of informaltable.attlist -->
+ <!-- end of informaltable.module -->
+ <xs:attributeGroup name="caption.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A caption. -->
+ <xs:element name="caption">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="textobject.mix"/>
+ <xs:attributeGroup ref="caption.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of caption.element -->
+ <!-- attrs comes from HTML tables ... -->
+ <!-- common.attrib, but without ID because ID is in attrs -->
+ <xs:attributeGroup name="caption.attlist.content">
+ <xs:attributeGroup ref="caption.role.attrib"/>
+ <xs:attributeGroup ref="attrs"/>
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="top"/>
+ <xs:enumeration value="bottom"/>
+ <xs:enumeration value="left"/>
+ <xs:enumeration value="right"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="caption.attlist">
+ <xs:attributeGroup ref="caption.attlist.content"/>
+ </xs:attributeGroup>
+ <!-- end of caption.attlist -->
+ <!-- end of caption.module -->
+ <!-- ...................................................................... -->
+ <!-- Synopses ............................................................. -->
+ <!-- Synopsis ......................... -->
+ <xs:attributeGroup name="synopsis.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A general-purpose element for representing the syntax of commands or functions. -->
+ <xs:element name="synopsis" substitutionGroup="synop.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:element ref="graphic"/>
+ <xs:element ref="mediaobject"/>
+ <xs:element ref="co"/>
+ <xs:element ref="coref"/>
+ <xs:element ref="textobject"/>
+ <xs:element ref="lineannotation"/>
+ </xs:choice>
+ <xs:attributeGroup ref="synopsis.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of synopsis.element -->
+ <xs:attributeGroup name="synopsis.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="linespecific.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="synopsis.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of synopsis.attlist -->
+ <!-- LineAnnotation (defined in the Inlines section, below) -->
+ <!-- end of synopsis.module -->
+ <!-- CmdSynopsis ...................... -->
+ <xs:attributeGroup name="cmdsynopsis.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A syntax summary for a software command. -->
+ <xs:element name="cmdsynopsis" substitutionGroup="synop.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="command"/>
+ <xs:element ref="arg"/>
+ <xs:element ref="group"/>
+ <xs:element ref="sbr"/>
+ </xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="synopfragment"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="cmdsynopsis.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of cmdsynopsis.element -->
+ <!--
+ Sepchar: Character that should separate command and all
+ top-level arguments; alternate value might be e.g., &Delta;
+ -->
+ <xs:attributeGroup name="cmdsynopsis.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attribute name="sepchar" default=" "/>
+ <xs:attribute name="cmdlength"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="cmdsynopsis.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of cmdsynopsis.attlist -->
+ <!-- end of cmdsynopsis.module -->
+ <xs:attributeGroup name="arg.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An argument in a CmdSynopsis. -->
+ <xs:element name="arg">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="arg"/>
+ <xs:element ref="group"/>
+ <xs:element ref="option"/>
+ <xs:element ref="synopfragmentref"/>
+ <xs:element ref="replaceable"/>
+ <xs:element ref="sbr"/>
+ </xs:choice>
+ <xs:attributeGroup ref="arg.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of arg.element -->
+ <!--
+ Choice: Whether Arg must be supplied: Opt (optional to
+ supply, e.g. [arg]; the default), Req (required to supply,
+ e.g. {arg}), or Plain (required to supply, e.g. arg)
+ -->
+ <!--
+ Rep: whether Arg is repeatable: Norepeat (e.g. arg without
+ ellipsis; the default), or Repeat (e.g. arg...)
+ -->
+ <xs:attributeGroup name="arg.attlist">
+ <xs:attribute name="choice" default="opt">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="opt"/>
+ <xs:enumeration value="req"/>
+ <xs:enumeration value="plain"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="rep" default="norepeat">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="norepeat"/>
+ <xs:enumeration value="repeat"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="arg.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of arg.attlist -->
+ <!-- end of arg.module -->
+ <xs:attributeGroup name="group.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A group of elements in a CmdSynopsis. -->
+ <xs:element name="group">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="arg"/>
+ <xs:element ref="group"/>
+ <xs:element ref="option"/>
+ <xs:element ref="synopfragmentref"/>
+ <xs:element ref="replaceable"/>
+ <xs:element ref="sbr"/>
+ </xs:choice>
+ <xs:attributeGroup ref="group.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of group.element -->
+ <!--
+ Choice: Whether Group must be supplied: Opt (optional to
+ supply, e.g. [g1|g2|g3]; the default), Req (required to
+ supply, e.g. {g1|g2|g3}), Plain (required to supply,
+ e.g. g1|g2|g3), OptMult (can supply zero or more, e.g.
+ [[g1|g2|g3]]), or ReqMult (must supply one or more, e.g.
+ {{g1|g2|g3}})
+ -->
+ <!--
+ Rep: whether Group is repeatable: Norepeat (e.g. group
+ without ellipsis; the default), or Repeat (e.g. group...)
+ -->
+ <xs:attributeGroup name="group.attlist">
+ <xs:attribute name="choice" default="opt">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="opt"/>
+ <xs:enumeration value="req"/>
+ <xs:enumeration value="plain"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="rep" default="norepeat">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="norepeat"/>
+ <xs:enumeration value="repeat"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="group.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of group.attlist -->
+ <!-- end of group.module -->
+ <!-- Synopsis break -->
+ <xs:attributeGroup name="sbr.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An explicit line break in a command synopsis. -->
+ <xs:element name="sbr">
+ <xs:complexType>
+ <xs:attributeGroup ref="sbr.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sbr.element -->
+ <xs:attributeGroup name="sbr.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sbr.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sbr.attlist -->
+ <!-- end of sbr.module -->
+ <xs:attributeGroup name="synopfragmentref.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A reference to a fragment of a command synopsis. -->
+ <xs:element name="synopfragmentref">
+ <xs:complexType mixed="true">
+ <xs:attributeGroup ref="synopfragmentref.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of synopfragmentref.element -->
+ <!--
+ to SynopFragment of complex synopsis
+ material for separate referencing
+ -->
+ <xs:attributeGroup name="synopfragmentref.attlist">
+ <xs:attributeGroup ref="linkendreq.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="synopfragmentref.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of synopfragmentref.attlist -->
+ <!-- end of synopfragmentref.module -->
+ <xs:attributeGroup name="synopfragment.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A portion of a CmdSynopsis broken out from the main body of the synopsis. -->
+ <xs:element name="synopfragment">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="arg"/>
+ <xs:element ref="group"/>
+ </xs:choice>
+ <xs:attributeGroup ref="synopfragment.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of synopfragment.element -->
+ <xs:attributeGroup name="synopfragment.attlist">
+ <xs:attributeGroup ref="idreq.common.attrib"/>
+ <xs:attributeGroup ref="synopfragment.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of synopfragment.attlist -->
+ <!-- end of synopfragment.module -->
+ <!-- Command (defined in the Inlines section, below) -->
+ <!-- Option (defined in the Inlines section, below) -->
+ <!-- Replaceable (defined in the Inlines section, below) -->
+ <!-- end of cmdsynopsis.content.module -->
+ <!-- FuncSynopsis ..................... -->
+ <xs:attributeGroup name="funcsynopsis.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The syntax summary for a function definition. -->
+ <xs:element name="funcsynopsis" substitutionGroup="synop.class">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="funcsynopsisinfo"/>
+ <xs:element ref="funcprototype"/>
+ </xs:choice>
+ <xs:attributeGroup ref="funcsynopsis.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of funcsynopsis.element -->
+ <xs:attributeGroup name="funcsynopsis.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="funcsynopsis.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of funcsynopsis.attlist -->
+ <!-- end of funcsynopsis.module -->
+ <xs:attributeGroup name="funcsynopsisinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Information supplementing the FuncDefs of a FuncSynopsis. -->
+ <xs:element name="funcsynopsisinfo">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="cptr.char.mix"/>
+ <xs:element ref="textobject"/>
+ <xs:element ref="lineannotation"/>
+ </xs:choice>
+ <xs:attributeGroup ref="funcsynopsisinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of funcsynopsisinfo.element -->
+ <xs:attributeGroup name="funcsynopsisinfo.attlist">
+ <xs:attributeGroup ref="linespecific.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="funcsynopsisinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of funcsynopsisinfo.attlist -->
+ <!-- end of funcsynopsisinfo.module -->
+ <xs:attributeGroup name="funcprototype.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The prototype of a function. -->
+ <xs:element name="funcprototype">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="modifier"/>
+ <xs:element ref="funcdef"/>
+ <xs:choice>
+ <xs:element ref="void"/>
+ <xs:element ref="varargs"/>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="paramdef"/>
+ <xs:element minOccurs="0" ref="varargs"/>
+ </xs:sequence>
+ </xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="modifier"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="funcprototype.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of funcprototype.element -->
+ <xs:attributeGroup name="funcprototype.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="funcprototype.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of funcprototype.attlist -->
+ <!-- end of funcprototype.module -->
+ <xs:attributeGroup name="funcdef.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A function (subroutine) name and its return type. -->
+ <xs:element name="funcdef">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="type"/>
+ <xs:element ref="replaceable"/>
+ <xs:element ref="function"/>
+ </xs:choice>
+ <xs:attributeGroup ref="funcdef.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of funcdef.element -->
+ <xs:attributeGroup name="funcdef.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="funcdef.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of funcdef.attlist -->
+ <!-- end of funcdef.module -->
+ <xs:attributeGroup name="void.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An empty element in a function synopsis indicating that the function in question takes no arguments. -->
+ <xs:element name="void">
+ <xs:complexType>
+ <xs:attributeGroup ref="void.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of void.element -->
+ <xs:attributeGroup name="void.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="void.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of void.attlist -->
+ <!-- end of void.module -->
+ <xs:attributeGroup name="varargs.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An empty element in a function synopsis indicating a variable number of arguments. -->
+ <xs:element name="varargs">
+ <xs:complexType>
+ <xs:attributeGroup ref="varargs.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of varargs.element -->
+ <xs:attributeGroup name="varargs.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="varargs.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of varargs.attlist -->
+ <!-- end of varargs.module -->
+ <!--
+ Processing assumes that only one Parameter will appear in a
+ ParamDef, and that FuncParams will be used at most once, for
+ providing information on the "inner parameters" for parameters that
+ are pointers to functions.
+ -->
+ <xs:attributeGroup name="paramdef.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Information about a function parameter in a programming language. -->
+ <xs:element name="paramdef">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="initializer"/>
+ <xs:element ref="type"/>
+ <xs:element ref="replaceable"/>
+ <xs:element ref="parameter"/>
+ <xs:element ref="funcparams"/>
+ </xs:choice>
+ <xs:attributeGroup ref="paramdef.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of paramdef.element -->
+ <xs:attributeGroup name="paramdef.attlist">
+ <xs:attribute name="choice">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="opt"/>
+ <xs:enumeration value="req"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="paramdef.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of paramdef.attlist -->
+ <!-- end of paramdef.module -->
+ <xs:attributeGroup name="funcparams.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Parameters for a function referenced through a function pointer in a synopsis. -->
+ <xs:element name="funcparams">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="funcparams.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of funcparams.element -->
+ <xs:attributeGroup name="funcparams.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="funcparams.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of funcparams.attlist -->
+ <!-- end of funcparams.module -->
+ <!-- LineAnnotation (defined in the Inlines section, below) -->
+ <!-- Replaceable (defined in the Inlines section, below) -->
+ <!-- Function (defined in the Inlines section, below) -->
+ <!-- Parameter (defined in the Inlines section, below) -->
+ <!-- end of funcsynopsis.content.module -->
+ <!-- ClassSynopsis ..................... -->
+ <xs:attributeGroup name="classsynopsis.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The syntax summary for a class definition. -->
+ <xs:element name="classsynopsis" substitutionGroup="synop.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="ooclass"/>
+ <xs:element ref="oointerface"/>
+ <xs:element ref="ooexception"/>
+ </xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="classsynopsisinfo"/>
+ <xs:element ref="fieldsynopsis"/>
+ <xs:element ref="method.synop.class"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="classsynopsis.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of classsynopsis.element -->
+ <xs:attributeGroup name="classsynopsis.attlist">
+ <xs:attribute name="language"/>
+ <xs:attribute name="class" default="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="class"/>
+ <xs:enumeration value="interface"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="classsynopsis.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of classsynopsis.attlist -->
+ <!-- end of classsynopsis.module -->
+ <xs:attributeGroup name="classsynopsisinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Information supplementing the contents of a ClassSynopsis. -->
+ <xs:element name="classsynopsisinfo">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="cptr.char.mix"/>
+ <xs:element ref="textobject"/>
+ <xs:element ref="lineannotation"/>
+ </xs:choice>
+ <xs:attributeGroup ref="classsynopsisinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of classsynopsisinfo.element -->
+ <xs:attributeGroup name="classsynopsisinfo.attlist">
+ <xs:attributeGroup ref="linespecific.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="classsynopsisinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of classsynopsisinfo.attlist -->
+ <!-- end of classsynopsisinfo.module -->
+ <xs:attributeGroup name="ooclass.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A class in an object-oriented programming language. -->
+ <xs:element name="ooclass" substitutionGroup="tech.char.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="modifier"/>
+ <xs:element ref="package"/>
+ </xs:choice>
+ <xs:element ref="classname"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="ooclass.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of ooclass.element -->
+ <xs:attributeGroup name="ooclass.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="ooclass.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of ooclass.attlist -->
+ <!-- end of ooclass.module -->
+ <xs:attributeGroup name="oointerface.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An interface in an object-oriented programming language. -->
+ <xs:element name="oointerface" substitutionGroup="tech.char.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="modifier"/>
+ <xs:element ref="package"/>
+ </xs:choice>
+ <xs:element ref="interfacename"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="oointerface.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of oointerface.element -->
+ <xs:attributeGroup name="oointerface.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="oointerface.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of oointerface.attlist -->
+ <!-- end of oointerface.module -->
+ <xs:attributeGroup name="ooexception.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An exception in an object-oriented programming language. -->
+ <xs:element name="ooexception" substitutionGroup="tech.char.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="modifier"/>
+ <xs:element ref="package"/>
+ </xs:choice>
+ <xs:element ref="exceptionname"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="ooexception.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of ooexception.element -->
+ <xs:attributeGroup name="ooexception.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="ooexception.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of ooexception.attlist -->
+ <!-- end of ooexception.module -->
+ <xs:attributeGroup name="modifier.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Modifiers in a synopsis. -->
+ <xs:element name="modifier">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="modifier.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of modifier.element -->
+ <xs:attributeGroup name="modifier.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="modifier.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of modifier.attlist -->
+ <!-- end of modifier.module -->
+ <xs:attributeGroup name="interfacename.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of an interface. -->
+ <xs:element name="interfacename" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="interfacename.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of interfacename.element -->
+ <xs:attributeGroup name="interfacename.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="interfacename.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of interfacename.attlist -->
+ <!-- end of interfacename.module -->
+ <xs:attributeGroup name="exceptionname.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of an exception. -->
+ <xs:element name="exceptionname" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="exceptionname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of exceptionname.element -->
+ <xs:attributeGroup name="exceptionname.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="exceptionname.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of exceptionname.attlist -->
+ <!-- end of exceptionname.module -->
+ <xs:attributeGroup name="fieldsynopsis.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a field in a class definition. -->
+ <xs:element name="fieldsynopsis" substitutionGroup="synop.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="modifier"/>
+ <xs:element minOccurs="0" ref="type"/>
+ <xs:element ref="varname"/>
+ <xs:element minOccurs="0" ref="initializer"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="fieldsynopsis.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of fieldsynopsis.element -->
+ <xs:attributeGroup name="fieldsynopsis.attlist">
+ <xs:attribute name="language"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="fieldsynopsis.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of fieldsynopsis.attlist -->
+ <!-- end of fieldsynopsis.module -->
+ <xs:attributeGroup name="initializer.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The initializer for a FieldSynopsis. -->
+ <xs:element name="initializer">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="initializer.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of initializer.element -->
+ <xs:attributeGroup name="initializer.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="initializer.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of initializer.attlist -->
+ <!-- end of initializer.module -->
+ <xs:attributeGroup name="constructorsynopsis.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A syntax summary for a constructor. -->
+ <xs:element name="constructorsynopsis" substitutionGroup="method.synop.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="modifier"/>
+ <xs:element minOccurs="0" ref="methodname"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="methodparam"/>
+ <xs:element minOccurs="0" ref="void"/>
+ </xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="exceptionname"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="constructorsynopsis.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of constructorsynopsis.element -->
+ <xs:attributeGroup name="constructorsynopsis.attlist">
+ <xs:attribute name="language"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="constructorsynopsis.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of constructorsynopsis.attlist -->
+ <!-- end of constructorsynopsis.module -->
+ <xs:attributeGroup name="destructorsynopsis.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A syntax summary for a destructor. -->
+ <xs:element name="destructorsynopsis" substitutionGroup="method.synop.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="modifier"/>
+ <xs:element minOccurs="0" ref="methodname"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="methodparam"/>
+ <xs:element minOccurs="0" ref="void"/>
+ </xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="exceptionname"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="destructorsynopsis.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of destructorsynopsis.element -->
+ <xs:attributeGroup name="destructorsynopsis.attlist">
+ <xs:attribute name="language"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="destructorsynopsis.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of destructorsynopsis.attlist -->
+ <!-- end of destructorsynopsis.module -->
+ <xs:attributeGroup name="methodsynopsis.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A syntax summary for a method. -->
+ <xs:element name="methodsynopsis" substitutionGroup="method.synop.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="modifier"/>
+ <xs:choice minOccurs="0">
+ <xs:element ref="type"/>
+ <xs:element ref="void"/>
+ </xs:choice>
+ <xs:element ref="methodname"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="methodparam"/>
+ <xs:element minOccurs="0" ref="void"/>
+ </xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="exceptionname"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="modifier"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="methodsynopsis.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of methodsynopsis.element -->
+ <xs:attributeGroup name="methodsynopsis.attlist">
+ <xs:attribute name="language"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="methodsynopsis.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of methodsynopsis.attlist -->
+ <!-- end of methodsynopsis.module -->
+ <xs:attributeGroup name="methodname.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a method. -->
+ <xs:element name="methodname" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="methodname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of methodname.element -->
+ <xs:attributeGroup name="methodname.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="methodname.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of methodname.attlist -->
+ <!-- end of methodname.module -->
+ <xs:attributeGroup name="methodparam.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Parameters to a method. -->
+ <xs:element name="methodparam">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="modifier"/>
+ <xs:element minOccurs="0" ref="type"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:element ref="parameter"/>
+ <xs:element minOccurs="0" ref="initializer"/>
+ </xs:sequence>
+ <xs:element ref="funcparams"/>
+ </xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="modifier"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="methodparam.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of methodparam.element -->
+ <xs:attributeGroup name="methodparam.attlist">
+ <xs:attribute name="choice" default="req">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="opt"/>
+ <xs:enumeration value="req"/>
+ <xs:enumeration value="plain"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="rep" default="norepeat">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="norepeat"/>
+ <xs:enumeration value="repeat"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="methodparam.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of methodparam.attlist -->
+ <!-- end of methodparam.module -->
+ <!-- end of classsynopsis.content.module -->
+ <!-- ...................................................................... -->
+ <!-- Document information entities and elements ........................... -->
+ <!--
+ The document information elements include some elements that are
+ currently used only in the document hierarchy module. They are
+ defined here so that they will be available for use in customized
+ document hierarchies.
+ -->
+ <!-- .................................. -->
+ <!-- Ackno ............................ -->
+ <xs:attributeGroup name="ackno.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Acknowledgements in an Article. -->
+ <xs:element name="ackno">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="ackno.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of ackno.element -->
+ <xs:attributeGroup name="ackno.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="ackno.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of ackno.attlist -->
+ <!-- end of ackno.module -->
+ <!-- Address .......................... -->
+ <xs:attributeGroup name="address.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A real-world address, generally a postal address. -->
+ <xs:element name="address" substitutionGroup="informal.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="personname"/>
+ <xs:group ref="person.ident.mix"/>
+ <xs:element ref="street"/>
+ <xs:element ref="pob"/>
+ <xs:element ref="postcode"/>
+ <xs:element ref="city"/>
+ <xs:element ref="state"/>
+ <xs:element ref="country"/>
+ <xs:element ref="phone"/>
+ <xs:element ref="fax"/>
+ <xs:element ref="email"/>
+ <xs:element ref="otheraddr"/>
+ </xs:choice>
+ <xs:attributeGroup ref="address.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of address.element -->
+ <xs:attributeGroup name="address.attlist">
+ <xs:attributeGroup ref="linespecific.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="address.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of address.attlist -->
+ <!-- end of address.module -->
+ <xs:attributeGroup name="street.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A street address in an address. -->
+ <xs:element name="street">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="street.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of street.element -->
+ <xs:attributeGroup name="street.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="street.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of street.attlist -->
+ <!-- end of street.module -->
+ <xs:attributeGroup name="pob.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A post office box in an address. -->
+ <xs:element name="pob">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="pob.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of pob.element -->
+ <xs:attributeGroup name="pob.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="pob.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of pob.attlist -->
+ <!-- end of pob.module -->
+ <xs:attributeGroup name="postcode.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A postal code in an address. -->
+ <xs:element name="postcode">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="postcode.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of postcode.element -->
+ <xs:attributeGroup name="postcode.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="postcode.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of postcode.attlist -->
+ <!-- end of postcode.module -->
+ <xs:attributeGroup name="city.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a city in an address. -->
+ <xs:element name="city">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="city.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of city.element -->
+ <xs:attributeGroup name="city.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="city.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of city.attlist -->
+ <!-- end of city.module -->
+ <xs:attributeGroup name="state.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A state or province in an address. -->
+ <xs:element name="state">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="state.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of state.element -->
+ <xs:attributeGroup name="state.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="state.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of state.attlist -->
+ <!-- end of state.module -->
+ <xs:attributeGroup name="country.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a country. -->
+ <xs:element name="country">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="country.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of country.element -->
+ <xs:attributeGroup name="country.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="country.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of country.attlist -->
+ <!-- end of country.module -->
+ <xs:attributeGroup name="phone.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A telephone number. -->
+ <xs:element name="phone">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="phone.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of phone.element -->
+ <xs:attributeGroup name="phone.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="phone.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of phone.attlist -->
+ <!-- end of phone.module -->
+ <xs:attributeGroup name="fax.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A fax number. -->
+ <xs:element name="fax">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="fax.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of fax.element -->
+ <xs:attributeGroup name="fax.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="fax.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of fax.attlist -->
+ <!-- end of fax.module -->
+ <!-- Email (defined in the Inlines section, below) -->
+ <xs:attributeGroup name="otheraddr.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Uncategorized information in address. -->
+ <xs:element name="otheraddr">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="otheraddr.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of otheraddr.element -->
+ <xs:attributeGroup name="otheraddr.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="otheraddr.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of otheraddr.attlist -->
+ <!-- end of otheraddr.module -->
+ <!-- end of address.content.module -->
+ <!-- Affiliation ...................... -->
+ <xs:attributeGroup name="affiliation.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The institutional affiliation of an individual. -->
+ <xs:element name="affiliation">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="shortaffil"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="jobtitle"/>
+ <xs:element minOccurs="0" ref="orgname"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="orgdiv"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="address"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="affiliation.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of affiliation.element -->
+ <xs:attributeGroup name="affiliation.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="affiliation.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of affiliation.attlist -->
+ <!-- end of affiliation.module -->
+ <xs:attributeGroup name="shortaffil.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A brief description of an affiliation. -->
+ <xs:element name="shortaffil">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="shortaffil.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of shortaffil.element -->
+ <xs:attributeGroup name="shortaffil.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="shortaffil.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of shortaffil.attlist -->
+ <!-- end of shortaffil.module -->
+ <xs:attributeGroup name="jobtitle.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The title of an individual in an organization. -->
+ <xs:element name="jobtitle">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="jobtitle.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of jobtitle.element -->
+ <xs:attributeGroup name="jobtitle.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="jobtitle.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of jobtitle.attlist -->
+ <!-- end of jobtitle.module -->
+ <!-- OrgName (defined elsewhere in this section) -->
+ <xs:attributeGroup name="orgdiv.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A division of an organization. -->
+ <xs:element name="orgdiv">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="orgdiv.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of orgdiv.element -->
+ <xs:attributeGroup name="orgdiv.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="orgdiv.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of orgdiv.attlist -->
+ <!-- end of orgdiv.module -->
+ <!-- Address (defined elsewhere in this section) -->
+ <!-- end of affiliation.content.module -->
+ <!-- ArtPageNums ...................... -->
+ <xs:attributeGroup name="artpagenums.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The page numbers of an article as published. -->
+ <xs:element name="artpagenums">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="artpagenums.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of artpagenums.element -->
+ <xs:attributeGroup name="artpagenums.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="artpagenums.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of artpagenums.attlist -->
+ <!-- end of artpagenums.module -->
+ <!-- PersonName -->
+ <xs:attributeGroup name="personname.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The personal name of an individual. -->
+ <xs:element name="personname" substitutionGroup="gen.char.class">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="honorific"/>
+ <xs:element ref="firstname"/>
+ <xs:element ref="surname"/>
+ <xs:element ref="lineage"/>
+ <xs:element ref="othername"/>
+ </xs:choice>
+ <xs:attributeGroup ref="personname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of personname.element -->
+ <xs:attributeGroup name="personname.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="personname.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of personname.attlist -->
+ <!-- end of personname.module -->
+ <!-- Author ........................... -->
+ <xs:attributeGroup name="author.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of an individual author. -->
+ <xs:element name="author" substitutionGroup="docinfo.char.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:choice>
+ <xs:element ref="personname"/>
+ <xs:group maxOccurs="unbounded" ref="person.ident.mix"/>
+ </xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="personblurb"/>
+ <xs:element ref="email"/>
+ <xs:element ref="address"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="author.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of author.element -->
+ <xs:attributeGroup name="author.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="author.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of author.attlist -->
+ <!-- (see "Personal identity elements" for %person.ident.mix;) -->
+ <!-- end of author.module -->
+ <!-- AuthorGroup ...................... -->
+ <xs:attributeGroup name="authorgroup.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Wrapper for author information when a document has multiple authors or collabarators. -->
+ <xs:element name="authorgroup">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="author"/>
+ <xs:element ref="editor"/>
+ <xs:element ref="collab"/>
+ <xs:element ref="corpauthor"/>
+ <xs:element ref="corpcredit"/>
+ <xs:element ref="othercredit"/>
+ </xs:choice>
+ <xs:attributeGroup ref="authorgroup.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of authorgroup.element -->
+ <xs:attributeGroup name="authorgroup.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="authorgroup.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of authorgroup.attlist -->
+ <!-- end of authorgroup.module -->
+ <!-- Author (defined elsewhere in this section) -->
+ <!-- Editor (defined elsewhere in this section) -->
+ <xs:attributeGroup name="collab.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Identifies a collaborator. -->
+ <xs:element name="collab">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="collabname"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="affiliation"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="collab.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of collab.element -->
+ <xs:attributeGroup name="collab.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="collab.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of collab.attlist -->
+ <!-- end of collab.module -->
+ <xs:attributeGroup name="collabname.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a collaborator. -->
+ <xs:element name="collabname">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="collabname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of collabname.element -->
+ <xs:attributeGroup name="collabname.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="collabname.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of collabname.attlist -->
+ <!-- end of collabname.module -->
+ <!-- Affiliation (defined elsewhere in this section) -->
+ <!-- end of collab.content.module -->
+ <!-- CorpAuthor (defined elsewhere in this section) -->
+ <!-- OtherCredit (defined elsewhere in this section) -->
+ <!-- end of authorgroup.content.module -->
+ <!-- AuthorInitials ................... -->
+ <xs:attributeGroup name="authorinitials.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The initials or other short identifier for an author. -->
+ <xs:element name="authorinitials" substitutionGroup="docinfo.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="authorinitials.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of authorinitials.element -->
+ <xs:attributeGroup name="authorinitials.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="authorinitials.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of authorinitials.attlist -->
+ <!-- end of authorinitials.module -->
+ <!-- ConfGroup ........................ -->
+ <xs:attributeGroup name="confgroup.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for document meta-information about a conference. -->
+ <xs:element name="confgroup">
+ <xs:complexType>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="confdates"/>
+ <xs:element ref="conftitle"/>
+ <xs:element ref="confnum"/>
+ <xs:element ref="address"/>
+ <xs:element ref="confsponsor"/>
+ </xs:choice>
+ <xs:attributeGroup ref="confgroup.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of confgroup.element -->
+ <xs:attributeGroup name="confgroup.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="confgroup.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of confgroup.attlist -->
+ <!-- end of confgroup.module -->
+ <xs:attributeGroup name="confdates.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The dates of a conference for which a document was written. -->
+ <xs:element name="confdates">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="confdates.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of confdates.element -->
+ <xs:attributeGroup name="confdates.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="confdates.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of confdates.attlist -->
+ <!-- end of confdates.module -->
+ <xs:attributeGroup name="conftitle.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The title of a conference for which a document was written. -->
+ <xs:element name="conftitle">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="conftitle.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of conftitle.element -->
+ <xs:attributeGroup name="conftitle.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="conftitle.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of conftitle.attlist -->
+ <!-- end of conftitle.module -->
+ <xs:attributeGroup name="confnum.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An identifier, frequently numerical, associated with a conference for which a document was written. -->
+ <xs:element name="confnum">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="confnum.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of confnum.element -->
+ <xs:attributeGroup name="confnum.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="confnum.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of confnum.attlist -->
+ <!-- end of confnum.module -->
+ <!-- Address (defined elsewhere in this section) -->
+ <xs:attributeGroup name="confsponsor.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The sponsor of a conference for which a document was written. -->
+ <xs:element name="confsponsor">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="confsponsor.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of confsponsor.element -->
+ <xs:attributeGroup name="confsponsor.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="confsponsor.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of confsponsor.attlist -->
+ <!-- end of confsponsor.module -->
+ <!-- end of confgroup.content.module -->
+ <!-- ContractNum ...................... -->
+ <xs:attributeGroup name="contractnum.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The contract number of a document. -->
+ <xs:element name="contractnum">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="contractnum.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of contractnum.element -->
+ <xs:attributeGroup name="contractnum.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="contractnum.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of contractnum.attlist -->
+ <!-- end of contractnum.module -->
+ <!-- ContractSponsor .................. -->
+ <xs:attributeGroup name="contractsponsor.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The sponsor of a contract. -->
+ <xs:element name="contractsponsor">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="contractsponsor.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of contractsponsor.element -->
+ <xs:attributeGroup name="contractsponsor.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="contractsponsor.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of contractsponsor.attlist -->
+ <!-- end of contractsponsor.module -->
+ <!-- Copyright ........................ -->
+ <xs:attributeGroup name="copyright.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Copyright information about a document. -->
+ <xs:element name="copyright">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="year"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="holder"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="copyright.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of copyright.element -->
+ <xs:attributeGroup name="copyright.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="copyright.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of copyright.attlist -->
+ <!-- end of copyright.module -->
+ <xs:attributeGroup name="year.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The year of publication of a document. -->
+ <xs:element name="year">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="year.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of year.element -->
+ <xs:attributeGroup name="year.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="year.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of year.attlist -->
+ <!-- end of year.module -->
+ <xs:attributeGroup name="holder.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of the individual or organization that holds a copyright. -->
+ <xs:element name="holder">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="holder.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of holder.element -->
+ <xs:attributeGroup name="holder.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="holder.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of holder.attlist -->
+ <!-- end of holder.module -->
+ <!-- end of copyright.content.module -->
+ <!-- CorpAuthor ....................... -->
+ <xs:attributeGroup name="corpauthor.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A corporate author, as opposed to an individual. -->
+ <xs:element name="corpauthor" substitutionGroup="docinfo.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="corpauthor.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of corpauthor.element -->
+ <xs:attributeGroup name="corpauthor.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="corpauthor.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of corpauthor.attlist -->
+ <!-- end of corpauthor.module -->
+ <!-- CorpCredit ...................... -->
+ <xs:attributeGroup name="corpcredit.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A corporation or organization credited in a document. -->
+ <xs:element name="corpcredit" substitutionGroup="docinfo.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="corpcredit.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of corpcredit.element -->
+ <xs:attributeGroup name="corpcredit.attlist">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="graphicdesigner"/>
+ <xs:enumeration value="productioneditor"/>
+ <xs:enumeration value="copyeditor"/>
+ <xs:enumeration value="technicaleditor"/>
+ <xs:enumeration value="translator"/>
+ <xs:enumeration value="other"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="corpcredit.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of corpcredit.attlist -->
+ <!-- end of corpcredit.module -->
+ <!-- CorpName ......................... -->
+ <!-- doc:The name of a corporation. -->
+ <xs:element name="corpname">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="corpname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of corpname.element -->
+ <xs:attributeGroup name="corpname.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="corpname.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="corpname.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of corpname.attlist -->
+ <!-- end of corpname.module -->
+ <!-- Date ............................. -->
+ <xs:attributeGroup name="date.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The date of publication or revision of a document. -->
+ <xs:element name="date">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="date.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of date.element -->
+ <xs:attributeGroup name="date.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="date.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of date.attlist -->
+ <!-- end of date.module -->
+ <!-- Edition .......................... -->
+ <xs:attributeGroup name="edition.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name or number of an edition of a document. -->
+ <xs:element name="edition">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="edition.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of edition.element -->
+ <xs:attributeGroup name="edition.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="edition.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of edition.attlist -->
+ <!-- end of edition.module -->
+ <!-- Editor ........................... -->
+ <xs:attributeGroup name="editor.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of the editor of a document. -->
+ <xs:element name="editor">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:choice>
+ <xs:element ref="personname"/>
+ <xs:group maxOccurs="unbounded" ref="person.ident.mix"/>
+ </xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="personblurb"/>
+ <xs:element ref="email"/>
+ <xs:element ref="address"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="editor.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of editor.element -->
+ <xs:attributeGroup name="editor.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="editor.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of editor.attlist -->
+ <!-- (see "Personal identity elements" for %person.ident.mix;) -->
+ <!-- end of editor.module -->
+ <!-- ISBN ............................. -->
+ <xs:attributeGroup name="isbn.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The International Standard Book Number of a document. -->
+ <xs:element name="isbn">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="isbn.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of isbn.element -->
+ <xs:attributeGroup name="isbn.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="isbn.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of isbn.attlist -->
+ <!-- end of isbn.module -->
+ <!-- ISSN ............................. -->
+ <xs:attributeGroup name="issn.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The International Standard Serial Number of a periodical. -->
+ <xs:element name="issn">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="issn.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of issn.element -->
+ <xs:attributeGroup name="issn.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="issn.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of issn.attlist -->
+ <!-- end of issn.module -->
+ <!-- BiblioId ................. -->
+ <xs:attributeGroup name="biblio.class.attrib">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="uri"/>
+ <xs:enumeration value="doi"/>
+ <xs:enumeration value="isbn"/>
+ <xs:enumeration value="isrn"/>
+ <xs:enumeration value="issn"/>
+ <xs:enumeration value="libraryofcongress"/>
+ <xs:enumeration value="pubnumber"/>
+ <xs:enumeration value="other"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otherclass"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="biblioid.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An identifier for a document. -->
+ <xs:element name="biblioid">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="biblioid.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of biblioid.element -->
+ <xs:attributeGroup name="biblioid.attlist">
+ <xs:attributeGroup ref="biblio.class.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="biblioid.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of biblioid.attlist -->
+ <!-- end of biblioid.module -->
+ <!-- CiteBiblioId ................. -->
+ <xs:attributeGroup name="citebiblioid.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A citation of a bibliographic identifier. -->
+ <xs:element name="citebiblioid" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="citebiblioid.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of citebiblioid.element -->
+ <xs:attributeGroup name="citebiblioid.attlist">
+ <xs:attributeGroup ref="biblio.class.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="citebiblioid.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of citebiblioid.attlist -->
+ <!-- end of citebiblioid.module -->
+ <!-- BiblioSource ................. -->
+ <xs:attributeGroup name="bibliosource.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The source of a document. -->
+ <xs:element name="bibliosource">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="bibliosource.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of bibliosource.element -->
+ <xs:attributeGroup name="bibliosource.attlist">
+ <xs:attributeGroup ref="biblio.class.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="bibliosource.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of bibliosource.attlist -->
+ <!-- end of bibliosource.module -->
+ <!-- BiblioRelation ................. -->
+ <xs:attributeGroup name="bibliorelation.type.attrib">
+ <xs:attribute name="type">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="isversionof"/>
+ <xs:enumeration value="hasversion"/>
+ <xs:enumeration value="isreplacedby"/>
+ <xs:enumeration value="replaces"/>
+ <xs:enumeration value="isrequiredby"/>
+ <xs:enumeration value="requires"/>
+ <xs:enumeration value="ispartof"/>
+ <xs:enumeration value="haspart"/>
+ <xs:enumeration value="isreferencedby"/>
+ <xs:enumeration value="references"/>
+ <xs:enumeration value="isformatof"/>
+ <xs:enumeration value="hasformat"/>
+ <xs:enumeration value="othertype"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="othertype"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="bibliorelation.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The relationship of a document to another. -->
+ <xs:element name="bibliorelation">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="bibliorelation.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of bibliorelation.element -->
+ <xs:attributeGroup name="bibliorelation.attlist">
+ <xs:attributeGroup ref="biblio.class.attrib"/>
+ <xs:attributeGroup ref="bibliorelation.type.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="bibliorelation.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of bibliorelation.attlist -->
+ <!-- end of bibliorelation.module -->
+ <!-- BiblioCoverage ................. -->
+ <xs:attributeGroup name="bibliocoverage.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The spatial or temporal coverage of a document. -->
+ <xs:element name="bibliocoverage">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="bibliocoverage.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of bibliocoverage.element -->
+ <xs:attributeGroup name="bibliocoverage.attlist">
+ <xs:attribute name="spatial">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="dcmipoint"/>
+ <xs:enumeration value="iso3166"/>
+ <xs:enumeration value="dcmibox"/>
+ <xs:enumeration value="tgn"/>
+ <xs:enumeration value="otherspatial"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otherspatial"/>
+ <xs:attribute name="temporal">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="dcmiperiod"/>
+ <xs:enumeration value="w3c-dtf"/>
+ <xs:enumeration value="othertemporal"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="othertemporal"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="bibliocoverage.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of bibliocoverage.attlist -->
+ <!-- end of bibliocoverage.module -->
+ <!-- InvPartNumber .................... -->
+ <xs:attributeGroup name="invpartnumber.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An inventory part number. -->
+ <xs:element name="invpartnumber">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="invpartnumber.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of invpartnumber.element -->
+ <xs:attributeGroup name="invpartnumber.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="invpartnumber.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of invpartnumber.attlist -->
+ <!-- end of invpartnumber.module -->
+ <!-- IssueNum ......................... -->
+ <xs:attributeGroup name="issuenum.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The number of an issue of a journal. -->
+ <xs:element name="issuenum">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="issuenum.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of issuenum.element -->
+ <xs:attributeGroup name="issuenum.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="issuenum.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of issuenum.attlist -->
+ <!-- end of issuenum.module -->
+ <!-- LegalNotice ...................... -->
+ <xs:attributeGroup name="legalnotice.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A statement of legal obligations or requirements. -->
+ <xs:element name="legalnotice">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:group maxOccurs="unbounded" ref="legalnotice.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="legalnotice.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of legalnotice.element -->
+ <xs:attributeGroup name="legalnotice.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="legalnotice.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of legalnotice.attlist -->
+ <!-- end of legalnotice.module -->
+ <!-- ModeSpec ......................... -->
+ <xs:attributeGroup name="modespec.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Application-specific information necessary for the completion of an OLink. -->
+ <xs:element name="modespec" substitutionGroup="docinfo.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="modespec.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of modespec.element -->
+ <!--
+ Application: Type of action required for completion
+ of the links to which the ModeSpec is relevant (e.g.,
+ retrieval query)
+ -->
+ <xs:attributeGroup name="modespec.attlist">
+ <xs:attribute name="application" type="notation.class"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="modespec.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of modespec.attlist -->
+ <!-- end of modespec.module -->
+ <!-- OrgName .......................... -->
+ <xs:attributeGroup name="orgname.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of an organization other than a corporation. -->
+ <xs:element name="orgname" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="orgname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of orgname.element -->
+ <xs:attributeGroup name="orgname.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="corporation"/>
+ <xs:enumeration value="nonprofit"/>
+ <xs:enumeration value="consortium"/>
+ <xs:enumeration value="informal"/>
+ <xs:enumeration value="other"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otherclass"/>
+ <xs:attributeGroup ref="orgname.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of orgname.attlist -->
+ <!-- end of orgname.module -->
+ <!-- OtherCredit ...................... -->
+ <xs:attributeGroup name="othercredit.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A person or entity, other than an author or editor, credited in a document. -->
+ <xs:element name="othercredit" substitutionGroup="docinfo.char.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:choice>
+ <xs:element ref="personname"/>
+ <xs:group maxOccurs="unbounded" ref="person.ident.mix"/>
+ </xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="personblurb"/>
+ <xs:element ref="email"/>
+ <xs:element ref="address"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="othercredit.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of othercredit.element -->
+ <xs:attributeGroup name="othercredit.attlist">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="graphicdesigner"/>
+ <xs:enumeration value="productioneditor"/>
+ <xs:enumeration value="copyeditor"/>
+ <xs:enumeration value="technicaleditor"/>
+ <xs:enumeration value="translator"/>
+ <xs:enumeration value="other"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="othercredit.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of othercredit.attlist -->
+ <!-- (see "Personal identity elements" for %person.ident.mix;) -->
+ <!-- end of othercredit.module -->
+ <!-- PageNums ......................... -->
+ <xs:attributeGroup name="pagenums.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The numbers of the pages in a book, for use in a bibliographic entry. -->
+ <xs:element name="pagenums">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="pagenums.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of pagenums.element -->
+ <xs:attributeGroup name="pagenums.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="pagenums.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of pagenums.attlist -->
+ <!-- end of pagenums.module -->
+ <!-- Personal identity elements ....... -->
+ <!--
+ These elements are used only within Author, Editor, and
+ OtherCredit.
+ -->
+ <xs:attributeGroup name="contrib.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A summary of the contributions made to a document by a credited source. -->
+ <xs:element name="contrib">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="contrib.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of contrib.element -->
+ <xs:attributeGroup name="contrib.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="contrib.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of contrib.attlist -->
+ <!-- end of contrib.module -->
+ <xs:attributeGroup name="firstname.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The first name of a person. -->
+ <xs:element name="firstname">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="firstname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of firstname.element -->
+ <xs:attributeGroup name="firstname.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="firstname.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of firstname.attlist -->
+ <!-- end of firstname.module -->
+ <xs:attributeGroup name="honorific.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The title of a person. -->
+ <xs:element name="honorific">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="honorific.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of honorific.element -->
+ <xs:attributeGroup name="honorific.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="honorific.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of honorific.attlist -->
+ <!-- end of honorific.module -->
+ <xs:attributeGroup name="lineage.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The portion of a person's name indicating a relationship to ancestors. -->
+ <xs:element name="lineage">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="lineage.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of lineage.element -->
+ <xs:attributeGroup name="lineage.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="lineage.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of lineage.attlist -->
+ <!-- end of lineage.module -->
+ <xs:attributeGroup name="othername.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A component of a persons name that is not a first name, surname, or lineage. -->
+ <xs:element name="othername">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="othername.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of othername.element -->
+ <xs:attributeGroup name="othername.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="othername.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of othername.attlist -->
+ <!-- end of othername.module -->
+ <xs:attributeGroup name="surname.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A family name; in western cultures the last name. -->
+ <xs:element name="surname">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="surname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of surname.element -->
+ <xs:attributeGroup name="surname.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="surname.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of surname.attlist -->
+ <!-- end of surname.module -->
+ <!-- end of person.ident.module -->
+ <!-- PrintHistory ..................... -->
+ <xs:attributeGroup name="printhistory.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The printing history of a document. -->
+ <xs:element name="printhistory">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="para.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="printhistory.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of printhistory.element -->
+ <xs:attributeGroup name="printhistory.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="printhistory.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of printhistory.attlist -->
+ <!-- end of printhistory.module -->
+ <!-- ProductName ...................... -->
+ <xs:attributeGroup name="productname.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The formal name of a product. -->
+ <xs:element name="productname" substitutionGroup="docinfo.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="productname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of productname.element -->
+ <!-- Class: More precisely identifies the item the element names -->
+ <xs:attributeGroup name="productname.attlist">
+ <xs:attribute name="class" default="trade">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="service"/>
+ <xs:enumeration value="trade"/>
+ <xs:enumeration value="registered"/>
+ <xs:enumeration value="copyright"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="productname.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of productname.attlist -->
+ <!-- end of productname.module -->
+ <!-- ProductNumber .................... -->
+ <xs:attributeGroup name="productnumber.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A number assigned to a product. -->
+ <xs:element name="productnumber" substitutionGroup="docinfo.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="productnumber.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of productnumber.element -->
+ <xs:attributeGroup name="productnumber.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="productnumber.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of productnumber.attlist -->
+ <!-- end of productnumber.module -->
+ <!-- PubDate .......................... -->
+ <xs:attributeGroup name="pubdate.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The date of publication of a document. -->
+ <xs:element name="pubdate">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="pubdate.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of pubdate.element -->
+ <xs:attributeGroup name="pubdate.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="pubdate.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of pubdate.attlist -->
+ <!-- end of pubdate.module -->
+ <!-- Publisher ........................ -->
+ <xs:attributeGroup name="publisher.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The publisher of a document. -->
+ <xs:element name="publisher">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="publishername"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="address"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="publisher.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of publisher.element -->
+ <xs:attributeGroup name="publisher.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="publisher.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of publisher.attlist -->
+ <!-- end of publisher.module -->
+ <xs:attributeGroup name="publishername.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of the publisher of a document. -->
+ <xs:element name="publishername">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="publishername.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of publishername.element -->
+ <xs:attributeGroup name="publishername.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="publishername.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of publishername.attlist -->
+ <!-- end of publishername.module -->
+ <!-- Address (defined elsewhere in this section) -->
+ <!-- end of publisher.content.module -->
+ <!-- PubsNumber ....................... -->
+ <xs:attributeGroup name="pubsnumber.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A number assigned to a publication other than an ISBN or ISSN or inventory part number. -->
+ <xs:element name="pubsnumber">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="pubsnumber.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of pubsnumber.element -->
+ <xs:attributeGroup name="pubsnumber.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="pubsnumber.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of pubsnumber.attlist -->
+ <!-- end of pubsnumber.module -->
+ <!-- ReleaseInfo ...................... -->
+ <xs:attributeGroup name="releaseinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Information about a particular release of a document. -->
+ <xs:element name="releaseinfo">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="releaseinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of releaseinfo.element -->
+ <xs:attributeGroup name="releaseinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="releaseinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of releaseinfo.attlist -->
+ <!-- end of releaseinfo.module -->
+ <!-- RevHistory ....................... -->
+ <xs:attributeGroup name="revhistory.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A history of the revisions to a document. -->
+ <xs:element name="revhistory" substitutionGroup="docinfo.char.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="revision"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="revhistory.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of revhistory.element -->
+ <xs:attributeGroup name="revhistory.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="revhistory.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of revhistory.attlist -->
+ <!-- end of revhistory.module -->
+ <xs:attributeGroup name="revision.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An entry describing a single revision in the history of the revisions to a document. -->
+ <xs:element name="revision">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="revnumber"/>
+ <xs:element ref="date"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="author"/>
+ <xs:element ref="authorinitials"/>
+ </xs:choice>
+ <xs:choice minOccurs="0">
+ <xs:element ref="revremark"/>
+ <xs:element ref="revdescription"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="revision.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of revision.element -->
+ <xs:attributeGroup name="revision.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="revision.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of revision.attlist -->
+ <!-- end of revision.module -->
+ <xs:attributeGroup name="revnumber.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A document revision number. -->
+ <xs:element name="revnumber">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="revnumber.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of revnumber.element -->
+ <xs:attributeGroup name="revnumber.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="revnumber.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of revnumber.attlist -->
+ <!-- end of revnumber.module -->
+ <!-- Date (defined elsewhere in this section) -->
+ <!-- AuthorInitials (defined elsewhere in this section) -->
+ <xs:attributeGroup name="revremark.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A description of a revision to a document. -->
+ <xs:element name="revremark">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="revremark.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of revremark.element -->
+ <xs:attributeGroup name="revremark.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="revremark.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of revremark.attlist -->
+ <!-- end of revremark.module -->
+ <xs:attributeGroup name="revdescription.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A extended description of a revision to a document. -->
+ <xs:element name="revdescription">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="revdescription.mix"/>
+ <xs:attributeGroup ref="revdescription.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of revdescription.element -->
+ <xs:attributeGroup name="revdescription.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="revdescription.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of revdescription.attlist -->
+ <!-- end of revdescription.module -->
+ <!-- end of revhistory.content.module -->
+ <!-- SeriesVolNums .................... -->
+ <xs:attributeGroup name="seriesvolnums.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Numbers of the volumes in a series of books. -->
+ <xs:element name="seriesvolnums">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="seriesvolnums.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of seriesvolnums.element -->
+ <xs:attributeGroup name="seriesvolnums.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="seriesvolnums.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of seriesvolnums.attlist -->
+ <!-- end of seriesvolnums.module -->
+ <!-- VolumeNum ........................ -->
+ <xs:attributeGroup name="volumenum.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The volume number of a document in a set (as of books in a set or articles in a journal). -->
+ <xs:element name="volumenum">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="volumenum.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of volumenum.element -->
+ <xs:attributeGroup name="volumenum.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="volumenum.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of volumenum.attlist -->
+ <!-- end of volumenum.module -->
+ <!-- .................................. -->
+ <!-- end of docinfo.content.module -->
+ <!-- ...................................................................... -->
+ <!-- Inline, link, and ubiquitous elements ................................ -->
+ <!-- Technical and computer terms ......................................... -->
+ <xs:attributeGroup name="accel.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A graphical user interface (GUI) keyboard shortcut. -->
+ <xs:element name="accel">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="accel.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of accel.element -->
+ <xs:attributeGroup name="accel.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="accel.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of accel.attlist -->
+ <!-- end of accel.module -->
+ <xs:attributeGroup name="action.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A response to a user event. -->
+ <xs:element name="action" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="action.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of action.element -->
+ <xs:attributeGroup name="action.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="action.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of action.attlist -->
+ <!-- end of action.module -->
+ <xs:attributeGroup name="application.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a software program. -->
+ <xs:element name="application" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="application.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of application.element -->
+ <xs:attributeGroup name="application.attlist">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="hardware"/>
+ <xs:enumeration value="software"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="application.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of application.attlist -->
+ <!-- end of application.module -->
+ <xs:attributeGroup name="classname.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a class, in the object-oriented programming sense. -->
+ <xs:element name="classname" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="classname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of classname.element -->
+ <xs:attributeGroup name="classname.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="classname.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of classname.attlist -->
+ <!-- end of classname.module -->
+ <xs:attributeGroup name="package.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A package. -->
+ <xs:element name="package" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="package.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of package.element -->
+ <xs:attributeGroup name="package.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="package.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of package.attlist -->
+ <!-- end of package.module -->
+ <!--
+ CO is a callout area of the LineColumn unit type (a single character
+ position); the position is directly indicated by the location of CO.
+ -->
+ <xs:attributeGroup name="co.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The location of a callout embedded in text. -->
+ <xs:element name="co">
+ <xs:complexType>
+ <xs:attributeGroup ref="co.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of co.element -->
+ <!-- bug number/symbol override or initialization -->
+ <!-- to any related information -->
+ <xs:attributeGroup name="co.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="linkends.attrib"/>
+ <xs:attributeGroup ref="idreq.common.attrib"/>
+ <xs:attributeGroup ref="co.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of co.attlist -->
+ <!-- end of co.module -->
+ <!-- COREF is a reference to a CO -->
+ <xs:attributeGroup name="coref.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A cross reference to a co. -->
+ <xs:element name="coref">
+ <xs:complexType>
+ <xs:attributeGroup ref="coref.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of coref.element -->
+ <!-- bug number/symbol override or initialization -->
+ <!-- to any related information -->
+ <xs:attributeGroup name="coref.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="linkendreq.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="coref.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of coref.attlist -->
+ <!-- end of coref.module -->
+ <xs:attributeGroup name="command.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of an executable program or other software command. -->
+ <xs:element name="command" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="command.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of command.element -->
+ <xs:attributeGroup name="command.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="command.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of command.attlist -->
+ <!-- end of command.module -->
+ <xs:attributeGroup name="computeroutput.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Data, generally text, displayed or presented by a computer. -->
+ <xs:element name="computeroutput" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="cptr.char.mix"/>
+ <xs:element ref="co"/>
+ </xs:choice>
+ <xs:attributeGroup ref="computeroutput.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of computeroutput.element -->
+ <xs:attributeGroup name="computeroutput.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="computeroutput.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of computeroutput.attlist -->
+ <!-- end of computeroutput.module -->
+ <xs:attributeGroup name="database.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a database, or part of a database. -->
+ <xs:element name="database" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="database.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of database.element -->
+ <!-- Class: Type of database the element names; no default -->
+ <xs:attributeGroup name="database.attlist">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="name"/>
+ <xs:enumeration value="table"/>
+ <xs:enumeration value="field"/>
+ <xs:enumeration value="key1"/>
+ <xs:enumeration value="key2"/>
+ <xs:enumeration value="record"/>
+ <xs:enumeration value="index"/>
+ <xs:enumeration value="view"/>
+ <xs:enumeration value="primarykey"/>
+ <xs:enumeration value="secondarykey"/>
+ <xs:enumeration value="foreignkey"/>
+ <xs:enumeration value="altkey"/>
+ <xs:enumeration value="procedure"/>
+ <xs:enumeration value="datatype"/>
+ <xs:enumeration value="constraint"/>
+ <xs:enumeration value="rule"/>
+ <xs:enumeration value="user"/>
+ <xs:enumeration value="group"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="database.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of database.attlist -->
+ <!-- end of database.module -->
+ <xs:attributeGroup name="email.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An email address. -->
+ <xs:element name="email" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="email.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of email.element -->
+ <xs:attributeGroup name="email.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="email.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of email.attlist -->
+ <!-- end of email.module -->
+ <xs:attributeGroup name="envar.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A software environment variable. -->
+ <xs:element name="envar" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="envar.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of envar.element -->
+ <xs:attributeGroup name="envar.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="envar.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of envar.attlist -->
+ <!-- end of envar.module -->
+ <xs:attributeGroup name="errorcode.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An error code. -->
+ <xs:element name="errorcode" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="errorcode.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of errorcode.element -->
+ <xs:attributeGroup name="errorcode.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="errorcode.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of errorcode.attlist -->
+ <!-- end of errorcode.module -->
+ <xs:attributeGroup name="errorname.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An error name. -->
+ <xs:element name="errorname" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="errorname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of errorname.element -->
+ <xs:attributeGroup name="errorname.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="errorname.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of errorname.attlist -->
+ <!-- end of errorname.module -->
+ <xs:attributeGroup name="errortext.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An error message.. -->
+ <xs:element name="errortext" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="errortext.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of errortext.element -->
+ <xs:attributeGroup name="errortext.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="errortext.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of errortext.attlist -->
+ <!-- end of errortext.module -->
+ <xs:attributeGroup name="errortype.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The classification of an error message. -->
+ <xs:element name="errortype" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="errortype.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of errortype.element -->
+ <xs:attributeGroup name="errortype.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="errortype.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of errortype.attlist -->
+ <!-- end of errortype.module -->
+ <xs:attributeGroup name="filename.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a file. -->
+ <xs:element name="filename" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="filename.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of filename.element -->
+ <!-- Class: Type of filename the element names; no default -->
+ <!--
+ Path: Search path (possibly system-specific) in which
+ file can be found
+ -->
+ <xs:attributeGroup name="filename.attlist">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="headerfile"/>
+ <xs:enumeration value="partition"/>
+ <xs:enumeration value="devicefile"/>
+ <xs:enumeration value="libraryfile"/>
+ <xs:enumeration value="directory"/>
+ <xs:enumeration value="extension"/>
+ <xs:enumeration value="symlink"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="path"/>
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="filename.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of filename.attlist -->
+ <!-- end of filename.module -->
+ <xs:attributeGroup name="function.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a function or subroutine, as in a programming language. -->
+ <xs:element name="function" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="function.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of function.element -->
+ <xs:attributeGroup name="function.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="function.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of function.attlist -->
+ <!-- end of function.module -->
+ <xs:attributeGroup name="guibutton.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The text on a button in a GUI. -->
+ <xs:element name="guibutton" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="smallcptr.char.mix"/>
+ <xs:element ref="accel"/>
+ <xs:element ref="superscript"/>
+ <xs:element ref="subscript"/>
+ </xs:choice>
+ <xs:attributeGroup ref="guibutton.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of guibutton.element -->
+ <xs:attributeGroup name="guibutton.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="guibutton.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of guibutton.attlist -->
+ <!-- end of guibutton.module -->
+ <xs:attributeGroup name="guiicon.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Graphic and/or text appearing as a icon in a GUI. -->
+ <xs:element name="guiicon" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="smallcptr.char.mix"/>
+ <xs:element ref="accel"/>
+ <xs:element ref="superscript"/>
+ <xs:element ref="subscript"/>
+ </xs:choice>
+ <xs:attributeGroup ref="guiicon.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of guiicon.element -->
+ <xs:attributeGroup name="guiicon.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="guiicon.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of guiicon.attlist -->
+ <!-- end of guiicon.module -->
+ <xs:attributeGroup name="guilabel.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The text of a label in a GUI. -->
+ <xs:element name="guilabel" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="smallcptr.char.mix"/>
+ <xs:element ref="accel"/>
+ <xs:element ref="superscript"/>
+ <xs:element ref="subscript"/>
+ </xs:choice>
+ <xs:attributeGroup ref="guilabel.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of guilabel.element -->
+ <xs:attributeGroup name="guilabel.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="guilabel.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of guilabel.attlist -->
+ <!-- end of guilabel.module -->
+ <xs:attributeGroup name="guimenu.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a menu in a GUI. -->
+ <xs:element name="guimenu" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="smallcptr.char.mix"/>
+ <xs:element ref="accel"/>
+ <xs:element ref="superscript"/>
+ <xs:element ref="subscript"/>
+ </xs:choice>
+ <xs:attributeGroup ref="guimenu.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of guimenu.element -->
+ <xs:attributeGroup name="guimenu.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="guimenu.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of guimenu.attlist -->
+ <!-- end of guimenu.module -->
+ <xs:attributeGroup name="guimenuitem.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a terminal menu item in a GUI. -->
+ <xs:element name="guimenuitem" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="smallcptr.char.mix"/>
+ <xs:element ref="accel"/>
+ <xs:element ref="superscript"/>
+ <xs:element ref="subscript"/>
+ </xs:choice>
+ <xs:attributeGroup ref="guimenuitem.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of guimenuitem.element -->
+ <xs:attributeGroup name="guimenuitem.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="guimenuitem.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of guimenuitem.attlist -->
+ <!-- end of guimenuitem.module -->
+ <xs:attributeGroup name="guisubmenu.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a submenu in a GUI. -->
+ <xs:element name="guisubmenu" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="smallcptr.char.mix"/>
+ <xs:element ref="accel"/>
+ <xs:element ref="superscript"/>
+ <xs:element ref="subscript"/>
+ </xs:choice>
+ <xs:attributeGroup ref="guisubmenu.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of guisubmenu.element -->
+ <xs:attributeGroup name="guisubmenu.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="guisubmenu.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of guisubmenu.attlist -->
+ <!-- end of guisubmenu.module -->
+ <xs:attributeGroup name="hardware.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A physical part of a computer system. -->
+ <xs:element name="hardware" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="hardware.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of hardware.element -->
+ <xs:attributeGroup name="hardware.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="hardware.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of hardware.attlist -->
+ <!-- end of hardware.module -->
+ <xs:attributeGroup name="interface.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An element of a GUI. -->
+ <xs:element name="interface" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="smallcptr.char.mix"/>
+ <xs:element ref="accel"/>
+ </xs:choice>
+ <xs:attributeGroup ref="interface.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of interface.element -->
+ <!-- Class: Type of the Interface item; no default -->
+ <xs:attributeGroup name="interface.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="interface.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of interface.attlist -->
+ <!-- end of interface.module -->
+ <xs:attributeGroup name="keycap.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The text printed on a key on a keyboard. -->
+ <xs:element name="keycap" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="keycap.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of keycap.element -->
+ <xs:attributeGroup name="keycap.attlist">
+ <xs:attribute name="function">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="alt"/>
+ <xs:enumeration value="control"/>
+ <xs:enumeration value="shift"/>
+ <xs:enumeration value="meta"/>
+ <xs:enumeration value="escape"/>
+ <xs:enumeration value="enter"/>
+ <xs:enumeration value="tab"/>
+ <xs:enumeration value="backspace"/>
+ <xs:enumeration value="command"/>
+ <xs:enumeration value="option"/>
+ <xs:enumeration value="space"/>
+ <xs:enumeration value="delete"/>
+ <xs:enumeration value="insert"/>
+ <xs:enumeration value="up"/>
+ <xs:enumeration value="down"/>
+ <xs:enumeration value="left"/>
+ <xs:enumeration value="right"/>
+ <xs:enumeration value="home"/>
+ <xs:enumeration value="end"/>
+ <xs:enumeration value="pageup"/>
+ <xs:enumeration value="pagedown"/>
+ <xs:enumeration value="other"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otherfunction"/>
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="keycap.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of keycap.attlist -->
+ <!-- end of keycap.module -->
+ <xs:attributeGroup name="keycode.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The internal, frequently numeric, identifier for a key on a keyboard. -->
+ <xs:element name="keycode" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="keycode.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of keycode.element -->
+ <xs:attributeGroup name="keycode.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="keycode.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of keycode.attlist -->
+ <!-- end of keycode.module -->
+ <xs:attributeGroup name="keycombo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A combination of input actions. -->
+ <xs:element name="keycombo" substitutionGroup="tech.char.class">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="keycap"/>
+ <xs:element ref="keycombo"/>
+ <xs:element ref="keysym"/>
+ <xs:element ref="mousebutton"/>
+ </xs:choice>
+ <xs:attributeGroup ref="keycombo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of keycombo.element -->
+ <xs:attributeGroup name="keycombo.attlist">
+ <xs:attributeGroup ref="keyaction.attrib"/>
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="keycombo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of keycombo.attlist -->
+ <!-- end of keycombo.module -->
+ <xs:attributeGroup name="keysysm.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The symbolic name of a key on a keyboard. -->
+ <xs:element name="keysym" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="keysym.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of keysym.element -->
+ <xs:attributeGroup name="keysym.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="keysysm.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of keysym.attlist -->
+ <!-- end of keysym.module -->
+ <xs:attributeGroup name="lineannotation.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A comment on a line in a verbatim listing. -->
+ <xs:element name="lineannotation">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="lineannotation.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of lineannotation.element -->
+ <xs:attributeGroup name="lineannotation.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="lineannotation.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of lineannotation.attlist -->
+ <!-- end of lineannotation.module -->
+ <xs:attributeGroup name="literal.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Inline text that is some literal value. -->
+ <xs:element name="literal" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="literal.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of literal.element -->
+ <xs:attributeGroup name="literal.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="literal.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of literal.attlist -->
+ <!-- end of literal.module -->
+ <xs:attributeGroup name="code.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An inline code fragment. -->
+ <xs:element name="code" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="code.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of code.element -->
+ <xs:attributeGroup name="code.attlist">
+ <xs:attribute name="language"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="code.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of code.attlist -->
+ <!-- end of code.module -->
+ <xs:attributeGroup name="constant.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A programming or system constant. -->
+ <xs:element name="constant" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="constant.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of constant.element -->
+ <xs:attributeGroup name="constant.attlist">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="limit"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="constant.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of constant.attlist -->
+ <!-- end of constant.module -->
+ <xs:attributeGroup name="varname.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a variable. -->
+ <xs:element name="varname" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="varname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of varname.element -->
+ <xs:attributeGroup name="varname.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="varname.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of varname.attlist -->
+ <!-- end of varname.module -->
+ <xs:attributeGroup name="markup.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A string of formatting markup in text that is to be represented literally. -->
+ <xs:element name="markup" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="markup.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of markup.element -->
+ <xs:attributeGroup name="markup.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="markup.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of markup.attlist -->
+ <!-- end of markup.module -->
+ <xs:attributeGroup name="medialabel.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A name that identifies the physical medium on which some information resides. -->
+ <xs:element name="medialabel" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="medialabel.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of medialabel.element -->
+ <!-- Class: Type of medium named by the element; no default -->
+ <xs:attributeGroup name="medialabel.attlist">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="cartridge"/>
+ <xs:enumeration value="cdrom"/>
+ <xs:enumeration value="disk"/>
+ <xs:enumeration value="tape"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="medialabel.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of medialabel.attlist -->
+ <!-- end of medialabel.module -->
+ <xs:attributeGroup name="menuchoice.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A selection or series of selections from a menu. -->
+ <xs:element name="menuchoice" substitutionGroup="tech.char.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="shortcut"/>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="guibutton"/>
+ <xs:element ref="guiicon"/>
+ <xs:element ref="guilabel"/>
+ <xs:element ref="guimenu"/>
+ <xs:element ref="guimenuitem"/>
+ <xs:element ref="guisubmenu"/>
+ <xs:element ref="interface"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="menuchoice.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of menuchoice.element -->
+ <xs:attributeGroup name="menuchoice.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="menuchoice.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of menuchoice.attlist -->
+ <!-- end of menuchoice.module -->
+ <!-- See also KeyCombo -->
+ <xs:attributeGroup name="shortcut.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A key combination for an action that is also accessible through a menu. -->
+ <xs:element name="shortcut">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="keycap"/>
+ <xs:element ref="keycombo"/>
+ <xs:element ref="keysym"/>
+ <xs:element ref="mousebutton"/>
+ </xs:choice>
+ <xs:attributeGroup ref="shortcut.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of shortcut.element -->
+ <xs:attributeGroup name="shortcut.attlist">
+ <xs:attributeGroup ref="keyaction.attrib"/>
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="shortcut.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of shortcut.attlist -->
+ <!-- end of shortcut.module -->
+ <!-- end of menuchoice.content.module -->
+ <xs:attributeGroup name="mousebutton.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The conventional name of a mouse button. -->
+ <xs:element name="mousebutton" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="mousebutton.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of mousebutton.element -->
+ <xs:attributeGroup name="mousebutton.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="mousebutton.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of mousebutton.attlist -->
+ <!-- end of mousebutton.module -->
+ <xs:attributeGroup name="msgtext.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The actual text of a message component in a message set. -->
+ <xs:element name="msgtext">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="component.mix"/>
+ <xs:attributeGroup ref="msgtext.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of msgtext.element -->
+ <xs:attributeGroup name="msgtext.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="msgtext.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of msgtext.attlist -->
+ <!-- end of msgtext.module -->
+ <xs:attributeGroup name="option.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An option for a software command. -->
+ <xs:element name="option" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="option.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of option.element -->
+ <xs:attributeGroup name="option.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="option.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of option.attlist -->
+ <!-- end of option.module -->
+ <xs:attributeGroup name="optional.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Optional information. -->
+ <xs:element name="optional" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="optional.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of optional.element -->
+ <xs:attributeGroup name="optional.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="optional.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of optional.attlist -->
+ <!-- end of optional.module -->
+ <xs:attributeGroup name="parameter.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A value or a symbolic reference to a value. -->
+ <xs:element name="parameter" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="parameter.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of parameter.element -->
+ <!-- Class: Type of the Parameter; no default -->
+ <xs:attributeGroup name="parameter.attlist">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="command"/>
+ <xs:enumeration value="function"/>
+ <xs:enumeration value="option"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="parameter.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of parameter.attlist -->
+ <!-- end of parameter.module -->
+ <xs:attributeGroup name="prompt.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A character or string indicating the start of an input field in a computer display. -->
+ <xs:element name="prompt" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="smallcptr.char.mix"/>
+ <xs:element ref="co"/>
+ </xs:choice>
+ <xs:attributeGroup ref="prompt.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of prompt.element -->
+ <xs:attributeGroup name="prompt.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="prompt.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of prompt.attlist -->
+ <!-- end of prompt.module -->
+ <xs:attributeGroup name="property.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A unit of data associated with some part of a computer system. -->
+ <xs:element name="property" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="property.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of property.element -->
+ <xs:attributeGroup name="property.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="property.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of property.attlist -->
+ <!-- end of property.module -->
+ <xs:attributeGroup name="replaceable.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Content that may or must be replaced by the user. -->
+ <xs:element name="replaceable" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="link.char.class"/>
+ <xs:element ref="optional"/>
+ <xs:group ref="base.char.class"/>
+ <xs:group ref="other.char.class"/>
+ <xs:element ref="inlinegraphic"/>
+ <xs:element ref="inlinemediaobject"/>
+ <xs:element ref="co"/>
+ </xs:choice>
+ <xs:attributeGroup ref="replaceable.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of replaceable.element -->
+ <!--
+ Class: Type of information the element represents; no
+ default
+ -->
+ <xs:attributeGroup name="replaceable.attlist">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="command"/>
+ <xs:enumeration value="function"/>
+ <xs:enumeration value="option"/>
+ <xs:enumeration value="parameter"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="replaceable.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of replaceable.attlist -->
+ <!-- end of replaceable.module -->
+ <xs:attributeGroup name="returnvalue.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The value returned by a function. -->
+ <xs:element name="returnvalue" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="returnvalue.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of returnvalue.element -->
+ <xs:attributeGroup name="returnvalue.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="returnvalue.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of returnvalue.attlist -->
+ <!-- end of returnvalue.module -->
+ <xs:attributeGroup name="sgmltag.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A component of SGML markup. -->
+ <xs:element name="sgmltag" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="sgmltag.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sgmltag.element -->
+ <!-- Class: Type of SGML construct the element names; no default -->
+ <xs:attributeGroup name="sgmltag.attlist">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="attribute"/>
+ <xs:enumeration value="attvalue"/>
+ <xs:enumeration value="element"/>
+ <xs:enumeration value="endtag"/>
+ <xs:enumeration value="emptytag"/>
+ <xs:enumeration value="genentity"/>
+ <xs:enumeration value="numcharref"/>
+ <xs:enumeration value="paramentity"/>
+ <xs:enumeration value="pi"/>
+ <xs:enumeration value="xmlpi"/>
+ <xs:enumeration value="starttag"/>
+ <xs:enumeration value="sgmlcomment"/>
+ <xs:enumeration value="prefix"/>
+ <xs:enumeration value="namespace"/>
+ <xs:enumeration value="localname"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="namespace"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sgmltag.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sgmltag.attlist -->
+ <!-- end of sgmltag.module -->
+ <xs:attributeGroup name="structfield.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A field in a structure (in the programming language sense). -->
+ <xs:element name="structfield" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="structfield.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of structfield.element -->
+ <xs:attributeGroup name="structfield.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="structfield.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of structfield.attlist -->
+ <!-- end of structfield.module -->
+ <xs:attributeGroup name="structname.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a structure (in the programming language sense). -->
+ <xs:element name="structname" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="structname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of structname.element -->
+ <xs:attributeGroup name="structname.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="structname.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of structname.attlist -->
+ <!-- end of structname.module -->
+ <xs:attributeGroup name="symbol.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A name that is replaced by a value before processing. -->
+ <xs:element name="symbol" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="symbol.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of symbol.element -->
+ <!-- Class: Type of symbol; no default -->
+ <xs:attributeGroup name="symbol.attlist">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="limit"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="symbol.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of symbol.attlist -->
+ <!-- end of symbol.module -->
+ <xs:attributeGroup name="systemitem.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A system-related item or term. -->
+ <xs:element name="systemitem" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="cptr.char.mix"/>
+ <xs:element ref="acronym"/>
+ <xs:element ref="co"/>
+ </xs:choice>
+ <xs:attributeGroup ref="systemitem.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of systemitem.element -->
+ <!-- Class: Type of system item the element names; no default -->
+ <xs:attributeGroup name="systemitem.attlist">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="constant"/>
+ <xs:enumeration value="daemon"/>
+ <xs:enumeration value="domainname"/>
+ <xs:enumeration value="etheraddress"/>
+ <xs:enumeration value="event"/>
+ <xs:enumeration value="eventhandler"/>
+ <xs:enumeration value="filesystem"/>
+ <xs:enumeration value="fqdomainname"/>
+ <xs:enumeration value="groupname"/>
+ <xs:enumeration value="ipaddress"/>
+ <xs:enumeration value="library"/>
+ <xs:enumeration value="macro"/>
+ <xs:enumeration value="netmask"/>
+ <xs:enumeration value="newsgroup"/>
+ <xs:enumeration value="osname"/>
+ <xs:enumeration value="protocol"/>
+ <xs:enumeration value="resource"/>
+ <xs:enumeration value="systemname"/>
+ <xs:enumeration value="username"/>
+ <xs:enumeration value="process"/>
+ <xs:enumeration value="server"/>
+ <xs:enumeration value="service"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="systemitem.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of systemitem.attlist -->
+ <!-- end of systemitem.module -->
+ <xs:attributeGroup name="uri.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A Uniform Resource Identifier. -->
+ <xs:element name="uri" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="uri.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of uri.element -->
+ <!-- Type: Type of URI; no default -->
+ <xs:attributeGroup name="uri.attlist">
+ <xs:attribute name="type"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="uri.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of uri.attlist -->
+ <!-- end of uri.module -->
+ <xs:attributeGroup name="token.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A unit of information. -->
+ <xs:element name="token" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="token.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of token.element -->
+ <xs:attributeGroup name="token.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="token.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of token.attlist -->
+ <!-- end of token.module -->
+ <xs:attributeGroup name="type.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The classification of a value. -->
+ <xs:element name="type" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="type.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of type.element -->
+ <xs:attributeGroup name="type.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="type.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of type.attlist -->
+ <!-- end of type.module -->
+ <xs:attributeGroup name="userinput.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Data entered by the user. -->
+ <xs:element name="userinput" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="cptr.char.mix"/>
+ <xs:element ref="co"/>
+ </xs:choice>
+ <xs:attributeGroup ref="userinput.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of userinput.element -->
+ <xs:attributeGroup name="userinput.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="userinput.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of userinput.attlist -->
+ <!-- end of userinput.module -->
+ <xs:attributeGroup name="termdef.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An inline definition of a term. -->
+ <xs:element name="termdef" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="termdef.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of termdef.element -->
+ <xs:attributeGroup name="termdef.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="termdef.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of termdef.attlist -->
+ <!-- end of termdef.module -->
+ <!-- General words and phrases ............................................ -->
+ <xs:attributeGroup name="abbrev.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An abbreviation, especially one followed by a period. -->
+ <xs:element name="abbrev" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="word.char.mix"/>
+ <xs:attributeGroup ref="abbrev.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of abbrev.element -->
+ <xs:attributeGroup name="abbrev.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="abbrev.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of abbrev.attlist -->
+ <!-- end of abbrev.module -->
+ <xs:attributeGroup name="acronym.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An often pronounceable word made from the initial (or selected) letters of a name or phrase. -->
+ <xs:element name="acronym" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="word.char.mix"/>
+ <xs:attributeGroup ref="acronym.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of acronym.element -->
+ <xs:attributeGroup name="acronym.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="acronym.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of acronym.attlist -->
+ <!-- end of acronym.module -->
+ <xs:attributeGroup name="citation.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An inline bibliographic reference to another published work. -->
+ <xs:element name="citation" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="citation.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of citation.element -->
+ <xs:attributeGroup name="citation.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="citation.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of citation.attlist -->
+ <!-- end of citation.module -->
+ <xs:attributeGroup name="citerefentry.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A citation to a reference page. -->
+ <xs:element name="citerefentry" substitutionGroup="gen.char.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="refentrytitle"/>
+ <xs:element minOccurs="0" ref="manvolnum"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="citerefentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of citerefentry.element -->
+ <xs:attributeGroup name="citerefentry.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="citerefentry.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of citerefentry.attlist -->
+ <!-- end of citerefentry.module -->
+ <xs:attributeGroup name="refentrytitle.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The title of a reference page. -->
+ <xs:element name="refentrytitle">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="refentrytitle.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refentrytitle.element -->
+ <xs:attributeGroup name="refentrytitle.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refentrytitle.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refentrytitle.attlist -->
+ <!-- end of refentrytitle.module -->
+ <xs:attributeGroup name="namvolnum.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A reference volume number. -->
+ <xs:element name="manvolnum">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="word.char.mix"/>
+ <xs:attributeGroup ref="manvolnum.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of manvolnum.element -->
+ <xs:attributeGroup name="manvolnum.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="namvolnum.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of manvolnum.attlist -->
+ <!-- end of manvolnum.module -->
+ <xs:attributeGroup name="citetitle.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The title of a cited work. -->
+ <xs:element name="citetitle" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="citetitle.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of citetitle.element -->
+ <!-- Pubwork: Genre of published work cited; no default -->
+ <xs:attributeGroup name="citetitle.attlist">
+ <xs:attribute name="pubwork">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="article"/>
+ <xs:enumeration value="book"/>
+ <xs:enumeration value="chapter"/>
+ <xs:enumeration value="part"/>
+ <xs:enumeration value="refentry"/>
+ <xs:enumeration value="section"/>
+ <xs:enumeration value="journal"/>
+ <xs:enumeration value="series"/>
+ <xs:enumeration value="set"/>
+ <xs:enumeration value="manuscript"/>
+ <xs:enumeration value="cdrom"/>
+ <xs:enumeration value="dvd"/>
+ <xs:enumeration value="wiki"/>
+ <xs:enumeration value="gopher"/>
+ <xs:enumeration value="bbs"/>
+ <xs:enumeration value="emailmessage"/>
+ <xs:enumeration value="webpage"/>
+ <xs:enumeration value="newsposting"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="citetitle.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of citetitle.attlist -->
+ <!-- end of citetitle.module -->
+ <xs:attributeGroup name="emphasis.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Emphasized text. -->
+ <xs:element name="emphasis" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="emphasis.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of emphasis.element -->
+ <xs:attributeGroup name="emphasis.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="emphasis.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of emphasis.attlist -->
+ <!-- end of emphasis.module -->
+ <xs:attributeGroup name="foreignphrase.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A word or phrase in a language other than the primary language of the document. -->
+ <xs:element name="foreignphrase" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="foreignphrase.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of foreignphrase.element -->
+ <xs:attributeGroup name="foreignphrase.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="foreignphrase.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of foreignphrase.attlist -->
+ <!-- end of foreignphrase.module -->
+ <xs:attributeGroup name="glossterm.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A glossary term. -->
+ <xs:element name="glossterm" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="glossterm.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of glossterm.element -->
+ <!-- to GlossEntry if Glossterm used in text -->
+ <!--
+ BaseForm: Provides the form of GlossTerm to be used
+ for indexing
+ -->
+ <xs:attributeGroup name="glossterm.attlist">
+ <xs:attribute name="baseform"/>
+ <xs:attributeGroup ref="linkend.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="glossterm.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of glossterm.attlist -->
+ <!-- end of glossterm.module -->
+ <xs:attributeGroup name="firstterm.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The first occurrence of a term. -->
+ <xs:element name="firstterm" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="firstterm.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of firstterm.element -->
+ <!-- to GlossEntry or other explanation -->
+ <xs:attributeGroup name="firstterm.attlist">
+ <xs:attribute name="baseform"/>
+ <xs:attributeGroup ref="linkend.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="firstterm.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of firstterm.attlist -->
+ <!-- end of firstterm.module -->
+ <xs:attributeGroup name="phrase.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A span of text. -->
+ <xs:element name="phrase" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="phrase.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of phrase.element -->
+ <xs:attributeGroup name="phrase.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="phrase.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of phrase.attlist -->
+ <!-- end of phrase.module -->
+ <xs:attributeGroup name="quote.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An inline quotation. -->
+ <xs:element name="quote" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="quote.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of quote.element -->
+ <xs:attributeGroup name="quote.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="quote.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of quote.attlist -->
+ <!-- end of quote.module -->
+ <xs:attributeGroup name="ssscript.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A subscript (as in H{^2}O, the molecular formula for water). -->
+ <xs:element name="subscript">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="link.char.class"/>
+ <xs:element ref="emphasis"/>
+ <xs:element ref="replaceable"/>
+ <xs:element ref="symbol"/>
+ <xs:element ref="inlinegraphic"/>
+ <xs:element ref="inlinemediaobject"/>
+ <xs:group ref="base.char.class"/>
+ <xs:group ref="other.char.class"/>
+ </xs:choice>
+ <xs:attributeGroup ref="subscript.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of subscript.element -->
+ <xs:attributeGroup name="subscript.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="ssscript.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of subscript.attlist -->
+ <!-- doc:A superscript (as in x^2, the mathematical notation for x multiplied by itself). -->
+ <xs:element name="superscript">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="link.char.class"/>
+ <xs:element ref="emphasis"/>
+ <xs:element ref="replaceable"/>
+ <xs:element ref="symbol"/>
+ <xs:element ref="inlinegraphic"/>
+ <xs:element ref="inlinemediaobject"/>
+ <xs:group ref="base.char.class"/>
+ <xs:group ref="other.char.class"/>
+ </xs:choice>
+ <xs:attributeGroup ref="superscript.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of superscript.element -->
+ <xs:attributeGroup name="superscript.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="ssscript.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of superscript.attlist -->
+ <!-- end of ssscript.module -->
+ <xs:attributeGroup name="trademark.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A trademark. -->
+ <xs:element name="trademark" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="link.char.class"/>
+ <xs:element ref="tech.char.class"/>
+ <xs:group ref="base.char.class"/>
+ <xs:group ref="other.char.class"/>
+ <xs:element ref="inlinegraphic"/>
+ <xs:element ref="inlinemediaobject"/>
+ <xs:element ref="emphasis"/>
+ </xs:choice>
+ <xs:attributeGroup ref="trademark.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of trademark.element -->
+ <!-- Class: More precisely identifies the item the element names -->
+ <xs:attributeGroup name="trademark.attlist">
+ <xs:attribute name="class" default="trade">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="service"/>
+ <xs:enumeration value="trade"/>
+ <xs:enumeration value="registered"/>
+ <xs:enumeration value="copyright"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="trademark.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of trademark.attlist -->
+ <!-- end of trademark.module -->
+ <xs:attributeGroup name="wordasword.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A word meant specifically as a word and not representing anything else. -->
+ <xs:element name="wordasword" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="word.char.mix"/>
+ <xs:attributeGroup ref="wordasword.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of wordasword.element -->
+ <xs:attributeGroup name="wordasword.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="wordasword.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of wordasword.attlist -->
+ <!-- end of wordasword.module -->
+ <!-- Links and cross-references ........................................... -->
+ <xs:attributeGroup name="link.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A hypertext link. -->
+ <xs:element name="link" substitutionGroup="link.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="link.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of link.element -->
+ <!--
+ Endterm: ID of element containing text that is to be
+ fetched from elsewhere in the document to appear as
+ the content of this element
+ -->
+ <!-- to linked-to object -->
+ <!-- Type: Freely assignable parameter -->
+ <xs:attributeGroup name="link.attlist">
+ <xs:attribute name="endterm" type="xs:IDREF"/>
+ <xs:attribute name="xrefstyle"/>
+ <xs:attribute name="type"/>
+ <xs:attributeGroup ref="linkendreq.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="link.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of link.attlist -->
+ <!-- end of link.module -->
+ <xs:attributeGroup name="olink.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A link that addresses its target indirectly, through an entity. -->
+ <xs:element name="olink" substitutionGroup="link.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="olink.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of olink.element -->
+ <!-- TargetDocEnt: Name of an entity to be the target of the link -->
+ <!--
+ LinkMode: ID of a ModeSpec containing instructions for
+ operating on the entity named by TargetDocEnt
+ -->
+ <!-- LocalInfo: Information that may be passed to ModeSpec -->
+ <!-- Type: Freely assignable parameter -->
+ <xs:attributeGroup name="olink.attlist">
+ <xs:attribute name="targetdocent" type="xs:ENTITY"/>
+ <xs:attribute name="linkmode" type="xs:IDREF"/>
+ <xs:attribute name="localinfo"/>
+ <xs:attribute name="type"/>
+ <xs:attribute name="targetdoc"/>
+ <xs:attribute name="targetptr"/>
+ <xs:attribute name="xrefstyle"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="olink.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of olink.attlist -->
+ <!-- end of olink.module -->
+ <xs:attributeGroup name="ulink.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A link that addresses its target by means of a URL (Uniform Resource Locator). -->
+ <xs:element name="ulink" substitutionGroup="link.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="ulink.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of ulink.element -->
+ <!-- URL: uniform resource locator; the target of the ULink -->
+ <!-- Type: Freely assignable parameter -->
+ <xs:attributeGroup name="ulink.attlist">
+ <xs:attribute name="url" use="required"/>
+ <xs:attribute name="type"/>
+ <xs:attribute name="xrefstyle"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="ulink.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of ulink.attlist -->
+ <!-- end of ulink.module -->
+ <xs:attributeGroup name="footnoteref.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A cross reference to a footnote (a footnote mark). -->
+ <xs:element name="footnoteref" substitutionGroup="xref.char.class">
+ <xs:complexType>
+ <xs:attributeGroup ref="footnoteref.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of footnoteref.element -->
+ <!-- to footnote content supplied elsewhere -->
+ <xs:attributeGroup name="footnoteref.attlist">
+ <xs:attributeGroup ref="linkendreq.attrib"/>
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="footnoteref.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of footnoteref.attlist -->
+ <!-- end of footnoteref.module -->
+ <xs:attributeGroup name="xref.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A cross reference to another part of the document. -->
+ <xs:element name="xref" substitutionGroup="xref.char.class">
+ <xs:complexType>
+ <xs:attributeGroup ref="xref.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of xref.element -->
+ <!--
+ Endterm: ID of element containing text that is to be
+ fetched from elsewhere in the document to appear as
+ the content of this element
+ -->
+ <!-- to linked-to object -->
+ <xs:attributeGroup name="xref.attlist">
+ <xs:attribute name="endterm" type="xs:IDREF"/>
+ <xs:attribute name="xrefstyle"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="linkendreq.attrib"/>
+ <xs:attributeGroup ref="xref.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of xref.attlist -->
+ <!-- end of xref.module -->
+ <xs:attributeGroup name="biblioref.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A cross reference to a bibliographic entry. -->
+ <xs:element name="biblioref" substitutionGroup="xref.char.class">
+ <xs:complexType>
+ <xs:attributeGroup ref="biblioref.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of biblioref.element -->
+ <xs:attributeGroup name="biblioref.attlist">
+ <xs:attribute name="endterm" type="xs:IDREF"/>
+ <xs:attribute name="xrefstyle"/>
+ <xs:attribute name="units"/>
+ <xs:attribute name="begin"/>
+ <xs:attribute name="end"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="linkendreq.attrib"/>
+ <xs:attributeGroup ref="biblioref.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of biblioref.attlist -->
+ <!-- end of biblioref.module -->
+ <!-- Ubiquitous elements .................................................. -->
+ <xs:attributeGroup name="anchor.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A spot in the document. -->
+ <xs:element name="anchor">
+ <xs:complexType>
+ <xs:attributeGroup ref="anchor.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of anchor.element -->
+ <!-- required -->
+ <!-- replaces Lang -->
+ <xs:attributeGroup name="anchor.attlist">
+ <xs:attributeGroup ref="idreq.attrib"/>
+ <xs:attributeGroup ref="pagenum.attrib"/>
+ <xs:attributeGroup ref="remap.attrib"/>
+ <xs:attributeGroup ref="xreflabel.attrib"/>
+ <xs:attributeGroup ref="revisionflag.attrib"/>
+ <xs:attributeGroup ref="effectivity.attrib"/>
+ <xs:attributeGroup ref="anchor.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of anchor.attlist -->
+ <!-- end of anchor.module -->
+ <xs:attributeGroup name="beginpage.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The location of a page break in a print version of the document. -->
+ <xs:element name="beginpage">
+ <xs:complexType>
+ <xs:attributeGroup ref="beginpage.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of beginpage.element -->
+ <!-- PageNum: Number of page that begins at this point -->
+ <xs:attributeGroup name="beginpage.attlist">
+ <xs:attributeGroup ref="pagenum.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="beginpage.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of beginpage.attlist -->
+ <!-- end of beginpage.module -->
+ <!--
+ IndexTerms appear in the text flow for generating or linking an
+ index.
+ -->
+ <xs:attributeGroup name="indexterm.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for terms to be indexed. -->
+ <xs:element name="indexterm" substitutionGroup="ndxterm.class"/>
+ <!-- end of indexterm.element -->
+ <!--
+ Scope: Indicates which generated indices the IndexTerm
+ should appear in: Global (whole document set), Local (this
+ document only), or All (both)
+ -->
+ <!--
+ Significance: Whether this IndexTerm is the most pertinent
+ of its series (Preferred) or not (Normal, the default)
+ -->
+ <!--
+ Class: Indicates type of IndexTerm; default is Singular,
+ or EndOfRange if StartRef is supplied; StartOfRange value
+ must be supplied explicitly on starts of ranges
+ -->
+ <!--
+ StartRef: ID of the IndexTerm that starts the indexing
+ range ended by this IndexTerm
+ -->
+ <!--
+ Zone: IDs of the elements to which the IndexTerm applies,
+ and indicates that the IndexTerm applies to those entire
+ elements rather than the point at which the IndexTerm
+ occurs
+ -->
+ <xs:attributeGroup name="indexterm.attlist">
+ <xs:attributeGroup ref="pagenum.attrib"/>
+ <xs:attribute name="scope">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="all"/>
+ <xs:enumeration value="global"/>
+ <xs:enumeration value="local"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="significance" default="normal">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="preferred"/>
+ <xs:enumeration value="normal"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="singular"/>
+ <xs:enumeration value="startofrange"/>
+ <xs:enumeration value="endofrange"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="startref" type="xs:IDREF"/>
+ <xs:attribute name="zone" type="xs:IDREFS"/>
+ <xs:attribute name="type"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="indexterm.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of indexterm.attlist -->
+ <!-- end of indexterm.module -->
+ <xs:attributeGroup name="primsecter.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The primary word or phrase under which an index term should be sorted. -->
+ <xs:element name="primary">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="ndxterm.char.mix"/>
+ <xs:attributeGroup ref="primary.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of primary.element -->
+ <!--
+ SortAs: Alternate sort string for index sorting, e.g.,
+ "fourteen" for an element containing "14"
+ -->
+ <xs:attributeGroup name="primary.attlist">
+ <xs:attribute name="sortas"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="primsecter.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of primary.attlist -->
+ <!-- doc:A secondary word or phrase in an index term. -->
+ <xs:element name="secondary">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="ndxterm.char.mix"/>
+ <xs:attributeGroup ref="secondary.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of secondary.element -->
+ <!--
+ SortAs: Alternate sort string for index sorting, e.g.,
+ "fourteen" for an element containing "14"
+ -->
+ <xs:attributeGroup name="secondary.attlist">
+ <xs:attribute name="sortas"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="primsecter.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of secondary.attlist -->
+ <!-- doc:A tertiary word or phrase in an index term. -->
+ <xs:element name="tertiary">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="ndxterm.char.mix"/>
+ <xs:attributeGroup ref="tertiary.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of tertiary.element -->
+ <!--
+ SortAs: Alternate sort string for index sorting, e.g.,
+ "fourteen" for an element containing "14"
+ -->
+ <xs:attributeGroup name="tertiary.attlist">
+ <xs:attribute name="sortas"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="primsecter.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of tertiary.attlist -->
+ <!-- end of primsecter.module -->
+ <xs:attributeGroup name="seeseealso.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Part of an index term directing the reader instead to another entry in the index. -->
+ <xs:element name="see">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="ndxterm.char.mix"/>
+ <xs:attributeGroup ref="see.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of see.element -->
+ <xs:attributeGroup name="see.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="seeseealso.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of see.attlist -->
+ <!-- doc:Part of an index term directing the reader also to another entry in the index. -->
+ <xs:element name="seealso">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="ndxterm.char.mix"/>
+ <xs:attributeGroup ref="seealso.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of seealso.element -->
+ <xs:attributeGroup name="seealso.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="seeseealso.role.attrib"/>
+ </xs:attributeGroup>
+</xs:schema>
+<!-- end of seealso.attlist -->
+<!-- end of seeseealso.module -->
+<!-- end of indexterm.content.module -->
+<!-- End of SCons DocBook V4.5-Based extension V1.0 XML information pool module ... -->
+<!-- .............................................................................. -->
diff --git a/doc/editor_configs/serna/scons/xsd/htmltblx.xsd b/doc/editor_configs/serna/scons/xsd/htmltblx.xsd
new file mode 100644
index 0000000..9f82a02
--- /dev/null
+++ b/doc/editor_configs/serna/scons/xsd/htmltblx.xsd
@@ -0,0 +1,431 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- ...................................................................... -->
+<!-- SCons DocBook V4.5-Based extension V1.0 XML HTML Table Module ........ -->
+<!-- File htmltblx.xsd .................................................... -->
+<!-- Copyright (c) 2001-7,2010,2011,2012 The SCons Foundation
+
+ Permission is hereby granted, free of charge, to any person obtaining
+ a copy of this software and associated documentation files (the
+ "Software"), to deal in the Software without restriction, including
+ without limitation the rights to use, copy, modify, merge, publish,
+ distribute, sublicense, and/or sell copies of the Software, and to
+ permit persons to whom the Software is furnished to do so, subject to
+ the following conditions:
+
+ The above copyright notice and this permission notice shall be included
+ in all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
+ KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+ WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+ This DTD extension is based on the DocBook XML HTML Table
+ Module V4.5 with:
+
+ Copyright 2003-2006 ArborText, Inc., Norman Walsh, Sun Microsystems,
+ Inc., and the Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ $Id: htmltblx.mod 6340 2006-10-03 13:23:24Z nwalsh $
+
+ 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/.
+ For the modified SCons extension files
+
+ scons.xsd, dbpoolx.xsd,
+
+ you can write to its developer mailing list. Check out
+ http://www.scons.org/ and http://www.scons.org/lists.php.
+
+-->
+<!-- ...................................................................... -->
+<!--
+ This module contains the definitions for elements that are
+ isomorphic to the HTML elements. One could argue we should
+ instead have based ourselves on the XHTML Table Module, but the
+ HTML one is more like what browsers are likely to accept today
+ and users are likely to use.
+
+ This module has been developed for use with the DocBook V4.5
+ "union table model" in which elements and attlists common to both
+ models are defined (as the union) in the CALS table module by
+ setting various parameter entities appropriately in this file.
+
+ In DTD driver files referring to this module, please use an entity
+ declaration that uses the public identifier shown below:
+
+ <!ENTITY % htmltbl PUBLIC
+ "-//OASIS//ELEMENTS DocBook XML HTML Tables V4.5//EN"
+ "htmltblx.mod">
+ %htmltbl;
+
+ See the documentation for detailed information on the parameter
+ entity and module scheme used in DocBook, customizing DocBook and
+ planning for interchange, and changes made since the last release
+ of DocBook.
+-->
+<!-- ======================= XHTML Tables ======================================= -->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <xs:attributeGroup name="html.coreattrs">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attribute name="class"/>
+ <xs:attribute name="style"/>
+ <xs:attribute name="title"/>
+ </xs:attributeGroup>
+ <!-- Does not contain lang or dir because they are in %common.attribs -->
+ <xs:attributeGroup name="i18n">
+ <xs:attribute ref="xml:lang"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="events">
+ <xs:attribute name="onclick"/>
+ <xs:attribute name="ondblclick"/>
+ <xs:attribute name="onmousedown"/>
+ <xs:attribute name="onmouseup"/>
+ <xs:attribute name="onmouseover"/>
+ <xs:attribute name="onmousemove"/>
+ <xs:attribute name="onmouseout"/>
+ <xs:attribute name="onkeypress"/>
+ <xs:attribute name="onkeydown"/>
+ <xs:attribute name="onkeyup"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="attrs">
+ <xs:attributeGroup ref="html.coreattrs"/>
+ <xs:attributeGroup ref="i18n"/>
+ <xs:attributeGroup ref="events"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="cellhalign">
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="left"/>
+ <xs:enumeration value="center"/>
+ <xs:enumeration value="right"/>
+ <xs:enumeration value="justify"/>
+ <xs:enumeration value="char"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="char"/>
+ <xs:attribute name="charoff"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="cellvalign">
+ <xs:attribute name="valign">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="top"/>
+ <xs:enumeration value="middle"/>
+ <xs:enumeration value="bottom"/>
+ <xs:enumeration value="baseline"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <!-- doc:A group of columns in an HTML table. -->
+ <xs:element name="colgroup">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="col"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="colgroup.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- doc:Specifications for a column in an HTML table. -->
+ <xs:element name="col">
+ <xs:complexType>
+ <xs:attributeGroup ref="col.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- doc:A row in an HTML table. -->
+ <xs:element name="tr">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="th"/>
+ <xs:element ref="td"/>
+ </xs:choice>
+ <xs:attributeGroup ref="tr.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- doc:A table header entry in an HTML table. -->
+ <xs:element name="th">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:group ref="tabentry.mix"/>
+ <xs:element ref="table"/>
+ <xs:element ref="informaltable"/>
+ </xs:choice>
+ <xs:attributeGroup ref="th.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- doc:A table ntry in an HTML table. -->
+ <xs:element name="td">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:group ref="tabentry.mix"/>
+ <xs:element ref="table"/>
+ <xs:element ref="informaltable"/>
+ </xs:choice>
+ <xs:attributeGroup ref="td.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:attributeGroup name="colgroup.attlist">
+ <xs:attributeGroup ref="attrs"/>
+ <xs:attribute name="span" default="1"/>
+ <xs:attribute name="width"/>
+ <xs:attributeGroup ref="cellhalign"/>
+ <xs:attributeGroup ref="cellvalign"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="col.attlist">
+ <xs:attributeGroup ref="attrs"/>
+ <xs:attribute name="span" default="1"/>
+ <xs:attribute name="width"/>
+ <xs:attributeGroup ref="cellhalign"/>
+ <xs:attributeGroup ref="cellvalign"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="tr.attlist">
+ <xs:attributeGroup ref="attrs"/>
+ <xs:attributeGroup ref="cellhalign"/>
+ <xs:attributeGroup ref="cellvalign"/>
+ <xs:attribute name="bgcolor"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="th.attlist">
+ <xs:attributeGroup ref="attrs"/>
+ <xs:attribute name="abbr"/>
+ <xs:attribute name="axis"/>
+ <xs:attribute name="headers" type="xs:IDREFS"/>
+ <xs:attribute name="scope">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="row"/>
+ <xs:enumeration value="col"/>
+ <xs:enumeration value="rowgroup"/>
+ <xs:enumeration value="colgroup"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="rowspan" default="1"/>
+ <xs:attribute name="colspan" default="1"/>
+ <xs:attributeGroup ref="cellhalign"/>
+ <xs:attributeGroup ref="cellvalign"/>
+ <xs:attribute name="nowrap">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="nowrap"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="bgcolor"/>
+ <xs:attribute name="width"/>
+ <xs:attribute name="height"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="td.attlist">
+ <xs:attributeGroup ref="attrs"/>
+ <xs:attribute name="abbr"/>
+ <xs:attribute name="axis"/>
+ <xs:attribute name="headers" type="xs:IDREFS"/>
+ <xs:attribute name="scope">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="row"/>
+ <xs:enumeration value="col"/>
+ <xs:enumeration value="rowgroup"/>
+ <xs:enumeration value="colgroup"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="rowspan" default="1"/>
+ <xs:attribute name="colspan" default="1"/>
+ <xs:attributeGroup ref="cellhalign"/>
+ <xs:attributeGroup ref="cellvalign"/>
+ <xs:attribute name="nowrap">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="nowrap"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="bgcolor"/>
+ <xs:attribute name="width"/>
+ <xs:attribute name="height"/>
+ </xs:attributeGroup>
+ <!-- ====================================================== -->
+ <!--
+ Set up to read in the CALS model configured to
+ merge with the XHTML table model
+ -->
+ <!-- ====================================================== -->
+ <xs:attributeGroup name="tables.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- Add label and role attributes to table and informaltable -->
+ <xs:attributeGroup name="bodyatt">
+ <xs:attribute name="floatstyle"/>
+ <xs:attribute name="rowheader">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="firstcol"/>
+ <xs:enumeration value="norowheader"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="label.attrib"/>
+ </xs:attributeGroup>
+ <!--
+ Add common attributes to Table, TGroup, TBody, THead, TFoot, Row,
+ EntryTbl, and Entry (and InformalTable element).
+ -->
+ <xs:attributeGroup name="secur">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attribute name="class"/>
+ <xs:attribute name="style"/>
+ <xs:attribute name="title"/>
+ <xs:attributeGroup ref="i18n"/>
+ <xs:attributeGroup ref="events"/>
+ <xs:attributeGroup ref="tables.role.attrib"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="common.table.attribs">
+ <xs:attributeGroup ref="bodyatt"/>
+ <xs:attributeGroup ref="secur"/>
+ </xs:attributeGroup>
+ <!-- Content model for Table (that also allows HTML tables) -->
+ <xs:complexType name="tbl.table.mdl">
+ <xs:choice>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group ref="formalobject.title.content"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="ndxterm.class"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="textobject"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="graphic"/>
+ <xs:element maxOccurs="unbounded" ref="mediaobject"/>
+ <xs:element maxOccurs="unbounded" ref="tgroup"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:sequence>
+ <xs:element ref="caption"/>
+ <xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="col"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="colgroup"/>
+ </xs:choice>
+ <xs:element minOccurs="0" ref="thead"/>
+ <xs:element minOccurs="0" ref="tfoot"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="tbody"/>
+ <xs:element maxOccurs="unbounded" ref="tr"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:choice>
+ </xs:complexType>
+ <xs:group name="informal.tbl.table.mdl">
+ <xs:choice>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="textobject"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="graphic"/>
+ <xs:element maxOccurs="unbounded" ref="mediaobject"/>
+ <xs:element maxOccurs="unbounded" ref="tgroup"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:sequence>
+ <xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="col"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="colgroup"/>
+ </xs:choice>
+ <xs:element minOccurs="0" ref="thead"/>
+ <xs:element minOccurs="0" ref="tfoot"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="tbody"/>
+ <xs:element maxOccurs="unbounded" ref="tr"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:choice>
+ </xs:group>
+ <!-- Attributes for Table (including HTML ones) -->
+ <!-- N.B. rules = (none | groups | rows | cols | all) but it can't be spec'd -->
+ <!-- that way because 'all' already occurs in a different enumeration in -->
+ <!-- CALS tables (frame). -->
+ <xs:attributeGroup name="tbl.table.att">
+ <xs:attribute name="tabstyle"/>
+ <xs:attribute name="tocentry" type="yesorno.attvals"/>
+ <xs:attribute name="shortentry" type="yesorno.attvals"/>
+ <xs:attribute name="orient">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="port"/>
+ <xs:enumeration value="land"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="pgwide" type="yesorno.attvals"/>
+ <xs:attribute name="summary"/>
+ <xs:attribute name="width"/>
+ <xs:attribute name="border"/>
+ <xs:attribute name="rules"/>
+ <xs:attribute name="cellspacing"/>
+ <xs:attribute name="cellpadding"/>
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="left"/>
+ <xs:enumeration value="center"/>
+ <xs:enumeration value="right"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="bgcolor"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="tbl.frame.attval">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="void"/>
+ <xs:enumeration value="above"/>
+ <xs:enumeration value="below"/>
+ <xs:enumeration value="hsides"/>
+ <xs:enumeration value="lhs"/>
+ <xs:enumeration value="rhs"/>
+ <xs:enumeration value="vsides"/>
+ <xs:enumeration value="box"/>
+ <xs:enumeration value="border"/>
+ <xs:enumeration value="top"/>
+ <xs:enumeration value="bottom"/>
+ <xs:enumeration value="topbot"/>
+ <xs:enumeration value="all"/>
+ <xs:enumeration value="sides"/>
+ <xs:enumeration value="none"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!-- Allow either objects or inlines; beware of REs between elements. -->
+ <xs:group name="tbl.entry.mdl">
+ <xs:choice>
+ <xs:group ref="para.char.mix"/>
+ <xs:group ref="tabentry.mix"/>
+ </xs:choice>
+ </xs:group>
+ <!--
+ thead, tfoot, and tbody are defined in both table models,
+ so we set up parameter entities to define union models for them
+ -->
+ <xs:complexType name="tbl.hdft.mdl">
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="tr"/>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="colspec"/>
+ <xs:element maxOccurs="unbounded" ref="row"/>
+ </xs:sequence>
+ </xs:choice>
+ </xs:complexType>
+ <xs:complexType name="tbl.tbody.mdl">
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="tr"/>
+ <xs:element maxOccurs="unbounded" ref="row"/>
+ </xs:choice>
+ </xs:complexType>
+</xs:schema>
+<!-- End of SCons DocBook V4.5-Based extension V1.0 XML HTML Table Module . -->
+<!-- ...................................................................... -->
diff --git a/doc/editor_configs/serna/scons/xsd/scons.xsd b/doc/editor_configs/serna/scons/xsd/scons.xsd
new file mode 100644
index 0000000..481c2d4
--- /dev/null
+++ b/doc/editor_configs/serna/scons/xsd/scons.xsd
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- ...................................................................... -->
+<!-- SCons DocBook V4.5-Based extension V1.0 .............................. -->
+<!-- File scons.xsd ....................................................... -->
+<!-- Copyright (c) 2001-7,2010,2011,2012 The SCons Foundation
+
+ Permission is hereby granted, free of charge, to any person obtaining
+ a copy of this software and associated documentation files (the
+ "Software"), to deal in the Software without restriction, including
+ without limitation the rights to use, copy, modify, merge, publish,
+ distribute, sublicense, and/or sell copies of the Software, and to
+ permit persons to whom the Software is furnished to do so, subject to
+ the following conditions:
+
+ The above copyright notice and this permission notice shall be included
+ in all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
+ KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+ WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+ This DTD extension is based on the DocBook V4.5 DTD with:
+
+ Copyright 1992-2006 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).
+
+ See also http://docbook.org/specs/
+
+ $Id: docbookx.dtd 6340 2006-10-03 13:23:24Z nwalsh $
+
+
+ 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/.
+ For the modified SCons extension files
+
+ scons.xsd, dbpoolx.xsd,
+
+ you can write to its developer mailing list. Check out
+ http://www.scons.org/ and http://www.scons.org/lists.php.
+
+-->
+<!-- ...................................................................... -->
+<!--
+ This is the driver file for V4.5 of the DocBook DTD.
+ Please use the following formal public identifier to identify it:
+
+ "-//OASIS//DTD DocBook XML V4.5//EN"
+
+ For example, if your document's top-level element is Book, and
+ you are using DocBook directly, use the FPI in the DOCTYPE
+ declaration:
+
+ <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
+ "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"
+ [...]>
+
+ Or, if you have a higher-level driver file that customizes DocBook,
+ use the FPI in the parameter entity declaration:
+
+ <!ENTITY % DocBookDTD PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
+ "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
+ %DocBookDTD;
+
+ See the documentation for detailed information on the parameter
+ entity and module scheme used in DocBook, customizing DocBook and
+ planning for interchange, and changes made since the last release
+ of DocBook.
+-->
+<!-- ...................................................................... -->
+<!-- Enable SGML features ................................................. -->
+<!-- ...................................................................... -->
+<!-- Notation declarations ................................................ -->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.scons.org/dbxsd/v1.0"
+ elementFormDefault="qualified">
+ <xs:include schemaLocation="dbnotnx.xsd"/>
+ <xs:include schemaLocation="dbpoolx.xsd"/>
+ <xs:include schemaLocation="dbhierx.xsd"/>
+ <!-- ...................................................................... -->
+ <!-- ISO character entity sets ............................................ -->
+ <!-- euro sign, U+20AC NEW -->
+ <!-- ...................................................................... -->
+ <!-- DTD modules .......................................................... -->
+ <!-- Information pool .............. -->
+ <!-- Redeclaration placeholder ..... -->
+ <!-- Document hierarchy ............ -->
+</xs:schema>
+<!-- ...................................................................... -->
+<!-- Other general entities ............................................... -->
+<!-- End of SCons DocBook V4.5-Based extension V1.0 ....................... -->
+<!-- ...................................................................... -->
diff --git a/doc/editor_configs/serna/scons/xsd/xml.xsd b/doc/editor_configs/serna/scons/xsd/xml.xsd
new file mode 100644
index 0000000..600f399
--- /dev/null
+++ b/doc/editor_configs/serna/scons/xsd/xml.xsd
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ targetNamespace="http://www.w3.org/XML/1998/namespace">
+ <xs:import schemaLocation="scons.xsd"/>
+ <xs:attribute name="base"/>
+ <xs:attribute name="space">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="preserve"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="lang" type="xs:NMTOKEN"/>
+</xs:schema>
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/common.incl b/doc/editor_configs/xmlmind/addon/config/scons/common.incl
new file mode 100644
index 0000000..d03f74c
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/common.incl
@@ -0,0 +1,654 @@
+<?xml version='1.0' encoding='ISO-8859-1'?>
+<configuration
+ xmlns="http://www.xmlmind.com/xmleditor/schema/configuration"
+ xmlns:cfg="http://www.xmlmind.com/xmleditor/schema/configuration">
+
+ <translation location="docbook_en.properties" />
+
+ <inclusionScheme name="XInclude">
+ <class>com.xmlmind.xml.xinclude.XIncludeScheme</class>
+ </inclusionScheme>
+
+ <cfg:preserveSpace xmlns=""
+ elements="address funcsynopsisinfo classsynopsisinfo
+ literallayout programlisting screen synopsis
+ sconstruct scons_example_file example_commands
+ scons_output_command file directory" />
+
+ <cfg:documentResources xmlns="">
+ <cfg:resource path="//@fileref" />
+ </cfg:documentResources>
+
+ <!-- Fixes the cols attribute of tgroup and entrytbl if needed to -->
+ <validateHook>
+ <class>com.xmlmind.xmleditext.docbook.table.ValidateHookImpl</class>
+ </validateHook>
+
+ <cfg:spellCheckOptions xmlns=""
+ useAutomaticSpellChecker="true"
+ languageAttribute="lang"
+ skippedElements="address programlisting screen synopsis code sgmltag
+ classsynopsisinfo modifier package classname
+ interfacename exceptionname varname methodname
+ funcsynopsisinfo modifier type function
+ initializer parameter funcparams
+ lhs rhs nonterminal" />
+
+ <!-- Menu ============================================================== -->
+
+ <command name="docb.tableEdit">
+ <class>com.xmlmind.xmleditext.docbook.DBTableEdit</class>
+ </command>
+
+ <command name="docb.promote">
+ <class>com.xmlmind.xmleditext.docbook.Promote</class>
+ </command>
+ <command name="docb.demote">
+ <class>com.xmlmind.xmleditext.docbook.Demote</class>
+ </command>
+
+ <command name="docb.toggleInformal">
+ <macro undoable="true"
+ label="Convert informal&lt;element&gt; to/from &lt;element&gt;">
+ <choice>
+ <sequence>
+ <command name="selectNode"
+ parameter="ancestorOrSelf[implicitElement]
+ informaltable informalfigure informalexample" />
+
+ <!-- DocBook 4.3 supports HTML tables and we will *not* attempt to
+ transform an HTML informaltable to a HTML table
+ with a caption. -->
+
+ <test context="$selected"
+ expression="local-name() != 'informaltable' or ./tgroup" />
+
+ <command name="selectNode" parameter="children" />
+ <command name="copy" />
+ <command name="selectNode" parameter="parent" />
+ <get context="$selected"
+ expression="substring-after(local-name(), 'informal')" />
+ <command name="replace" parameter="%_" />
+ <set variable="selectedNodes" context="$selected"
+ expression="./*[position() &gt; 1]" />
+ <command name="paste" parameter="to" />
+ </sequence>
+
+ <sequence>
+ <command name="selectNode"
+ parameter="ancestorOrSelf[implicitElement] table figure example" />
+ <!-- Assumes that first child is a title and not a blockinfo. -->
+ <set variable="selectedNodes" context="$selected"
+ expression="./*[position() &gt; 1]" />
+ <command name="copy" />
+ <command name="selectNode" parameter="parent" />
+ <get context="$selected"
+ expression="concat('informal', local-name())" />
+ <command name="replace" parameter="%_" />
+ <command name="selectNode" parameter="children" />
+ <command name="paste" parameter="to" />
+ </sequence>
+ </choice>
+ </macro>
+ </command>
+
+ <menu label="_DocBook">
+ <menu label="C_olumn">
+ <item label="_Insert Before"
+ icon="scons_icons/insertColumnBefore.png"
+ command="docb.tableEdit" parameter="insertColumnBefore"/>
+ <item label="I_nsert After"
+ icon="scons_icons/insertColumnAfter.png"
+ command="docb.tableEdit" parameter="insertColumnAfter"/>
+ <separator />
+ <item label="_Cut"
+ icon="scons_icons/cut.png"
+ command="docb.tableEdit" parameter="cutColumn"/>
+ <item label="C_opy"
+ icon="scons_icons/copy.png"
+ command="docb.tableEdit" parameter="copyColumn"/>
+ <item label="_Paste Before"
+ icon="scons_icons/pasteBefore.png"
+ command="docb.tableEdit" parameter="pasteColumnBefore"/>
+ <item label="P_aste After"
+ icon="scons_icons/pasteAfter.png"
+ command="docb.tableEdit" parameter="pasteColumnAfter"/>
+ <item label="_Delete"
+ icon="scons_icons/deleteColumn.png"
+ command="docb.tableEdit" parameter="deleteColumn"/>
+ </menu>
+ <menu label="_Row">
+ <item label="_Insert Before"
+ icon="scons_icons/insertRowBefore.png"
+ command="docb.tableEdit" parameter="insertRowBefore"/>
+ <item label="I_nsert After"
+ icon="scons_icons/insertRowAfter.png"
+ command="docb.tableEdit" parameter="insertRowAfter"/>
+ <separator />
+ <item label="_Cut"
+ icon="scons_icons/cut.png"
+ command="docb.tableEdit" parameter="cutRow"/>
+ <item label="C_opy"
+ icon="scons_icons/copy.png"
+ command="docb.tableEdit" parameter="copyRow"/>
+ <item label="_Paste Before"
+ icon="scons_icons/pasteBefore.png"
+ command="docb.tableEdit" parameter="pasteRowBefore"/>
+ <item label="P_aste After"
+ icon="scons_icons/pasteAfter.png"
+ command="docb.tableEdit" parameter="pasteRowAfter"/>
+ <item label="_Delete"
+ icon="scons_icons/deleteRow.png"
+ command="docb.tableEdit" parameter="deleteRow"/>
+ </menu>
+ <menu label="C_ell">
+ <item label="_Increment Column Span"
+ icon="scons_icons/incrementColumnSpan.png"
+ command="docb.tableEdit" parameter="incrColumnSpan"/>
+ <item label="_Decrement Column Span"
+ icon="scons_icons/decrementColumnSpan.png"
+ command="docb.tableEdit" parameter="decrColumnSpan"/>
+ <separator />
+ <item label="I_ncrement Row Span"
+ icon="scons_icons/incrementRowSpan.png"
+ command="docb.tableEdit" parameter="incrRowSpan"/>
+ <item label="D_ecrement Row Span"
+ icon="scons_icons/decrementRowSpan.png"
+ command="docb.tableEdit" parameter="decrRowSpan"/>
+ </menu>
+ <separator />
+ <item label="Convert in_formal&lt;element&gt; to/from &lt;element&gt;"
+ command="docb.toggleInformal"/>
+ <separator />
+ <item label="_Go to Opposite Link End"
+ command="selectById" parameter="swapIdAndReference"/>
+ <item label="Go to _Next Link"
+ command="selectById" parameter="nextReference"/>
+ <item label="Go to _Previous Link"
+ command="selectById" parameter="previousReference"/>
+ <separator />
+ <item label="Move _Up"
+ icon="scons_icons/up.png"
+ command="moveElement" parameter="up" />
+ <item label="Move Do_wn"
+ icon="scons_icons/down.png"
+ command="moveElement" parameter="down" />
+ </menu>
+
+ <!-- Toolbar ============================================================ -->
+
+ <command name="docb.convertWithAttribute">
+ <macro repeatable="true" undoable="true" label="Convert">
+ <sequence>
+ <choice>
+ <command name="selectNode"
+ parameter="self[implicitElement] %0" />
+ <command name="convert"
+ parameter="[implicitElement] %0" />
+ </choice>
+ <command name="putAttribute" parameter="%1 %2" />
+ </sequence>
+ </macro>
+ </command>
+
+ <!-- Easier to implement with "add" instead of "insertNode" but slower. -->
+
+ <command name="docb.addListItem">
+ <macro>
+ <sequence>
+ <command name="selectNode"
+ parameter="ancestor[implicitElement] itemizedlist orderedlist
+ variablelist calloutlist procedure substeps
+ simplelist segmentedlist" />
+ <command name="selectNode" parameter="child" />
+ <command name="insertNode" parameter="sameElement%0" />
+ </sequence>
+ </macro>
+ </command>
+
+ <!-- This macro is required for DocBook where a para can contains
+ lists, tables, etc.
+ Note that this is not the case of para in Simplified DocBook. -->
+
+ <command name="docb.addAfter">
+ <macro>
+ <choice>
+ <sequence>
+ <command name="selectNode"
+ parameter="ancestorOrSelf[implicitElement] para" />
+ <command name="insert" parameter="after[implicitElement] %0" />
+ </sequence>
+ <command name="add" parameter="after[implicitElement] %0" />
+ </choice>
+ </macro>
+ </command>
+
+ <!-- Bindings =========================================================== -->
+
+ <binding>
+ <keyPressed code="F2" />
+ <keyPressed code="UP" />
+ <command name="moveElement" parameter="up" />
+ </binding>
+
+ <binding>
+ <keyPressed code="F2" />
+ <keyPressed code="DOWN" />
+ <command name="moveElement" parameter="down" />
+ </binding>
+
+ <!-- Inside a para or simpara (and only inside a para or simpara),
+ XXE attempts to behave like a word-processor. -->
+
+ <binding>
+ <keyPressed code="ENTER" />
+ <command name="docb.splitOrInsertNewLine" />
+ </binding>
+
+ <binding>
+ <keyPressed code="DELETE" />
+ <command name="docb.joinOrDeleteChar" />
+ </binding>
+
+ <binding>
+ <keyPressed code="BACK_SPACE" />
+ <command name="docb.joinOrDeleteChar" parameter="backwards" />
+ </binding>
+
+ <command name="docb.splitOrInsertNewLine">
+ <macro>
+ <choice>
+ <command name="insertControlChar" parameter="\n" />
+
+ <sequence>
+ <command name="selectNode"
+ parameter="ancestorOrSelf[implicitElement] simpara para" />
+ <command name="split" />
+ </sequence>
+ </choice>
+ </macro>
+ </command>
+
+ <command name="docb.joinOrDeleteChar">
+ <macro>
+ <choice>
+ <sequence>
+ <test
+ expression="($dot/ancestor::para or $dot/ancestor::simpara) and
+ not($selected) and not($mark)" />
+ <command name="deleteSelectionOrJoinOrDeleteChar" parameter="%0" />
+ </sequence>
+
+ <command name="deleteSelectionOrDeleteChar" parameter="%0" />
+ </choice>
+ </macro>
+ </command>
+
+ <!-- Easy way to add paragraphs and list items -->
+
+ <binding>
+ <keyPressed code="ENTER" modifiers="mod" />
+ <command name="docb.addSame" parameter="After" />
+ </binding>
+
+ <binding>
+ <keyPressed code="ENTER" modifiers="mod shift" />
+ <command name="docb.addSame" parameter="Before" />
+ </binding>
+
+ <command name="docb.addSame">
+ <macro>
+ <choice>
+ <sequence>
+ <command name="selectNode"
+ parameter="ancestorOrSelf[implicitElement] simpara para" />
+
+ <choice>
+ <sequence>
+ <match context="$selected"
+ pattern="listitem/*[position() = 1]|
+ callout/*[position() = 1]|
+ step/*[position() = 1]" />
+ <command name="docb.addListItem" parameter="%0" />
+ </sequence>
+
+ <command name="insertNode" parameter="sameElement%0" />
+ </choice>
+ </sequence>
+
+ <command name="docb.addListItem" parameter="%0" />
+ </choice>
+ </macro>
+ </command>
+
+ <!-- Note that Shift-Enter is not bound. -->
+
+ <!-- An easy way to paste paragraphs copied from another application. -->
+
+ <command name="docb.pasteAfterAsParagraphs">
+ <macro>
+ <sequence>
+ <command name="makeParagraphs" parameter="%0" />
+ <command name="paste" parameter="after[implicitElement] %_" />
+ </sequence>
+ </macro>
+ </command>
+
+ <binding>
+ <keyPressed code="ESCAPE" />
+ <charTyped char="w" />
+ <command name="docb.pasteAfterAsParagraphs" parameter="para" />
+ </binding>
+
+ <!-- An easy way to specify the URL in ulink -->
+
+ <binding>
+ <appEvent name="drop" />
+ <command name="docb.fileDrop" parameter="'%{value}'" />
+ </binding>
+
+ <command name="docb.fileDrop">
+ <macro>
+ <choice>
+ <sequence>
+ <match context="$clickedElement" pattern="ulink" />
+ <set variable="selectedElement" expression="$clickedElement" />
+
+ <set variable="dropped" context="$selectedElement"
+ expression="relativize-uri(uri-or-file-name('%0'))" />
+ <get expression="$dropped" />
+ <command name="putAttribute" parameter="url '%_'" />
+
+ <get expression="$dropped" />
+ <command name="status" parameter="url='%_'" />
+ </sequence>
+
+ <command name="XXE.open" parameter="%0" />
+ </choice>
+ </macro>
+ </command>
+
+ <!-- Element templates ================================================== -->
+
+ <!-- Unlike graphic, mediaobject/imageobject is also supported by
+ simplified docbook. -->
+
+ <elementTemplate name="image" selectable="override">
+ <figure xmlns="">
+ <title></title>
+ <mediaobject cfg:template="image" />
+ </figure>
+ </elementTemplate>
+
+ <elementTemplate name="screenshot">
+ <figure xmlns="">
+ <title></title>
+ <screenshot cfg:template="simple" />
+ </figure>
+ </elementTemplate>
+
+ <elementTemplate name="simple" selectable="override">
+ <screenshot xmlns="">
+ <screeninfo></screeninfo>
+ <mediaobject cfg:template="image" />
+ </screenshot>
+ </elementTemplate>
+
+ <!-- Replacement for automatically generated mediaobject
+ (which contains a textobject) -->
+
+ <elementTemplate name="image" selectable="override">
+ <mediaobject xmlns="">
+ <imageobject><imagedata cfg:template="simple" /></imageobject>
+ </mediaobject>
+ </elementTemplate>
+
+ <elementTemplate name="image" selectable="override">
+ <inlinemediaobject xmlns="">
+ <imageobject><imagedata cfg:template="simple" /></imageobject>
+ </inlinemediaobject>
+ </elementTemplate>
+
+ <!-- fileref is not a mandatory attribute of imagedata -->
+
+ <elementTemplate name="simple" selectable="override">
+ <imagedata xmlns="" fileref="???" />
+ </elementTemplate>
+
+ <!-- Replacement for automatically generated caption of a mediaobject
+ (which is empty) -->
+
+ <elementTemplate name="simple" selectable="override">
+ <caption xmlns="">
+ <para></para>
+ </caption>
+ </elementTemplate>
+
+ <!-- Replacement for automatically generated table
+ (which contains a graphic) -->
+
+ <elementTemplate name="simple" selectable="override">
+ <table xmlns="">
+ <title></title>
+ <tgroup cols="2">
+ <tbody>
+ <row>
+ <entry></entry><entry></entry>
+ </row>
+ <row>
+ <entry></entry><entry></entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ </elementTemplate>
+
+<!--
+ <elementTemplate name="withPara" selectable="override">
+ <entry xmlns=""><para></para></entry>
+ </elementTemplate>
+
+ <elementTemplate name="withPara" selectable="override">
+ <entrytbl xmlns="" cols="2">
+ <tbody>
+ <row>
+ <entry><para></para></entry><entry><para></para></entry>
+ </row>
+ <row>
+ <entry><para></para></entry><entry><para></para></entry>
+ </row>
+ </tbody>
+ </entrytbl>
+ </elementTemplate>
+-->
+
+ <elementTemplate name="head_row">
+ <table xmlns="">
+ <title></title>
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry align="center"></entry><entry align="center"></entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry></entry><entry></entry>
+ </row>
+ <row>
+ <entry></entry><entry></entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ </elementTemplate>
+
+ <elementTemplate name="head_column">
+ <table xmlns="">
+ <title></title>
+ <tgroup cols="2">
+ <colspec align="center"/>
+ <tbody>
+ <row>
+ <entry></entry><entry></entry>
+ </row>
+ <row>
+ <entry></entry><entry></entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ </elementTemplate>
+
+ <elementTemplate name="head_row_column">
+ <table xmlns="">
+ <title></title>
+ <tgroup cols="2">
+ <colspec align="center" />
+ <thead>
+ <row>
+ <entry align="center"></entry><entry align="center"></entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry></entry><entry></entry>
+ </row>
+ <row>
+ <entry></entry><entry></entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ </elementTemplate>
+
+ <!-- Replacement for automatically generated informaltable
+ (which contains a graphic) -->
+
+ <elementTemplate name="simple" selectable="override">
+ <informaltable xmlns="">
+ <tgroup cols="2">
+ <tbody>
+ <row>
+ <entry></entry><entry></entry>
+ </row>
+ <row>
+ <entry></entry><entry></entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+ </elementTemplate>
+
+ <elementTemplate name="head_row">
+ <informaltable xmlns="">
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry align="center"></entry><entry align="center"></entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry></entry><entry></entry>
+ </row>
+ <row>
+ <entry></entry><entry></entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+ </elementTemplate>
+
+ <elementTemplate name="head_column">
+ <informaltable xmlns="">
+ <tgroup cols="2">
+ <colspec align="center"/>
+ <tbody>
+ <row>
+ <entry></entry><entry></entry>
+ </row>
+ <row>
+ <entry></entry><entry></entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+ </elementTemplate>
+
+ <elementTemplate name="head_row_column">
+ <informaltable xmlns="">
+ <tgroup cols="2">
+ <colspec align="center" />
+ <thead>
+ <row>
+ <entry align="center"></entry><entry align="center"></entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry></entry><entry></entry>
+ </row>
+ <row>
+ <entry></entry><entry></entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+ </elementTemplate>
+
+ <elementTemplate name="1x2">
+ <entrytbl xmlns="" cols="2">
+ <tbody>
+ <row>
+ <entry></entry><entry></entry>
+ </row>
+ </tbody>
+ </entrytbl>
+ </elementTemplate>
+
+ <elementTemplate name="2x1">
+ <entrytbl xmlns="" cols="1">
+ <tbody>
+ <row>
+ <entry></entry>
+ </row>
+ <row>
+ <entry></entry>
+ </row>
+ </tbody>
+ </entrytbl>
+ </elementTemplate>
+
+ <elementTemplate name="2x2">
+ <entrytbl xmlns="" cols="2">
+ <tbody>
+ <row>
+ <entry></entry><entry></entry>
+ </row>
+ <row>
+ <entry></entry><entry></entry>
+ </row>
+ </tbody>
+ </entrytbl>
+ </elementTemplate>
+
+ <!-- indexterm -->
+
+ <elementTemplate name="singular" selectable="override">
+ <indexterm xmlns=""><primary></primary></indexterm>
+ </elementTemplate>
+
+ <elementTemplate name="startofrange">
+ <indexterm xmlns="" id="???"
+ class="startofrange"><primary></primary></indexterm>
+ </elementTemplate>
+
+ <elementTemplate name="endofrange">
+ <indexterm xmlns="" class="endofrange" startref="???" />
+ </elementTemplate>
+
+ <!-- DocBook 4.3, Simplified DocBook 1.1, etc, support
+ both HTML and CALS tables. -->
+ <include location="htmlTable.incl" />
+</configuration>
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/css/cals_table.imp b/doc/editor_configs/xmlmind/addon/config/scons/css/cals_table.imp
new file mode 100644
index 0000000..6e02a94
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/css/cals_table.imp
@@ -0,0 +1,24 @@
+/*
+ * Copyright (c) 2005-2009 Pixware.
+ *
+ * This file is part of the XMLmind XML Editor project.
+ * For conditions of distribution and use, see the accompanying legal.txt file.
+ *
+ * Styles for CALS tables (up to DocBook 4.2).
+ */
+
+@import "table.imp";
+
+/*
+ * "black" is the color used to draw a border around the table and its cells
+ * based on values of attributes such as frame, rowsep and colsep.
+ *
+ * "rgb(238,238,224)" (a very light gray) is the color used to draw
+ * a border around each cell whether the cell actually has borders or not.
+ * Remove this parameter if this ``cell footprint'' disturbs you.
+ *
+ * For more information about table support for DocBook, see
+ * XMLmind XML Editor - Configuration and Deployment.
+ */
+@extension "com.xmlmind.xmleditext.docbook.table.TableSupport black rgb(238,238,224)";
+
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/css/collapsible.imp b/doc/editor_configs/xmlmind/addon/config/scons/css/collapsible.imp
new file mode 100644
index 0000000..443f990
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/css/collapsible.imp
@@ -0,0 +1,135 @@
+/*
+ * Copyright (c) 2003-2007 Pixware.
+ *
+ * This file is part of the XMLmind XML Editor project.
+ * For conditions of distribution and use, see the accompanying legal.txt file.
+ *
+ * Styles for making sections and blocks with titles collapsible.
+ */
+
+set,
+book,
+part,
+reference,
+chapter,
+preface,
+article,
+sect1,
+sect2,
+sect3,
+sect4,
+section,
+appendix,
+figure,
+example,
+table {
+ collapsible: yes;
+ not-collapsible-head: 1; /* title or metainfo */
+}
+
+figure {
+ collapsed-content: url(icons/figure.png);
+ collapsed-content-align: center;
+}
+
+example {
+ collapsed-content: url(icons/para.png);
+ collapsed-content-align: center;
+}
+
+table {
+ collapsed-content: url(icons/table.png);
+ collapsed-content-align: center;
+}
+
+set > title:first-child:before,
+book > title:first-child:before,
+reference > title:first-child:before,
+preface > title:first-child:before,
+article > title:first-child:before,
+figure > title:before,
+example > title:before,
+table > title:before {
+ content: collapser() " ";
+}
+
+part > title:first-child:before {
+ content: collapser() " Part " simple-counter(n-, upper-roman) ": ";
+}
+
+chapter > title:first-child:before {
+ content: collapser() " Chapter " simple-counter(n-, decimal) ": ";
+}
+
+sect1 > title:first-child:before {
+ content: collapser() " " simple-counter(n-) " ";
+}
+
+sect2 > title:first-child:before {
+ content: collapser() " " simple-counter(nn-) " ";
+}
+
+sect3 > title:first-child:before {
+ content: collapser() " " simple-counter(nnn-) " ";
+}
+
+sect4 > title:first-child:before {
+ content: collapser() " " simple-counter(nnnn-) " ";
+}
+
+section > title:first-child:before {
+ content: collapser() " " simple-counter(n-) " ";
+}
+
+section section > title:first-child:before {
+ content: collapser() " " simple-counter(nn-) " ";
+}
+
+section section section > title:first-child:before {
+ content: collapser() " " simple-counter(nnn-) " ";
+}
+
+section section section section > title:first-child:before {
+ content: collapser() " " simple-counter(nnnn-) " ";
+}
+
+section section section * section > title:first-child:before {
+ content: "";
+}
+
+appendix > title:first-child:before {
+ content: collapser() " Appendix " simple-counter(n-, upper-alpha) ": ";
+}
+
+appendixinfo:first-child,
+articleinfo:first-child,
+bookinfo:first-child,
+chapterinfo:first-child,
+partinfo:first-child,
+prefaceinfo:first-child,
+referenceinfo:first-child,
+sect1info:first-child,
+sect2info:first-child,
+sect3info:first-child,
+sect4info:first-child,
+sectioninfo:first-child,
+setinfo:first-child {
+ margin-left: 20px;
+}
+
+appendixinfo:first-child:before,
+articleinfo:first-child:before,
+bookinfo:first-child:before,
+chapterinfo:first-child:before,
+partinfo:first-child:before,
+prefaceinfo:first-child:before,
+referenceinfo:first-child:before,
+sect1info:first-child:before,
+sect2info:first-child:before,
+sect3info:first-child:before,
+sect4info:first-child:before,
+sectioninfo:first-child:before,
+setinfo:first-child:before {
+ content: collapser();
+ display: marker;
+}
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/css/docbook1.imp b/doc/editor_configs/xmlmind/addon/config/scons/css/docbook1.imp
new file mode 100644
index 0000000..27a7561
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/css/docbook1.imp
@@ -0,0 +1,1157 @@
+/*
+ * Copyright (c) 2003-2010 Pixware.
+ *
+ * This file is part of the XMLmind XML Editor project.
+ * For conditions of distribution and use, see the accompanying legal.txt file.
+ *
+ * Styles for elements other than those found in Simplified DocBook.
+ */
+
+/* =====================================
+ Book structure
+===================================== */
+
+set {
+ display: block;
+}
+
+set > title {
+ font-size: 2.5em;
+ margin: 0.25ex 0;
+ border-width: 4px;
+ border-style: solid;
+ border-color: transparent transparent #004080 transparent;
+}
+
+book {
+ display: block;
+}
+
+book > title {
+ font-size: 2.5em;
+ margin: 0.25ex 0;
+ border-width: 3px;
+ border-style: solid;
+ border-color: transparent transparent #004080 transparent;
+}
+
+dedication,
+colophon {
+ display: block;
+ /* content of dedication has a margin */
+}
+
+part,
+reference {
+ display: block;
+}
+
+part > title,
+reference > title {
+ font-size: 2em;
+ margin: 0.5ex 0;
+ border-width: 2px;
+ border-style: solid;
+ border-color: transparent transparent #004080 transparent;
+}
+
+part > title:before {
+ content: "Part " simple-counter(n-, upper-roman) ": ";
+}
+
+partintro {
+ display: block;
+ /* content of partintro has a margin */
+}
+
+chapter,
+preface {
+ display: block;
+}
+
+chapter > title,
+preface > title {
+ font-size: 2em;
+ margin: 0.5ex 0;
+ border-width: 1px;
+ border-style: solid;
+ border-color: transparent transparent #004080 transparent;
+}
+
+chapter > title:before {
+ content: "Chapter " simple-counter(n-, decimal) ": ";
+}
+
+/* -------------------------------------
+ TOC
+------------------------------------- */
+
+toc {
+ display: block;
+ /* content of toc has a margin */
+}
+
+tocchap,
+tocpart {
+ display: block;
+ margin: 1.33ex 0;
+}
+
+tocfront,
+tocback,
+tocentry {
+ display: block;
+ /* no vertical margins to make it more compact */
+}
+
+toclevel1,
+toclevel2,
+toclevel3,
+toclevel4,
+toclevel5 {
+ display: block;
+ /* no vertical margins to make it more compact */
+}
+
+toclevel2,
+toclevel3,
+toclevel4,
+toclevel5 {
+ margin-left: 4ex;
+}
+
+/* -------------------------------------
+ LOT
+------------------------------------- */
+
+lot {
+ display: block;
+ /* content of lot has a margin */
+}
+
+lotentry {
+ display: block;
+ /* no vertical margins to make it more compact */
+}
+
+/* -------------------------------------
+ Glossary
+------------------------------------- */
+
+glossary,
+glossdiv {
+ display: block;
+ /* content of glossary has a margin */
+}
+
+glosslist {
+ display: block;
+ margin-left: 2ex;
+ margin-top: 1.33ex;
+ margin-bottom: 1.33ex;
+}
+
+glossentry {
+ display: block;
+ /* no vertical margins to make it more compact */
+}
+
+glossterm {
+ display: inline;
+ font-style: italic;
+}
+
+glossentry > acronym,
+glossentry > abbrev,
+glossentry > indexterm,
+glossentry > revhistory {
+ display: block;
+ margin-left: 4ex;
+ margin-top: 0;
+ margin-bottom: 1.33ex;
+}
+
+glossdef,
+glosssee {
+ display: block;
+ margin-left: 4ex;
+ margin-bottom: 1.33ex;
+}
+
+glossdef > *:first-child {
+ margin-top: 0;
+ margin-bottom: 0;
+}
+
+glossseealso {
+ display: block;
+ margin: 1.33ex 0;
+}
+
+glosssee:before,
+glossseealso:before {
+ display: inline;
+ font-size: small;
+ color: #004080;
+}
+
+glosssee:before {
+ content: "See ";
+}
+
+glossseealso:before {
+ content: "See also ";
+}
+
+/* -------------------------------------
+ Index
+------------------------------------- */
+
+index,
+setindex,
+indexdiv {
+ display: block;
+ /* content of index has a margin */
+}
+
+indexentry {
+ display: block;
+ /* no vertical margins to make it more compact */
+}
+
+primaryie,
+secondaryie,
+tertiaryie,
+seeie,
+seealsoie {
+ display: block;
+ /* no vertical margins to make it more compact */
+}
+
+secondaryie {
+ margin-left: 2ex;
+}
+
+tertiaryie {
+ margin-left: 4ex;
+}
+
+seeie,
+seealsoie {
+ margin-left: 6ex;
+}
+
+seeie:before,
+seealsoie:before {
+ display: inline;
+ font-size: small;
+ color: #004080;
+}
+
+seeie:before {
+ content: "See ";
+}
+
+seealsoie:before {
+ content: "See also ";
+}
+
+/* =====================================
+ Paragraphs
+===================================== */
+
+ackno {
+ display: block;
+ margin: 1.33ex 0;
+}
+
+address {
+ display: block;
+ white-space: pre;
+ margin: 1.33ex 0;
+}
+
+street,
+pob,
+postcode,
+city,
+state,
+country,
+phone,
+fax,
+otheraddr {
+ display: inline;
+}
+
+formalpara {
+ display: block;
+ /* content of formalpara has a margin */
+}
+
+/* =====================================
+ Lists
+===================================== */
+
+procedure {
+ display: block;
+ margin-left: 2ex; /* all lists are slightly indented */
+ margin-top: 1.33ex;
+ margin-bottom: 1.33ex;
+}
+
+stepalternatives,
+substeps {
+ display: block;
+}
+
+stepalternatives > *:first-child,
+substeps > *:first-child {
+ margin-top: 0;
+ margin-bottom: 0;
+}
+
+step {
+ display: block;
+ margin-left: 6ex;
+}
+
+step > *:first-child {
+ margin-top: 0;
+ margin-bottom: 0;
+}
+
+step:before {
+ display: marker;
+ content: simple-counter(n, decimal) ".";
+ font-weight: bold;
+ color: #004080;
+}
+
+step step:before {
+ content: simple-counter(n, lower-alpha) ".";
+}
+step step step:before {
+ content: simple-counter(n, decimal) ".";
+}
+step step step step:before {
+ content: simple-counter(n, lower-alpha) ".";
+}
+step step step step step:before {
+ content: simple-counter(n, decimal) ".";
+}
+
+segmentedlist {
+ display: block;
+ margin-left: 2ex;
+ margin-top: 1.33ex;
+ margin-bottom: 1.33ex;
+}
+
+segmentedlist > title {
+ margin-top: 0;
+}
+
+segtitle {
+ display: inline;
+ font-weight: bold;
+ color: #004080;
+}
+
+seglistitem {
+ display: block;
+ margin: 1.33ex 0;
+}
+
+seg {
+ display: inline;
+}
+
+segtitle:before,
+seg:before {
+ content: " ";
+}
+
+segtitle:first-child:before,
+title + segtitle:before,
+seg:first-child:before {
+ content: "";
+}
+
+simplelist { /* also works for type=vert */
+ display: block;
+ margin-left: 2ex;
+ margin-top: 1.33ex;
+ margin-bottom: 1.33ex;
+}
+
+member {
+ display: block;
+}
+
+simplelist[type=inline] > member,
+simplelist[type=horiz] > member {
+ display: inline;
+}
+
+simplelist[type=inline] > member:before {
+ content: ", ";
+ color: gray;
+}
+
+simplelist[type=horiz] > member:before {
+ content: " ";
+}
+
+simplelist[type=inline] > member:first-child:before,
+simplelist[type=horiz] > member:first-child:before {
+ content: "";
+}
+
+/* =====================================
+ Figures
+===================================== */
+
+graphic {
+ display: block;
+ margin: 1.33ex auto;
+}
+
+inlinegraphic {
+ display: inline;
+}
+
+/*
+ * Replaced content of graphic and inlinegraphic
+ * is defined in image.imp.
+ */
+
+equation,
+informalequation {
+ display: block;
+ margin: 1.33ex auto;
+}
+
+equation > title {
+ font-style: italic;
+ font-weight: normal;
+ text-align: center;
+ margin: 0; /* content of equation generally already has a margin */
+}
+
+mathphrase,
+alt {
+ display: block;
+ text-align: center;
+ margin: 1.33ex 0;
+}
+
+mathphrase {
+ font-style: italic;
+}
+
+alt {
+ font-size: small;
+ background-color: #EEEEFF;
+}
+
+inlineequation {
+ display: inline;
+}
+
+inlineequation > mathphrase,
+inlineequation > alt,
+inlineequation > graphic { /* inlineequation > graphic is a DTD bug */
+ display: inline;
+}
+
+screenshot {
+ display: block;
+ /* content of screenshot has a margin */
+}
+
+screeninfo {
+ display: block;
+ margin: 1.33ex 0;
+ font-size: small;
+ background-color: #EEEEFF;
+ text-align: center;
+}
+
+/* -------------------------------------
+ Callouts
+------------------------------------- */
+
+mediaobjectco {
+ display: block;
+ /* content of mediaobjectco has a margin */
+}
+
+graphicco,
+imageobjectco,
+programlistingco,
+screenco {
+ display: block;
+ /* content of graphicco has a margin */
+}
+
+areaspec,
+areaset,
+area {
+ display: tree;
+}
+
+co {
+ display: inline;
+ content: icon(left-half-disc) simple-counter(n) icon(right-half-disc);
+ color: #004080;
+}
+
+coref {
+ display: inline;
+ content: icon(left-half-disc) attr(linkend) icon(right-half-disc);
+ color: #004080;
+}
+
+calloutlist {
+ display: block;
+ margin-left: 2ex;
+ margin-top: 1.33ex;
+ margin-bottom: 1.33ex;
+}
+
+callout {
+ display: block;
+ margin-left: 6ex;
+ margin-top: 1.33ex;
+ margin-bottom: 1.33ex;
+}
+
+callout > *:first-child {
+ margin-top: 0;
+ margin-bottom: 0;
+}
+
+calloutlist > callout:before {
+ display: marker;
+ content: icon(left-half-disc) simple-counter(n) icon(right-half-disc);
+ color: #004080;
+}
+
+/* =====================================
+ Divisions
+===================================== */
+
+highlights {
+ display: block;
+ margin-bottom: 1.33ex;
+ background-color: #F8E0F8;
+ border: thin solid #F880F8;
+ padding: 2px;
+}
+
+highlights:before {
+ display: block;
+ content: element-label();
+ font-weight: bold;
+ color: #E840E8;
+ margin-top: 1.33ex;
+}
+
+/* =====================================
+ Special sections
+===================================== */
+
+/* -------------------------------------
+ Task
+------------------------------------- */
+
+task {
+ display: block;
+ /* content of task has a margin */
+}
+
+tasksummary,
+taskprerequisites,
+taskrelated,
+task > procedure {
+ display: block;
+ margin-left: 2ex;
+ /* content of taskxxx has a margin */
+ margin-top: 0;
+ margin-bottom: 0;
+}
+
+/* -------------------------------------
+ Question-and-answer set
+------------------------------------- */
+
+qandaset,
+qandadiv {
+ display: block;
+ /* content of qandaset has a margin */
+}
+
+qandaentry {
+ display: block;
+ margin: 1.33ex 0;
+}
+
+question,
+answer {
+ display: block;
+ margin-left: 4ex;
+ /* content of question has a margin */
+}
+
+question > *:first-child,
+answer > *:first-child {
+ margin-top: 0;
+ margin-bottom: 0;
+}
+
+question:before,
+answer:before {
+ display: marker;
+ color: #004080;
+ font-weight: bold;
+}
+
+question:before {
+ content: "Q:";
+}
+
+answer:before {
+ content: "A:";
+}
+
+label {
+ display: block;
+ margin: 1.33ex 0;
+ color: #004080;
+ font-weight: bold;
+}
+
+/* -------------------------------------
+ Set of messages
+------------------------------------- */
+
+msgset {
+ display: block;
+ /* content of msgset has a margin */
+}
+
+msgentry,
+simplemsgentry {
+ display: block;
+ margin: 1.33ex 0;
+ border: thin solid gray;
+ padding: 2px;
+}
+
+msg,
+msgmain,
+msgsub,
+msgrel,
+msgtext,
+msgexplan,
+msginfo {
+ display: block;
+ margin-left: 10ex;
+ /* content of msg has a margin */
+}
+
+msg > *:first-child,
+msgmain > *:first-child,
+msgsub > *:first-child,
+msgrel > *:first-child,
+msgtext > *:first-child,
+msgexplan > *:first-child,
+msginfo > *:first-child {
+ margin-top: 0;
+ margin-bottom: 0;
+}
+
+msg:before,
+msgmain:before,
+msgsub:before,
+msgrel:before,
+simplemsgentry > msgtext:before,
+msgexplan:before,
+msginfo:before {
+ display: marker;
+ content: element-label();
+ font-size: small;
+ color: #004080;
+}
+
+msglevel,
+msgorig,
+msgaud {
+ display: inline;
+}
+
+msglevel:before,
+msgorig:before,
+msgaud:before {
+ content: icon(left-half-disc) element-local-name() " ";
+ font-size: small;
+ color: gray;
+}
+
+msglevel:after,
+msgorig:after,
+msgaud:after {
+ content: icon(right-half-disc);
+ color: gray;
+}
+
+/* -------------------------------------
+ Bibliography
+ (complements docbook2.imp)
+------------------------------------- */
+
+bibliocoverage,
+bibliorelation,
+bibliosource {
+ display: inline;
+}
+
+biblioid,
+isbn,
+issn,
+pubsnumber {
+ display: inline;
+}
+
+citebiblioid {
+ display: inline;
+}
+
+biblioref {
+ content: attr(linkend) icon(right-link);
+ vertical-align: text-top; /* for the icon */
+ color: navy;
+}
+
+/* -------------------------------------
+ Meta-information
+ (complements docbook2.imp)
+------------------------------------- */
+
+artpagenums,
+pagenums,
+seriesvolnums,
+invpartnumber {
+ display: inline;
+}
+
+itermset {
+ /* Could be block but inline is safer when used in strange places
+ and when used in meta-info, display is forced to be block. */
+ display: inline;
+}
+
+collab {
+ display: block; /* can contain affiliation */
+ margin: 1.33ex 0;
+}
+
+collabname {
+ display: inline;
+}
+
+confgroup {
+ display: block; /* can contain address */
+ margin: 1.33ex 0;
+}
+
+confdates,
+conftitle,
+confnum,
+confsponsor {
+ display: inline;
+}
+
+confdates:after,
+conftitle:after,
+confnum:after,
+confsponsor:after {
+ content: " ";
+}
+
+contractnum,
+contractsponsor {
+ display: inline;
+}
+
+publisher {
+ display: block; /* can contain address */
+ margin: 1.33ex 0;
+}
+
+printhistory {
+ display: block;
+ /* content of printhistory has a margin */
+}
+
+/* =====================================
+ Other elements
+===================================== */
+
+bridgehead {
+ display: block;
+ font-weight: bold;
+ color: #004080;
+ margin: 1.33ex 0;
+}
+
+bridgehead[renderas=sect1] {
+ font-size: 1.5em;
+ margin: .83ex 0;
+}
+
+bridgehead[renderas=sect2] {
+ font-size: 1.3em;
+ margin: 1ex 0;
+}
+
+/* ---------------------------------------------------------------------------
+ Inlined elements other than those belonging to modules
+
+ Note that default display is inline, so there is no need to specify it.
+--------------------------------------------------------------------------- */
+
+/* -------------------------------------
+ Technical
+------------------------------------- */
+
+keycombo {
+ display: inline;
+}
+
+keycombo > *:before {
+ content: icon(plus);
+ color: gray;
+}
+
+keycombo[action] > *:before {
+ content: " ";
+}
+
+keycombo[action=simul] > *:before {
+ content: icon(plus);
+}
+
+keycombo > *:first-child:before {
+ content: "";
+}
+
+keycap,
+keysym,
+mousebutton {
+ font-weight: bold;
+}
+
+keycode {
+ font-family: monospace;
+}
+
+menuchoice {
+ display: inline;
+}
+
+menuchoice > *:before {
+ content: icon(pop-right);
+ color: gray;
+}
+
+menuchoice > *:first-child:before,
+menuchoice > shortcut + *:before {
+ content: "";
+}
+
+shortcut {
+ display: inline;
+}
+
+/* shortcut:before should be enough but this selector makes this rule more
+ specific than the above one */
+
+menuchoice > shortcut:first-child:before {
+ content: "(";
+ color: gray;
+}
+
+shortcut:after {
+ content: ") ";
+ color: gray;
+}
+
+shortcut > *:before {
+ content: " ";
+}
+
+shortcut > *:first-child:before {
+ content: "";
+}
+
+guimenu,
+guisubmenu,
+guimenuitem,
+guibutton,
+guilabel,
+guiicon,
+accel,
+interface {
+ font-weight: bold;
+}
+
+accel {
+ text-decoration: underline;
+}
+
+action {
+ display: inline;
+}
+
+application,
+hardware,
+database,
+productnumber {
+ display: inline;
+}
+
+medialabel {
+ font-weight: bold;
+}
+
+package,
+uri,
+code,
+constant,
+envar,
+markup,
+prompt,
+property,
+sgmltag,
+token,
+type,
+function,
+parameter,
+varname,
+returnvalue,
+errorcode,
+errorname,
+errortext,
+errortype,
+exceptionname,
+classname,
+methodname,
+interfacename,
+structfield,
+structname,
+symbol {
+ font-family: monospace;
+}
+
+optional {
+ display: inline;
+}
+synopsis > optional:before {
+ content: "[";
+ color: gray;
+}
+synopsis > optional:after {
+ content: "]";
+ color: gray;
+}
+
+sgmltag:before,
+sgmltag:after {
+ color: gray;
+}
+
+sgmltag[class=attvalue]:before {
+ content: '"';
+}
+sgmltag[class=attvalue]:after {
+ content: '"';
+}
+
+sgmltag[class=starttag]:before,
+sgmltag[class=emptytag]:before {
+ content: "<";
+}
+sgmltag[class=endtag]:before {
+ content: "</";
+}
+sgmltag[class=endtag]:after,
+sgmltag[class=starttag]:after {
+ content: ">";
+}
+sgmltag[class=emptytag]:after {
+ content: "/>";
+}
+
+sgmltag[class=pi]:before,
+sgmltag[class=xmlpi]:before {
+ content: "<?";
+}
+sgmltag[class=pi]:after,
+sgmltag[class=xmlpi]:after {
+ content: "?>";
+}
+
+sgmltag[class=sgmlcomment]:before {
+ content: "<!--";
+}
+sgmltag[class=sgmlcomment]:after {
+ content: "-->";
+}
+
+sgmltag[class=paramentity]:before {
+ content: "%";
+}
+sgmltag[class=genentity]:before {
+ content: "&";
+}
+sgmltag[class=numcharref]:before {
+ content: "&#";
+}
+sgmltag[class=paramentity]:after,
+sgmltag[class=genentity]:after,
+sgmltag[class=numcharref]:after {
+ content: ";";
+}
+
+/* -------------------------------------
+ General
+------------------------------------- */
+
+remark {
+ font-style: italic;
+ color: #880000;
+}
+
+firstterm,
+foreignphrase {
+ font-style: italic;
+}
+
+citation:before {
+ content: "[";
+ color: gray;
+}
+
+citation:after {
+ content: "]";
+ color: gray;
+}
+
+wordasword {
+ font-family: sans-serif;
+ font-size: medium;
+ font-style: normal;
+ font-weight: normal;
+ color: black;
+}
+
+olink {
+ color: navy;
+ text-decoration: underline;
+}
+
+olink:after {
+ vertical-align: text-top; /* for the icon */
+}
+
+olink[targetdoc]:after {
+ content: icon(left-link) attr(targetdoc);
+}
+
+olink[targetdoc][targetptr]:after {
+ content: icon(left-link) attr(targetdoc) ":" attr(targetptr);
+}
+
+modespec {
+ display: inline;
+}
+
+indexterm,
+primary,
+secondary,
+tertiary,
+see,
+seealso {
+ display: inline;
+ font-size: small;
+}
+
+indexterm:before {
+ content: icon(left-half-disc);
+ color: gray;
+}
+
+indexterm:after {
+ content: icon(right-half-disc);
+ color: gray;
+}
+
+indexterm[class=startofrange][id]:before {
+ content: icon(left-half-disc) attr(id) icon(half-disc-separator);
+}
+
+indexterm[class=startofrange][xml|id]:before {
+ content: icon(left-half-disc) attr(xml|id) icon(half-disc-separator);
+}
+
+indexterm[class=endofrange]:after {
+ content: icon(half-disc-separator) attr(startref) icon(right-half-disc);
+}
+
+indexterm > *:before {
+ content: "; ";
+ color: gray;
+ font-weight: bold;
+}
+
+indexterm > see:before {
+ content: " see ";
+}
+
+indexterm > seealso:before {
+ content: " see also ";
+}
+
+indexterm > *:first-child:before {
+ content: "";
+}
+
+termdef {
+ display: inline;
+}
+
+termdef:before {
+ content: icon(right) element-local-name() " ";
+ color: gray;
+}
+
+termdef:after {
+ content: icon(left);
+ color: gray;
+}
+
+/* -------------------------------------
+ Other
+------------------------------------- */
+
+beginpage {
+ display: inline;
+ content: url(icons/beginpage.png);
+}
+
+sbr {
+ display: inline;
+ content: "\A";
+ color: gray;
+}
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/css/docbook2.imp b/doc/editor_configs/xmlmind/addon/config/scons/css/docbook2.imp
new file mode 100644
index 0000000..d558ca7
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/css/docbook2.imp
@@ -0,0 +1,1292 @@
+/*
+ * Copyright (c) 2003-2010 Pixware.
+ *
+ * This file is part of the XMLmind XML Editor project.
+ * For conditions of distribution and use, see the accompanying legal.txt file.
+ *
+ * Styles for elements found in Simplified DocBook
+ * (and closely related elements even if not found in Simplified DocBook).
+ */
+
+/* =====================================
+ Article structure
+===================================== */
+
+sconsdoc,
+article {
+ display: block;
+}
+
+article > title {
+ font-size: 2em;
+ margin: 0.5ex 0;
+ border-width: 1px;
+ border-style: solid;
+ border-color: transparent transparent #004080 transparent;
+}
+
+title,
+subtitle,
+titleabbrev {
+ display: block;
+ color: #004080;
+ margin: 1.33ex 0;
+}
+
+title,
+subtitle {
+ font-weight: bold;
+}
+
+/* -------------------------------------
+ Sections
+------------------------------------- */
+
+section,
+sect1,
+sect2,
+sect3,
+sect4,
+sect5,
+simplesect {
+ display: block;
+}
+
+tool,
+builder,
+scons_function,
+cvar {
+ display: block;
+}
+
+sconsdoc > tool:before {
+ color: #004080;
+ font-size: 1.5em;
+ margin: .83ex 0;
+ display: block;
+ content: "Tool '" attr(name) "'";
+}
+
+sconsdoc > builder:before {
+ color: #004080;
+ font-size: 1.5em;
+ margin: .83ex 0;
+ display: block;
+ content: "Builder '" attr(name) "'";
+}
+
+sconsdoc > scons_function:before {
+ color: #004080;
+ font-size: 1.5em;
+ margin: .83ex 0;
+ display: block;
+ content: "Function '" attr(name) "'";
+}
+
+sconsdoc > cvar:before {
+ color: #004080;
+ font-size: 1.5em;
+ margin: .83ex 0;
+ display: block;
+ content: "CVar '" attr(name) "'";
+}
+
+cvar > summary:before,
+scons_function > summary:before,
+builder > summary:before,
+tool > summary:before {
+ font-size: 1.3em;
+ font-weight: bold;
+ margin: .83ex 0;
+ display: block;
+ content: "Summary: ";
+}
+
+scons_function > arguments:before {
+ font-size: 1.2em;
+ margin: .83ex 0;
+ display: block;
+ content: "Arguments";
+}
+
+section > title,
+sect1 > title {
+ font-size: 1.5em;
+ margin: .83ex 0;
+}
+
+section > title:before,
+sect1 > title:before {
+ content: simple-counter(n-) " ";
+}
+
+section section > title,
+sect2 > title {
+ font-size: 1.3em;
+ margin: 1ex 0;
+}
+
+section * section > title {
+ font-size: 1em;
+ margin: 1.33ex 0;
+}
+
+section section > title:before,
+sect2 > title:before {
+ content: simple-counter(nn-) " ";
+}
+
+section section section > title:before,
+sect3 > title:before {
+ content: simple-counter(nnn-) " ";
+}
+
+section section section section > title:before,
+sect4 > title:before {
+ content: simple-counter(nnnn-) " ";
+}
+
+section section section * section > title:before {
+ content: "";
+}
+
+/* -------------------------------------
+ Appendix
+------------------------------------- */
+
+appendix {
+ display: block;
+}
+
+appendix > title { /* in a book or in a part */
+ font-size: 2em;
+ margin: 0.5ex 0;
+ border-width: 1px;
+ border-style: solid;
+ border-color: transparent transparent #004080 transparent;
+}
+
+article > appendix > title {
+ font-size: 1.5em;
+ margin: 0.83ex 0;
+ border-width: 0;
+ border-style: none;
+}
+
+appendix > title:before {
+ content: "Appendix " simple-counter(n-, upper-alpha) ": ";
+}
+
+/* =====================================
+ Paragraphs
+===================================== */
+
+para,
+simpara {
+ display: block;
+ margin: 1.33ex 0;
+}
+
+/* =====================================
+ Lists
+===================================== */
+
+/* -------------------------------------
+ itemizedlist
+------------------------------------- */
+
+uses,
+sets,
+itemizedlist {
+ display: block;
+ margin-left: 2ex; /* all lists are slightly indented */
+ margin-top: 1.33ex;
+ margin-bottom: 1.33ex;
+}
+
+listitem {
+ display: block;
+ margin-top: 1.33ex;
+ margin-bottom: 1.33ex;
+}
+
+uses[spacing=compact] > listitem,
+sets[spacing=compact] > listitem,
+itemizedlist[spacing=compact] > listitem,
+orderedlist[spacing=compact] > listitem {
+ margin-top: 0;
+ margin-bottom: 0;
+}
+
+listitem > *:first-child {
+ margin-top: 0;
+ margin-bottom: 0;
+}
+
+uses > listitem,
+sets > listitem,
+itemizedlist > listitem {
+ margin-left: 2.5ex;
+}
+
+uses > listitem:before,
+sets > listitem:before,
+itemizedlist > listitem:before {
+ display: marker;
+ content: disc;
+ color: #004080;
+}
+
+itemizedlist > listitem itemizedlist > listitem:before {
+ content: square;
+}
+
+itemizedlist > listitem itemizedlist > listitem itemizedlist >
+listitem:before {
+ content: icon(diamond);
+}
+
+itemizedlist > listitem itemizedlist > listitem itemizedlist >
+listitem itemizedlist > listitem:before {
+ content: circle;
+}
+
+/* -------------------------------------
+ orderedlist
+------------------------------------- */
+
+orderedlist {
+ display: block;
+ margin-left: 2ex;
+ margin-top: 1.33ex;
+ margin-bottom: 1.33ex;
+ counter-reset: item;
+}
+
+orderedlist[continuation=continues] {
+ counter-reset: none;
+}
+
+orderedlist > listitem {
+ margin-left: 6ex;
+ counter-increment: item;
+}
+
+orderedlist > listitem:before {
+ display: marker;
+ content: counter(item, decimal) ".";
+ font-weight: bold;
+ color: #004080;
+}
+
+orderedlist[numeration=loweralpha] > listitem:before {
+ content: counter(item, lower-alpha) ".";
+}
+
+orderedlist[numeration=upperalpha] > listitem:before {
+ content: counter(item, upper-alpha) ".";
+}
+
+orderedlist[numeration=lowerroman] > listitem:before {
+ content: counter(item, lower-roman) ".";
+}
+
+orderedlist[numeration=upperroman] > listitem:before {
+ content: counter(item, upper-roman) ".";
+}
+
+orderedlist[inheritnum=inherit] > listitem:before,
+orderedlist[inheritnum=inherit][numeration=arabic] > listitem:before {
+ content: counters(item, ".", decimal) ".";
+}
+
+orderedlist[inheritnum=inherit][numeration=loweralpha] > listitem:before {
+ content: counters(item, ".", lower-alpha) ".";
+}
+
+orderedlist[inheritnum=inherit][numeration=upperalpha] > listitem:before {
+ content: counters(item, ".", upper-alpha) ".";
+}
+
+orderedlist[inheritnum=inherit][numeration=lowerroman] > listitem:before {
+ content: counters(item, ".", lower-roman) ".";
+}
+
+orderedlist[inheritnum=inherit][numeration=upperroman] > listitem:before {
+ content: counters(item, ".", upper-roman) ".";
+}
+
+/* -------------------------------------
+ variablelist
+------------------------------------- */
+
+variablelist {
+ display: block;
+ margin-left: 2ex;
+ margin-top: 1.33ex;
+ margin-bottom: 1.33ex;
+}
+
+varlistentry {
+ display: block;
+ margin-top: 1.33ex;
+ margin-bottom: 1.33ex;
+}
+
+variablelist[spacing=compact] > varlistentry {
+ margin-top: 0;
+ margin-bottom: 0;
+}
+
+term {
+ display: block;
+ font-weight: bold;
+}
+
+varlistentry > listitem {
+ margin-left: 4ex;
+ margin-top: 0;
+ margin-bottom: 0;
+}
+
+/* =====================================
+ Figures
+===================================== */
+
+programlisting,
+screen,
+scons_example,
+scons_example_file,
+example_commands,
+sconstruct,
+scons_output,
+scons_output_command,
+file,
+directory,
+literallayout,
+synopsis {
+ display: block;
+ white-space: pre;
+ font-family: monospace;
+ margin: 1.33ex 0;
+}
+
+example_commands,
+programlisting {
+ background-color: #EEEEEE;
+ border: thin solid gray;
+ padding: 2px;
+}
+
+scons_example,
+sconstruct,
+scons_output {
+ background-color: #94CAEE;
+ border: thin solid gray;
+ padding: 2px;
+}
+
+file,
+directory,
+scons_example_file {
+ background-color: #EED27B;
+}
+
+screen {
+ background-color: #EEEEFF;
+ border: thin solid #8888FF;
+ padding: 2px;
+}
+
+figure,
+informalfigure,
+example,
+informalexample {
+ display: block;
+ margin: 1.33ex auto;
+}
+
+figure > title,
+example > title {
+ font-style: italic;
+ font-weight: normal;
+ text-align: center;
+ margin: 0; /* content of figure generally already has a margin */
+}
+
+mediaobject {
+ display: table;
+ border-spacing: 2px;
+ margin: 1.33ex auto;
+}
+
+inlinemediaobject {
+ display: inline-table;
+ border-spacing: 2px;
+}
+
+caption {
+ display: table-caption;
+ color: #004080;
+ font-style: italic;
+ font-weight: normal;
+ text-align: center;
+ /* content of caption already has a margin */
+}
+
+audioobject,
+videoobject,
+imageobject,
+textobject {
+ display: table-cell; /* this will create one row per cell */
+ text-align: center;
+}
+
+objectinfo {
+ text-align: left;
+}
+
+mediaobject > objectinfo {
+ display: table-cell;
+}
+
+audiodata {
+ display: inline;
+ content: url(icons/audio.png);
+}
+
+videodata {
+ display: inline;
+ content: url(icons/video.png);
+}
+
+/*
+ * imagedata is defined in image.imp.
+ */
+
+textdata {
+ display: inline;
+ content: url(icons/text.png);
+}
+
+/* =====================================
+ Divisions
+===================================== */
+
+abstract {
+ display: block;
+ margin-left: 18ex;
+ margin-top: 1.33ex;
+ margin-bottom: 1.33ex;
+}
+
+abstract > *:first-child {
+ margin-top: 0;
+ margin-bottom: 0;
+}
+
+abstract:before {
+ display: marker;
+ content: element-label();
+ font-weight: bold;
+ color: #004080;
+}
+
+blockquote,
+epigraph {
+ display: block;
+ margin: 1.33ex 10ex;
+}
+
+blockquote > title {
+ font-style: italic;
+ font-weight: normal;
+ text-align: center;
+ margin: 0; /* content of blockquote already has a margin */
+}
+
+attribution {
+ display: block;
+ text-align: right;
+}
+
+attribution:before {
+ content: " -- ";
+}
+
+footnote {
+ display: block;
+ margin-left: 18ex;
+ margin-top: 1.33ex;
+ margin-bottom: 1.33ex;
+ margin-right: 10ex;
+ font-size: small;
+ padding: 2px;
+ background-color: #F0F0FF;
+}
+
+footnote > *:first-child {
+ margin-top: 0;
+ margin-bottom: 0;
+}
+
+footnote:before {
+ display: marker;
+ content: element-label();
+ color: #004080;
+}
+
+footnote[label]:before {
+ content: "[" attr(label) "]";
+}
+
+note,
+caution,
+important,
+tip,
+warning {
+ display: block;
+ margin-left: 18ex;
+ margin-top: 1.33ex;
+ margin-bottom: 1.33ex;
+}
+
+note > *:first-child,
+caution > *:first-child,
+important > *:first-child,
+tip > *:first-child,
+warning > *:first-child {
+ margin-top: 0;
+ margin-bottom: 0;
+}
+
+note:before,
+caution:before,
+important:before,
+tip:before,
+warning:before {
+ display: marker;
+ content: element-label();
+ font-weight: bold;
+ color: #004080;
+}
+
+sidebar {
+ display: block;
+ margin: 1.33ex 0;
+ border: thin solid #80F880;
+ background-color: #E0F8E0;
+ padding: 2px;
+}
+
+sidebar > title {
+ margin: 0; /* content of sidebar already has a margin */
+}
+
+/* =====================================
+ Special sections
+===================================== */
+
+/* -------------------------------------
+ Bibliography
+ (complemented in docbook1.imp)
+------------------------------------- */
+
+bibliography,
+bibliodiv,
+bibliolist {
+ display: block;
+ /* content of bibliography has a margin */
+}
+
+bibliomixed,
+bibliomset,
+biblioentry,
+biblioset {
+ display: block;
+ margin: 1.33ex 0;
+}
+
+bibliomixed,
+biblioentry {
+ border: thin solid gray;
+ padding: 2px;
+}
+
+bibliomixed > title,
+bibliomixed > subtitle,
+bibliomixed > titleabbrev,
+bibliomset > title,
+bibliomset > subtitle,
+bibliomset > titleabbrev,
+biblioentry > title,
+biblioentry > subtitle,
+biblioentry > titleabbrev,
+biblioset > title,
+biblioset > subtitle,
+biblioset > titleabbrev {
+ /* title of a bibliography entry, not ``caption'' of a formal block */
+ font-weight: normal;
+ font-size: 1em;
+ color: black;
+}
+
+bibliomixed > title,
+bibliomixed > subtitle,
+bibliomixed > titleabbrev,
+bibliomset > title,
+bibliomset > subtitle,
+bibliomset > titleabbrev {
+ display: inline;
+}
+
+bibliomixed > title,
+bibliomixed > subtitle,
+bibliomset > title,
+bibliomset > subtitle {
+ font-style: italic;
+}
+
+bibliomisc {
+ display: inline;
+}
+
+/* -------------------------------------
+ Meta-information
+ (complemented in docbook1.imp)
+------------------------------------- */
+
+appendixinfo,
+articleinfo,
+bibliographyinfo,
+blockinfo,
+bookinfo,
+chapterinfo,
+glossaryinfo,
+indexinfo,
+objectinfo,
+partinfo,
+prefaceinfo,
+refentryinfo,
+refmeta,
+referenceinfo,
+refsect1info,
+refsect2info,
+refsect3info,
+refsectioninfo,
+refsynopsisdivinfo,
+sect1info,
+sect2info,
+sect3info,
+sect4info,
+sect5info,
+sectioninfo,
+setindexinfo,
+setinfo,
+sidebarinfo {
+ display: block;
+ margin: 1.33ex 0;
+ border: thin solid #C0F8F8;
+ background-color: #E0F8F8;
+ padding: 2px;
+}
+
+authorgroup {
+ display: block;
+ /* content of authorgroup has a margin */
+}
+
+author,
+editor,
+othercredit {
+ display: block; /* can contain authorblurb, address */
+ margin: 1.33ex 0;
+}
+
+personname {
+ display: inline;
+}
+
+honorific,
+firstname,
+surname,
+lineage,
+othername {
+ display: inline;
+}
+
+honorific:after,
+firstname:after,
+surname:after,
+lineage:after,
+othername:after {
+ content: " ";
+}
+
+contrib {
+ display: inline;
+}
+
+authorblurb,
+personblurb {
+ display: block;
+ /* content of authorblurb has a margin */
+}
+
+corpauthor,
+corpname {
+ /* Could be block but inline is safer when used in strange places
+ and when used in meta-info, display is forced to be block. */
+ display: inline;
+}
+
+affiliation {
+ display: block; /* can contain address */
+ margin: 1.33ex 0;
+}
+
+shortaffil,
+jobtitle,
+orgname,
+orgdiv {
+ display: inline;
+}
+
+shortaffil:after,
+affiliation > jobtitle:after,
+affiliation > orgname:after,
+orgdiv:after {
+ content: " ";
+}
+
+copyright {
+ display: inline;
+}
+
+year,
+holder {
+ display: inline;
+}
+
+year:after,
+holder:after {
+ content: " ";
+}
+
+date,
+pubdate {
+ display: inline;
+}
+
+edition {
+ display: inline;
+}
+
+issuenum {
+ display: inline;
+}
+
+keywordset,
+subjectset {
+ display: inline;
+}
+
+keyword,
+subject,
+subjectterm {
+ display: inline;
+}
+
+keyword:after,
+subjectterm:after {
+ content: " ";
+}
+
+legalnotice {
+ display: block;
+ /* content of legalnotice has a margin */
+}
+
+publishername {
+ display: inline;
+}
+
+releaseinfo {
+ display: inline;
+}
+
+revhistory {
+ display: block;
+ margin: 1.33ex 0;
+}
+
+revision {
+ display: block;
+ margin-left: 2.5ex;
+}
+
+revision:before {
+ display: marker;
+ content: icon(right);
+ color: #004080;
+}
+
+revision > author,
+authorinitials {
+ display: inline;
+ font-weight: bold;
+}
+
+revnumber,
+revremark {
+ display: inline;
+}
+
+revnumber:after,
+revision > date:after,
+revision > author:after,
+revision > authorinitials:after {
+ content: " ";
+}
+
+revdescription {
+ display: block;
+ /* content of revdescription has a margin */
+}
+
+volumenum {
+ display: inline;
+}
+
+/* ---------------------------------------------------------------------------
+ Inlined elements other than those belonging to modules
+
+ Note that default display is inline, so there is no need to specify it.
+--------------------------------------------------------------------------- */
+
+emphasis {
+ font-style: italic;
+}
+emphasis[role=bold] {
+ font-style: normal;
+ font-weight: bold;
+}
+emphasis[role=underline] {
+ font-style: normal;
+ text-decoration: underline;
+}
+emphasis[role=strikethrough] {
+ font-style: normal;
+ text-decoration: line-through;
+}
+
+emphasis > emphasis {
+ font-style: normal;
+ font-weight: normal;
+ text-decoration: none;
+}
+
+directory,
+literal {
+ font-family: monospace;
+}
+
+link,
+ulink,
+email {
+ color: navy;
+ text-decoration: underline;
+}
+
+/* -------------------------------------
+ Technical
+------------------------------------- */
+
+command,
+computeroutput,
+filename,
+option,
+systemitem,
+userinput {
+ font-family: monospace;
+}
+
+computeroutput,
+userinput {
+ background-color: #EEEEEE;
+}
+
+command,
+option {
+ font-weight: bold;
+}
+
+lineannotation {
+ font-style: italic;
+ font-size: medium; /* occurs in verbatim, fixed font, blocks */
+}
+
+replaceable {
+ font-style: italic;
+}
+
+/* -------------------------------------
+ General
+------------------------------------- */
+
+anchor {
+ content: icon(right-target);
+ color: gray;
+}
+
+subscript,
+superscript {
+ display: inline-block;
+ white-space: nowrap;
+ font-size: small;
+}
+subscript {
+ vertical-align: sub;
+}
+superscript {
+ vertical-align: super;
+}
+
+abbrev,
+acronym {
+ font-weight: bold;
+}
+
+citetitle {
+ font-style: italic;
+}
+
+footnoteref {
+ content: "[" attr(linkend) "]";
+ font-size: small;
+ vertical-align: super;
+ color: navy;
+}
+
+footnoteref[label] {
+ content: "[" attr(label) "]";
+}
+
+phrase[revisionflag=deleted] {
+ text-decoration: line-through;
+}
+
+phrase[revisionflag=added] {
+ text-decoration: underline;
+}
+
+quote:before {
+ content: open-quote;
+ font-weight: bold;
+ color: gray;
+}
+
+quote:after {
+ content: close-quote;
+ font-weight: bold;
+ color: gray;
+}
+
+trademark,
+productname {
+ color: #004080;
+}
+
+trademark:after,
+productname:after {
+ font-size: small;
+ color: gray;
+}
+
+trademark:after, /* also works for class=trade */
+productname[class=trade]:after {
+ content: "[tm]";
+}
+
+trademark[class=copyright]:after,
+productname[class=copyright]:after {
+ content: "\A9";
+ font-size: medium;
+}
+
+trademark[class=registered]:after,
+productname[class=registered]:after {
+ content: "\AE";
+ font-size: medium;
+}
+
+trademark[class=service]:after,
+productname[class=service]:after {
+ content: "[sm]";
+}
+
+xref {
+ content: icon(left-link)
+ xpath("if(id(@linkend)/@xreflabel, id(@linkend)/@xreflabel, @linkend)");
+ vertical-align: text-top; /* for the icon */
+ color: navy;
+}
+
+xref[endterm] {
+ content: icon(left-link) xpath("if(id(@endterm), id(@endterm), @endterm)");
+}
+
+/* ---------------------------------------------------------------------------
+ Overrides natural display of elements in special sections
+ (must be at the very end of the style sheet)
+--------------------------------------------------------------------------- */
+
+/* -------------------------------------
+ Bibliography
+------------------------------------- */
+
+biblioentry > *,
+biblioset > * {
+ display: block;
+ text-align: left; /* Reset paragraph styles */
+ font: normal normal 1em sans-serif;
+ color: black;
+ margin-left: 18ex;
+ margin-top: 1.33ex;
+ margin-bottom: 1.33ex;
+}
+
+biblioentry > *:first-child,
+biblioset > *:first-child { /* nicer */
+ margin-top: 0;
+ margin-bottom: 0;
+}
+
+biblioentry > *:before,
+biblioset > *:before {
+ display: marker;
+ content: element-label();
+ font: normal normal small sans-serif;
+ color: #004080;
+}
+
+biblioentry > *:after,
+biblioset > *:after {
+ content: "";
+}
+
+biblioentry > biblioset,
+biblioset > biblioset {
+ margin-left: 0;
+}
+
+biblioentry > biblioset:before,
+biblioset > biblioset:before {
+ content: "";
+}
+
+/* -------------------------------------
+ Meta-information
+------------------------------------- */
+
+appendixinfo > *,
+articleinfo > *,
+bibliographyinfo > *,
+blockinfo > *,
+bookinfo > *,
+chapterinfo > *,
+glossaryinfo > *,
+indexinfo > *,
+objectinfo > *,
+partinfo > *,
+prefaceinfo > *,
+refentryinfo > *,
+refmeta > *,
+referenceinfo > *,
+refsect1info > *,
+refsect2info > *,
+refsect3info > *,
+refsectioninfo > *,
+refsynopsisdivinfo > *,
+sect1info > *,
+sect2info > *,
+sect3info > *,
+sect4info > *,
+sect5info > *,
+sectioninfo > *,
+setindexinfo > *,
+setinfo > *,
+sidebarinfo > * {
+ display: block;
+ text-align: left; /* Reset paragraph styles */
+ font: normal normal 1em sans-serif;
+ color: black;
+ margin-left: 18ex;
+ margin-right: 0;
+ margin-top: 1.33ex;
+ margin-bottom: 1.33ex;
+}
+
+appendixinfo > *:first-child,
+articleinfo > *:first-child,
+bibliographyinfo > *:first-child,
+blockinfo > *:first-child,
+bookinfo > *:first-child,
+chapterinfo > *:first-child,
+glossaryinfo > *:first-child,
+indexinfo > *:first-child,
+objectinfo > *:first-child,
+partinfo > *:first-child,
+prefaceinfo > *:first-child,
+refentryinfo > *:first-child,
+refmeta > *:first-child,
+referenceinfo > *:first-child,
+refsect1info > *:first-child,
+refsect2info > *:first-child,
+refsect3info > *:first-child,
+refsectioninfo > *:first-child,
+refsynopsisdivinfo > *:first-child,
+sect1info > *:first-child,
+sect2info > *:first-child,
+sect3info > *:first-child,
+sect4info > *:first-child,
+sect5info > *:first-child,
+sectioninfo > *:first-child,
+setindexinfo > *:first-child,
+setinfo > *:first-child,
+sidebarinfo > *:first-child { /* nicer */
+ margin-top: 0;
+ margin-bottom: 0;
+}
+
+appendixinfo > *:before,
+articleinfo > *:before,
+bibliographyinfo > *:before,
+blockinfo > *:before,
+bookinfo > *:before,
+chapterinfo > *:before,
+glossaryinfo > *:before,
+indexinfo > *:before,
+objectinfo > *:before,
+partinfo > *:before,
+prefaceinfo > *:before,
+refentryinfo > *:before,
+refmeta > *:before,
+referenceinfo > *:before,
+refsect1info > *:before,
+refsect2info > *:before,
+refsect3info > *:before,
+refsectioninfo > *:before,
+refsynopsisdivinfo > *:before,
+sect1info > *:before,
+sect2info > *:before,
+sect3info > *:before,
+sect4info > *:before,
+sect5info > *:before,
+sectioninfo > *:before,
+setindexinfo > *:before,
+setinfo > *:before,
+sidebarinfo > *:before {
+ display: marker;
+ content: element-label();
+ font: normal normal small sans-serif;
+ color: #004080;
+}
+
+appendixinfo > *:after,
+articleinfo > *:after,
+bibliographyinfo > *:after,
+blockinfo > *:after,
+bookinfo > *:after,
+chapterinfo > *:after,
+glossaryinfo > *:after,
+indexinfo > *:after,
+objectinfo > *:after,
+partinfo > *:after,
+prefaceinfo > *:after,
+refentryinfo > *:after,
+refmeta > *:after,
+referenceinfo > *:after,
+refsect1info > *:after,
+refsect2info > *:after,
+refsect3info > *:after,
+refsectioninfo > *:after,
+refsynopsisdivinfo > *:after,
+sect1info > *:after,
+sect2info > *:after,
+sect3info > *:after,
+sect4info > *:after,
+sect5info > *:after,
+sectioninfo > *:after,
+setindexinfo > *:after,
+setinfo > *:after,
+sidebarinfo > *:after {
+ content: "";
+}
+
+appendixinfo > title,
+articleinfo > title,
+bibliographyinfo > title,
+blockinfo > title,
+bookinfo > title,
+chapterinfo > title,
+glossaryinfo > title,
+indexinfo > title,
+objectinfo > title,
+partinfo > title,
+prefaceinfo > title,
+refentryinfo > title, /* refmeta has no title */
+referenceinfo > title,
+refsect1info > title,
+refsect2info > title,
+refsect3info > title,
+refsectioninfo > title,
+refsynopsisdivinfo > title,
+sect1info > title,
+sect2info > title,
+sect3info > title,
+sect4info > title,
+sect5info > title,
+sectioninfo > title,
+setindexinfo > title,
+setinfo > title,
+sidebarinfo > title {
+ font-size: 1.3em;
+ font-weight: bold;
+ color: #004080;
+ margin-left: 0;
+ margin-right: 0;
+ margin-top: 0;
+ margin-bottom: 1ex;
+}
+
+appendixinfo > title:before,
+articleinfo > title:before,
+bibliographyinfo > title:before,
+blockinfo > title:before,
+bookinfo > title:before,
+chapterinfo > title:before,
+glossaryinfo > title:before,
+indexinfo > title:before,
+objectinfo > title:before,
+partinfo > title:before,
+prefaceinfo > title:before,
+refentryinfo > title:before,
+referenceinfo > title:before,
+refsect1info > title:before,
+refsect2info > title:before,
+refsect3info > title:before,
+refsectioninfo > title:before,
+refsynopsisdivinfo > title:before,
+sect1info > title:before,
+sect2info > title:before,
+sect3info > title:before,
+sect4info > title:before,
+sect5info > title:before,
+sectioninfo > title:before,
+setindexinfo > title:before,
+setinfo > title:before,
+sidebarinfo > title:before {
+ content: "";
+}
+
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/css/example1.css b/doc/editor_configs/xmlmind/addon/config/scons/css/example1.css
new file mode 100644
index 0000000..857d561
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/css/example1.css
@@ -0,0 +1,20 @@
+/*
+ * Copyright (c) 2003-2008 Pixware.
+ *
+ * This file is part of the XMLmind XML Editor project.
+ * For conditions of distribution and use, see the accompanying legal.txt file.
+ *
+ * A CSS style sheet for DocBook V4.5.
+ */
+
+doc,
+para {
+ display: block;
+}
+para {
+ margin: 1ex 0;
+}
+para[align] {
+ text-align: concatenate(attr(align));
+}
+
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/css/html_cals_table.imp b/doc/editor_configs/xmlmind/addon/config/scons/css/html_cals_table.imp
new file mode 100644
index 0000000..dd62d3d
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/css/html_cals_table.imp
@@ -0,0 +1,101 @@
+/*
+ * Copyright (c) 2005-2009 Pixware.
+ *
+ * This file is part of the XMLmind XML Editor project.
+ * For conditions of distribution and use, see the accompanying legal.txt file.
+ *
+ * Styles for both HTML and CALS tables (DocBook 4.3+).
+ */
+
+@import "table.imp";
+
+/*
+ * "black" is the color used to draw a border around the table and its cells
+ * based on values of attributes such as frame, rowsep and colsep.
+ *
+ * "rgb(238,238,224)" (a very light gray) is the color used to draw
+ * a border around each cell whether the cell actually has borders or not.
+ * Remove this parameter if this ``cell footprint'' disturbs you.
+ *
+ * For more information about table support for DocBook, see
+ * XMLmind XML Editor - Configuration and Deployment.
+ */
+@extension "com.xmlmind.xmleditext.docbook.TableSupport black rgb(238,238,224)";
+
+/*
+ * Real DocBook tables (CALS) contain (graphic+|mediaobject+|tgroup+)
+ * not (tbody+|tr+).
+ */
+
+table:contains-element(tr),
+table:contains-element(tbody),
+informaltable:contains-element(tr),
+informaltable:contains-element(tbody) {
+ display: table;
+ border-style: solid;
+ border-width: 1;
+ margin-top: 1.33ex;
+ margin-bottom: 1.33ex;
+}
+
+table:contains-element(tr) > caption,
+table:contains-element(tbody) > caption,
+informaltable:contains-element(tr) > caption,
+informaltable:contains-element(tbody) > caption {
+ display: table-caption;
+ color: #004080;
+ font-style: italic;
+ font-weight: normal;
+ text-align: center;
+ margin: 2px 2ex 2px 2ex;
+}
+
+colgroup {
+ display: table-column-group;
+ collapsed: yes;
+}
+
+col {
+ display: table-column;
+ collapsed: yes;
+}
+
+/*
+ * thead, tbody, tfoot, already properly styled in table.imp.
+ */
+
+table:contains-element(tbody) > thead,
+table:contains-element(tbody) > tfoot {
+ /*
+ * In CALS tables, header and footer rows are often presented
+ * in an alternate typographic style, such as boldface.
+ * There is no such processing expectation for HTML tables.
+ * Explicitly use th instead of td when boldface is needed.
+ */
+ font-weight: normal;
+}
+
+tr {
+ display: table-row;
+ background-color: inherit; /*e.g. from read-only tbody*/
+}
+
+td,
+th {
+ display: table-cell;
+ background-color: inherit; /*e.g. from read-only row*/
+ border-style: solid;
+ border-width: 1;
+ padding: 2;
+}
+
+th {
+ font-weight: bold;
+}
+
+@media print {
+ colgroup,
+ col {
+ display: none;
+ }
+}
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/css/image.imp b/doc/editor_configs/xmlmind/addon/config/scons/css/image.imp
new file mode 100644
index 0000000..dd1d65f
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/css/image.imp
@@ -0,0 +1,23 @@
+/*
+ * Copyright (c) 2004-2009 Pixware.
+ *
+ * This file is part of the XMLmind XML Editor project.
+ * For conditions of distribution and use, see the accompanying legal.txt file.
+ *
+ * Display of images.
+ */
+
+mediaobject imagedata {
+ display: block; /* without this, a viewport specified as % will not work */
+ margin: 0 auto;
+}
+
+inlinemediaobject imagedata {
+ display: inline;
+}
+
+graphic,
+inlinegraphic,
+imagedata {
+ content: gadget("com.xmlmind.xmleditext.docbook.Graphic");
+}
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/css/print.imp b/doc/editor_configs/xmlmind/addon/config/scons/css/print.imp
new file mode 100644
index 0000000..d12a18b
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/css/print.imp
@@ -0,0 +1,15 @@
+/*
+ * Copyright (c) 2003-2005 Pixware.
+ *
+ * This file is part of the XMLmind XML Editor project.
+ * For conditions of distribution and use, see the accompanying legal.txt file.
+ *
+ * Customizes DocBook CSS style sheet for printing.
+ */
+
+@media print {
+ * {
+ background-color: transparent;
+ line-height: 1.2;
+ }
+}
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/css/refentry.imp b/doc/editor_configs/xmlmind/addon/config/scons/css/refentry.imp
new file mode 100644
index 0000000..80f1890
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/css/refentry.imp
@@ -0,0 +1,524 @@
+/*
+ * Copyright (c) 2003 Pixware.
+ *
+ * This file is part of the XMLmind XML Editor project.
+ * For conditions of distribution and use, see the accompanying legal.txt file.
+ *
+ * Styles for refentry elements.
+ */
+
+/* =====================================
+ Refentry structure
+===================================== */
+
+refentry {
+ display: block;
+ border-width: 1px;
+ border-style: solid;
+ border-color: silver transparent silver transparent;
+ margin: 3ex 0;
+}
+
+refnamediv,
+refsynopsisdiv {
+ display: block;
+ margin: 1ex 0;
+}
+
+refnamediv:before,
+refsynopsisdiv:before {
+ display: block;
+ font-size: 1.3em;
+ font-weight: bold;
+ color: #004080;
+ margin: 1ex 0;
+}
+
+refnamediv:before {
+ content: "Name";
+}
+
+refnamediv > *:before {
+ content: " ";
+}
+
+refnamediv > *:first-child:before {
+ content: "";
+}
+
+refdescriptor,
+refname,
+refpurpose,
+refclass {
+ display: inline;
+}
+
+refpurpose:before,
+refclass:before {
+ content: " -- ";
+ color: gray;
+}
+
+refsynopsisdiv:before {
+ content: "Synopsis";
+}
+
+refsynopsisdiv:contains-element(title):before,
+refsynopsisdiv:contains-element(info):before {
+ content: "";
+}
+
+refsynopsisdiv > title {
+ font-size: 1.3em;
+ margin-top: 0;
+ margin-bottom: 1ex;
+}
+
+refsection,
+refsect1,
+refsect2,
+refsect3 {
+ display: block;
+}
+
+refsection > title,
+refsect1 > title {
+ font-size: 1.3em;
+ margin: 1ex 0;
+}
+
+refsection refsection > title {
+ font-size: 1em;
+ margin: 1.33ex 0;
+}
+
+/* =====================================
+ Synopsis environments
+===================================== */
+
+/* -------------------------------------
+ cmdsynopsis
+------------------------------------- */
+
+cmdsynopsis {
+ display: block;
+ font-family: monospace;
+ margin: 1.33ex 0;
+}
+
+synopfragment {
+ display: block;
+ font-family: monospace;
+ margin-left: 4ex;
+}
+
+arg,
+group {
+ display: inline;
+}
+
+arg:before,
+group:before { /* also works for choice=opt */
+ content: " [";
+ color: gray;
+}
+
+group > arg:before,
+group > group:before {
+ content: " | [";
+}
+
+arg:first-child:before,
+group:first-child:before {
+ content: "[";
+}
+
+arg:after,
+group:after {
+ content: "]";
+ color: gray;
+}
+
+arg[rep=repeat]:after,
+group[rep=repeat]:after {
+ content: "]...";
+ color: gray;
+}
+
+arg[choice=req]:before,
+group[choice=req]:before {
+ content: " {";
+}
+
+group > arg[choice=req]:before,
+group > group[choice=req]:before {
+ content: " | {";
+}
+
+arg[choice=req]:first-child:before,
+group[choice=req]:first-child:before {
+ content: "{";
+}
+
+arg[choice=req]:after,
+group[choice=req]:after {
+ content: "}";
+}
+
+arg[choice=req][rep=repeat]:after,
+group[choice=req][rep=repeat]:after {
+ content: "}...";
+}
+
+arg[choice=plain]:before,
+group[choice=plain]:before {
+ content: " ";
+}
+
+group > arg[choice=plain]:before,
+group > group[choice=plain]:before {
+ content: " | ";
+}
+
+arg[choice=plain]:first-child:before,
+group[choice=plain]:first-child:before {
+ content: "";
+}
+
+arg[choice=plain]:after,
+group[choice=plain]:after {
+ content: "";
+}
+
+arg[choice=plain][rep=repeat]:after,
+group[choice=plain][rep=repeat]:after {
+ content: "...";
+}
+
+synopfragmentref {
+ display: inline;
+ color: navy;
+ text-decoration: underline;
+}
+
+synopfragmentref:after {
+ content: icon(left-link) attr(linkend);
+ vertical-align: text-top; /* for the icon */
+}
+
+/* -------------------------------------
+ funcsynopsis
+------------------------------------- */
+
+funcsynopsis {
+ display: block;
+ font-family: monospace;
+ margin: 1.33ex 0;
+}
+
+funcsynopsisinfo {
+ display: block;
+ white-space: pre;
+ margin: 1.33ex 0;
+}
+
+funcprototype {
+ display: block;
+}
+
+funcprototype > *:before {
+ content: " ";
+}
+
+funcprototype > *:first-child:before {
+ content: "";
+}
+
+funcprototype:after {
+ content: ";";
+ color: gray;
+}
+
+funcdef {
+ display: inline;
+}
+
+void {
+ display: inline;
+ content: "void";
+ color: gray;
+}
+
+funcprototype > void {
+ content: "(void)";
+}
+
+varargs {
+ display: inline;
+ content: "(...)";
+ color: gray;
+}
+
+paramdef + varargs {
+ content: ", ...)";
+}
+
+paramdef {
+ display: inline;
+}
+
+paramdef > parameter {
+ font-style: italic;
+}
+
+paramdef:before {
+ content: ", ";
+ color: gray;
+}
+
+paramdef:first-of-type:before {
+ content: " (";
+}
+
+paramdef:last-of-type:after {
+ content: ")";
+ color: gray;
+}
+
+funcparams {
+ display: inline;
+}
+
+paramdef > funcparams:before {
+ content: "(";
+ color: gray;
+}
+
+paramdef > funcparams:after {
+ content: ")";
+ color: gray;
+}
+
+/* -------------------------------------
+ classsynopsis
+------------------------------------- */
+
+classsynopsis {
+ display: block;
+ font-family: monospace;
+ margin-top: 1.33ex;
+}
+
+ooclass + classsynopsisinfo:before,
+oointerface + classsynopsisinfo:before,
+ooexception + classsynopsisinfo:before,
+ooclass + fieldsynopsis:before,
+oointerface + fieldsynopsis:before,
+ooexception + fieldsynopsis:before,
+ooclass + constructorsynopsis:before,
+oointerface + constructorsynopsis:before,
+ooexception + constructorsynopsis:before,
+ooclass + destructorsynopsis:before,
+oointerface + destructorsynopsis:before,
+ooexception + destructorsynopsis:before,
+ooclass + methodsynopsis:before,
+oointerface + methodsynopsis:before,
+ooexception + methodsynopsis:before {
+ display: block;
+ content: "{";
+ color: gray;
+}
+
+classsynopsis:after {
+ display: block;
+ content: "}";
+ color: gray;
+ margin-bottom: 1.33ex;
+}
+
+classsynopsisinfo {
+ display: block;
+ white-space: pre;
+ margin-left: 4ex;
+ margin-top: 1.33ex;
+ margin-bottom: 1.33ex;
+}
+
+ooclass,
+oointerface,
+ooexception {
+ display: inline;
+ font-family: monospace;
+}
+
+classsynopsis > ooclass:after,
+classsynopsis > oointerface:after,
+classsynopsis > ooexception:after {
+ content: " ";
+}
+
+ooclass > *:before,
+oointerface > *:before,
+ooexception > *:before {
+ content: " ";
+}
+
+ooclass > classname:before {
+ content: " class ";
+ color: gray;
+}
+oointerface > interfacename:before {
+ content: " interface ";
+ color: gray;
+}
+ooexception > exceptionname:before {
+ content: " exception ";
+ color: gray;
+}
+
+ooclass > *:first-child:before,
+oointerface > *:first-child:before,
+ooexception > *:first-child:before {
+ content: "";
+}
+
+ooclass > classname:first-child:before {
+ content: "class ";
+ color: gray;
+}
+oointerface > interfacename:first-child:before {
+ content: "interface ";
+ color: gray;
+}
+ooexception > exceptionname:first-child:before {
+ content: "exception ";
+ color: gray;
+}
+
+fieldsynopsis,
+constructorsynopsis,
+destructorsynopsis,
+methodsynopsis {
+ display: block;
+ font-family: monospace;
+ margin: 1.33ex 0;
+}
+
+classsynopsis > fieldsynopsis,
+classsynopsis > constructorsynopsis,
+classsynopsis > destructorsynopsis,
+classsynopsis > methodsynopsis {
+ margin-left: 4ex;
+ margin-top: 0;
+ margin-bottom: 0;
+}
+
+fieldsynopsis:after,
+constructorsynopsis:after,
+destructorsynopsis:after,
+methodsynopsis:after {
+ content: ";";
+ color: gray;
+}
+
+fieldsynopsis > *:before,
+constructorsynopsis > *:before,
+destructorsynopsis > *:before,
+methodsynopsis > *:before {
+ content: " ";
+}
+
+fieldsynopsis > *:first-child:before,
+constructorsynopsis > *:first-child:before,
+destructorsynopsis > *:first-child:before,
+methodsynopsis > *:first-child:before {
+ content: "";
+}
+
+constructorsynopsis > exceptionname:before,
+destructorsynopsis > exceptionname:before,
+methodsynopsis > exceptionname:before { /*In practice, cannot be first child*/
+ content: " throws ";
+ color: gray;
+}
+
+methodname + void {
+ content: "(void)";
+}
+
+methodparam {
+ display: inline;
+ /* rep and choice attributes not visualized */
+}
+
+methodparam:before {
+ content: ", ";
+ color: gray;
+}
+
+methodparam:first-of-type:before {
+ content: " (";
+}
+
+methodparam:last-of-type:after{
+ content: ")";
+ color: gray;
+}
+
+methodparam > parameter {
+ font-style: italic;
+}
+
+methodparam > *:before {
+ content: " ";
+}
+
+methodparam > *:first-child:before {
+ content: "";
+}
+
+modifier {
+ display: inline;
+ font-family: monospace;
+}
+
+initializer {
+ display: inline;
+ font-family: monospace;
+}
+
+initializer:before { /* Cannot be first child */
+ content: " = ";
+ color: gray;
+}
+
+/* ---------------------------------------------------------------------------
+ Inlined elements other than those belonging to modules
+
+ Note that default display is inline, so there is no need to specify it.
+--------------------------------------------------------------------------- */
+
+/* -------------------------------------
+ General
+------------------------------------- */
+
+citerefentry {
+ display: inline;
+ font-style: italic;
+}
+
+citerefentry > manvolnum:before {
+ content: "(";
+ color: gray;
+}
+
+citerefentry > manvolnum:after {
+ content: ")";
+ color: gray;
+}
+
+refentrytitle,
+manvolnum,
+refmiscinfo { /* also found in refmeta */
+ display: inline;
+}
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/css/scons.css b/doc/editor_configs/xmlmind/addon/config/scons/css/scons.css
new file mode 100644
index 0000000..1597226
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/css/scons.css
@@ -0,0 +1,17 @@
+/*
+ * Copyright (c) 2003-2008 Pixware.
+ *
+ * This file is part of the XMLmind XML Editor project.
+ * For conditions of distribution and use, see the accompanying legal.txt file.
+ *
+ * A CSS style sheet for DocBook V4.5.
+ */
+
+@import "docbook1.imp";
+@import "refentry.imp";
+@import "docbook2.imp";
+@import "html_cals_table.imp";
+@import "image.imp";
+@import "collapsible.imp";
+@import "print.imp";
+
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/css/structure.css b/doc/editor_configs/xmlmind/addon/config/scons/css/structure.css
new file mode 100644
index 0000000..95f4610
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/css/structure.css
@@ -0,0 +1,140 @@
+/*
+ * Copyright (c) 2005-2008 Pixware.
+ *
+ * This file is part of the XMLmind XML Editor project.
+ * For conditions of distribution and use, see the accompanying legal.txt file.
+ *
+ * Displays the structure (a little more than a TOC) of a DocBook document.
+ * Titles inside *info (e.g. sectioninfo) elements are not displayed.
+ */
+
+*,
+*:comment,
+*:processing-instruction {
+ display: none;
+}
+
+title {
+ display: block;
+}
+
+title > * {
+ display: inline;
+}
+
+set,
+book,
+part,
+reference,
+refentry,
+preface,
+chapter,
+article,
+appendix,
+section,
+sect1,
+sect2,
+sect3,
+sect4,
+sect5 {
+ display: block;
+ margin-left: 9ex;
+}
+
+set:before,
+book:before,
+part:before,
+reference:before,
+refentry:before,
+preface:before,
+chapter:before,
+article:before,
+appendix:before,
+section:before,
+sect1:before,
+sect2:before,
+sect3:before,
+sect4:before,
+sect5:before {
+ display: marker;
+ marker-offset: fill;
+ content: element-name();
+ font-size: small;
+ color: gray;
+}
+
+part > title:before {
+ content: simple-counter(n-, upper-roman) " ";
+}
+
+chapter > title:before {
+ content: simple-counter(n-, decimal) " ";
+}
+
+appendix > title:before {
+ content: simple-counter(n-, upper-alpha) " ";
+}
+
+refentry {
+ content: xpath("join(.//refname, ', ')");
+ color: gray;
+}
+
+section > title:before,
+sect1 > title:before {
+ content: simple-counter(n-) " ";
+}
+
+section section > title:before,
+sect2 > title:before {
+ content: simple-counter(nn-) " ";
+}
+
+section section section > title:before,
+sect3 > title:before {
+ content: simple-counter(nnn-) " ";
+}
+
+section section section section > title:before,
+sect4 > title:before {
+ content: simple-counter(nnnn-) " ";
+}
+
+section section section section section > title:before,
+sect5 > title:before {
+ content: simple-counter(nnnnn-) " ";
+}
+
+section section section section * section > title:before {
+ content: "";
+}
+
+setinfo,
+setindex,
+bookinfo,
+dedication,
+toc,
+lot,
+glossary,
+bibliography,
+index,
+colophon,
+partinfo,
+partintro,
+referenceinfo,
+prefaceinfo,
+chapterinfo,
+tocchap,
+articleinfo,
+appendixinfo,
+sectioninfo,
+sect1info,
+sect2info,
+sect3info,
+sect4info,
+sect5info {
+ display: block;
+ content: element-name();
+ font-size: small;
+ color: gray;
+}
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/css/table.imp b/doc/editor_configs/xmlmind/addon/config/scons/css/table.imp
new file mode 100644
index 0000000..0b444bb
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/css/table.imp
@@ -0,0 +1,87 @@
+/*
+ * Copyright (c) 2005-2009 Pixware.
+ *
+ * This file is part of the XMLmind XML Editor project.
+ * For conditions of distribution and use, see the accompanying legal.txt file.
+ *
+ * Partial styles for DocBook tables. Requires an @extension.
+ * DO NOT IMPORT THIS FILE: INSTEAD @import cals_table.imp OR
+ * @import html_cals_table.imp.
+ */
+
+table,
+informaltable {
+ display: block;
+ margin: 1.33ex 0;
+}
+
+table > title {
+ display: block;
+ font-style: italic;
+ font-weight: normal;
+ text-align: center;
+ /* keep margin because tgroup has no margin */
+}
+
+colspec,
+spanspec {
+ display: table-column;
+ collapsed: yes;
+}
+
+tgroup {
+ display: table;
+ border-style: solid;
+ border-width: 1;
+}
+
+thead,
+tfoot {
+ display: table-row-group;
+ font-weight: bold;
+}
+
+thead {
+ background-color: #F0F0F0;
+}
+
+tfoot {
+ background-color: #E0E0E0;
+}
+
+tbody {
+ display: table-row-group;
+ background-color: inherit; /*e.g. from read-only tgroup*/
+}
+
+row {
+ display: table-row;
+ background-color: inherit; /*e.g. from read-only tbody*/
+}
+
+entry {
+ display: table-cell;
+ background-color: inherit; /*e.g. from read-only row*/
+ border-style: solid;
+ border-width: 1;
+ padding: 2;
+}
+
+entry > *:first-child {
+ margin-top: 0;
+ margin-bottom: 0;
+}
+
+entrytbl {
+ display: subtable;
+ background-color: inherit; /*e.g. from read-only row*/
+ border-style: solid;
+ border-width: 1;
+}
+
+@media print {
+ colspec,
+ spanspec {
+ display: none;
+ }
+}
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/css/visible_inclusions.css b/doc/editor_configs/xmlmind/addon/config/scons/css/visible_inclusions.css
new file mode 100644
index 0000000..f66b094
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/css/visible_inclusions.css
@@ -0,0 +1,9 @@
+/*
+ * Copyright (c) 2003-2004 Pixware.
+ *
+ * This file is part of the XMLmind XML Editor project.
+ * For conditions of distribution and use, see the accompanying legal.txt file.
+ */
+
+@import "docbook.css";
+@import "../../common/css/visible_inclusions.imp"; \ No newline at end of file
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/htmlTable.incl b/doc/editor_configs/xmlmind/addon/config/scons/htmlTable.incl
new file mode 100644
index 0000000..5ea16b8
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/htmlTable.incl
@@ -0,0 +1,195 @@
+<?xml version='1.0' encoding='ISO-8859-1'?>
+<configuration
+ xmlns="http://www.xmlmind.com/xmleditor/schema/configuration"
+ xmlns:cfg="http://www.xmlmind.com/xmleditor/schema/configuration">
+
+ <!-- Without this, a tgroup is created with a tbody containing tr. -->
+
+ <cfg:elementTemplate xmlns="" name="CALS" selectable="override"
+ parent="tgroup|entrytbl">
+ <tbody>
+ <row><entry></entry></row>
+ </tbody>
+ </cfg:elementTemplate>
+
+ <cfg:elementTemplate xmlns="" name="CALS" selectable="override"
+ parent="tgroup|entrytbl">
+ <thead>
+ <row><entry></entry></row>
+ </thead>
+ </cfg:elementTemplate>
+
+ <cfg:elementTemplate xmlns="" name="CALS" selectable="override"
+ parent="tgroup|entrytbl">
+ <tfoot>
+ <row><entry></entry></row>
+ </tfoot>
+ </cfg:elementTemplate>
+
+ <cfg:elementTemplate xmlns="" name="HTML" selectable="override"
+ parent="table|informaltable">
+ <tbody>
+ <tr><td></td></tr>
+ </tbody>
+ </cfg:elementTemplate>
+
+ <cfg:elementTemplate xmlns="" name="HTML" selectable="override"
+ parent="table|informaltable">
+ <thead>
+ <tr><th></th></tr>
+ </thead>
+ </cfg:elementTemplate>
+
+ <cfg:elementTemplate xmlns="" name="HTML" selectable="override"
+ parent="table|informaltable">
+ <tfoot>
+ <tr><th></th></tr>
+ </tfoot>
+ </cfg:elementTemplate>
+
+ <!-- HTML table templates =============================================== -->
+
+ <!-- selectable="false" is used to avoid clutter in the Element menu.
+ Therefore these templates can only be used by the macros triggered
+ by toobar buttons. -->
+
+ <elementTemplate name="HTML" selectable="false">
+ <informaltable xmlns="" border="1">
+ <tr>
+ <td></td><td></td>
+ </tr>
+ <tr>
+ <td></td><td></td>
+ </tr>
+ </informaltable>
+ </elementTemplate>
+
+ <elementTemplate name="HTML_head_row" selectable="false">
+ <informaltable xmlns="" frame="box" rules="all">
+ <thead>
+ <tr align="center">
+ <th></th><th></th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr>
+ <td></td><td></td>
+ </tr>
+ <tr>
+ <td></td><td></td>
+ </tr>
+ </tbody>
+ </informaltable>
+ </elementTemplate>
+
+ <elementTemplate name="HTML_head_column" selectable="false">
+ <informaltable xmlns="" frame="box" rules="all">
+ <col align="center" span="1" />
+ <tbody>
+ <tr>
+ <th></th><td></td>
+ </tr>
+ <tr>
+ <th></th><td></td>
+ </tr>
+ <tr>
+ <th></th><td></td>
+ </tr>
+ </tbody>
+ </informaltable>
+ </elementTemplate>
+
+ <elementTemplate name="HTML_head_row_column" selectable="false">
+ <informaltable xmlns="" frame="box" rules="all">
+ <col align="center" span="1" />
+ <thead>
+ <tr align="center">
+ <th></th><th></th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr>
+ <th></th><td></td>
+ </tr>
+ <tr>
+ <th></th><td></td>
+ </tr>
+ <tr>
+ <th></th><td></td>
+ </tr>
+ </tbody>
+ </informaltable>
+ </elementTemplate>
+
+ <elementTemplate name="HTML" selectable="false">
+ <table xmlns="" border="1">
+ <caption></caption>
+ <tr>
+ <td></td><td></td>
+ </tr>
+ <tr>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </elementTemplate>
+
+ <elementTemplate name="HTML_head_row" selectable="false">
+ <table xmlns="" frame="box" rules="all">
+ <caption></caption>
+ <thead>
+ <tr align="center">
+ <th></th><th></th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr>
+ <td></td><td></td>
+ </tr>
+ <tr>
+ <td></td><td></td>
+ </tr>
+ </tbody>
+ </table>
+ </elementTemplate>
+
+ <elementTemplate name="HTML_head_column" selectable="false">
+ <table xmlns="" frame="box" rules="all">
+ <caption></caption>
+ <col align="center" span="1" />
+ <tbody>
+ <tr>
+ <th></th><td></td>
+ </tr>
+ <tr>
+ <th></th><td></td>
+ </tr>
+ <tr>
+ <th></th><td></td>
+ </tr>
+ </tbody>
+ </table>
+ </elementTemplate>
+
+ <elementTemplate name="HTML_head_row_column" selectable="false">
+ <table xmlns="" frame="box" rules="all">
+ <caption></caption>
+ <col align="center" span="1" />
+ <thead>
+ <tr align="center">
+ <th></th><th></th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr>
+ <th></th><td></td>
+ </tr>
+ <tr>
+ <th></th><td></td>
+ </tr>
+ <tr>
+ <th></th><td></td>
+ </tr>
+ </tbody>
+ </table>
+ </elementTemplate>
+</configuration>
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/scons.css b/doc/editor_configs/xmlmind/addon/config/scons/scons.css
new file mode 100644
index 0000000..8f52269
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/scons.css
@@ -0,0 +1,11 @@
+doc,
+para {
+ display: block;
+}
+para {
+ margin: 1ex 0;
+}
+para[align] {
+ text-align: concatenate(attr(align));
+}
+
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/scons.xxe b/doc/editor_configs/xmlmind/addon/config/scons/scons.xxe
new file mode 100644
index 0000000..8f835cc
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/scons.xxe
@@ -0,0 +1,37 @@
+<?xml version='1.0' encoding='ISO-8859-1'?>
+<configuration name="SCons" mimeType="application/docbook+xml"
+ xmlns="http://www.xmlmind.com/xmleditor/schema/configuration"
+ xmlns:cfg="http://www.xmlmind.com/xmleditor/schema/configuration"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+
+ <help location="docbook_help.jar" />
+ <include location="common.incl" />
+
+ <detect>
+ <and>
+ <rootElementNamespace>http://www.scons.org/dbxsd/v1.0</rootElementNamespace>
+ </and>
+ </detect>
+ <schema>
+ <location>http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd</location>
+ </schema>
+ <template name="Book" location="scons_templates/book.xml" />
+ <template name="Article" location="scons_templates/article.xml" />
+ <template name="Part" location="scons_templates/part.xml" />
+ <template name="Chapter" location="scons_templates/chapter.xml" />
+ <template name="Refentry" location="scons_templates/refentry.xml" />
+ <template name="Appendix" location="scons_templates/appendix.xml" />
+ <template name="Glossary" location="scons_templates/glossary.xml" />
+ <template name="Section" location="scons_templates/section.xml" />
+ <template name="Sconsdoc" location="scons_templates/sconsdoc.xml" />
+
+ <css name="SCons" location="css/scons.css" />
+ <css name="Document structure" alternate="true"
+ location="css/structure.css" />
+ <!-- In principle, this is used to debug modular documents
+ but we think that some users may also like this way of
+ making documents modules more visible. -->
+ <css name="Show info about included elements" alternate="true"
+ location="css/visible_inclusions.css" />
+</configuration>
+
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/scons2.xml b/doc/editor_configs/xmlmind/addon/config/scons/scons2.xml
new file mode 100644
index 0000000..9ae7978
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/scons2.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<article xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">
+ <para></para>
+</article>
+
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/scons_catalog.xml b/doc/editor_configs/xmlmind/addon/config/scons/scons_catalog.xml
new file mode 100644
index 0000000..5146cfa
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/scons_catalog.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" ?>
+<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog"
+ prefer="public">
+ <uri name="http://www.scons.org/dbxsd/v1.0/scons.xsd"
+ uri="scons_xsd/scons.xsd"/>
+ <uriSuffix uriSuffix="scons.xsd"
+ uri="scons_xsd/scons.xsd"/>
+</catalog>
+
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/scons_templates/appendix.xml b/doc/editor_configs/xmlmind/addon/config/scons/scons_templates/appendix.xml
new file mode 100644
index 0000000..6091ddc
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/scons_templates/appendix.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<appendix xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">
+ <title></title>
+ <section>
+ <title></title>
+ <para></para>
+ </section>
+</appendix>
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/scons_templates/article.xml b/doc/editor_configs/xmlmind/addon/config/scons/scons_templates/article.xml
new file mode 100644
index 0000000..5bafcd0
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/scons_templates/article.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<article xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">
+ <articleinfo>
+ <title></title>
+ <author>
+ <firstname></firstname>
+ <surname></surname>
+ <affiliation>
+ <orgname></orgname>
+ </affiliation>
+ </author>
+ <pubdate></pubdate>
+ </articleinfo>
+ <section>
+ <title></title>
+ <para></para>
+ </section>
+</article>
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/scons_templates/book.xml b/doc/editor_configs/xmlmind/addon/config/scons/scons_templates/book.xml
new file mode 100644
index 0000000..a2fcf14
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/scons_templates/book.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<book xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">
+ <bookinfo>
+ <title></title>
+ <author>
+ <firstname></firstname>
+ <surname></surname>
+ <affiliation>
+ <orgname></orgname>
+ </affiliation>
+ </author>
+ <pubdate></pubdate>
+ </bookinfo>
+ <chapter>
+ <title></title>
+ <section>
+ <title></title>
+ <para></para>
+ </section>
+ </chapter>
+</book>
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/scons_templates/chapter.xml b/doc/editor_configs/xmlmind/addon/config/scons/scons_templates/chapter.xml
new file mode 100644
index 0000000..aab17e0
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/scons_templates/chapter.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<chapter xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">
+ <title></title>
+ <section>
+ <title></title>
+ <para></para>
+ </section>
+</chapter>
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/scons_templates/glossary.xml b/doc/editor_configs/xmlmind/addon/config/scons/scons_templates/glossary.xml
new file mode 100644
index 0000000..cd3c723
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/scons_templates/glossary.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<glossary xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">
+ <glossdiv>
+ <title></title>
+
+ <glossentry>
+ <glossterm></glossterm>
+
+ <glossdef>
+ <para></para>
+ </glossdef>
+ </glossentry>
+ </glossdiv>
+</glossary>
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/scons_templates/part.xml b/doc/editor_configs/xmlmind/addon/config/scons/scons_templates/part.xml
new file mode 100644
index 0000000..e8e8de0
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/scons_templates/part.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<part xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">
+ <title></title>
+ <chapter>
+ <title></title>
+ <section>
+ <title></title>
+ <para></para>
+ </section>
+ </chapter>
+</part>
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/scons_templates/refentry.xml b/doc/editor_configs/xmlmind/addon/config/scons/scons_templates/refentry.xml
new file mode 100644
index 0000000..399e346
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/scons_templates/refentry.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<refentry xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">
+ <refmeta>
+ <refentrytitle></refentrytitle>
+ <manvolnum></manvolnum>
+ </refmeta>
+
+ <refnamediv>
+ <refname></refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <cmdsynopsis>
+ <command></command>
+ </cmdsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+ <para></para>
+ </refsection>
+</refentry>
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/scons_templates/sconsdoc.xml b/doc/editor_configs/xmlmind/addon/config/scons/scons_templates/sconsdoc.xml
new file mode 100644
index 0000000..29101bb
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/scons_templates/sconsdoc.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">
+ <tool name="Foo">
+ <summary>
+ <para></para>
+ </summary>
+ </tool>
+ <cvar name="BAR">
+ <summary>
+ <para></para>
+ </summary>
+ </cvar>
+</sconsdoc>
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/scons_templates/section.xml b/doc/editor_configs/xmlmind/addon/config/scons/scons_templates/section.xml
new file mode 100644
index 0000000..39ccf9e
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/scons_templates/section.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<section xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">
+ <title></title>
+ <para></para>
+</section>
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/scons_xsd/calstblx.xsd b/doc/editor_configs/xmlmind/addon/config/scons/scons_xsd/calstblx.xsd
new file mode 100644
index 0000000..6f899a3
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/scons_xsd/calstblx.xsd
@@ -0,0 +1,390 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- ...................................................................... -->
+<!-- SCons DocBook V4.5-Based extension V1.0 XML CALS Table Model V4.5 .... -->
+<!-- File calstblx.xsd .................................................... -->
+
+<!-- Copyright (c) 2001-7,2010,2011,2012 The SCons Foundation
+
+ Permission is hereby granted, free of charge, to any person obtaining
+ a copy of this software and associated documentation files (the
+ "Software"), to deal in the Software without restriction, including
+ without limitation the rights to use, copy, modify, merge, publish,
+ distribute, sublicense, and/or sell copies of the Software, and to
+ permit persons to whom the Software is furnished to do so, subject to
+ the following conditions:
+
+ The above copyright notice and this permission notice shall be included
+ in all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
+ KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+ WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+ This DTD extension is based on the DocBook CALS Table Model V4.5 with:
+
+ Copyright 1992-2002 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).
+
+ This DTD is based on the CALS Table Model
+ PUBLIC "-//USA-DOD//DTD Table Model 951010//EN"
+
+ $Id: calstblx.dtd 6340 2006-10-03 13:23:24Z nwalsh $
+
+ 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/.
+ For the modified SCons extension files
+
+ scons.xsd, dbpoolx.xsd,
+
+ you can write to its developer mailing list. Check out
+ http://www.scons.org/ and http://www.scons.org/lists.php.
+
+-->
+<!-- ...................................................................... -->
+<!--
+ This module contains the definitions for the CALS Table Model
+ converted to XML. It has been modified slightly for use in the
+ combined HTML/CALS models supported by DocBook V4.5.
+-->
+<!--
+ These definitions are not directly related to the table model, but are
+ used in the default CALS table model and are usually defined elsewhere
+ (and prior to the inclusion of this table module) in a CALS DTD.
+-->
+<!--
+ no if zero(s),
+ yes if any other digits value
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <xs:simpleType name="yesorno">
+ <xs:restriction base="xs:string"/>
+ </xs:simpleType>
+ <xs:group name="titles">
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ </xs:sequence>
+ </xs:group>
+ <!-- default for use in entry content -->
+ <!--
+ The parameter entities as defined below provide the CALS table model
+ as published (as part of the Example DTD) in MIL-HDBK-28001.
+
+ These following declarations provide the CALS-compliant default definitions
+ for these entities. However, these entities can and should be redefined
+ (by giving the appropriate parameter entity declaration(s) prior to the
+ reference to this Table Model declaration set entity) to fit the needs
+ of the current application.
+ -->
+ <xs:group name="tbl.table-titles.mdl">
+ <xs:sequence>
+ <xs:group ref="titles"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="tbl.table-main.mdl">
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="tgroup"/>
+ <xs:element maxOccurs="unbounded" ref="graphic"/>
+ </xs:choice>
+ </xs:group>
+ <xs:complexType name="tbl.tgroup.mdl">
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="colspec"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="spanspec"/>
+ <xs:element minOccurs="0" ref="thead"/>
+ <xs:element minOccurs="0" ref="tfoot"/>
+ <xs:element ref="tbody"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:attributeGroup name="tbl.tgroup.att">
+ <xs:attribute name="tgroupstyle"/>
+ </xs:attributeGroup>
+ <xs:complexType name="tbl.row.mdl">
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="entry"/>
+ <xs:element ref="entrytbl"/>
+ </xs:choice>
+ </xs:complexType>
+ <xs:complexType name="tbl.entrytbl.mdl">
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="colspec"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="spanspec"/>
+ <xs:element minOccurs="0" ref="thead"/>
+ <xs:element ref="tbody"/>
+ </xs:sequence>
+ </xs:complexType>
+ <!-- ===== Element and attribute declarations follow. ===== -->
+ <!-- doc:A formal table in a document. -->
+ <xs:element name="table" substitutionGroup="formal.class">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="tbl.table.mdl">
+ <xs:attributeGroup ref="table.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:attributeGroup name="table.attlist">
+ <xs:attribute name="frame" type="tbl.frame.attval"/>
+ <xs:attribute name="colsep" type="yesorno"/>
+ <xs:attribute name="rowsep" type="yesorno"/>
+ <xs:attributeGroup ref="tbl.table.att"/>
+ <xs:attributeGroup ref="bodyatt"/>
+ <xs:attributeGroup ref="secur"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for the main content of a table, or part of a table. -->
+ <xs:element name="tgroup">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="tbl.tgroup.mdl">
+ <xs:attributeGroup ref="tgroup.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:attributeGroup name="tgroup.attlist">
+ <xs:attribute name="cols" use="required"/>
+ <xs:attributeGroup ref="tbl.tgroup.att"/>
+ <xs:attribute name="colsep" type="yesorno"/>
+ <xs:attribute name="rowsep" type="yesorno"/>
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="left"/>
+ <xs:enumeration value="right"/>
+ <xs:enumeration value="center"/>
+ <xs:enumeration value="justify"/>
+ <xs:enumeration value="char"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="char"/>
+ <xs:attribute name="charoff"/>
+ <xs:attributeGroup ref="secur"/>
+ </xs:attributeGroup>
+ <!-- doc:Specifications for a column in a table. -->
+ <xs:element name="colspec">
+ <xs:complexType>
+ <xs:attributeGroup ref="colspec.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:attributeGroup name="colspec.attlist">
+ <xs:attribute name="colnum"/>
+ <xs:attribute name="colname"/>
+ <xs:attribute name="colwidth"/>
+ <xs:attribute name="colsep" type="yesorno"/>
+ <xs:attribute name="rowsep" type="yesorno"/>
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="left"/>
+ <xs:enumeration value="right"/>
+ <xs:enumeration value="center"/>
+ <xs:enumeration value="justify"/>
+ <xs:enumeration value="char"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="char"/>
+ <xs:attribute name="charoff"/>
+ </xs:attributeGroup>
+ <!-- doc:Formatting information for a spanned column in a table. -->
+ <xs:element name="spanspec">
+ <xs:complexType>
+ <xs:attributeGroup ref="spanspec.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:attributeGroup name="spanspec.attlist">
+ <xs:attribute name="namest" use="required"/>
+ <xs:attribute name="nameend" use="required"/>
+ <xs:attribute name="spanname" use="required"/>
+ <xs:attribute name="colsep" type="yesorno"/>
+ <xs:attribute name="rowsep" type="yesorno"/>
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="left"/>
+ <xs:enumeration value="right"/>
+ <xs:enumeration value="center"/>
+ <xs:enumeration value="justify"/>
+ <xs:enumeration value="char"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="char"/>
+ <xs:attribute name="charoff"/>
+ </xs:attributeGroup>
+ <!-- doc:A table header consisting of one or more rows. -->
+ <xs:element name="thead">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="tbl.hdft.mdl">
+ <xs:attributeGroup ref="thead.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:attributeGroup name="thead.attlist">
+ <xs:attribute name="valign">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="top"/>
+ <xs:enumeration value="middle"/>
+ <xs:enumeration value="bottom"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="secur"/>
+ </xs:attributeGroup>
+ <!-- doc:A table footer consisting of one or more rows. -->
+ <xs:element name="tfoot">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="tbl.hdft.mdl">
+ <xs:attributeGroup ref="tfoot.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:attributeGroup name="tfoot.attlist">
+ <xs:attribute name="valign">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="top"/>
+ <xs:enumeration value="middle"/>
+ <xs:enumeration value="bottom"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="secur"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for the rows of a table or informal table. -->
+ <xs:element name="tbody">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="tbl.tbody.mdl">
+ <xs:attributeGroup ref="tbody.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:attributeGroup name="tbody.attlist">
+ <xs:attribute name="valign">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="top"/>
+ <xs:enumeration value="middle"/>
+ <xs:enumeration value="bottom"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="secur"/>
+ </xs:attributeGroup>
+ <!-- doc:A row in a table. -->
+ <xs:element name="row">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="tbl.row.mdl">
+ <xs:attributeGroup ref="row.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:attributeGroup name="row.attlist">
+ <xs:attribute name="rowsep" type="yesorno"/>
+ <xs:attribute name="valign">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="top"/>
+ <xs:enumeration value="middle"/>
+ <xs:enumeration value="bottom"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="secur"/>
+ </xs:attributeGroup>
+ <!-- doc:A subtable appearing in place of an Entry in a table. -->
+ <xs:element name="entrytbl">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="tbl.entrytbl.mdl">
+ <xs:attributeGroup ref="entrytbl.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:attributeGroup name="entrytbl.attlist">
+ <xs:attribute name="cols" use="required"/>
+ <xs:attributeGroup ref="tbl.tgroup.att"/>
+ <xs:attribute name="colname"/>
+ <xs:attribute name="spanname"/>
+ <xs:attribute name="namest"/>
+ <xs:attribute name="nameend"/>
+ <xs:attribute name="colsep" type="yesorno"/>
+ <xs:attribute name="rowsep" type="yesorno"/>
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="left"/>
+ <xs:enumeration value="right"/>
+ <xs:enumeration value="center"/>
+ <xs:enumeration value="justify"/>
+ <xs:enumeration value="char"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="char"/>
+ <xs:attribute name="charoff"/>
+ <xs:attributeGroup ref="secur"/>
+ </xs:attributeGroup>
+ <!-- doc:A cell in a table. -->
+ <xs:element name="entry">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="tbl.entry.mdl"/>
+ <xs:attributeGroup ref="entry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:attributeGroup name="entry.attlist">
+ <xs:attribute name="colname"/>
+ <xs:attribute name="namest"/>
+ <xs:attribute name="nameend"/>
+ <xs:attribute name="spanname"/>
+ <xs:attribute name="morerows"/>
+ <xs:attribute name="colsep" type="yesorno"/>
+ <xs:attribute name="rowsep" type="yesorno"/>
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="left"/>
+ <xs:enumeration value="right"/>
+ <xs:enumeration value="center"/>
+ <xs:enumeration value="justify"/>
+ <xs:enumeration value="char"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="char"/>
+ <xs:attribute name="charoff"/>
+ <xs:attribute name="rotate" type="yesorno"/>
+ <xs:attribute name="valign">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="top"/>
+ <xs:enumeration value="middle"/>
+ <xs:enumeration value="bottom"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="secur"/>
+ </xs:attributeGroup>
+</xs:schema>
+<!-- End of SCons DocBook V4.5-Based extension V1.0 XML CALS Table Model V4.5 ... -->
+<!-- ............................................................................ -->
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/scons_xsd/dbhierx.xsd b/doc/editor_configs/xmlmind/addon/config/scons/scons_xsd/dbhierx.xsd
new file mode 100644
index 0000000..af99df6
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/scons_xsd/dbhierx.xsd
@@ -0,0 +1,2186 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- .............................................................................. -->
+<!-- SCons DocBook V4.5-Based extension V1.0 XML document hierarchy module V4.5 ... -->
+<!-- File dbhierx.xsd ............................................................. -->
+<!-- Copyright (c) 2001-7,2010,2011,2012 The SCons Foundation
+
+ Permission is hereby granted, free of charge, to any person obtaining
+ a copy of this software and associated documentation files (the
+ "Software"), to deal in the Software without restriction, including
+ without limitation the rights to use, copy, modify, merge, publish,
+ distribute, sublicense, and/or sell copies of the Software, and to
+ permit persons to whom the Software is furnished to do so, subject to
+ the following conditions:
+
+ The above copyright notice and this permission notice shall be included
+ in all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
+ KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+ WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+ This DTD extension is based on the DocBook document hierarchy
+ module V4.5 with:
+
+ Copyright 1992-2004 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).
+
+ $Id: dbhierx.mod 6340 2006-10-03 13:23:24Z nwalsh $
+
+ 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/.
+ For the modified SCons extension files
+
+ scons.xsd, dbpoolx.xsd,
+
+ you can write to its developer mailing list. Check out
+ http://www.scons.org/ and http://www.scons.org/lists.php.
+
+-->
+<!-- ...................................................................... -->
+<!--
+ This module contains the definitions for the overall document
+ hierarchies of DocBook documents. It covers computer documentation
+ manuals and manual fragments, as well as reference entries (such as
+ man pages) and technical journals or anthologies containing
+ articles.
+
+ This module depends on the DocBook information pool module. All
+ elements and entities referenced but not defined here are assumed
+ to be defined in the information pool module.
+
+ In DTD driver files referring to this module, please use an entity
+ declaration that uses the public identifier shown below:
+
+ <!ENTITY % dbhier PUBLIC
+ "-//OASIS//ELEMENTS DocBook Document Hierarchy V4.5//EN"
+ "dbhierx.mod">
+ %dbhier;
+
+ See the documentation for detailed information on the parameter
+ entity and module scheme used in DocBook, customizing DocBook and
+ planning for interchange, and changes made since the last release
+ of DocBook.
+-->
+<!-- ...................................................................... -->
+<!-- Entities for module inclusions ....................................... -->
+<!-- ...................................................................... -->
+<!-- Entities for element classes ......................................... -->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <xs:element name="appendix.class" abstract="true">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="beginpage"/>
+ <xs:element minOccurs="0" ref="appendixinfo"/>
+ <xs:group ref="bookcomponent.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ <xs:element minOccurs="0" ref="tocchap"/>
+ <xs:group ref="bookcomponent.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="appendix.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="article.class" abstract="true">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group minOccurs="0" ref="div.title.content"/>
+ <xs:element minOccurs="0" ref="articleinfo"/>
+ <xs:element minOccurs="0" ref="tocchap"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="lot"/>
+ <xs:group ref="bookcomponent.content"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="nav.class"/>
+ <xs:element ref="appendix.class"/>
+ <xs:element ref="colophon"/>
+ <xs:element ref="ackno"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="article.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="book.class" abstract="true">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group minOccurs="0" ref="div.title.content"/>
+ <xs:element minOccurs="0" ref="bookinfo"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="dedication"/>
+ <xs:element ref="toc"/>
+ <xs:element ref="lot"/>
+ <xs:element ref="glossary"/>
+ <xs:element ref="bibliography"/>
+ <xs:element ref="preface"/>
+ <xs:element ref="chapter.class"/>
+ <xs:element ref="reference"/>
+ <xs:element ref="part"/>
+ <xs:element ref="article.class"/>
+ <xs:element ref="appendix.class"/>
+ <xs:group ref="index.class"/>
+ <xs:element ref="colophon"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="book.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="chapter.class" abstract="true">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="beginpage"/>
+ <xs:element minOccurs="0" ref="chapterinfo"/>
+ <xs:group ref="bookcomponent.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ <xs:element minOccurs="0" ref="tocchap"/>
+ <xs:group ref="bookcomponent.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="chapter.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:group name="index.class">
+ <xs:choice>
+ <xs:element ref="index"/>
+ <xs:element ref="setindex"/>
+ </xs:choice>
+ </xs:group>
+ <xs:element name="refentry.class" abstract="true">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="beginpage"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="ndxterm.class"/>
+ <xs:element minOccurs="0" ref="refentryinfo"/>
+ <xs:element minOccurs="0" ref="refmeta"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="remark"/>
+ <xs:element ref="link.char.class"/>
+ </xs:choice>
+ <xs:element maxOccurs="unbounded" ref="refnamediv"/>
+ <xs:element minOccurs="0" ref="refsynopsisdiv"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="refsect1"/>
+ <xs:element maxOccurs="unbounded" ref="refsection"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="refentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="section.class" abstract="true">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="sectioninfo"/>
+ <xs:group ref="sect.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="divcomponent.mix"/>
+ <xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="refentry.class"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="section.class"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="simplesect"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="refentry.class"/>
+ <xs:element maxOccurs="unbounded" ref="section.class"/>
+ <xs:element maxOccurs="unbounded" ref="simplesect"/>
+ </xs:choice>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="section.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:group name="nav.class">
+ <xs:choice>
+ <xs:element ref="toc"/>
+ <xs:element ref="lot"/>
+ <xs:element ref="index"/>
+ <xs:element ref="glossary"/>
+ <xs:element ref="bibliography"/>
+ </xs:choice>
+ </xs:group>
+ <!-- Redeclaration placeholder ............................................ -->
+ <!--
+ For redeclaring entities that are declared after this point while
+ retaining their references to the entities that are declared before
+ this point
+ -->
+ <!-- ...................................................................... -->
+ <!-- Entities for element mixtures ........................................ -->
+ <xs:group name="divcomponent.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="admon.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="synop.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="informal.class"/>
+ <xs:element ref="formal.class"/>
+ <xs:element ref="compound.class"/>
+ <xs:group ref="genobj.class"/>
+ <xs:group ref="descobj.class"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="refcomponent.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="admon.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="synop.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="informal.class"/>
+ <xs:element ref="formal.class"/>
+ <xs:element ref="compound.class"/>
+ <xs:group ref="genobj.class"/>
+ <xs:group ref="descobj.class"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="indexdivcomponent.mix">
+ <xs:choice>
+ <xs:element ref="itemizedlist"/>
+ <xs:element ref="orderedlist"/>
+ <xs:element ref="variablelist"/>
+ <xs:element ref="simplelist"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="synop.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="informal.class"/>
+ <xs:element ref="anchor"/>
+ <xs:element ref="remark"/>
+ <xs:element ref="link.char.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="refname.char.mix">
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="tech.char.class"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="partcontent.mix">
+ <xs:choice>
+ <xs:element ref="appendix.class"/>
+ <xs:element ref="chapter.class"/>
+ <xs:group ref="nav.class"/>
+ <xs:element ref="article.class"/>
+ <xs:element ref="preface"/>
+ <xs:element ref="refentry.class"/>
+ <xs:element ref="reference"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="refinline.char.mix">
+ <xs:sequence>
+ <xs:choice minOccurs="0">
+ <xs:element ref="xref.char.class"/>
+ <xs:element ref="gen.char.class"/>
+ <xs:element ref="link.char.class"/>
+ <xs:element ref="tech.char.class"/>
+ <xs:group ref="base.char.class"/>
+ <xs:element ref="docinfo.char.class"/>
+ <xs:group ref="other.char.class"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="refclass.char.mix">
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="application"/>
+ </xs:sequence>
+ </xs:group>
+ <!-- Redeclaration placeholder 2 .......................................... -->
+ <!--
+ For redeclaring entities that are declared after this point while
+ retaining their references to the entities that are declared before
+ this point
+ -->
+ <!-- ...................................................................... -->
+ <!-- Entities for content models .......................................... -->
+ <xs:group name="div.title.content">
+ <xs:sequence>
+ <xs:element ref="title"/>
+ <xs:element minOccurs="0" ref="subtitle"/>
+ <xs:element minOccurs="0" ref="titleabbrev"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="bookcomponent.title.content">
+ <xs:sequence>
+ <xs:element ref="title"/>
+ <xs:element minOccurs="0" ref="subtitle"/>
+ <xs:element minOccurs="0" ref="titleabbrev"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="sect.title.content">
+ <xs:sequence>
+ <xs:element ref="title"/>
+ <xs:element minOccurs="0" ref="subtitle"/>
+ <xs:element minOccurs="0" ref="titleabbrev"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="refsect.title.content">
+ <xs:sequence>
+ <xs:element ref="title"/>
+ <xs:element minOccurs="0" ref="subtitle"/>
+ <xs:element minOccurs="0" ref="titleabbrev"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="bookcomponent.content">
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="divcomponent.mix"/>
+ <xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="sect1"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="refentry.class"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="simplesect"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="section.class"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="sect1"/>
+ <xs:element maxOccurs="unbounded" ref="refentry.class"/>
+ <xs:element maxOccurs="unbounded" ref="simplesect"/>
+ <xs:element maxOccurs="unbounded" ref="section.class"/>
+ </xs:choice>
+ </xs:choice>
+ </xs:group>
+ <!-- ...................................................................... -->
+ <!-- Set and SetInfo ...................................................... -->
+ <xs:attributeGroup name="set.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A collection of books. -->
+ <xs:element name="set">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group minOccurs="0" ref="div.title.content"/>
+ <xs:element minOccurs="0" ref="setinfo"/>
+ <xs:element minOccurs="0" ref="toc"/>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="set"/>
+ <xs:element ref="book.class"/>
+ </xs:choice>
+ <xs:element minOccurs="0" ref="setindex"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="set.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of set.element -->
+ <!-- FPI: SGML formal public identifier -->
+ <xs:attributeGroup name="set.attlist">
+ <xs:attribute name="fpi"/>
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="set.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of set.attlist -->
+ <!-- end of set.module -->
+ <xs:attributeGroup name="setinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Set. -->
+ <xs:element name="setinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="setinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of setinfo.element -->
+ <!--
+ Contents: IDs of the ToC, Books, and SetIndex that comprise
+ the set, in the order of their appearance
+ -->
+ <xs:attributeGroup name="setinfo.attlist">
+ <xs:attribute name="contents" type="xs:IDREFS"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="setinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of setinfo.attlist -->
+ <!-- end of setinfo.module -->
+ <!-- end of set.content.module -->
+ <!-- ...................................................................... -->
+ <!-- Book and BookInfo .................................................... -->
+ <xs:attributeGroup name="book.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A book. -->
+ <xs:element name="book" substitutionGroup="book.class"/>
+ <!-- end of book.element -->
+ <!-- FPI: SGML formal public identifier -->
+ <xs:attributeGroup name="book.attlist">
+ <xs:attribute name="fpi"/>
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="book.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of book.attlist -->
+ <!-- end of book.module -->
+ <xs:attributeGroup name="bookinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Book. -->
+ <xs:element name="bookinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="bookinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of bookinfo.element -->
+ <!--
+ Contents: IDs of the ToC, LoTs, Prefaces, Parts, Chapters,
+ Appendixes, References, GLossary, Bibliography, and indexes
+ comprising the Book, in the order of their appearance
+ -->
+ <xs:attributeGroup name="bookinfo.attlist">
+ <xs:attribute name="contents" type="xs:IDREFS"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="bookinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of bookinfo.attlist -->
+ <!-- end of bookinfo.module -->
+ <!-- end of book.content.module -->
+ <!-- ...................................................................... -->
+ <!-- Dedication, ToC, and LoT ............................................. -->
+ <xs:attributeGroup name="dedication.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for the dedication section of a book. -->
+ <xs:element name="dedication">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group minOccurs="0" ref="sect.title.content"/>
+ <xs:group maxOccurs="unbounded" ref="legalnotice.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="dedication.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of dedication.element -->
+ <xs:attributeGroup name="dedication.attlist">
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="dedication.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of dedication.attlist -->
+ <!-- end of dedication.module -->
+ <xs:attributeGroup name="colophon.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Text at the back of a book describing facts about its production. -->
+ <xs:element name="colophon">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group minOccurs="0" ref="sect.title.content"/>
+ <xs:group maxOccurs="unbounded" ref="textobject.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="colophon.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of colophon.element -->
+ <xs:attributeGroup name="colophon.attlist">
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="colophon.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of colophon.attlist -->
+ <!-- end of colophon.module -->
+ <xs:attributeGroup name="toc.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A table of contents. -->
+ <xs:element name="toc">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="beginpage"/>
+ <xs:group minOccurs="0" ref="bookcomponent.title.content"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="tocfront"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="tocpart"/>
+ <xs:element ref="tocchap"/>
+ </xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="tocback"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="toc.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of toc.element -->
+ <xs:attributeGroup name="toc.attlist">
+ <xs:attributeGroup ref="pagenum.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="toc.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of toc.attlist -->
+ <!-- end of toc.module -->
+ <xs:attributeGroup name="tocfront.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An entry in a table of contents for a front matter component. -->
+ <xs:element name="tocfront">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="tocfront.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of tocfront.element -->
+ <!-- to element that this entry represents -->
+ <xs:attributeGroup name="tocfront.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="linkend.attrib"/>
+ <xs:attributeGroup ref="pagenum.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="tocfront.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of tocfront.attlist -->
+ <!-- end of tocfront.module -->
+ <xs:attributeGroup name="tocentry.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A component title in a table of contents. -->
+ <xs:element name="tocentry">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="tocentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of tocentry.element -->
+ <!-- to element that this entry represents -->
+ <xs:attributeGroup name="tocentry.attlist">
+ <xs:attributeGroup ref="linkend.attrib"/>
+ <xs:attributeGroup ref="pagenum.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="tocentry.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of tocentry.attlist -->
+ <!-- end of tocentry.module -->
+ <xs:attributeGroup name="tocpart.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An entry in a table of contents for a part of a book. -->
+ <xs:element name="tocpart">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="tocentry"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="tocchap"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="tocpart.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of tocpart.element -->
+ <xs:attributeGroup name="tocpart.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="tocpart.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of tocpart.attlist -->
+ <!-- end of tocpart.module -->
+ <xs:attributeGroup name="tocchap.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An entry in a table of contents for a component in the body of a document. -->
+ <xs:element name="tocchap">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="tocentry"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="toclevel1"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="tocchap.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of tocchap.element -->
+ <xs:attributeGroup name="tocchap.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="tocchap.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of tocchap.attlist -->
+ <!-- end of tocchap.module -->
+ <xs:attributeGroup name="toclevel1.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A top-level entry within a table of contents entry for a chapter-like component. -->
+ <xs:element name="toclevel1">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="tocentry"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="toclevel2"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="toclevel1.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of toclevel1.element -->
+ <xs:attributeGroup name="toclevel1.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="toclevel1.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of toclevel1.attlist -->
+ <!-- end of toclevel1.module -->
+ <xs:attributeGroup name="toclevel2.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A second-level entry within a table of contents entry for a chapter-like component. -->
+ <xs:element name="toclevel2">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="tocentry"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="toclevel3"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="toclevel2.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of toclevel2.element -->
+ <xs:attributeGroup name="toclevel2.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="toclevel2.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of toclevel2.attlist -->
+ <!-- end of toclevel2.module -->
+ <xs:attributeGroup name="toclevel3.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A third-level entry within a table of contents entry for a chapter-like component. -->
+ <xs:element name="toclevel3">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="tocentry"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="toclevel4"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="toclevel3.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of toclevel3.element -->
+ <xs:attributeGroup name="toclevel3.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="toclevel3.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of toclevel3.attlist -->
+ <!-- end of toclevel3.module -->
+ <xs:attributeGroup name="toclevel4.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A fourth-level entry within a table of contents entry for a chapter-like component. -->
+ <xs:element name="toclevel4">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="tocentry"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="toclevel5"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="toclevel4.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of toclevel4.element -->
+ <xs:attributeGroup name="toclevel4.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="toclevel4.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of toclevel4.attlist -->
+ <!-- end of toclevel4.module -->
+ <xs:attributeGroup name="toclevel5.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A fifth-level entry within a table of contents entry for a chapter-like component. -->
+ <xs:element name="toclevel5">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="tocentry"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="toclevel5.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of toclevel5.element -->
+ <xs:attributeGroup name="toclevel5.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="toclevel5.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of toclevel5.attlist -->
+ <!-- end of toclevel5.module -->
+ <xs:attributeGroup name="tocback.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An entry in a table of contents for a back matter component. -->
+ <xs:element name="tocback">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="tocback.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of tocback.element -->
+ <!-- to element that this entry represents -->
+ <xs:attributeGroup name="tocback.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="linkend.attrib"/>
+ <xs:attributeGroup ref="pagenum.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="tocback.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of tocback.attlist -->
+ <!-- end of tocback.module -->
+ <!-- end of toc.content.module -->
+ <xs:attributeGroup name="lot.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A list of the titles of formal objects (as tables or figures) in a document. -->
+ <xs:element name="lot">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="beginpage"/>
+ <xs:group minOccurs="0" ref="bookcomponent.title.content"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="lotentry"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="lot.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of lot.element -->
+ <xs:attributeGroup name="lot.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="lot.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of lot.attlist -->
+ <!-- end of lot.module -->
+ <xs:attributeGroup name="lotentry.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An entry in a list of titles. -->
+ <xs:element name="lotentry">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="lotentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of lotentry.element -->
+ <!--
+ SrcCredit: Information about the source of the entry,
+ as for a list of illustrations
+ -->
+ <!-- linkend: to element that this entry represents -->
+ <xs:attributeGroup name="lotentry.attlist">
+ <xs:attributeGroup ref="linkend.attrib"/>
+ <xs:attributeGroup ref="pagenum.attrib"/>
+ <xs:attribute name="srccredit"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="lotentry.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of lotentry.attlist -->
+ <!-- end of lotentry.module -->
+ <!-- end of lot.content.module -->
+ <!-- ...................................................................... -->
+ <!-- Appendix, Chapter, Part, Preface, Reference, PartIntro ............... -->
+ <xs:attributeGroup name="appendix.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An appendix in a Book or Article. -->
+ <xs:element name="appendix" substitutionGroup="appendix.class"/>
+ <!-- end of appendix.element -->
+ <xs:attributeGroup name="appendix.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="appendix.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of appendix.attlist -->
+ <!-- end of appendix.module -->
+ <xs:attributeGroup name="chapter.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A chapter, as of a book. -->
+ <xs:element name="chapter" substitutionGroup="chapter.class"/>
+ <!-- end of chapter.element -->
+ <xs:attributeGroup name="chapter.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="chapter.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of chapter.attlist -->
+ <!-- end of chapter.module -->
+ <!--
+ Note that Part was to have its content model reduced in V4.5. This
+ change will not be made after all.
+ -->
+ <xs:attributeGroup name="part.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A division in a book. -->
+ <xs:element name="part">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="beginpage"/>
+ <xs:element minOccurs="0" ref="partinfo"/>
+ <xs:group ref="bookcomponent.title.content"/>
+ <xs:element minOccurs="0" ref="partintro"/>
+ <xs:group maxOccurs="unbounded" ref="partcontent.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="part.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of part.element -->
+ <xs:attributeGroup name="part.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="part.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of part.attlist -->
+ <!-- ELEMENT PartIntro (defined below) -->
+ <!-- end of part.module -->
+ <xs:attributeGroup name="preface.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Introductory matter preceding the first chapter of a book. -->
+ <xs:element name="preface">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="beginpage"/>
+ <xs:element minOccurs="0" ref="prefaceinfo"/>
+ <xs:group ref="bookcomponent.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ <xs:element minOccurs="0" ref="tocchap"/>
+ <xs:group ref="bookcomponent.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="preface.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of preface.element -->
+ <xs:attributeGroup name="preface.attlist">
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="preface.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of preface.attlist -->
+ <!-- end of preface.module -->
+ <xs:attributeGroup name="reference.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A collection of reference entries. -->
+ <xs:element name="reference">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="beginpage"/>
+ <xs:element minOccurs="0" ref="referenceinfo"/>
+ <xs:group ref="bookcomponent.title.content"/>
+ <xs:element minOccurs="0" ref="partintro"/>
+ <xs:element maxOccurs="unbounded" ref="refentry.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="reference.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of reference.element -->
+ <xs:attributeGroup name="reference.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="reference.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of reference.attlist -->
+ <!-- ELEMENT PartIntro (defined below) -->
+ <!-- end of reference.module -->
+ <xs:attributeGroup name="partintro.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An introduction to the contents of a part. -->
+ <xs:element name="partintro">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group minOccurs="0" ref="div.title.content"/>
+ <xs:group ref="bookcomponent.content"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="partintro.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of partintro.element -->
+ <xs:attributeGroup name="partintro.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="partintro.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of partintro.attlist -->
+ <!-- end of partintro.module -->
+ <!-- ...................................................................... -->
+ <!-- Other Info elements .................................................. -->
+ <xs:attributeGroup name="appendixinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for an Appendix. -->
+ <xs:element name="appendixinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="appendixinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of appendixinfo.element -->
+ <xs:attributeGroup name="appendixinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="appendixinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of appendixinfo.attlist -->
+ <!-- end of appendixinfo.module -->
+ <xs:attributeGroup name="bibliographyinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Bibliography. -->
+ <xs:element name="bibliographyinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="bibliographyinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of bibliographyinfo.element -->
+ <xs:attributeGroup name="bibliographyinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="bibliographyinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of bibliographyinfo.attlist -->
+ <!-- end of bibliographyinfo.module -->
+ <xs:attributeGroup name="chapterinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Chapter. -->
+ <xs:element name="chapterinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="chapterinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of chapterinfo.element -->
+ <xs:attributeGroup name="chapterinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="chapterinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of chapterinfo.attlist -->
+ <!-- end of chapterinfo.module -->
+ <xs:attributeGroup name="glossaryinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Glossary. -->
+ <xs:element name="glossaryinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="glossaryinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of glossaryinfo.element -->
+ <xs:attributeGroup name="glossaryinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="glossaryinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of glossaryinfo.attlist -->
+ <!-- end of glossaryinfo.module -->
+ <xs:attributeGroup name="indexinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for an Index. -->
+ <xs:element name="indexinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="indexinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of indexinfo.element -->
+ <xs:attributeGroup name="indexinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="indexinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of indexinfo.attlist -->
+ <!-- end of indexinfo.module -->
+ <xs:attributeGroup name="setindexinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a SetIndex. -->
+ <xs:element name="setindexinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="setindexinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of setindexinfo.element -->
+ <xs:attributeGroup name="setindexinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="setindexinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of setindexinfo.attlist -->
+ <!-- end of setindexinfo.module -->
+ <xs:attributeGroup name="partinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Part. -->
+ <xs:element name="partinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="partinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of partinfo.element -->
+ <xs:attributeGroup name="partinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="partinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of partinfo.attlist -->
+ <!-- end of partinfo.module -->
+ <xs:attributeGroup name="prefaceinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Preface. -->
+ <xs:element name="prefaceinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="prefaceinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of prefaceinfo.element -->
+ <xs:attributeGroup name="prefaceinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="prefaceinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of prefaceinfo.attlist -->
+ <!-- end of prefaceinfo.module -->
+ <xs:attributeGroup name="refentryinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Refentry. -->
+ <xs:element name="refentryinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="refentryinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refentryinfo.element -->
+ <xs:attributeGroup name="refentryinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refentryinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refentryinfo.attlist -->
+ <!-- end of refentryinfo.module -->
+ <xs:attributeGroup name="refsectioninfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a refsection. -->
+ <xs:element name="refsectioninfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="refsectioninfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refsectioninfo.element -->
+ <xs:attributeGroup name="refsectioninfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refsectioninfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refsectioninfo.attlist -->
+ <!-- end of refsectioninfo.module -->
+ <xs:attributeGroup name="refsect1info.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a RefSect1. -->
+ <xs:element name="refsect1info">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="refsect1info.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refsect1info.element -->
+ <xs:attributeGroup name="refsect1info.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refsect1info.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refsect1info.attlist -->
+ <!-- end of refsect1info.module -->
+ <xs:attributeGroup name="refsect2info.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a RefSect2. -->
+ <xs:element name="refsect2info">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="refsect2info.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refsect2info.element -->
+ <xs:attributeGroup name="refsect2info.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refsect2info.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refsect2info.attlist -->
+ <!-- end of refsect2info.module -->
+ <xs:attributeGroup name="refsect3info.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a RefSect3. -->
+ <xs:element name="refsect3info">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="refsect3info.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refsect3info.element -->
+ <xs:attributeGroup name="refsect3info.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refsect3info.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refsect3info.attlist -->
+ <!-- end of refsect3info.module -->
+ <xs:attributeGroup name="refsynopsisdivinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a RefSynopsisDiv. -->
+ <xs:element name="refsynopsisdivinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="refsynopsisdivinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refsynopsisdivinfo.element -->
+ <xs:attributeGroup name="refsynopsisdivinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refsynopsisdivinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refsynopsisdivinfo.attlist -->
+ <!-- end of refsynopsisdivinfo.module -->
+ <xs:attributeGroup name="referenceinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Reference. -->
+ <xs:element name="referenceinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="referenceinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of referenceinfo.element -->
+ <xs:attributeGroup name="referenceinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="referenceinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of referenceinfo.attlist -->
+ <!-- end of referenceinfo.module -->
+ <xs:attributeGroup name="sect1info.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Sect1. -->
+ <xs:element name="sect1info">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="sect1info.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sect1info.element -->
+ <xs:attributeGroup name="sect1info.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sect1info.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sect1info.attlist -->
+ <xs:attributeGroup name="sect2info.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Sect2. -->
+ <xs:element name="sect2info">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="sect2info.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sect2info.element -->
+ <xs:attributeGroup name="sect2info.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sect2info.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sect2info.attlist -->
+ <xs:attributeGroup name="sect3info.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Sect3. -->
+ <xs:element name="sect3info">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="sect3info.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sect3info.element -->
+ <xs:attributeGroup name="sect3info.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sect3info.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sect3info.attlist -->
+ <xs:attributeGroup name="sect4info.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Sect4. -->
+ <xs:element name="sect4info">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="sect4info.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sect4info.element -->
+ <xs:attributeGroup name="sect4info.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sect4info.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sect4info.attlist -->
+ <xs:attributeGroup name="sect5info.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Sect5. -->
+ <xs:element name="sect5info">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="sect5info.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sect5info.element -->
+ <xs:attributeGroup name="sect5info.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sect5info.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sect5info.attlist -->
+ <!-- ...................................................................... -->
+ <!-- Section (parallel to Sect*) ......................................... -->
+ <xs:attributeGroup name="section.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A recursive section. -->
+ <xs:element name="section" substitutionGroup="section.class"/>
+ <!-- end of section.element -->
+ <xs:attributeGroup name="section.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="section.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of section.attlist -->
+ <!-- end of section.module -->
+ <xs:attributeGroup name="sectioninfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a recursive section. -->
+ <xs:element name="sectioninfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="sectioninfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sectioninfo.element -->
+ <xs:attributeGroup name="sectioninfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sectioninfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sectioninfo.attlist -->
+ <!-- end of sectioninfo.module -->
+ <!-- end of section.content.module -->
+ <!-- ...................................................................... -->
+ <!-- Sect1, Sect2, Sect3, Sect4, Sect5 .................................... -->
+ <xs:attributeGroup name="sect1.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A top-level section of document. -->
+ <xs:element name="sect1">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="sect1info"/>
+ <xs:group ref="sect.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="divcomponent.mix"/>
+ <xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="refentry.class"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="sect2"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="simplesect"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="refentry.class"/>
+ <xs:element maxOccurs="unbounded" ref="sect2"/>
+ <xs:element maxOccurs="unbounded" ref="simplesect"/>
+ </xs:choice>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="sect1.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sect1.element -->
+ <!--
+ Renderas: Indicates the format in which the heading should
+ appear
+ -->
+ <xs:attributeGroup name="sect1.attlist">
+ <xs:attribute name="renderas">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="sect2"/>
+ <xs:enumeration value="sect3"/>
+ <xs:enumeration value="sect4"/>
+ <xs:enumeration value="sect5"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sect1.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sect1.attlist -->
+ <!-- end of sect1.module -->
+ <xs:attributeGroup name="sect2.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A subsection within a Sect1. -->
+ <xs:element name="sect2">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="sect2info"/>
+ <xs:group ref="sect.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="divcomponent.mix"/>
+ <xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="refentry.class"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="sect3"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="simplesect"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="refentry.class"/>
+ <xs:element maxOccurs="unbounded" ref="sect3"/>
+ <xs:element maxOccurs="unbounded" ref="simplesect"/>
+ </xs:choice>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="sect2.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sect2.element -->
+ <!--
+ Renderas: Indicates the format in which the heading should
+ appear
+ -->
+ <xs:attributeGroup name="sect2.attlist">
+ <xs:attribute name="renderas">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="sect1"/>
+ <xs:enumeration value="sect3"/>
+ <xs:enumeration value="sect4"/>
+ <xs:enumeration value="sect5"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sect2.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sect2.attlist -->
+ <!-- end of sect2.module -->
+ <xs:attributeGroup name="sect3.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A subsection within a Sect2. -->
+ <xs:element name="sect3">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="sect3info"/>
+ <xs:group ref="sect.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="divcomponent.mix"/>
+ <xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="refentry.class"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="sect4"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="simplesect"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="refentry.class"/>
+ <xs:element maxOccurs="unbounded" ref="sect4"/>
+ <xs:element maxOccurs="unbounded" ref="simplesect"/>
+ </xs:choice>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="sect3.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sect3.element -->
+ <!--
+ Renderas: Indicates the format in which the heading should
+ appear
+ -->
+ <xs:attributeGroup name="sect3.attlist">
+ <xs:attribute name="renderas">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="sect1"/>
+ <xs:enumeration value="sect2"/>
+ <xs:enumeration value="sect4"/>
+ <xs:enumeration value="sect5"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sect3.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sect3.attlist -->
+ <!-- end of sect3.module -->
+ <xs:attributeGroup name="sect4.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A subsection within a Sect3. -->
+ <xs:element name="sect4">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="sect4info"/>
+ <xs:group ref="sect.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="divcomponent.mix"/>
+ <xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="refentry.class"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="sect5"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="simplesect"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="refentry.class"/>
+ <xs:element maxOccurs="unbounded" ref="sect5"/>
+ <xs:element maxOccurs="unbounded" ref="simplesect"/>
+ </xs:choice>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="sect4.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sect4.element -->
+ <!--
+ Renderas: Indicates the format in which the heading should
+ appear
+ -->
+ <xs:attributeGroup name="sect4.attlist">
+ <xs:attribute name="renderas">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="sect1"/>
+ <xs:enumeration value="sect2"/>
+ <xs:enumeration value="sect3"/>
+ <xs:enumeration value="sect5"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sect4.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sect4.attlist -->
+ <!-- end of sect4.module -->
+ <xs:attributeGroup name="sect5.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A subsection within a Sect4. -->
+ <xs:element name="sect5">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="sect5info"/>
+ <xs:group ref="sect.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="divcomponent.mix"/>
+ <xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="refentry.class"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="simplesect"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="refentry.class"/>
+ <xs:element maxOccurs="unbounded" ref="simplesect"/>
+ </xs:choice>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="nav.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="sect5.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sect5.element -->
+ <!--
+ Renderas: Indicates the format in which the heading should
+ appear
+ -->
+ <xs:attributeGroup name="sect5.attlist">
+ <xs:attribute name="renderas">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="sect1"/>
+ <xs:enumeration value="sect2"/>
+ <xs:enumeration value="sect3"/>
+ <xs:enumeration value="sect4"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sect5.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sect5.attlist -->
+ <!-- end of sect5.module -->
+ <xs:attributeGroup name="simplesect.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A section of a document with no subdivisions. -->
+ <xs:element name="simplesect">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="sect.title.content"/>
+ <xs:group maxOccurs="unbounded" ref="divcomponent.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="simplesect.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of simplesect.element -->
+ <xs:attributeGroup name="simplesect.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="simplesect.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of simplesect.attlist -->
+ <!-- end of simplesect.module -->
+ <!-- ...................................................................... -->
+ <!-- Bibliography ......................................................... -->
+ <xs:attributeGroup name="bibliography.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A bibliography. -->
+ <xs:element name="bibliography">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="bibliographyinfo"/>
+ <xs:group minOccurs="0" ref="bookcomponent.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="component.mix"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="bibliodiv"/>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="biblioentry"/>
+ <xs:element ref="bibliomixed"/>
+ </xs:choice>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="bibliography.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of bibliography.element -->
+ <xs:attributeGroup name="bibliography.attlist">
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="bibliography.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of bibliography.attlist -->
+ <!-- end of bibliography.module -->
+ <xs:attributeGroup name="bibliodiv.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A section of a Bibliography. -->
+ <xs:element name="bibliodiv">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group minOccurs="0" ref="sect.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="component.mix"/>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="biblioentry"/>
+ <xs:element ref="bibliomixed"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="bibliodiv.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of bibliodiv.element -->
+ <xs:attributeGroup name="bibliodiv.attlist">
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="bibliodiv.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of bibliodiv.attlist -->
+ <!-- end of bibliodiv.module -->
+ <!-- end of bibliography.content.module -->
+ <!-- ...................................................................... -->
+ <!-- Glossary ............................................................. -->
+ <xs:attributeGroup name="glossary.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A glossary. -->
+ <xs:element name="glossary">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="glossaryinfo"/>
+ <xs:group minOccurs="0" ref="bookcomponent.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="component.mix"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="glossdiv"/>
+ <xs:element maxOccurs="unbounded" ref="glossentry"/>
+ </xs:choice>
+ <xs:element minOccurs="0" ref="bibliography"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="glossary.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of glossary.element -->
+ <xs:attributeGroup name="glossary.attlist">
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="glossary.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of glossary.attlist -->
+ <!-- end of glossary.module -->
+ <xs:attributeGroup name="glossdiv.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A division in a Glossary. -->
+ <xs:element name="glossdiv">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="sect.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="component.mix"/>
+ <xs:element maxOccurs="unbounded" ref="glossentry"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="glossdiv.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of glossdiv.element -->
+ <xs:attributeGroup name="glossdiv.attlist">
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="glossdiv.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of glossdiv.attlist -->
+ <!-- end of glossdiv.module -->
+ <!-- end of glossary.content.module -->
+ <!-- ...................................................................... -->
+ <!-- Index and SetIndex ................................................... -->
+ <xs:attributeGroup name="indexes.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An index. -->
+ <xs:element name="index">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="indexinfo"/>
+ <xs:group minOccurs="0" ref="bookcomponent.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="component.mix"/>
+ <xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="indexdiv"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="indexentry"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="index.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of index.element -->
+ <xs:attributeGroup name="index.attlist">
+ <xs:attribute name="type"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="indexes.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of index.attlist -->
+ <!-- doc:An index to a set of books. -->
+ <xs:element name="setindex">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="setindexinfo"/>
+ <xs:group minOccurs="0" ref="bookcomponent.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="component.mix"/>
+ <xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="indexdiv"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="indexentry"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="setindex.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of setindex.element -->
+ <xs:attributeGroup name="setindex.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="indexes.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of setindex.attlist -->
+ <!-- end of indexes.module -->
+ <!--
+ SegmentedList in this content is useful for marking up permuted
+ indices.
+ -->
+ <xs:attributeGroup name="indexdiv.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A division in an index. -->
+ <xs:element name="indexdiv">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group minOccurs="0" ref="sect.title.content"/>
+ <xs:sequence>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="indexdivcomponent.mix"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="indexentry"/>
+ <xs:element ref="segmentedlist"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:sequence>
+ <xs:attributeGroup ref="indexdiv.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of indexdiv.element -->
+ <xs:attributeGroup name="indexdiv.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="indexdiv.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of indexdiv.attlist -->
+ <!-- end of indexdiv.module -->
+ <!-- Index entries appear in the index, not the text. -->
+ <xs:attributeGroup name="indexentry.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An entry in an index. -->
+ <xs:element name="indexentry">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="primaryie"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="seeie"/>
+ <xs:element ref="seealsoie"/>
+ </xs:choice>
+ <xs:sequence minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="secondaryie"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="seeie"/>
+ <xs:element ref="seealsoie"/>
+ <xs:element ref="tertiaryie"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:sequence>
+ <xs:attributeGroup ref="indexentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of indexentry.element -->
+ <xs:attributeGroup name="indexentry.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="indexentry.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of indexentry.attlist -->
+ <!-- end of indexentry.module -->
+ <xs:attributeGroup name="primsecterie.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A primary term in an index entry, not in the text. -->
+ <xs:element name="primaryie">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="ndxterm.char.mix"/>
+ <xs:attributeGroup ref="primaryie.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of primaryie.element -->
+ <!-- to IndexTerms that these entries represent -->
+ <xs:attributeGroup name="primaryie.attlist">
+ <xs:attributeGroup ref="linkends.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="primsecterie.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of primaryie.attlist -->
+ <!-- doc:A secondary term in an index entry, rather than in the text. -->
+ <xs:element name="secondaryie">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="ndxterm.char.mix"/>
+ <xs:attributeGroup ref="secondaryie.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of secondaryie.element -->
+ <!-- to IndexTerms that these entries represent -->
+ <xs:attributeGroup name="secondaryie.attlist">
+ <xs:attributeGroup ref="linkends.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="primsecterie.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of secondaryie.attlist -->
+ <!-- doc:A tertiary term in an index entry, rather than in the text. -->
+ <xs:element name="tertiaryie">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="ndxterm.char.mix"/>
+ <xs:attributeGroup ref="tertiaryie.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of tertiaryie.element -->
+ <!-- to IndexTerms that these entries represent -->
+ <xs:attributeGroup name="tertiaryie.attlist">
+ <xs:attributeGroup ref="linkends.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="primsecterie.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of tertiaryie.attlist -->
+ <!-- end of primsecterie.module -->
+ <xs:attributeGroup name="seeie.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A See entry in an index, rather than in the text. -->
+ <xs:element name="seeie">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="ndxterm.char.mix"/>
+ <xs:attributeGroup ref="seeie.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of seeie.element -->
+ <!-- to IndexEntry to look up -->
+ <xs:attributeGroup name="seeie.attlist">
+ <xs:attributeGroup ref="linkend.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="seeie.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of seeie.attlist -->
+ <!-- end of seeie.module -->
+ <xs:attributeGroup name="seealsoie.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A See also entry in an index, rather than in the text. -->
+ <xs:element name="seealsoie">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="ndxterm.char.mix"/>
+ <xs:attributeGroup ref="seealsoie.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of seealsoie.element -->
+ <!-- to related IndexEntries -->
+ <xs:attributeGroup name="seealsoie.attlist">
+ <xs:attributeGroup ref="linkends.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="seealsoie.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of seealsoie.attlist -->
+ <!-- end of seealsoie.module -->
+ <!-- end of index.content.module -->
+ <!-- ...................................................................... -->
+ <!-- RefEntry ............................................................. -->
+ <xs:attributeGroup name="refentry.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A reference page (originally a UNIX man-style reference page). -->
+ <xs:element name="refentry" substitutionGroup="refentry.class"/>
+ <!-- end of refentry.element -->
+ <xs:attributeGroup name="refentry.attlist">
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refentry.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refentry.attlist -->
+ <!-- end of refentry.module -->
+ <xs:attributeGroup name="refmeta.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a reference entry. -->
+ <xs:element name="refmeta">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="ndxterm.class"/>
+ <xs:element ref="refentrytitle"/>
+ <xs:element minOccurs="0" ref="manvolnum"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="refmiscinfo"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="ndxterm.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="refmeta.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refmeta.element -->
+ <xs:attributeGroup name="refmeta.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refmeta.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refmeta.attlist -->
+ <!-- end of refmeta.module -->
+ <xs:attributeGroup name="refmiscinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a reference entry other than the title and volume number. -->
+ <xs:element name="refmiscinfo">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="refmiscinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refmiscinfo.element -->
+ <!-- Class: Freely assignable parameter; no default -->
+ <xs:attributeGroup name="refmiscinfo.attlist">
+ <xs:attribute name="class"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refmiscinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refmiscinfo.attlist -->
+ <!-- end of refmiscinfo.module -->
+ <xs:attributeGroup name="refnamediv.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name, purpose, and classification of a reference page. -->
+ <xs:element name="refnamediv">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="refdescriptor"/>
+ <xs:element maxOccurs="unbounded" ref="refname"/>
+ <xs:element ref="refpurpose"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="refclass"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="remark"/>
+ <xs:element ref="link.char.class"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="refnamediv.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refnamediv.element -->
+ <xs:attributeGroup name="refnamediv.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refnamediv.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refnamediv.attlist -->
+ <!-- end of refnamediv.module -->
+ <xs:attributeGroup name="refdescriptor.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A description of the topic of a reference page. -->
+ <xs:element name="refdescriptor">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="refname.char.mix"/>
+ <xs:attributeGroup ref="refdescriptor.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refdescriptor.element -->
+ <xs:attributeGroup name="refdescriptor.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refdescriptor.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refdescriptor.attlist -->
+ <!-- end of refdescriptor.module -->
+ <xs:attributeGroup name="refname.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of (one of) the subject(s) of a reference page. -->
+ <xs:element name="refname">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="refname.char.mix"/>
+ <xs:attributeGroup ref="refname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refname.element -->
+ <xs:attributeGroup name="refname.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refname.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refname.attlist -->
+ <!-- end of refname.module -->
+ <xs:attributeGroup name="refpurpose.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A short (one sentence) synopsis of the topic of a reference page. -->
+ <xs:element name="refpurpose">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="refinline.char.mix"/>
+ <xs:attributeGroup ref="refpurpose.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refpurpose.element -->
+ <xs:attributeGroup name="refpurpose.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refpurpose.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refpurpose.attlist -->
+ <!-- end of refpurpose.module -->
+ <xs:attributeGroup name="refclass.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The scope or other indication of applicability of a reference entry. -->
+ <xs:element name="refclass">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="refclass.char.mix"/>
+ <xs:attributeGroup ref="refclass.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refclass.element -->
+ <xs:attributeGroup name="refclass.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refclass.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refclass.attlist -->
+ <!-- end of refclass.module -->
+ <xs:attributeGroup name="refsynopsisdiv.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A syntactic synopsis of the subject of the reference page. -->
+ <xs:element name="refsynopsisdiv">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="refsynopsisdivinfo"/>
+ <xs:group minOccurs="0" ref="refsect.title.content"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="refcomponent.mix"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="refsect2"/>
+ </xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="refsect2"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="refsynopsisdiv.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refsynopsisdiv.element -->
+ <xs:attributeGroup name="refsynopsisdiv.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refsynopsisdiv.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refsynopsisdiv.attlist -->
+ <!-- end of refsynopsisdiv.module -->
+ <xs:attributeGroup name="refsection.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A recursive section in a refentry. -->
+ <xs:element name="refsection">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="refsectioninfo"/>
+ <xs:group ref="refsect.title.content"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="refcomponent.mix"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="refsection"/>
+ </xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="refsection"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="refsection.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refsection.element -->
+ <xs:attributeGroup name="refsection.attlist">
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refsection.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refsection.attlist -->
+ <!-- end of refsection.module -->
+ <xs:attributeGroup name="refsect1.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A major subsection of a reference entry. -->
+ <xs:element name="refsect1">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="refsect1info"/>
+ <xs:group ref="refsect.title.content"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="refcomponent.mix"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="refsect2"/>
+ </xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="refsect2"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="refsect1.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refsect1.element -->
+ <xs:attributeGroup name="refsect1.attlist">
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refsect1.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refsect1.attlist -->
+ <!-- end of refsect1.module -->
+ <xs:attributeGroup name="refsect2.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A subsection of a RefSect1. -->
+ <xs:element name="refsect2">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="refsect2info"/>
+ <xs:group ref="refsect.title.content"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="refcomponent.mix"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="refsect3"/>
+ </xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="refsect3"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="refsect2.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refsect2.element -->
+ <xs:attributeGroup name="refsect2.attlist">
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refsect2.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refsect2.attlist -->
+ <!-- end of refsect2.module -->
+ <xs:attributeGroup name="refsect3.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A subsection of a RefSect2. -->
+ <xs:element name="refsect3">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="refsect3info"/>
+ <xs:group ref="refsect.title.content"/>
+ <xs:group maxOccurs="unbounded" ref="refcomponent.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="refsect3.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refsect3.element -->
+ <xs:attributeGroup name="refsect3.attlist">
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refsect3.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refsect3.attlist -->
+ <!-- end of refsect3.module -->
+ <!-- end of refentry.content.module -->
+ <!-- ...................................................................... -->
+ <!-- Article .............................................................. -->
+ <!--
+ An Article is a chapter-level, stand-alone document that is often,
+ but need not be, collected into a Book.
+ -->
+ <xs:attributeGroup name="article.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An article. -->
+ <xs:element name="article" substitutionGroup="article.class"/>
+ <!-- end of article.element -->
+ <!--
+ Class: Indicates the type of a particular article;
+ all articles have the same structure and general purpose.
+ No default.
+ -->
+ <!-- ParentBook: ID of the enclosing Book -->
+ <xs:attributeGroup name="article.attlist">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="journalarticle"/>
+ <xs:enumeration value="productsheet"/>
+ <xs:enumeration value="whitepaper"/>
+ <xs:enumeration value="techreport"/>
+ <xs:enumeration value="specification"/>
+ <xs:enumeration value="faq"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="parentbook" type="xs:IDREF"/>
+ <xs:attributeGroup ref="status.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="article.role.attrib"/>
+ </xs:attributeGroup>
+</xs:schema>
+<!-- end of article.attlist -->
+<!-- end of article.module -->
+<!-- End of SCons DocBook V4.5-Based extension V1.0 XML document hierarchy module V4.5 -->
+<!-- ................................................................................. -->
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/scons_xsd/dbnotnx.xsd b/doc/editor_configs/xmlmind/addon/config/scons/scons_xsd/dbnotnx.xsd
new file mode 100644
index 0000000..36f690f
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/scons_xsd/dbnotnx.xsd
@@ -0,0 +1,102 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- ...................................................................... -->
+<!-- SCons DocBook V4.5-Based extension V1.0 XML notations ................ -->
+<!-- File dbnotnx.xsd ..................................................... -->
+<!-- Copyright (c) 2001-7,2010,2011,2012 The SCons Foundation
+
+ Permission is hereby granted, free of charge, to any person obtaining
+ a copy of this software and associated documentation files (the
+ "Software"), to deal in the Software without restriction, including
+ without limitation the rights to use, copy, modify, merge, publish,
+ distribute, sublicense, and/or sell copies of the Software, and to
+ permit persons to whom the Software is furnished to do so, subject to
+ the following conditions:
+
+ The above copyright notice and this permission notice shall be included
+ in all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
+ KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+ WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+ This DTD extension is based on the DocBook notations module V4.5 with:
+
+ Copyright 1992-2004 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).
+
+ $Id: dbnotnx.mod 6340 2006-10-03 13:23:24Z nwalsh $
+
+ 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/.
+ For the modified SCons extension files
+
+ scons.xsd, dbpoolx.xsd,
+
+ you can write to its developer mailing list. Check out
+ http://www.scons.org/ and http://www.scons.org/lists.php.
+
+-->
+<!-- ...................................................................... -->
+<!--
+ This module contains the notation declarations used by DocBook.
+
+ In DTD driver files referring to this module, please use an entity
+ declaration that uses the public identifier shown below:
+
+ <!ENTITY % dbnotn PUBLIC
+ "-//OASIS//ENTITIES DocBook Notations V4.5//EN"
+ "dbnotnx.mod">
+ %dbnotn;
+
+ See the documentation for detailed information on the parameter
+ entity and module scheme used in DocBook, customizing DocBook and
+ planning for interchange, and changes made since the last release
+ of DocBook.
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <xs:simpleType name="notation.class">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="BMP"/>
+ <xs:enumeration value="CGM-CHAR"/>
+ <xs:enumeration value="CGM-BINARY"/>
+ <xs:enumeration value="CGM-CLEAR"/>
+ <xs:enumeration value="DITROFF"/>
+ <xs:enumeration value="DVI"/>
+ <xs:enumeration value="EPS"/>
+ <xs:enumeration value="EQN"/>
+ <xs:enumeration value="FAX"/>
+ <xs:enumeration value="GIF"/>
+ <xs:enumeration value="GIF87a"/>
+ <xs:enumeration value="GIF89a"/>
+ <xs:enumeration value="JPG"/>
+ <xs:enumeration value="JPEG"/>
+ <xs:enumeration value="IGES"/>
+ <xs:enumeration value="PCX"/>
+ <xs:enumeration value="PIC"/>
+ <xs:enumeration value="PNG"/>
+ <xs:enumeration value="PS"/>
+ <xs:enumeration value="SGML"/>
+ <xs:enumeration value="TBL"/>
+ <xs:enumeration value="TEX"/>
+ <xs:enumeration value="TIFF"/>
+ <xs:enumeration value="WMF"/>
+ <xs:enumeration value="WPG"/>
+ <xs:enumeration value="SVG"/>
+ <xs:enumeration value="PDF"/>
+ <xs:enumeration value="SWF"/>
+ <xs:enumeration value="linespecific"/>
+ </xs:restriction>
+ </xs:simpleType>
+</xs:schema>
+<!-- WordPerfect Graphic format -->
+<!-- End of SCons DocBook V4.5-Based extension V1.0 XML notations ......... -->
+<!-- ...................................................................... -->
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/scons_xsd/dbpoolx.xsd b/doc/editor_configs/xmlmind/addon/config/scons/scons_xsd/dbpoolx.xsd
new file mode 100644
index 0000000..0ce5cb7
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/scons_xsd/dbpoolx.xsd
@@ -0,0 +1,8682 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- ...................................................................... -->
+<!-- SCons DocBook V4.5-Based extension V1.0 XML information pool module .. -->
+<!-- File dbpoolx.xsd ..................................................... -->
+<!-- Copyright (c) 2001-7,2010,2011,2012 The SCons Foundation
+
+ Permission is hereby granted, free of charge, to any person obtaining
+ a copy of this software and associated documentation files (the
+ "Software"), to deal in the Software without restriction, including
+ without limitation the rights to use, copy, modify, merge, publish,
+ distribute, sublicense, and/or sell copies of the Software, and to
+ permit persons to whom the Software is furnished to do so, subject to
+ the following conditions:
+
+ The above copyright notice and this permission notice shall be included
+ in all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
+ KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+ WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+ This DTD extension is based on the Docbook XML information pool
+ module V4.5 with:
+
+ Copyright 1992-2004 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).
+
+ $Id: dbpoolx.mod 6340 2006-10-03 13:23:24Z nwalsh $
+
+ 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/.
+ For the modified SCons extension files
+
+ scons.xsd, dbpoolx.xsd,
+
+ you can write to its developer mailing list. Check out
+ http://www.scons.org/ and http://www.scons.org/lists.php.
+
+-->
+<!-- ...................................................................... -->
+<!--
+ This module contains the definitions for the objects, inline
+ elements, and so on that are available to be used as the main
+ content of DocBook documents. Some elements are useful for general
+ publishing, and others are useful specifically for computer
+ documentation.
+
+ This module has the following dependencies on other modules:
+
+ o It assumes that a %notation.class; entity is defined by the
+ driver file or other high-level module. This entity is
+ referenced in the NOTATION attributes for the graphic-related and
+ ModeSpec elements.
+
+ o It assumes that an appropriately parameterized table module is
+ available for use with the table-related elements.
+
+ In DTD driver files referring to this module, please use an entity
+ declaration that uses the public identifier shown below:
+
+ <!ENTITY % dbpool PUBLIC
+ "-//OASIS//ELEMENTS DocBook XML Information Pool V4.5//EN"
+ "dbpoolx.mod">
+ %dbpool;
+
+ See the documentation for detailed information on the parameter
+ entity and module scheme used in DocBook, customizing DocBook and
+ planning for interchange, and changes made since the last release
+ of DocBook.
+-->
+<!-- ...................................................................... -->
+<!-- Forms entities ....................................................... -->
+<!-- These PEs provide the hook by which the forms module can be inserted -->
+<!-- into the DTD. -->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+ <xs:include schemaLocation="htmltblx.xsd"/>
+ <xs:include schemaLocation="calstblx.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <!-- ...................................................................... -->
+ <!-- General-purpose semantics entities ................................... -->
+ <xs:simpleType name="yesorno.attvals">
+ <xs:restriction base="xs:string"/>
+ </xs:simpleType>
+ <!-- ...................................................................... -->
+ <!-- Entities for module inclusions ....................................... -->
+ <!-- ...................................................................... -->
+ <!-- Entities for element classes and mixtures ............................ -->
+ <!-- "Ubiquitous" classes: ndxterm.class and beginpage -->
+ <xs:element name="ndxterm.class" abstract="true">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="primary"/>
+ <xs:choice minOccurs="0">
+ <xs:sequence>
+ <xs:element ref="secondary"/>
+ <xs:choice minOccurs="0">
+ <xs:sequence>
+ <xs:element ref="tertiary"/>
+ <xs:choice minOccurs="0">
+ <xs:element ref="see"/>
+ <xs:element maxOccurs="unbounded" ref="seealso"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:element ref="see"/>
+ <xs:element maxOccurs="unbounded" ref="seealso"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:element ref="see"/>
+ <xs:element maxOccurs="unbounded" ref="seealso"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="indexterm.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- Object-level classes ................................................. -->
+ <xs:element name="list.class" abstract="true"/>
+ <xs:element name="admon.class" abstract="true"/>
+ <xs:element name="linespecific.class" abstract="true"/>
+ <xs:element name="method.synop.class" abstract="true" substitutionGroup="synop.class"/>
+ <xs:element name="synop.class" abstract="true"/>
+ <xs:element name="para.class" abstract="true"/>
+ <xs:element name="informal.class" abstract="true"/>
+ <xs:element name="formal.class" abstract="true"/>
+ <!-- The DocBook TC may produce an official EBNF module for DocBook. -->
+ <!-- This PE provides the hook by which it can be inserted into the DTD. -->
+ <xs:element name="compound.class" abstract="true"/>
+ <xs:group name="genobj.class">
+ <xs:choice>
+ <xs:element ref="anchor"/>
+ <xs:element ref="bridgehead"/>
+ <xs:element ref="remark"/>
+ <xs:element ref="highlights"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="descobj.class">
+ <xs:choice>
+ <xs:element ref="abstract"/>
+ <xs:element ref="authorblurb"/>
+ <xs:element ref="epigraph"/>
+ </xs:choice>
+ </xs:group>
+ <!-- Character-level classes .............................................. -->
+ <xs:element name="xref.char.class" abstract="true"/>
+ <xs:element name="gen.char.class" abstract="true"/>
+ <xs:element name="link.char.class" abstract="true"/>
+ <!-- The DocBook TC may produce an official EBNF module for DocBook. -->
+ <!-- This PE provides the hook by which it can be inserted into the DTD. -->
+ <xs:element name="tech.char.class" abstract="true"/>
+ <xs:group name="base.char.class">
+ <xs:sequence>
+ <xs:element ref="anchor"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="docinfo.char.class" abstract="true"/>
+ <xs:group name="other.char.class">
+ <xs:choice>
+ <xs:element ref="remark"/>
+ <xs:element ref="subscript"/>
+ <xs:element ref="superscript"/>
+ </xs:choice>
+ </xs:group>
+ <xs:element name="inlineobj.char.class" abstract="true"/>
+ <!-- ...................................................................... -->
+ <!-- Entities for content models .......................................... -->
+ <xs:group name="formalobject.title.content">
+ <xs:sequence>
+ <xs:element ref="title"/>
+ <xs:element minOccurs="0" ref="titleabbrev"/>
+ </xs:sequence>
+ </xs:group>
+ <!-- Redeclaration placeholder ............................................ -->
+ <!--
+ For redeclaring entities that are declared after this point while
+ retaining their references to the entities that are declared before
+ this point
+ -->
+ <!-- Object-level mixtures ................................................ -->
+ <!--
+ list admn line synp para infm form cmpd gen desc
+ Component mixture X X X X X X X X X X
+ Sidebar mixture X X X X X X X a X
+ Footnote mixture X X X X X
+ Example mixture X X X X X
+ Highlights mixture X X X
+ Paragraph mixture X X X X
+ Admonition mixture X X X X X X b c
+ Figure mixture X X X
+ Table entry mixture X X X X d
+ Glossary def mixture X X X X X e
+ Legal notice mixture X X X X f
+
+ a. Just Procedure; not Sidebar itself or MsgSet.
+ b. No MsgSet.
+ c. No Highlights.
+ d. Just Graphic; no other informal objects.
+ e. No Anchor, BridgeHead, or Highlights.
+ f. Just BlockQuote; no other informal objects.
+ -->
+ <xs:group name="component.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="admon.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="synop.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="informal.class"/>
+ <xs:element ref="formal.class"/>
+ <xs:element ref="compound.class"/>
+ <xs:group ref="genobj.class"/>
+ <xs:group ref="descobj.class"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="sidebar.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="admon.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="synop.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="informal.class"/>
+ <xs:element ref="formal.class"/>
+ <xs:element ref="procedure"/>
+ <xs:group ref="genobj.class"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="qandaset.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="admon.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="synop.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="informal.class"/>
+ <xs:element ref="formal.class"/>
+ <xs:element ref="procedure"/>
+ <xs:group ref="genobj.class"/>
+ <xs:element ref="ndxterm.class"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="revdescription.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="admon.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="synop.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="informal.class"/>
+ <xs:element ref="formal.class"/>
+ <xs:element ref="procedure"/>
+ <xs:group ref="genobj.class"/>
+ <xs:element ref="ndxterm.class"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="footnote.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="synop.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="informal.class"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="example.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="synop.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="informal.class"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ <xs:element ref="procedure"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="highlights.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="admon.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="ndxterm.class"/>
+ </xs:choice>
+ </xs:group>
+ <!--
+ %formal.class; is explicitly excluded from many contexts in which
+ paragraphs are used
+ -->
+ <xs:group name="para.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="admon.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="informal.class"/>
+ <xs:element ref="formal.class"/>
+ <xs:element ref="sconstruct"/>
+ <xs:element ref="scons_example"/>
+ <xs:element ref="scons_example_file"/>
+ <xs:element ref="scons_output"/>
+ <xs:element ref="sconsdoc"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="summary.mix">
+ <xs:choice>
+ <xs:element ref="example_commands"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="tool.mix">
+ <xs:choice>
+ <xs:element ref="summary"/>
+ <xs:element ref="sets"/>
+ <xs:element ref="uses"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="scons_function.mix">
+ <xs:choice>
+ <xs:element ref="arguments"/>
+ <xs:element ref="summary"/>
+ <xs:element ref="sets"/>
+ <xs:element ref="uses"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="admon.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="synop.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="informal.class"/>
+ <xs:element ref="formal.class"/>
+ <xs:element ref="procedure"/>
+ <xs:element ref="sidebar"/>
+ <xs:element ref="anchor"/>
+ <xs:element ref="bridgehead"/>
+ <xs:element ref="remark"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="figure.mix">
+ <xs:choice>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="synop.class"/>
+ <xs:element ref="informal.class"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="tabentry.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="admon.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="graphic"/>
+ <xs:element ref="mediaobject"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="glossdef.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="synop.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="informal.class"/>
+ <xs:element ref="formal.class"/>
+ <xs:element ref="remark"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="legalnotice.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="admon.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="blockquote"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="textobject.mix">
+ <xs:choice>
+ <xs:element ref="list.class"/>
+ <xs:element ref="admon.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="blockquote"/>
+ </xs:choice>
+ </xs:group>
+ <xs:element name="mediaobject.mix" abstract="true"/>
+ <xs:group name="listpreamble.mix">
+ <xs:choice>
+ <xs:element ref="admon.class"/>
+ <xs:element ref="linespecific.class"/>
+ <xs:element ref="synop.class"/>
+ <xs:element ref="para.class"/>
+ <xs:element ref="informal.class"/>
+ <xs:group ref="genobj.class"/>
+ <xs:group ref="descobj.class"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:group>
+ <!-- Character-level mixtures ............................................. -->
+ <!-- sgml.features -->
+ <!-- not [sgml.features[ -->
+ <!-- ]] not sgml.features -->
+ <!--
+ #PCD xref word link cptr base dnfo othr inob (synop)
+ para.char.mix X X X X X X X X X
+ title.char.mix X X X X X X X X X
+ ndxterm.char.mix X X X X X X X X a
+ cptr.char.mix X X X X X a
+ smallcptr.char.mix X b a
+ word.char.mix X c X X X a
+ docinfo.char.mix X d X b X a
+
+ a. Just InlineGraphic; no InlineEquation.
+ b. Just Replaceable; no other computer terms.
+ c. Just Emphasis and Trademark; no other word elements.
+ d. Just Acronym, Emphasis, and Trademark; no other word elements.
+ -->
+ <xs:group name="para.char.mix">
+ <xs:sequence>
+ <xs:choice minOccurs="0">
+ <xs:element ref="xref.char.class"/>
+ <xs:element ref="gen.char.class"/>
+ <xs:element ref="link.char.class"/>
+ <xs:element ref="tech.char.class"/>
+ <xs:group ref="base.char.class"/>
+ <xs:element ref="docinfo.char.class"/>
+ <xs:group ref="other.char.class"/>
+ <xs:element ref="inlineobj.char.class"/>
+ <xs:element ref="synop.class"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="title.char.mix">
+ <xs:sequence>
+ <xs:choice minOccurs="0">
+ <xs:element ref="xref.char.class"/>
+ <xs:element ref="gen.char.class"/>
+ <xs:element ref="link.char.class"/>
+ <xs:element ref="tech.char.class"/>
+ <xs:group ref="base.char.class"/>
+ <xs:element ref="docinfo.char.class"/>
+ <xs:group ref="other.char.class"/>
+ <xs:element ref="inlineobj.char.class"/>
+ <xs:element ref="ndxterm.class"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="ndxterm.char.mix">
+ <xs:sequence>
+ <xs:choice minOccurs="0">
+ <xs:element ref="xref.char.class"/>
+ <xs:element ref="gen.char.class"/>
+ <xs:element ref="link.char.class"/>
+ <xs:element ref="tech.char.class"/>
+ <xs:group ref="base.char.class"/>
+ <xs:element ref="docinfo.char.class"/>
+ <xs:group ref="other.char.class"/>
+ <xs:element ref="inlinegraphic"/>
+ <xs:element ref="inlinemediaobject"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="cptr.char.mix">
+ <xs:sequence>
+ <xs:choice minOccurs="0">
+ <xs:element ref="link.char.class"/>
+ <xs:element ref="tech.char.class"/>
+ <xs:group ref="base.char.class"/>
+ <xs:group ref="other.char.class"/>
+ <xs:element ref="inlinegraphic"/>
+ <xs:element ref="inlinemediaobject"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="smallcptr.char.mix">
+ <xs:sequence>
+ <xs:choice minOccurs="0">
+ <xs:element ref="replaceable"/>
+ <xs:element ref="inlinegraphic"/>
+ <xs:element ref="inlinemediaobject"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="word.char.mix">
+ <xs:sequence>
+ <xs:choice minOccurs="0">
+ <xs:element ref="acronym"/>
+ <xs:element ref="emphasis"/>
+ <xs:element ref="trademark"/>
+ <xs:element ref="link.char.class"/>
+ <xs:group ref="base.char.class"/>
+ <xs:group ref="other.char.class"/>
+ <xs:element ref="inlinegraphic"/>
+ <xs:element ref="inlinemediaobject"/>
+ <xs:element ref="ndxterm.class"/>
+ <xs:element ref="beginpage"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="docinfo.char.mix">
+ <xs:sequence>
+ <xs:choice minOccurs="0">
+ <xs:element ref="link.char.class"/>
+ <xs:element ref="emphasis"/>
+ <xs:element ref="trademark"/>
+ <xs:element ref="replaceable"/>
+ <xs:group ref="other.char.class"/>
+ <xs:element ref="inlinegraphic"/>
+ <xs:element ref="inlinemediaobject"/>
+ <xs:element ref="ndxterm.class"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+ <!-- ENTITY % bibliocomponent.mix (see Bibliographic section, below) -->
+ <!-- ENTITY % person.ident.mix (see Bibliographic section, below) -->
+ <!-- ...................................................................... -->
+ <!-- Entities for attributes and attribute components ..................... -->
+ <!-- Effectivity attributes ............................................... -->
+ <!--
+ Arch: Computer or chip architecture to which element applies; no
+ default
+ -->
+ <xs:attributeGroup name="arch.attrib">
+ <xs:attribute name="arch"/>
+ </xs:attributeGroup>
+ <!-- Condition: General-purpose effectivity attribute -->
+ <xs:attributeGroup name="condition.attrib">
+ <xs:attribute name="condition"/>
+ </xs:attributeGroup>
+ <!-- Conformance: Standards conformance characteristics -->
+ <xs:attributeGroup name="conformance.attrib">
+ <xs:attribute name="conformance" type="xs:NMTOKENS"/>
+ </xs:attributeGroup>
+ <!-- OS: Operating system to which element applies; no default -->
+ <xs:attributeGroup name="os.attrib">
+ <xs:attribute name="os"/>
+ </xs:attributeGroup>
+ <!-- Revision: Editorial revision to which element belongs; no default -->
+ <xs:attributeGroup name="revision.attrib">
+ <xs:attribute name="revision"/>
+ </xs:attributeGroup>
+ <!-- Security: Security classification; no default -->
+ <xs:attributeGroup name="security.attrib">
+ <xs:attribute name="security"/>
+ </xs:attributeGroup>
+ <!--
+ UserLevel: Level of user experience to which element applies; no
+ default
+ -->
+ <xs:attributeGroup name="userlevel.attrib">
+ <xs:attribute name="userlevel"/>
+ </xs:attributeGroup>
+ <!-- Vendor: Computer vendor to which element applies; no default -->
+ <xs:attributeGroup name="vendor.attrib">
+ <xs:attribute name="vendor"/>
+ </xs:attributeGroup>
+ <!-- Wordsize: Computer word size (32 bit, 64 bit, etc.); no default -->
+ <xs:attributeGroup name="wordsize.attrib">
+ <xs:attribute name="wordsize"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="effectivity.attrib">
+ <xs:attributeGroup ref="arch.attrib"/>
+ <xs:attributeGroup ref="condition.attrib"/>
+ <xs:attributeGroup ref="conformance.attrib"/>
+ <xs:attributeGroup ref="os.attrib"/>
+ <xs:attributeGroup ref="revision.attrib"/>
+ <xs:attributeGroup ref="security.attrib"/>
+ <xs:attributeGroup ref="userlevel.attrib"/>
+ <xs:attributeGroup ref="vendor.attrib"/>
+ <xs:attributeGroup ref="wordsize.attrib"/>
+ </xs:attributeGroup>
+ <!-- Common attributes .................................................... -->
+ <!-- Id: Unique identifier of element; no default -->
+ <xs:attributeGroup name="id.attrib">
+ <xs:attribute name="id" type="xs:ID"/>
+ </xs:attributeGroup>
+ <!--
+ Id: Unique identifier of element; a value must be supplied; no
+ default
+ -->
+ <xs:attributeGroup name="idreq.attrib">
+ <xs:attribute name="id" use="required" type="xs:ID"/>
+ </xs:attributeGroup>
+ <!--
+ Lang: Indicator of language in which element is written, for
+ translation, character set management, etc.; no default
+ -->
+ <xs:attributeGroup name="lang.attrib">
+ <xs:attribute name="lang"/>
+ </xs:attributeGroup>
+ <!-- Remap: Previous role of element before conversion; no default -->
+ <xs:attributeGroup name="remap.attrib">
+ <xs:attribute name="remap"/>
+ </xs:attributeGroup>
+ <!-- Role: New role of element in local environment; no default -->
+ <xs:attributeGroup name="role.attrib">
+ <xs:attribute name="role"/>
+ </xs:attributeGroup>
+ <!--
+ XRefLabel: Alternate labeling string for XRef text generation;
+ default is usually title or other appropriate label text already
+ contained in element
+ -->
+ <xs:attributeGroup name="xreflabel.attrib">
+ <xs:attribute name="xreflabel"/>
+ </xs:attributeGroup>
+ <!--
+ RevisionFlag: Revision status of element; default is that element
+ wasn't revised
+ -->
+ <xs:attributeGroup name="revisionflag.attrib">
+ <xs:attribute name="revisionflag">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="changed"/>
+ <xs:enumeration value="added"/>
+ <xs:enumeration value="deleted"/>
+ <xs:enumeration value="off"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <!-- dir: Bidirectional override -->
+ <xs:attributeGroup name="dir.attrib">
+ <xs:attribute name="dir">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="ltr"/>
+ <xs:enumeration value="rtl"/>
+ <xs:enumeration value="lro"/>
+ <xs:enumeration value="rlo"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <!-- xml:base: base URI -->
+ <xs:attributeGroup name="xml-base.attrib">
+ <xs:attribute ref="xml:base"/>
+ </xs:attributeGroup>
+ <!-- Role is included explicitly on each element -->
+ <xs:attributeGroup name="common.attrib">
+ <xs:attributeGroup ref="id.attrib"/>
+ <xs:attributeGroup ref="lang.attrib"/>
+ <xs:attributeGroup ref="remap.attrib"/>
+ <xs:attributeGroup ref="xreflabel.attrib"/>
+ <xs:attributeGroup ref="revisionflag.attrib"/>
+ <xs:attributeGroup ref="effectivity.attrib"/>
+ <xs:attributeGroup ref="dir.attrib"/>
+ <xs:attributeGroup ref="xml-base.attrib"/>
+ </xs:attributeGroup>
+ <!-- Role is included explicitly on each element -->
+ <xs:attributeGroup name="idreq.common.attrib">
+ <xs:attributeGroup ref="idreq.attrib"/>
+ <xs:attributeGroup ref="lang.attrib"/>
+ <xs:attributeGroup ref="remap.attrib"/>
+ <xs:attributeGroup ref="xreflabel.attrib"/>
+ <xs:attributeGroup ref="revisionflag.attrib"/>
+ <xs:attributeGroup ref="effectivity.attrib"/>
+ <xs:attributeGroup ref="dir.attrib"/>
+ <xs:attributeGroup ref="xml-base.attrib"/>
+ </xs:attributeGroup>
+ <!-- Semi-common attributes and other attribute entities .................. -->
+ <!--
+ EntityRef: Name of an external entity containing the content
+ of the graphic
+ -->
+ <!--
+ FileRef: Filename, qualified by a pathname if desired,
+ designating the file containing the content of the graphic
+ -->
+ <!-- Format: Notation of the element content, if any -->
+ <!-- SrcCredit: Information about the source of the Graphic -->
+ <!-- Width: Same as CALS reprowid (desired width) -->
+ <!-- Depth: Same as CALS reprodep (desired depth) -->
+ <!--
+ Align: Same as CALS hplace with 'none' removed; #IMPLIED means
+ application-specific
+ -->
+ <!-- Scale: Conflation of CALS hscale and vscale -->
+ <!-- Scalefit: Same as CALS scalefit -->
+ <xs:attributeGroup name="graphics.attrib">
+ <xs:attribute name="entityref" type="xs:ENTITY"/>
+ <xs:attribute name="fileref"/>
+ <xs:attribute name="format" type="notation.class"/>
+ <xs:attribute name="srccredit"/>
+ <xs:attribute name="width"/>
+ <xs:attribute name="contentwidth"/>
+ <xs:attribute name="depth"/>
+ <xs:attribute name="contentdepth"/>
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="left"/>
+ <xs:enumeration value="right"/>
+ <xs:enumeration value="center"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="valign">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="top"/>
+ <xs:enumeration value="middle"/>
+ <xs:enumeration value="bottom"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="scale"/>
+ <xs:attribute name="scalefit" type="yesorno.attvals"/>
+ </xs:attributeGroup>
+ <!--
+ Action: Key combination type; default is unspecified if one
+ child element, Simul if there is more than one; if value is
+ Other, the OtherAction attribute must have a nonempty value
+ -->
+ <!-- OtherAction: User-defined key combination type -->
+ <xs:attributeGroup name="keyaction.attrib">
+ <xs:attribute name="action">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="click"/>
+ <xs:enumeration value="double-click"/>
+ <xs:enumeration value="press"/>
+ <xs:enumeration value="seq"/>
+ <xs:enumeration value="simul"/>
+ <xs:enumeration value="other"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otheraction"/>
+ </xs:attributeGroup>
+ <!--
+ Label: Identifying number or string; default is usually the
+ appropriate number or string autogenerated by a formatter
+ -->
+ <xs:attributeGroup name="label.attrib">
+ <xs:attribute name="label"/>
+ </xs:attributeGroup>
+ <!-- xml:space: whitespace treatment -->
+ <xs:attributeGroup name="xml-space.attrib">
+ <xs:attribute ref="xml:space"/>
+ </xs:attributeGroup>
+ <!--
+ Format: whether element is assumed to contain significant white
+ space
+ -->
+ <xs:attributeGroup name="linespecific.attrib">
+ <xs:attribute name="format" default="linespecific">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="linespecific"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="xml-space.attrib"/>
+ <xs:attribute name="linenumbering">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="numbered"/>
+ <xs:enumeration value="unnumbered"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="continuation">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="continues"/>
+ <xs:enumeration value="restarts"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="startinglinenumber"/>
+ <xs:attribute name="language"/>
+ </xs:attributeGroup>
+ <!-- Linkend: link to related information; no default -->
+ <xs:attributeGroup name="linkend.attrib">
+ <xs:attribute name="linkend" type="xs:IDREF"/>
+ </xs:attributeGroup>
+ <!-- Linkend: required link to related information -->
+ <xs:attributeGroup name="linkendreq.attrib">
+ <xs:attribute name="linkend" use="required" type="xs:IDREF"/>
+ </xs:attributeGroup>
+ <!--
+ Linkends: link to one or more sets of related information; no
+ default
+ -->
+ <xs:attributeGroup name="linkends.attrib">
+ <xs:attribute name="linkends" type="xs:IDREFS"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="mark.attrib">
+ <xs:attribute name="mark"/>
+ </xs:attributeGroup>
+ <!-- MoreInfo: whether element's content has an associated RefEntry -->
+ <xs:attributeGroup name="moreinfo.attrib">
+ <xs:attribute name="moreinfo" default="none">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="refentry"/>
+ <xs:enumeration value="none"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <!-- Pagenum: number of page on which element appears; no default -->
+ <xs:attributeGroup name="pagenum.attrib">
+ <xs:attribute name="pagenum"/>
+ </xs:attributeGroup>
+ <!--
+ Status: Editorial or publication status of the element
+ it applies to, such as "in review" or "approved for distribution"
+ -->
+ <xs:attributeGroup name="status.attrib">
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <!--
+ Width: width of the longest line in the element to which it
+ pertains, in number of characters
+ -->
+ <xs:attributeGroup name="width.attrib">
+ <xs:attribute name="width"/>
+ </xs:attributeGroup>
+ <!-- ...................................................................... -->
+ <!-- Title elements ....................................................... -->
+ <xs:attributeGroup name="title.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The text of the title of a section of a document or of a formal block-level element. -->
+ <xs:element name="title">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="title.char.mix"/>
+ <xs:attributeGroup ref="title.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of title.element -->
+ <xs:attributeGroup name="title.attlist">
+ <xs:attributeGroup ref="pagenum.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="title.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of title.attlist -->
+ <!-- end of title.module -->
+ <xs:attributeGroup name="titleabbrev.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The abbreviation of a Title. -->
+ <xs:element name="titleabbrev">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="title.char.mix"/>
+ <xs:attributeGroup ref="titleabbrev.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of titleabbrev.element -->
+ <xs:attributeGroup name="titleabbrev.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="titleabbrev.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of titleabbrev.attlist -->
+ <!-- end of titleabbrev.module -->
+ <xs:attributeGroup name="subtitle.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The subtitle of a document. -->
+ <xs:element name="subtitle">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="title.char.mix"/>
+ <xs:attributeGroup ref="subtitle.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of subtitle.element -->
+ <xs:attributeGroup name="subtitle.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="subtitle.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of subtitle.attlist -->
+ <!-- end of subtitle.module -->
+ <!-- ...................................................................... -->
+ <!-- Bibliographic entities and elements .................................. -->
+ <!--
+ The bibliographic elements are typically used in the document
+ hierarchy. They do not appear in content models of information
+ pool elements. See also the document information elements,
+ below.
+ -->
+ <xs:group name="person.ident.mix">
+ <xs:choice>
+ <xs:element ref="honorific"/>
+ <xs:element ref="firstname"/>
+ <xs:element ref="surname"/>
+ <xs:element ref="lineage"/>
+ <xs:element ref="othername"/>
+ <xs:element ref="affiliation"/>
+ <xs:element ref="authorblurb"/>
+ <xs:element ref="contrib"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="bibliocomponent.mix">
+ <xs:choice>
+ <xs:element ref="abbrev"/>
+ <xs:element ref="abstract"/>
+ <xs:element ref="address"/>
+ <xs:element ref="artpagenums"/>
+ <xs:element ref="author"/>
+ <xs:element ref="authorgroup"/>
+ <xs:element ref="authorinitials"/>
+ <xs:element ref="bibliomisc"/>
+ <xs:element ref="biblioset"/>
+ <xs:element ref="collab"/>
+ <xs:element ref="confgroup"/>
+ <xs:element ref="contractnum"/>
+ <xs:element ref="contractsponsor"/>
+ <xs:element ref="copyright"/>
+ <xs:element ref="corpauthor"/>
+ <xs:element ref="corpname"/>
+ <xs:element ref="corpcredit"/>
+ <xs:element ref="date"/>
+ <xs:element ref="edition"/>
+ <xs:element ref="editor"/>
+ <xs:element ref="invpartnumber"/>
+ <xs:element ref="isbn"/>
+ <xs:element ref="issn"/>
+ <xs:element ref="issuenum"/>
+ <xs:element ref="orgname"/>
+ <xs:element ref="biblioid"/>
+ <xs:element ref="citebiblioid"/>
+ <xs:element ref="bibliosource"/>
+ <xs:element ref="bibliorelation"/>
+ <xs:element ref="bibliocoverage"/>
+ <xs:element ref="othercredit"/>
+ <xs:element ref="pagenums"/>
+ <xs:element ref="printhistory"/>
+ <xs:element ref="productname"/>
+ <xs:element ref="productnumber"/>
+ <xs:element ref="pubdate"/>
+ <xs:element ref="publisher"/>
+ <xs:element ref="publishername"/>
+ <xs:element ref="pubsnumber"/>
+ <xs:element ref="releaseinfo"/>
+ <xs:element ref="revhistory"/>
+ <xs:element ref="seriesvolnums"/>
+ <xs:element ref="subtitle"/>
+ <xs:element ref="title"/>
+ <xs:element ref="titleabbrev"/>
+ <xs:element ref="volumenum"/>
+ <xs:element ref="citetitle"/>
+ <xs:element ref="personname"/>
+ <xs:group ref="person.ident.mix"/>
+ <xs:element ref="ndxterm.class"/>
+ </xs:choice>
+ </xs:group>
+ <!-- I don't think this is well placed, but it needs to be here because of -->
+ <!-- the reference to bibliocomponent.mix -->
+ <xs:group name="info.class">
+ <xs:choice>
+ <xs:element ref="graphic"/>
+ <xs:element ref="mediaobject"/>
+ <xs:element ref="legalnotice"/>
+ <xs:element ref="modespec"/>
+ <xs:element ref="subjectset"/>
+ <xs:element ref="keywordset"/>
+ <xs:element ref="itermset"/>
+ <xs:group ref="bibliocomponent.mix"/>
+ </xs:choice>
+ </xs:group>
+ <!-- BiblioList ........................ -->
+ <xs:attributeGroup name="bibliolist.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for a set of bibliography entries. -->
+ <xs:element name="bibliolist" substitutionGroup="list.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="biblioentry"/>
+ <xs:element ref="bibliomixed"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="bibliolist.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of bibliolist.element -->
+ <xs:attributeGroup name="bibliolist.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="bibliolist.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of bibliolist.attlist -->
+ <!-- end of bibliolist.module -->
+ <xs:attributeGroup name="biblioentry.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An entry in a Bibliography. -->
+ <xs:element name="biblioentry">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="articleinfo"/>
+ <xs:group ref="bibliocomponent.mix"/>
+ </xs:choice>
+ <xs:attributeGroup ref="biblioentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of biblioentry.element -->
+ <xs:attributeGroup name="biblioentry.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="biblioentry.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of biblioentry.attlist -->
+ <!-- end of biblioentry.module -->
+ <xs:attributeGroup name="bibliomixed.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An entry in a Bibliography. -->
+ <xs:element name="bibliomixed">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="bibliocomponent.mix"/>
+ <xs:element ref="bibliomset"/>
+ </xs:choice>
+ <xs:attributeGroup ref="bibliomixed.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of bibliomixed.element -->
+ <xs:attributeGroup name="bibliomixed.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="bibliomixed.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of bibliomixed.attlist -->
+ <!-- end of bibliomixed.module -->
+ <xs:attributeGroup name="articleinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for an Article. -->
+ <xs:element name="articleinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="articleinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of articleinfo.element -->
+ <xs:attributeGroup name="articleinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="articleinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of articleinfo.attlist -->
+ <!-- end of articleinfo.module -->
+ <xs:attributeGroup name="biblioset.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A "raw" container for related bibliographic information. -->
+ <xs:element name="biblioset">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="bibliocomponent.mix"/>
+ <xs:attributeGroup ref="biblioset.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of biblioset.element -->
+ <!-- Relation: Relationship of elements contained within BiblioSet -->
+ <xs:attributeGroup name="biblioset.attlist">
+ <xs:attribute name="relation"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="biblioset.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of biblioset.attlist -->
+ <!-- end of biblioset.module -->
+ <xs:attributeGroup name="bibliomset.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A "cooked" container for related bibliographic information. -->
+ <xs:element name="bibliomset">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="bibliocomponent.mix"/>
+ <xs:element ref="bibliomset"/>
+ </xs:choice>
+ <xs:attributeGroup ref="bibliomset.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of bibliomset.element -->
+ <!-- Relation: Relationship of elements contained within BiblioMSet -->
+ <xs:attributeGroup name="bibliomset.attlist">
+ <xs:attribute name="relation"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="bibliomset.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of bibliomset.attlist -->
+ <!-- end of bibliomset.module -->
+ <xs:attributeGroup name="bibliomisc.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Untyped bibliographic information. -->
+ <xs:element name="bibliomisc">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="bibliomisc.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of bibliomisc.element -->
+ <xs:attributeGroup name="bibliomisc.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="bibliomisc.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of bibliomisc.attlist -->
+ <!-- end of bibliomisc.module -->
+ <!-- ...................................................................... -->
+ <!-- Subject, Keyword, and ITermSet elements .............................. -->
+ <xs:attributeGroup name="subjectset.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A set of terms describing the subject matter of a document. -->
+ <xs:element name="subjectset">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="subject"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="subjectset.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of subjectset.element -->
+ <!-- Scheme: Controlled vocabulary employed in SubjectTerms -->
+ <xs:attributeGroup name="subjectset.attlist">
+ <xs:attribute name="scheme" type="xs:NMTOKEN"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="subjectset.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of subjectset.attlist -->
+ <!-- end of subjectset.module -->
+ <xs:attributeGroup name="subject.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:One of a group of terms describing the subject matter of a document. -->
+ <xs:element name="subject">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="subjectterm"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="subject.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of subject.element -->
+ <!--
+ Weight: Ranking of this group of SubjectTerms relative
+ to others, 0 is low, no highest value specified
+ -->
+ <xs:attributeGroup name="subject.attlist">
+ <xs:attribute name="weight"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="subject.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of subject.attlist -->
+ <!-- end of subject.module -->
+ <xs:attributeGroup name="subjectterm.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A term in a group of terms describing the subject matter of a document. -->
+ <xs:element name="subjectterm">
+ <xs:complexType mixed="true">
+ <xs:attributeGroup ref="subjectterm.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of subjectterm.element -->
+ <xs:attributeGroup name="subjectterm.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="subjectterm.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of subjectterm.attlist -->
+ <!-- end of subjectterm.module -->
+ <!-- end of subjectset.content.module -->
+ <xs:attributeGroup name="keywordset.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A set of keywords describing the content of a document. -->
+ <xs:element name="keywordset">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="keyword"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="keywordset.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of keywordset.element -->
+ <xs:attributeGroup name="keywordset.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="keywordset.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of keywordset.attlist -->
+ <!-- end of keywordset.module -->
+ <xs:attributeGroup name="keyword.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:One of a set of keywords describing the content of a document. -->
+ <xs:element name="keyword">
+ <xs:complexType mixed="true">
+ <xs:attributeGroup ref="keyword.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of keyword.element -->
+ <xs:attributeGroup name="keyword.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="keyword.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of keyword.attlist -->
+ <!-- end of keyword.module -->
+ <!-- end of keywordset.content.module -->
+ <xs:attributeGroup name="itermset.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A set of index terms in the meta-information of a document. -->
+ <xs:element name="itermset">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="indexterm"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="itermset.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of itermset.element -->
+ <xs:attributeGroup name="itermset.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="itermset.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of itermset.attlist -->
+ <!-- end of itermset.module -->
+ <!-- Bibliographic info for "blocks" -->
+ <xs:attributeGroup name="blockinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a block element. -->
+ <xs:element name="blockinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="blockinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of blockinfo.element -->
+ <xs:attributeGroup name="blockinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="blockinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of blockinfo.attlist -->
+ <!-- end of blockinfo.module -->
+ <!-- ...................................................................... -->
+ <!-- Compound (section-ish) elements ...................................... -->
+ <!-- Message set ...................... -->
+ <xs:attributeGroup name="msgset.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A detailed set of messages, usually error messages. -->
+ <xs:element name="msgset" substitutionGroup="compound.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="msgentry"/>
+ <xs:element maxOccurs="unbounded" ref="simplemsgentry"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="msgset.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of msgset.element -->
+ <xs:attributeGroup name="msgset.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="msgset.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of msgset.attlist -->
+ <!-- end of msgset.module -->
+ <xs:attributeGroup name="msgentry.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for an entry in a message set. -->
+ <xs:element name="msgentry">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="msg"/>
+ <xs:element minOccurs="0" ref="msginfo"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="msgexplan"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="msgentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of msgentry.element -->
+ <xs:attributeGroup name="msgentry.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="msgentry.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of msgentry.attlist -->
+ <!-- end of msgentry.module -->
+ <xs:attributeGroup name="simplemsgentry.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for a simpler entry in a message set. -->
+ <xs:element name="simplemsgentry">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="msgtext"/>
+ <xs:element maxOccurs="unbounded" ref="msgexplan"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="simplemsgentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of simplemsgentry.element -->
+ <xs:attributeGroup name="simplemsgentry.attlist">
+ <xs:attribute name="audience"/>
+ <xs:attribute name="level"/>
+ <xs:attribute name="origin"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="simplemsgentry.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of simplemsgentry.attlist -->
+ <!-- end of simplemsgentry.module -->
+ <xs:attributeGroup name="msg.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A message in a message set. -->
+ <xs:element name="msg">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:element ref="msgmain"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="msgsub"/>
+ <xs:element ref="msgrel"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="msg.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of msg.element -->
+ <xs:attributeGroup name="msg.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="msg.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of msg.attlist -->
+ <!-- end of msg.module -->
+ <xs:attributeGroup name="msgmain.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The primary component of a message in a message set. -->
+ <xs:element name="msgmain">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:element ref="msgtext"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="msgmain.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of msgmain.element -->
+ <xs:attributeGroup name="msgmain.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="msgmain.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of msgmain.attlist -->
+ <!-- end of msgmain.module -->
+ <xs:attributeGroup name="msgsub.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A subcomponent of a message in a message set. -->
+ <xs:element name="msgsub">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:element ref="msgtext"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="msgsub.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of msgsub.element -->
+ <xs:attributeGroup name="msgsub.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="msgsub.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of msgsub.attlist -->
+ <!-- end of msgsub.module -->
+ <xs:attributeGroup name="msgrel.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A related component of a message in a message set. -->
+ <xs:element name="msgrel">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:element ref="msgtext"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="msgrel.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of msgrel.element -->
+ <xs:attributeGroup name="msgrel.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="msgrel.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of msgrel.attlist -->
+ <!-- end of msgrel.module -->
+ <!-- MsgText (defined in the Inlines section, below) -->
+ <xs:attributeGroup name="msginfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Information about a message in a message set. -->
+ <xs:element name="msginfo">
+ <xs:complexType>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="msglevel"/>
+ <xs:element ref="msgorig"/>
+ <xs:element ref="msgaud"/>
+ </xs:choice>
+ <xs:attributeGroup ref="msginfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of msginfo.element -->
+ <xs:attributeGroup name="msginfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="msginfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of msginfo.attlist -->
+ <!-- end of msginfo.module -->
+ <xs:attributeGroup name="msglevel.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The level of importance or severity of a message in a message set. -->
+ <xs:element name="msglevel">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="msglevel.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of msglevel.element -->
+ <xs:attributeGroup name="msglevel.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="msglevel.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of msglevel.attlist -->
+ <!-- end of msglevel.module -->
+ <xs:attributeGroup name="msgorig.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The origin of a message in a message set. -->
+ <xs:element name="msgorig">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="msgorig.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of msgorig.element -->
+ <xs:attributeGroup name="msgorig.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="msgorig.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of msgorig.attlist -->
+ <!-- end of msgorig.module -->
+ <xs:attributeGroup name="msgaud.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The audience to which a message in a message set is relevant. -->
+ <xs:element name="msgaud">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="msgaud.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of msgaud.element -->
+ <xs:attributeGroup name="msgaud.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="msgaud.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of msgaud.attlist -->
+ <!-- end of msgaud.module -->
+ <xs:attributeGroup name="msgexplan.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Explanatory material relating to a message in a message set. -->
+ <xs:element name="msgexplan">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:group maxOccurs="unbounded" ref="component.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="msgexplan.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of msgexplan.element -->
+ <xs:attributeGroup name="msgexplan.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="msgexplan.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of msgexplan.attlist -->
+ <!-- end of msgexplan.module -->
+ <!-- end of msgset.content.module -->
+ <xs:attributeGroup name="task.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A task to be completed. -->
+ <xs:element name="task" substitutionGroup="compound.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="ndxterm.class"/>
+ <xs:group ref="formalobject.title.content"/>
+ <xs:element minOccurs="0" ref="tasksummary"/>
+ <xs:element minOccurs="0" ref="taskprerequisites"/>
+ <xs:element ref="procedure"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="example"/>
+ <xs:element minOccurs="0" ref="taskrelated"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="task.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of task.element -->
+ <xs:attributeGroup name="task.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="task.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of task.attlist -->
+ <!-- end of task.module -->
+ <xs:attributeGroup name="tasksummary.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A summary of a task. -->
+ <xs:element name="tasksummary">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:group maxOccurs="unbounded" ref="component.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="tasksummary.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of tasksummary.element -->
+ <xs:attributeGroup name="tasksummary.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="tasksummary.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of tasksummary.attlist -->
+ <!-- end of tasksummary.module -->
+ <xs:attributeGroup name="taskprerequisites.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The prerequisites for a task. -->
+ <xs:element name="taskprerequisites">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:group maxOccurs="unbounded" ref="component.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="taskprerequisites.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of taskprerequisites.element -->
+ <xs:attributeGroup name="taskprerequisites.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="taskprerequisites.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of taskprerequisites.attlist -->
+ <!-- end of taskprerequisites.module -->
+ <xs:attributeGroup name="taskrelated.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Information related to a task. -->
+ <xs:element name="taskrelated">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:group maxOccurs="unbounded" ref="component.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="taskrelated.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of taskrelated.element -->
+ <xs:attributeGroup name="taskrelated.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="taskrelated.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of taskrelated.attlist -->
+ <!-- end of taskrelated.module -->
+ <!-- end of task.content.module -->
+ <!-- QandASet ........................ -->
+ <xs:attributeGroup name="qandaset.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A question-and-answer set. -->
+ <xs:element name="qandaset" substitutionGroup="compound.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="qandaset.mix"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="qandadiv"/>
+ <xs:element maxOccurs="unbounded" ref="qandaentry"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="qandaset.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of qandaset.element -->
+ <xs:attributeGroup name="qandaset.attlist">
+ <xs:attribute name="defaultlabel">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="qanda"/>
+ <xs:enumeration value="number"/>
+ <xs:enumeration value="none"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="qandaset.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of qandaset.attlist -->
+ <!-- end of qandaset.module -->
+ <xs:attributeGroup name="qandadiv.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A titled division in a QandASet. -->
+ <xs:element name="qandadiv">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="qandaset.mix"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="qandadiv"/>
+ <xs:element maxOccurs="unbounded" ref="qandaentry"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="qandadiv.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of qandadiv.element -->
+ <xs:attributeGroup name="qandadiv.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="qandadiv.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of qandadiv.attlist -->
+ <!-- end of qandadiv.module -->
+ <xs:attributeGroup name="qandaentry.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A question/answer set within a QandASet. -->
+ <xs:element name="qandaentry">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:element minOccurs="0" ref="revhistory"/>
+ <xs:element ref="question"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="answer"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="qandaentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of qandaentry.element -->
+ <xs:attributeGroup name="qandaentry.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="qandaentry.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of qandaentry.attlist -->
+ <!-- end of qandaentry.module -->
+ <xs:attributeGroup name="question.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A question in a QandASet. -->
+ <xs:element name="question">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="label"/>
+ <xs:group maxOccurs="unbounded" ref="qandaset.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="question.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of question.element -->
+ <xs:attributeGroup name="question.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="question.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of question.attlist -->
+ <!-- end of question.module -->
+ <xs:attributeGroup name="answer.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An answer to a question posed in a QandASet. -->
+ <xs:element name="answer">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="label"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="qandaset.mix"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="qandaentry"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="answer.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of answer.element -->
+ <xs:attributeGroup name="answer.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="answer.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of answer.attlist -->
+ <!-- end of answer.module -->
+ <xs:attributeGroup name="label.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A label on a Question or Answer. -->
+ <xs:element name="label">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="word.char.mix"/>
+ <xs:attributeGroup ref="label.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of label.element -->
+ <xs:attributeGroup name="label.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="label.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of label.attlist -->
+ <!-- end of label.module -->
+ <!-- end of qandaset.content.module -->
+ <!-- Procedure ........................ -->
+ <xs:attributeGroup name="procedure.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A list of operations to be performed in a well-defined sequence. -->
+ <xs:element name="procedure" substitutionGroup="compound.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="component.mix"/>
+ <xs:element maxOccurs="unbounded" ref="step"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="procedure.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of procedure.element -->
+ <xs:attributeGroup name="procedure.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="procedure.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of procedure.attlist -->
+ <!-- end of procedure.module -->
+ <xs:attributeGroup name="step.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A unit of action in a procedure. -->
+ <xs:element name="step">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="component.mix"/>
+ <xs:sequence minOccurs="0">
+ <xs:choice>
+ <xs:element ref="substeps"/>
+ <xs:element ref="stepalternatives"/>
+ </xs:choice>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="component.mix"/>
+ </xs:sequence>
+ </xs:sequence>
+ <xs:sequence>
+ <xs:choice>
+ <xs:element ref="substeps"/>
+ <xs:element ref="stepalternatives"/>
+ </xs:choice>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="component.mix"/>
+ </xs:sequence>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="step.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of step.element -->
+ <!-- Performance: Whether the Step must be performed -->
+ <!-- not #REQUIRED! -->
+ <xs:attributeGroup name="step.attlist">
+ <xs:attribute name="performance" default="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="optional"/>
+ <xs:enumeration value="required"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="step.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of step.attlist -->
+ <!-- end of step.module -->
+ <xs:attributeGroup name="substeps.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for steps that occur within steps in a procedure. -->
+ <xs:element name="substeps">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="step"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="substeps.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of substeps.element -->
+ <!-- Performance: whether entire set of substeps must be performed -->
+ <!-- not #REQUIRED! -->
+ <xs:attributeGroup name="substeps.attlist">
+ <xs:attribute name="performance" default="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="optional"/>
+ <xs:enumeration value="required"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="substeps.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of substeps.attlist -->
+ <!-- end of substeps.module -->
+ <xs:attributeGroup name="stepalternatives.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Alternative steps in a procedure. -->
+ <xs:element name="stepalternatives">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="step"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="stepalternatives.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of stepalternatives.element -->
+ <!-- Performance: Whether (one of) the alternatives must be performed -->
+ <!-- not #REQUIRED! -->
+ <xs:attributeGroup name="stepalternatives.attlist">
+ <xs:attribute name="performance" default="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="optional"/>
+ <xs:enumeration value="required"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="stepalternatives.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of stepalternatives.attlist -->
+ <!-- end of stepalternatives.module -->
+ <!-- end of procedure.content.module -->
+ <!-- Sidebar .......................... -->
+ <xs:attributeGroup name="sidebarinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for a Sidebar. -->
+ <xs:element name="sidebarinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="sidebarinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sidebarinfo.element -->
+ <xs:attributeGroup name="sidebarinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sidebarinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sidebarinfo.attlist -->
+ <!-- end of sidebarinfo.module -->
+ <xs:attributeGroup name="sidebar.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A portion of a document that is isolated from the main narrative flow. -->
+ <xs:element name="sidebar" substitutionGroup="compound.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="sidebarinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:group maxOccurs="unbounded" ref="sidebar.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="sidebar.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sidebar.element -->
+ <xs:attributeGroup name="sidebar.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sidebar.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sidebar.attlist -->
+ <!-- end of sidebar.module -->
+ <!-- end of sidebar.content.model -->
+ <!-- ...................................................................... -->
+ <!-- Paragraph-related elements ........................................... -->
+ <xs:attributeGroup name="abstract.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A summary. -->
+ <xs:element name="abstract">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:element maxOccurs="unbounded" ref="para.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="abstract.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of abstract.element -->
+ <xs:attributeGroup name="abstract.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="abstract.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of abstract.attlist -->
+ <!-- end of abstract.module -->
+ <xs:attributeGroup name="authorblurb.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A short description or note about an author. -->
+ <xs:element name="authorblurb">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:element maxOccurs="unbounded" ref="para.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="authorblurb.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of authorblurb.element -->
+ <xs:attributeGroup name="authorblurb.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="authorblurb.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of authorblurb.attlist -->
+ <!-- end of authorblurb.module -->
+ <xs:attributeGroup name="personblurb.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A short description or note about a person. -->
+ <xs:element name="personblurb">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:element maxOccurs="unbounded" ref="para.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="personblurb.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of personblurb.element -->
+ <xs:attributeGroup name="personblurb.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="personblurb.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of personblurb.attlist -->
+ <!-- end of personblurb.module -->
+ <xs:attributeGroup name="blockquote.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A quotation set off from the main text. -->
+ <xs:element name="blockquote" substitutionGroup="informal.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:element minOccurs="0" ref="attribution"/>
+ <xs:group maxOccurs="unbounded" ref="component.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="blockquote.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of blockquote.element -->
+ <xs:attributeGroup name="blockquote.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="blockquote.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of blockquote.attlist -->
+ <!-- end of blockquote.module -->
+ <xs:attributeGroup name="attribution.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The source of a block quote or epigraph. -->
+ <xs:element name="attribution">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="attribution.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of attribution.element -->
+ <xs:attributeGroup name="attribution.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="attribution.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of attribution.attlist -->
+ <!-- end of attribution.module -->
+ <xs:attributeGroup name="bridgehead.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A free-floating heading. -->
+ <xs:element name="bridgehead">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="title.char.mix"/>
+ <xs:attributeGroup ref="bridgehead.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of bridgehead.element -->
+ <!--
+ Renderas: Indicates the format in which the BridgeHead
+ should appear
+ -->
+ <xs:attributeGroup name="bridgehead.attlist">
+ <xs:attribute name="renderas">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="other"/>
+ <xs:enumeration value="sect1"/>
+ <xs:enumeration value="sect2"/>
+ <xs:enumeration value="sect3"/>
+ <xs:enumeration value="sect4"/>
+ <xs:enumeration value="sect5"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="bridgehead.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of bridgehead.attlist -->
+ <!-- end of bridgehead.module -->
+ <xs:attributeGroup name="remark.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A remark (or comment) intended for presentation in a draft manuscript. -->
+ <xs:element name="remark">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="remark.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of remark.element -->
+ <xs:attributeGroup name="remark.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="remark.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of remark.attlist -->
+ <!-- end of remark.module -->
+ <xs:attributeGroup name="epigraph.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A short inscription at the beginning of a document or component. -->
+ <xs:element name="epigraph">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="attribution"/>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="para.class"/>
+ <xs:element ref="literallayout"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="epigraph.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of epigraph.element -->
+ <xs:attributeGroup name="epigraph.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="epigraph.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of epigraph.attlist -->
+ <!-- Attribution (defined above) -->
+ <!-- end of epigraph.module -->
+ <xs:attributeGroup name="footnote.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A footnote. -->
+ <xs:element name="footnote" substitutionGroup="gen.char.class">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="footnote.mix"/>
+ <xs:attributeGroup ref="footnote.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of footnote.element -->
+ <xs:attributeGroup name="footnote.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="footnote.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of footnote.attlist -->
+ <!-- end of footnote.module -->
+ <xs:attributeGroup name="highlights.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A summary of the main points of the discussed component. -->
+ <xs:element name="highlights">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="highlights.mix"/>
+ <xs:attributeGroup ref="highlights.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of highlights.element -->
+ <xs:attributeGroup name="highlights.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="highlights.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of highlights.attlist -->
+ <!-- end of highlights.module -->
+ <xs:attributeGroup name="formalpara.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A paragraph with a title. -->
+ <xs:element name="formalpara" substitutionGroup="para.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="title"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="ndxterm.class"/>
+ <xs:element ref="para"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="formalpara.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of formalpara.element -->
+ <xs:attributeGroup name="formalpara.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="formalpara.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of formalpara.attlist -->
+ <!-- end of formalpara.module -->
+ <xs:attributeGroup name="para.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A paragraph. -->
+ <xs:element name="para" substitutionGroup="para.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:group ref="para.mix"/>
+ </xs:choice>
+ <xs:attributeGroup ref="para.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of para.element -->
+ <xs:attributeGroup name="para.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="para.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of para.attlist -->
+ <!-- end of para.module -->
+ <xs:attributeGroup name="simpara.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A paragraph that contains only text and inline markup, no block elements. -->
+ <xs:element name="simpara" substitutionGroup="para.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="simpara.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of simpara.element -->
+ <xs:attributeGroup name="simpara.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="simpara.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of simpara.attlist -->
+ <!-- end of simpara.module -->
+ <xs:attributeGroup name="sconstruct.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An SConstruct example file. -->
+ <xs:element name="sconstruct" substitutionGroup="linespecific.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:element ref="co"/>
+ <xs:element ref="coref"/>
+ <xs:element ref="lineannotation"/>
+ <xs:element ref="textobject"/>
+ </xs:choice>
+ <xs:attributeGroup ref="sconstruct.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sconstruct.element -->
+ <xs:attributeGroup name="sconstruct.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sconstruct.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sconstruct.attlist -->
+ <!-- end of sconstruct.module -->
+ <xs:attributeGroup name="scons_example.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An SCons example. -->
+ <xs:element name="scons_example" substitutionGroup="linespecific.class">
+ <xs:complexType>
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="file"/>
+ <xs:element ref="directory"/>
+ </xs:choice>
+ <xs:attributeGroup ref="scons_example.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of scons_example.element -->
+ <xs:attributeGroup name="scons_example.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="scons_example.role.attrib"/>
+ <xs:attribute name="name" type="xs:string" use="required" />
+ <xs:attribute name="printme" type="xs:int" use="optional" />
+ </xs:attributeGroup>
+ <!-- end of scons_example.attlist -->
+ <!-- end of scons_example.module -->
+ <xs:attributeGroup name="file.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An SCons example file. -->
+ <xs:element name="file" substitutionGroup="linespecific.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:element ref="co"/>
+ <xs:element ref="coref"/>
+ <xs:element ref="lineannotation"/>
+ <xs:element ref="textobject"/>
+ </xs:choice>
+ <xs:attributeGroup ref="file.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of file.element -->
+ <xs:attributeGroup name="file.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="file.role.attrib"/>
+ <xs:attribute name="name" type="xs:string" use="required" />
+ <xs:attribute name="example" type="xs:string" use="optional" />
+ <xs:attribute name="chmod" type="xs:string" use="optional" />
+ <xs:attribute name="printme" type="xs:int" use="optional" />
+ </xs:attributeGroup>
+ <!-- end of file.attlist -->
+ <!-- end of file.module -->
+ <xs:attributeGroup name="directory.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An SCons example directory. -->
+ <xs:element name="directory" substitutionGroup="linespecific.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:element ref="co"/>
+ <xs:element ref="coref"/>
+ <xs:element ref="lineannotation"/>
+ <xs:element ref="textobject"/>
+ </xs:choice>
+ <xs:attributeGroup ref="directory.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of directory.element -->
+ <xs:attributeGroup name="directory.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="directory.role.attrib"/>
+ <xs:attribute name="name" type="xs:string" use="required" />
+ </xs:attributeGroup>
+ <!-- end of directory.attlist -->
+ <!-- end of directory.module -->
+ <xs:attributeGroup name="scons_example_file.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A SCons example file. -->
+ <xs:element name="scons_example_file" substitutionGroup="linespecific.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:element ref="co"/>
+ <xs:element ref="coref"/>
+ <xs:element ref="lineannotation"/>
+ <xs:element ref="textobject"/>
+ </xs:choice>
+ <xs:attributeGroup ref="scons_example_file.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of scons_example_file.element -->
+ <xs:attributeGroup name="scons_example_file.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="scons_example_file.role.attrib"/>
+ <xs:attribute name="name" type="xs:string" use="required" />
+ <xs:attribute name="example" type="xs:string" use="required" />
+ </xs:attributeGroup>
+ <!-- end of scons_example_file.attlist -->
+ <!-- end of scons_example_file.module -->
+ <xs:attributeGroup name="scons_output.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The output of a SCons command/example. -->
+ <xs:element name="scons_output" substitutionGroup="linespecific.class">
+ <xs:complexType>
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="scons_output_command"/>
+ </xs:choice>
+ <xs:attributeGroup ref="scons_output.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of scons_output.element -->
+ <xs:attributeGroup name="scons_output.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="scons_output.role.attrib"/>
+ <xs:attribute name="name" type="xs:string" />
+ <xs:attribute name="tools" type="xs:string" />
+ <xs:attribute name="example" type="xs:string" use="required" />
+ <xs:attribute name="suffix" type="xs:string" use="required" />
+ </xs:attributeGroup>
+ <!-- end of scons_output.attlist -->
+ <!-- end of scons_output.module -->
+ <xs:attributeGroup name="scons_output_command.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A SCons example file. -->
+ <xs:element name="scons_output_command" substitutionGroup="linespecific.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:element ref="co"/>
+ <xs:element ref="coref"/>
+ <xs:element ref="lineannotation"/>
+ <xs:element ref="textobject"/>
+ </xs:choice>
+ <xs:attributeGroup ref="scons_output_command.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of scons_output_command.element -->
+ <xs:attributeGroup name="scons_output_command.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="scons_output_command.role.attrib"/>
+ <xs:attribute name="edit" type="xs:string" use="optional" />
+ <xs:attribute name="environment" type="xs:string" use="optional" />
+ <xs:attribute name="output" type="xs:string" use="optional" />
+ </xs:attributeGroup>
+ <!-- end of scons_output_command.attlist -->
+ <!-- end of scons_output_command.module -->
+ <xs:attributeGroup name="sconsdoc.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A sconsdoc. -->
+ <xs:element name="sconsdoc" substitutionGroup="para.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="tool"/>
+ <xs:element ref="builder"/>
+ <xs:element ref="scons_function"/>
+ <xs:element ref="cvar"/>
+ </xs:choice>
+ <xs:attributeGroup ref="sconsdoc.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sconsdoc.element -->
+ <xs:attributeGroup name="sconsdoc.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sconsdoc.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sconsdoc.attlist -->
+ <!-- end of sconsdoc.module -->
+ <xs:attributeGroup name="example_commands.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Text that a user sees or might see on a computer screen. -->
+ <xs:element name="example_commands" substitutionGroup="linespecific.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:element ref="co"/>
+ <xs:element ref="coref"/>
+ <xs:element ref="textobject"/>
+ <xs:element ref="lineannotation"/>
+ </xs:choice>
+ <xs:attributeGroup ref="example_commands.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of example_commands.element -->
+ <xs:attributeGroup name="example_commands.attlist">
+ <xs:attributeGroup ref="width.attrib"/>
+ <xs:attributeGroup ref="linespecific.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="example_commands.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of example_commands.attlist -->
+ <!-- end of example_commands.module -->
+ <xs:attributeGroup name="summary.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A summary. -->
+ <xs:element name="summary" substitutionGroup="para.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="component.mix"/>
+ <xs:group ref="summary.mix"/>
+ </xs:choice>
+ <xs:attributeGroup ref="summary.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of summary.element -->
+ <xs:attributeGroup name="summary.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="summary.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of summary.attlist -->
+ <!-- end of summary.module -->
+
+ <xs:attributeGroup name="item.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A item. -->
+ <xs:element name="item">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="item.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of item.element -->
+ <xs:attributeGroup name="item.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="item.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of item.attlist -->
+ <!-- end of item.module -->
+ <xs:attributeGroup name="sets.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A list in which each entry is marked with a bullet or other dingbat. -->
+ <xs:element name="sets" substitutionGroup="list.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="listpreamble.mix"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="item"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="sets.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sets.element -->
+ <!--
+ Spacing: Whether the vertical space in the list should be
+ compressed
+ -->
+ <!--
+ Mark: Keyword, e.g., bullet, dash, checkbox, none;
+ list of keywords and defaults are implementation specific
+ -->
+ <xs:attributeGroup name="sets.attlist">
+ <xs:attribute name="spacing">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="normal"/>
+ <xs:enumeration value="compact"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="mark.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sets.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sets.attlist -->
+ <!-- end of sets.module -->
+ <xs:attributeGroup name="uses.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A list in which each entry is marked with a bullet or other dingbat. -->
+ <xs:element name="uses" substitutionGroup="list.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="listpreamble.mix"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="item"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="uses.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of uses.element -->
+ <!--
+ Spacing: Whether the vertical space in the list should be
+ compressed
+ -->
+ <!--
+ Mark: Keyword, e.g., bullet, dash, checkbox, none;
+ list of keywords and defaults are implementation specific
+ -->
+ <xs:attributeGroup name="uses.attlist">
+ <xs:attribute name="spacing">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="normal"/>
+ <xs:enumeration value="compact"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="mark.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="uses.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of uses.attlist -->
+ <!-- end of uses.module -->
+ <xs:attributeGroup name="tool.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A paragraph. -->
+ <xs:element name="tool" substitutionGroup="para.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.mix"/>
+ <xs:group ref="tool.mix"/>
+ </xs:choice>
+ <xs:attributeGroup ref="tool.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of tool.element -->
+ <xs:attributeGroup name="tool.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="tool.role.attrib"/>
+ <xs:attribute name="name" type="xs:string" use="required" />
+ </xs:attributeGroup>
+ <!-- end of tool.attlist -->
+ <!-- end of tool.module -->
+ <xs:attributeGroup name="builder.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A paragraph. -->
+ <xs:element name="builder" substitutionGroup="para.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.mix"/>
+ <xs:group ref="tool.mix"/>
+ </xs:choice>
+ <xs:attributeGroup ref="builder.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of builder.element -->
+ <xs:attributeGroup name="builder.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="builder.role.attrib"/>
+ <xs:attribute name="name" type="xs:string" use="required" />
+ </xs:attributeGroup>
+ <!-- end of builder.attlist -->
+ <!-- end of builder.module -->
+
+ <xs:attributeGroup name="cvar.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A paragraph. -->
+ <xs:element name="cvar" substitutionGroup="para.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.mix"/>
+ <xs:element ref="summary"/>
+ </xs:choice>
+ <xs:attributeGroup ref="cvar.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of cvar.element -->
+ <xs:attributeGroup name="cvar.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="cvar.role.attrib"/>
+ <xs:attribute name="name" type="xs:string" use="required" />
+ </xs:attributeGroup>
+ <!-- end of cvar.attlist -->
+ <!-- end of cvar.module -->
+ <xs:attributeGroup name="arguments.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A general-purpose element for representing the syntax of commands or functions. -->
+ <xs:element name="arguments" substitutionGroup="synop.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:element ref="graphic"/>
+ <xs:element ref="mediaobject"/>
+ <xs:element ref="co"/>
+ <xs:element ref="coref"/>
+ <xs:element ref="textobject"/>
+ <xs:element ref="lineannotation"/>
+ </xs:choice>
+ <xs:attributeGroup ref="arguments.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of arguments.element -->
+ <xs:attributeGroup name="arguments.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="linespecific.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="arguments.role.attrib"/>
+ <xs:attribute name="signature" type="xs:string" use="optional" />
+ <xs:attribute name="both" type="xs:string" use="optional" />
+ </xs:attributeGroup>
+ <!-- end of arguments.attlist -->
+ <!-- end of arguments.module -->
+ <xs:attributeGroup name="scons_function.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A paragraph. -->
+ <xs:element name="scons_function" substitutionGroup="para.class">
+ <xs:complexType mixed="true">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ TODO
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:group ref="para.mix"/>
+ <xs:group ref="scons_function.mix"/>
+ </xs:choice>
+ <xs:attributeGroup ref="scons_function.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of scons_function.element -->
+ <xs:attributeGroup name="scons_function.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="scons_function.role.attrib"/>
+ <xs:attribute name="name" type="xs:string" use="required" />
+ </xs:attributeGroup>
+ <!-- end of scons_function.attlist -->
+ <!-- end of scons_function.module -->
+ <xs:attributeGroup name="admon.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A note of caution. -->
+ <xs:element name="caution" substitutionGroup="admon.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:group maxOccurs="unbounded" ref="admon.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="caution.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of caution.element -->
+ <xs:attributeGroup name="caution.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="admon.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of caution.attlist -->
+ <!-- doc:An admonition set off from the text. -->
+ <xs:element name="important" substitutionGroup="admon.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:group maxOccurs="unbounded" ref="admon.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="important.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of important.element -->
+ <xs:attributeGroup name="important.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="admon.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of important.attlist -->
+ <!-- doc:A message set off from the text. -->
+ <xs:element name="note" substitutionGroup="admon.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:group maxOccurs="unbounded" ref="admon.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="note.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of note.element -->
+ <xs:attributeGroup name="note.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="admon.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of note.attlist -->
+ <!-- doc:A suggestion to the user, set off from the text. -->
+ <xs:element name="tip" substitutionGroup="admon.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:group maxOccurs="unbounded" ref="admon.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="tip.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of tip.element -->
+ <xs:attributeGroup name="tip.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="admon.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of tip.attlist -->
+ <!-- doc:An admonition set off from the text. -->
+ <xs:element name="warning" substitutionGroup="admon.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:group maxOccurs="unbounded" ref="admon.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="warning.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of warning.element -->
+ <xs:attributeGroup name="warning.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="admon.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of warning.attlist -->
+ <!-- end of admon.module -->
+ <!-- ...................................................................... -->
+ <!-- Lists ................................................................ -->
+ <!-- GlossList ........................ -->
+ <xs:attributeGroup name="glosslist.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for a set of GlossEntrys. -->
+ <xs:element name="glosslist" substitutionGroup="list.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:element maxOccurs="unbounded" ref="glossentry"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="glosslist.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of glosslist.element -->
+ <xs:attributeGroup name="glosslist.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="glosslist.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of glosslist.attlist -->
+ <!-- end of glosslist.module -->
+ <xs:attributeGroup name="glossentry.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An entry in a Glossary or GlossList. -->
+ <xs:element name="glossentry">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="glossterm"/>
+ <xs:element minOccurs="0" ref="acronym"/>
+ <xs:element minOccurs="0" ref="abbrev"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="ndxterm.class"/>
+ <xs:element minOccurs="0" ref="revhistory"/>
+ <xs:choice>
+ <xs:element ref="glosssee"/>
+ <xs:element maxOccurs="unbounded" ref="glossdef"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="glossentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of glossentry.element -->
+ <!--
+ SortAs: String by which the GlossEntry is to be sorted
+ (alphabetized) in lieu of its proper content
+ -->
+ <xs:attributeGroup name="glossentry.attlist">
+ <xs:attribute name="sortas"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="glossentry.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of glossentry.attlist -->
+ <!-- end of glossentry.module -->
+ <!-- GlossTerm (defined in the Inlines section, below) -->
+ <xs:attributeGroup name="glossdef.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A definition in a GlossEntry. -->
+ <xs:element name="glossdef">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="glossdef.mix"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="glossseealso"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="glossdef.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of glossdef.element -->
+ <!-- Subject: List of subjects; keywords for the definition -->
+ <xs:attributeGroup name="glossdef.attlist">
+ <xs:attribute name="subject"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="glossdef.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of glossdef.attlist -->
+ <!-- end of glossdef.module -->
+ <xs:attributeGroup name="glosssee.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A cross-reference from one GlossEntry to another. -->
+ <xs:element name="glosssee">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="glosssee.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of glosssee.element -->
+ <!--
+ OtherTerm: Reference to the GlossEntry whose GlossTerm
+ should be displayed at the point of the GlossSee
+ -->
+ <xs:attributeGroup name="glosssee.attlist">
+ <xs:attribute name="otherterm" type="xs:IDREF"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="glosssee.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of glosssee.attlist -->
+ <!-- end of glosssee.module -->
+ <xs:attributeGroup name="glossseealso.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A cross-reference from one GlossEntry to another. -->
+ <xs:element name="glossseealso">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="glossseealso.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of glossseealso.element -->
+ <!--
+ OtherTerm: Reference to the GlossEntry whose GlossTerm
+ should be displayed at the point of the GlossSeeAlso
+ -->
+ <xs:attributeGroup name="glossseealso.attlist">
+ <xs:attribute name="otherterm" type="xs:IDREF"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="glossseealso.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of glossseealso.attlist -->
+ <!-- end of glossseealso.module -->
+ <!-- end of glossentry.content.module -->
+ <!-- ItemizedList and OrderedList ..... -->
+ <xs:attributeGroup name="itemizedlist.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A list in which each entry is marked with a bullet or other dingbat. -->
+ <xs:element name="itemizedlist" substitutionGroup="list.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="listpreamble.mix"/>
+ <xs:element maxOccurs="unbounded" ref="listitem"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="itemizedlist.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of itemizedlist.element -->
+ <!--
+ Spacing: Whether the vertical space in the list should be
+ compressed
+ -->
+ <!--
+ Mark: Keyword, e.g., bullet, dash, checkbox, none;
+ list of keywords and defaults are implementation specific
+ -->
+ <xs:attributeGroup name="itemizedlist.attlist">
+ <xs:attribute name="spacing">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="normal"/>
+ <xs:enumeration value="compact"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="mark.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="itemizedlist.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of itemizedlist.attlist -->
+ <!-- end of itemizedlist.module -->
+ <xs:attributeGroup name="orderedlist.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A list in which each entry is marked with a sequentially incremented label. -->
+ <xs:element name="orderedlist" substitutionGroup="list.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="listpreamble.mix"/>
+ <xs:element maxOccurs="unbounded" ref="listitem"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="orderedlist.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of orderedlist.element -->
+ <!--
+ Numeration: Style of ListItem numbered; default is expected
+ to be Arabic
+ -->
+ <!--
+ InheritNum: Specifies for a nested list that the numbering
+ of ListItems should include the number of the item
+ within which they are nested (e.g., 1a and 1b within 1,
+ rather than a and b)
+ -->
+ <!--
+ Continuation: Where list numbering begins afresh (Restarts,
+ the default) or continues that of the immediately preceding
+ list (Continues)
+ -->
+ <!--
+ Spacing: Whether the vertical space in the list should be
+ compressed
+ -->
+ <xs:attributeGroup name="orderedlist.attlist">
+ <xs:attribute name="numeration">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="arabic"/>
+ <xs:enumeration value="upperalpha"/>
+ <xs:enumeration value="loweralpha"/>
+ <xs:enumeration value="upperroman"/>
+ <xs:enumeration value="lowerroman"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="inheritnum" default="ignore">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="inherit"/>
+ <xs:enumeration value="ignore"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="continuation" default="restarts">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="continues"/>
+ <xs:enumeration value="restarts"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="spacing">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="normal"/>
+ <xs:enumeration value="compact"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="orderedlist.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of orderedlist.attlist -->
+ <!-- end of orderedlist.module -->
+ <xs:attributeGroup name="listitem.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for the elements of a list item. -->
+ <xs:element name="listitem">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="component.mix"/>
+ <xs:attributeGroup ref="listitem.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of listitem.element -->
+ <!--
+ Override: Indicates the mark to be used for this ListItem
+ instead of the default mark or the mark specified by
+ the Mark attribute on the enclosing ItemizedList
+ -->
+ <xs:attributeGroup name="listitem.attlist">
+ <xs:attribute name="override"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="listitem.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of listitem.attlist -->
+ <!-- end of listitem.module -->
+ <!-- SegmentedList .................... -->
+ <xs:attributeGroup name="segmentedlist.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A segmented list, a list of sets of elements. -->
+ <xs:element name="segmentedlist" substitutionGroup="list.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:element maxOccurs="unbounded" ref="segtitle"/>
+ <xs:element maxOccurs="unbounded" ref="seglistitem"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="segmentedlist.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of segmentedlist.element -->
+ <xs:attributeGroup name="segmentedlist.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="segmentedlist.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of segmentedlist.attlist -->
+ <!-- end of segmentedlist.module -->
+ <xs:attributeGroup name="segtitle.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The title of an element of a list item in a segmented list. -->
+ <xs:element name="segtitle">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="title.char.mix"/>
+ <xs:attributeGroup ref="segtitle.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of segtitle.element -->
+ <xs:attributeGroup name="segtitle.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="segtitle.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of segtitle.attlist -->
+ <!-- end of segtitle.module -->
+ <xs:attributeGroup name="seglistitem.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A list item in a segmented list. -->
+ <xs:element name="seglistitem">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="seg"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="seglistitem.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of seglistitem.element -->
+ <xs:attributeGroup name="seglistitem.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="seglistitem.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of seglistitem.attlist -->
+ <!-- end of seglistitem.module -->
+ <xs:attributeGroup name="seg.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An element of a list item in a segmented list. -->
+ <xs:element name="seg">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="seg.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of seg.element -->
+ <xs:attributeGroup name="seg.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="seg.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of seg.attlist -->
+ <!-- end of seg.module -->
+ <!-- end of segmentedlist.content.module -->
+ <!-- SimpleList ....................... -->
+ <xs:attributeGroup name="simplelist.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An undecorated list of single words or short phrases. -->
+ <xs:element name="simplelist" substitutionGroup="list.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="member"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="simplelist.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of simplelist.element -->
+ <!-- Columns: The number of columns the array should contain -->
+ <!--
+ Type: How the Members of the SimpleList should be
+ formatted: Inline (members separated with commas etc.
+ inline), Vert (top to bottom in n Columns), or Horiz (in
+ the direction of text flow) in n Columns. If Column
+ is 1 or implied, Type=Vert and Type=Horiz give the same
+ results.
+ -->
+ <xs:attributeGroup name="simplelist.attlist">
+ <xs:attribute name="columns"/>
+ <xs:attribute name="type" default="vert">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="inline"/>
+ <xs:enumeration value="vert"/>
+ <xs:enumeration value="horiz"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="simplelist.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of simplelist.attlist -->
+ <!-- end of simplelist.module -->
+ <xs:attributeGroup name="member.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An element of a simple list. -->
+ <xs:element name="member">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="member.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of member.element -->
+ <xs:attributeGroup name="member.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="member.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of member.attlist -->
+ <!-- end of member.module -->
+ <!-- end of simplelist.content.module -->
+ <!-- VariableList ..................... -->
+ <xs:attributeGroup name="variablelist.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A list in which each entry is composed of a set of one or more terms and an associated description. -->
+ <xs:element name="variablelist" substitutionGroup="list.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="listpreamble.mix"/>
+ <xs:element maxOccurs="unbounded" ref="varlistentry"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="variablelist.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of variablelist.element -->
+ <!--
+ TermLength: Length beyond which the presentation engine
+ may consider the Term too long and select an alternate
+ presentation of the Term and, or, its associated ListItem.
+ -->
+ <xs:attributeGroup name="variablelist.attlist">
+ <xs:attribute name="termlength"/>
+ <xs:attribute name="spacing">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="normal"/>
+ <xs:enumeration value="compact"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="variablelist.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of variablelist.attlist -->
+ <!-- end of variablelist.module -->
+ <xs:attributeGroup name="varlistentry.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for a set of terms and the associated description in a variable list. -->
+ <xs:element name="varlistentry">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="term"/>
+ <xs:element ref="listitem"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="varlistentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of varlistentry.element -->
+ <xs:attributeGroup name="varlistentry.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="varlistentry.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of varlistentry.attlist -->
+ <!-- end of varlistentry.module -->
+ <xs:attributeGroup name="term.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The word or phrase being defined or described in a variable list. -->
+ <xs:element name="term">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="term.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of term.element -->
+ <xs:attributeGroup name="term.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="term.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of term.attlist -->
+ <!-- end of term.module -->
+ <!-- ListItem (defined above) -->
+ <!-- end of variablelist.content.module -->
+ <!-- CalloutList ...................... -->
+ <xs:attributeGroup name="calloutlist.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A list of Callouts. -->
+ <xs:element name="calloutlist" substitutionGroup="list.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:element maxOccurs="unbounded" ref="callout"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="calloutlist.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of calloutlist.element -->
+ <xs:attributeGroup name="calloutlist.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="calloutlist.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of calloutlist.attlist -->
+ <!-- end of calloutlist.module -->
+ <xs:attributeGroup name="callout.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A &ldquo;called out&rdquo; description of a marked Area. -->
+ <xs:element name="callout">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="component.mix"/>
+ <xs:attributeGroup ref="callout.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of callout.element -->
+ <!--
+ AreaRefs: IDs of one or more Areas or AreaSets described
+ by this Callout
+ -->
+ <xs:attributeGroup name="callout.attlist">
+ <xs:attribute name="arearefs" use="required" type="xs:IDREFS"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="callout.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of callout.attlist -->
+ <!-- end of callout.module -->
+ <!-- end of calloutlist.content.module -->
+ <!-- ...................................................................... -->
+ <!-- Objects .............................................................. -->
+ <!-- Examples etc. .................... -->
+ <xs:attributeGroup name="example.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A formal example, with a title. -->
+ <xs:element name="example" substitutionGroup="formal.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group ref="formalobject.title.content"/>
+ <xs:group maxOccurs="unbounded" ref="example.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="example.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of example.element -->
+ <xs:attributeGroup name="example.attlist">
+ <xs:attribute name="floatstyle"/>
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="width.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="example.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of example.attlist -->
+ <!-- end of example.module -->
+ <xs:attributeGroup name="informalexample.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A displayed example without a title. -->
+ <xs:element name="informalexample" substitutionGroup="informal.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group maxOccurs="unbounded" ref="example.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="informalexample.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of informalexample.element -->
+ <xs:attributeGroup name="informalexample.attlist">
+ <xs:attribute name="floatstyle"/>
+ <xs:attributeGroup ref="width.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="informalexample.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of informalexample.attlist -->
+ <!-- end of informalexample.module -->
+ <xs:attributeGroup name="programlistingco.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A program listing with associated areas used in callouts. -->
+ <xs:element name="programlistingco" substitutionGroup="linespecific.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="areaspec"/>
+ <xs:element ref="programlisting"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="calloutlist"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="programlistingco.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of programlistingco.element -->
+ <xs:attributeGroup name="programlistingco.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="programlistingco.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of programlistingco.attlist -->
+ <!-- CalloutList (defined above in Lists) -->
+ <!-- end of informalexample.module -->
+ <xs:attributeGroup name="areaspec.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A collection of regions in a graphic or code example. -->
+ <xs:element name="areaspec">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="area"/>
+ <xs:element ref="areaset"/>
+ </xs:choice>
+ <xs:attributeGroup ref="areaspec.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of areaspec.element -->
+ <!--
+ Units: global unit of measure in which coordinates in
+ this spec are expressed:
+
+ - CALSPair "x1,y1 x2,y2": lower-left and upper-right
+ coordinates in a rectangle describing repro area in which
+ graphic is placed, where X and Y dimensions are each some
+ number 0..10000 (taken from CALS graphic attributes)
+
+ - LineColumn "line column": line number and column number
+ at which to start callout text in "linespecific" content
+
+ - LineRange "startline endline": whole lines from startline
+ to endline in "linespecific" content
+
+ - LineColumnPair "line1 col1 line2 col2": starting and ending
+ points of area in "linespecific" content that starts at
+ first position and ends at second position (including the
+ beginnings of any intervening lines)
+
+ - Other: directive to look at value of OtherUnits attribute
+ to get implementation-specific keyword
+
+ The default is implementation-specific; usually dependent on
+ the parent element (GraphicCO gets CALSPair, ProgramListingCO
+ and ScreenCO get LineColumn)
+ -->
+ <!-- OtherUnits: User-defined units -->
+ <xs:attributeGroup name="areaspec.attlist">
+ <xs:attribute name="units">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="calspair"/>
+ <xs:enumeration value="linecolumn"/>
+ <xs:enumeration value="linerange"/>
+ <xs:enumeration value="linecolumnpair"/>
+ <xs:enumeration value="other"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otherunits" type="xs:NMTOKEN"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="areaspec.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of areaspec.attlist -->
+ <!-- end of areaspec.module -->
+ <xs:attributeGroup name="area.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A region defined for a Callout in a graphic or code example. -->
+ <xs:element name="area">
+ <xs:complexType>
+ <xs:attributeGroup ref="area.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of area.element -->
+ <!-- bug number/symbol override or initialization -->
+ <!-- to any related information -->
+ <!--
+ Units: unit of measure in which coordinates in this
+ area are expressed; inherits from AreaSet and AreaSpec
+ -->
+ <!-- OtherUnits: User-defined units -->
+ <xs:attributeGroup name="area.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="linkends.attrib"/>
+ <xs:attribute name="units">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="calspair"/>
+ <xs:enumeration value="linecolumn"/>
+ <xs:enumeration value="linerange"/>
+ <xs:enumeration value="linecolumnpair"/>
+ <xs:enumeration value="other"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otherunits" type="xs:NMTOKEN"/>
+ <xs:attribute name="coords" use="required"/>
+ <xs:attributeGroup ref="idreq.common.attrib"/>
+ <xs:attributeGroup ref="area.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of area.attlist -->
+ <!-- end of area.module -->
+ <xs:attributeGroup name="areaset.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A set of related areas in a graphic or code example. -->
+ <xs:element name="areaset">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="area"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="areaset.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of areaset.element -->
+ <!-- bug number/symbol override or initialization -->
+ <!--
+ Units: unit of measure in which coordinates in this
+ area are expressed; inherits from AreaSpec
+ -->
+ <xs:attributeGroup name="areaset.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attribute name="units">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="calspair"/>
+ <xs:enumeration value="linecolumn"/>
+ <xs:enumeration value="linerange"/>
+ <xs:enumeration value="linecolumnpair"/>
+ <xs:enumeration value="other"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otherunits" type="xs:NMTOKEN"/>
+ <xs:attribute name="coords" use="required"/>
+ <xs:attributeGroup ref="idreq.common.attrib"/>
+ <xs:attributeGroup ref="areaset.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of areaset.attlist -->
+ <!-- end of areaset.module -->
+ <!-- end of areaspec.content.module -->
+ <xs:attributeGroup name="programlisting.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A literal listing of all or part of a program. -->
+ <xs:element name="programlisting" substitutionGroup="linespecific.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:element ref="co"/>
+ <xs:element ref="coref"/>
+ <xs:element ref="lineannotation"/>
+ <xs:element ref="textobject"/>
+ </xs:choice>
+ <xs:attributeGroup ref="programlisting.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of programlisting.element -->
+ <xs:attributeGroup name="programlisting.attlist">
+ <xs:attributeGroup ref="width.attrib"/>
+ <xs:attributeGroup ref="linespecific.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="programlisting.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of programlisting.attlist -->
+ <!-- end of programlisting.module -->
+ <xs:attributeGroup name="literallayout.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A block of text in which line breaks and white space are to be reproduced faithfully. -->
+ <xs:element name="literallayout" substitutionGroup="linespecific.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:element ref="co"/>
+ <xs:element ref="coref"/>
+ <xs:element ref="textobject"/>
+ <xs:element ref="lineannotation"/>
+ </xs:choice>
+ <xs:attributeGroup ref="literallayout.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of literallayout.element -->
+ <xs:attributeGroup name="literallayout.attlist">
+ <xs:attributeGroup ref="width.attrib"/>
+ <xs:attributeGroup ref="linespecific.attrib"/>
+ <xs:attribute name="class" default="normal">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="monospaced"/>
+ <xs:enumeration value="normal"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="literallayout.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of literallayout.attlist -->
+ <!-- LineAnnotation (defined in the Inlines section, below) -->
+ <!-- end of literallayout.module -->
+ <xs:attributeGroup name="screenco.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A screen with associated areas used in callouts. -->
+ <xs:element name="screenco" substitutionGroup="linespecific.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="areaspec"/>
+ <xs:element ref="screen"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="calloutlist"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="screenco.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of screenco.element -->
+ <xs:attributeGroup name="screenco.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="screenco.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of screenco.attlist -->
+ <!-- AreaSpec (defined above) -->
+ <!-- CalloutList (defined above in Lists) -->
+ <!-- end of screenco.module -->
+ <xs:attributeGroup name="screen.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Text that a user sees or might see on a computer screen. -->
+ <xs:element name="screen" substitutionGroup="linespecific.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:element ref="co"/>
+ <xs:element ref="coref"/>
+ <xs:element ref="textobject"/>
+ <xs:element ref="lineannotation"/>
+ </xs:choice>
+ <xs:attributeGroup ref="screen.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of screen.element -->
+ <xs:attributeGroup name="screen.attlist">
+ <xs:attributeGroup ref="width.attrib"/>
+ <xs:attributeGroup ref="linespecific.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="screen.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of screen.attlist -->
+ <!-- end of screen.module -->
+ <xs:attributeGroup name="screenshot.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A representation of what the user sees or might see on a computer screen. -->
+ <xs:element name="screenshot" substitutionGroup="linespecific.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="screeninfo"/>
+ <xs:choice>
+ <xs:element ref="graphic"/>
+ <xs:element ref="graphicco"/>
+ <xs:element ref="mediaobject"/>
+ <xs:element ref="mediaobjectco"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="screenshot.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of screenshot.element -->
+ <xs:attributeGroup name="screenshot.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="screenshot.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of screenshot.attlist -->
+ <!-- end of screenshot.module -->
+ <xs:attributeGroup name="screeninfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Information about how a screen shot was produced. -->
+ <xs:element name="screeninfo">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="screeninfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of screeninfo.element -->
+ <xs:attributeGroup name="screeninfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="screeninfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of screeninfo.attlist -->
+ <!-- end of screeninfo.module -->
+ <!-- end of screenshot.content.module -->
+ <!-- Figures etc. ..................... -->
+ <xs:attributeGroup name="figure.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A formal figure, generally an illustration, with a title. -->
+ <xs:element name="figure" substitutionGroup="formal.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group ref="formalobject.title.content"/>
+ <xs:choice maxOccurs="unbounded">
+ <xs:group ref="figure.mix"/>
+ <xs:element ref="link.char.class"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="figure.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of figure.element -->
+ <!--
+ Float: Whether the Figure is supposed to be rendered
+ where convenient (yes (1) value) or at the place it occurs
+ in the text (no (0) value, the default)
+ -->
+ <xs:attributeGroup name="figure.attlist">
+ <xs:attribute name="float" default="0" type="yesorno.attvals"/>
+ <xs:attribute name="floatstyle"/>
+ <xs:attribute name="pgwide" type="yesorno.attvals"/>
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="figure.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of figure.attlist -->
+ <!-- end of figure.module -->
+ <xs:attributeGroup name="informalfigure.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A untitled figure. -->
+ <xs:element name="informalfigure" substitutionGroup="informal.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:choice maxOccurs="unbounded">
+ <xs:group ref="figure.mix"/>
+ <xs:element ref="link.char.class"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="informalfigure.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of informalfigure.element -->
+ <!--
+ Float: Whether the Figure is supposed to be rendered
+ where convenient (yes (1) value) or at the place it occurs
+ in the text (no (0) value, the default)
+ -->
+ <xs:attributeGroup name="informalfigure.attlist">
+ <xs:attribute name="float" default="0" type="yesorno.attvals"/>
+ <xs:attribute name="floatstyle"/>
+ <xs:attribute name="pgwide" type="yesorno.attvals"/>
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="informalfigure.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of informalfigure.attlist -->
+ <!-- end of informalfigure.module -->
+ <xs:attributeGroup name="graphicco.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A graphic that contains callout areas. -->
+ <xs:element name="graphicco" substitutionGroup="informal.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="areaspec"/>
+ <xs:element ref="graphic"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="calloutlist"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="graphicco.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of graphicco.element -->
+ <xs:attributeGroup name="graphicco.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="graphicco.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of graphicco.attlist -->
+ <!-- AreaSpec (defined above in Examples) -->
+ <!-- CalloutList (defined above in Lists) -->
+ <!-- end of graphicco.module -->
+ <!--
+ Graphical data can be the content of Graphic, or you can reference
+ an external file either as an entity (Entitref) or a filename
+ (Fileref).
+ -->
+ <xs:attributeGroup name="graphic.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A displayed graphical object (not an inline). -->
+ <xs:element name="graphic" substitutionGroup="informal.class">
+ <xs:complexType>
+ <xs:attributeGroup ref="graphic.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of graphic.element -->
+ <xs:attributeGroup name="graphic.attlist">
+ <xs:attributeGroup ref="graphics.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="graphic.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of graphic.attlist -->
+ <!-- end of graphic.module -->
+ <xs:attributeGroup name="inlinegraphic.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An object containing or pointing to graphical data that will be rendered inline. -->
+ <xs:element name="inlinegraphic" substitutionGroup="inlineobj.char.class">
+ <xs:complexType>
+ <xs:attributeGroup ref="inlinegraphic.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of inlinegraphic.element -->
+ <xs:attributeGroup name="inlinegraphic.attlist">
+ <xs:attributeGroup ref="graphics.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="inlinegraphic.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of inlinegraphic.attlist -->
+ <!-- end of inlinegraphic.module -->
+ <xs:attributeGroup name="mediaobject.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A displayed media object (video, audio, image, etc.). -->
+ <xs:element name="mediaobject" substitutionGroup="informal.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="objectinfo"/>
+ <xs:element maxOccurs="unbounded" ref="mediaobject.mix"/>
+ <xs:element minOccurs="0" ref="caption"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="mediaobject.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of mediaobject.element -->
+ <xs:attributeGroup name="mediaobject.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="mediaobject.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of mediaobject.attlist -->
+ <!-- end of mediaobject.module -->
+ <xs:attributeGroup name="inlinemediaobject.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An inline media object (video, audio, image, and so on). -->
+ <xs:element name="inlinemediaobject" substitutionGroup="inlineobj.char.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="objectinfo"/>
+ <xs:element maxOccurs="unbounded" ref="mediaobject.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="inlinemediaobject.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of inlinemediaobject.element -->
+ <xs:attributeGroup name="inlinemediaobject.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="inlinemediaobject.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of inlinemediaobject.attlist -->
+ <!-- end of inlinemediaobject.module -->
+ <xs:attributeGroup name="videoobject.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for video data and its associated meta-information. -->
+ <xs:element name="videoobject" substitutionGroup="mediaobject.mix">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="objectinfo"/>
+ <xs:element ref="videodata"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="videoobject.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of videoobject.element -->
+ <xs:attributeGroup name="videoobject.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="videoobject.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of videoobject.attlist -->
+ <!-- end of videoobject.module -->
+ <xs:attributeGroup name="audioobject.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for audio data and its associated meta-information. -->
+ <xs:element name="audioobject" substitutionGroup="mediaobject.mix">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="objectinfo"/>
+ <xs:element ref="audiodata"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="audioobject.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of audioobject.element -->
+ <xs:attributeGroup name="audioobject.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="audioobject.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of audioobject.attlist -->
+ <!-- end of audioobject.module -->
+ <xs:attributeGroup name="imageobject.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for image data and its associated meta-information. -->
+ <xs:element name="imageobject" substitutionGroup="mediaobject.mix">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="objectinfo"/>
+ <xs:element ref="imagedata"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="imageobject.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of imageobject.element -->
+ <xs:attributeGroup name="imageobject.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="imageobject.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of imageobject.attlist -->
+ <!-- end of imageobject.module -->
+ <xs:attributeGroup name="textobject.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for a text description of an object and its associated meta-information. -->
+ <xs:element name="textobject" substitutionGroup="mediaobject.mix">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="objectinfo"/>
+ <xs:choice>
+ <xs:element ref="phrase"/>
+ <xs:element ref="textdata"/>
+ <xs:group maxOccurs="unbounded" ref="textobject.mix"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="textobject.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of textobject.element -->
+ <xs:attributeGroup name="textobject.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="textobject.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of textobject.attlist -->
+ <!-- end of textobject.module -->
+ <xs:attributeGroup name="objectinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Meta-information for an object. -->
+ <xs:element name="objectinfo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="info.class"/>
+ <xs:attributeGroup ref="objectinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of objectinfo.element -->
+ <xs:attributeGroup name="objectinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="objectinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of objectinfo.attlist -->
+ <!-- end of objectinfo.module -->
+ <!--
+ EntityRef: Name of an external entity containing the content
+ of the object data
+ -->
+ <!--
+ FileRef: Filename, qualified by a pathname if desired,
+ designating the file containing the content of the object data
+ -->
+ <!-- Format: Notation of the element content, if any -->
+ <!-- SrcCredit: Information about the source of the image -->
+ <xs:attributeGroup name="objectdata.attrib">
+ <xs:attribute name="entityref" type="xs:ENTITY"/>
+ <xs:attribute name="fileref"/>
+ <xs:attribute name="format" type="notation.class"/>
+ <xs:attribute name="srccredit"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="videodata.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Pointer to external video data. -->
+ <xs:element name="videodata">
+ <xs:complexType>
+ <xs:attributeGroup ref="videodata.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of videodata.element -->
+ <!-- Width: Same as CALS reprowid (desired width) -->
+ <!-- Depth: Same as CALS reprodep (desired depth) -->
+ <!--
+ Align: Same as CALS hplace with 'none' removed; #IMPLIED means
+ application-specific
+ -->
+ <!-- Scale: Conflation of CALS hscale and vscale -->
+ <!-- Scalefit: Same as CALS scalefit -->
+ <xs:attributeGroup name="videodata.attlist">
+ <xs:attribute name="width"/>
+ <xs:attribute name="contentwidth"/>
+ <xs:attribute name="depth"/>
+ <xs:attribute name="contentdepth"/>
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="left"/>
+ <xs:enumeration value="right"/>
+ <xs:enumeration value="center"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="valign">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="top"/>
+ <xs:enumeration value="middle"/>
+ <xs:enumeration value="bottom"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="scale"/>
+ <xs:attribute name="scalefit" type="yesorno.attvals"/>
+ <xs:attributeGroup ref="objectdata.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="videodata.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of videodata.attlist -->
+ <!-- end of videodata.module -->
+ <xs:attributeGroup name="audiodata.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Pointer to external audio data. -->
+ <xs:element name="audiodata">
+ <xs:complexType>
+ <xs:attributeGroup ref="audiodata.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of audiodata.element -->
+ <xs:attributeGroup name="audiodata.attlist">
+ <xs:attributeGroup ref="objectdata.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="audiodata.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of audiodata.attlist -->
+ <!-- end of audiodata.module -->
+ <xs:attributeGroup name="imagedata.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Pointer to external image data. -->
+ <xs:element name="imagedata">
+ <xs:complexType>
+ <xs:attributeGroup ref="imagedata.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of imagedata.element -->
+ <!-- Width: Same as CALS reprowid (desired width) -->
+ <!-- Depth: Same as CALS reprodep (desired depth) -->
+ <!--
+ Align: Same as CALS hplace with 'none' removed; #IMPLIED means
+ application-specific
+ -->
+ <!-- Scale: Conflation of CALS hscale and vscale -->
+ <!-- Scalefit: Same as CALS scalefit -->
+ <xs:attributeGroup name="imagedata.attlist">
+ <xs:attribute name="width"/>
+ <xs:attribute name="contentwidth"/>
+ <xs:attribute name="depth"/>
+ <xs:attribute name="contentdepth"/>
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="left"/>
+ <xs:enumeration value="right"/>
+ <xs:enumeration value="center"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="valign">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="top"/>
+ <xs:enumeration value="middle"/>
+ <xs:enumeration value="bottom"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="scale"/>
+ <xs:attribute name="scalefit" type="yesorno.attvals"/>
+ <xs:attributeGroup ref="objectdata.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="imagedata.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of imagedata.attlist -->
+ <!-- end of imagedata.module -->
+ <xs:attributeGroup name="textdata.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Pointer to external text data. -->
+ <xs:element name="textdata">
+ <xs:complexType>
+ <xs:attributeGroup ref="textdata.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of textdata.element -->
+ <xs:attributeGroup name="textdata.attlist">
+ <xs:attribute name="encoding"/>
+ <xs:attributeGroup ref="objectdata.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="textdata.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of textdata.attlist -->
+ <!-- end of textdata.module -->
+ <xs:attributeGroup name="mediaobjectco.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A media object that contains callouts. -->
+ <xs:element name="mediaobjectco" substitutionGroup="informal.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="objectinfo"/>
+ <xs:element ref="imageobjectco"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="imageobjectco"/>
+ <xs:element ref="textobject"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="mediaobjectco.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of mediaobjectco.element -->
+ <xs:attributeGroup name="mediaobjectco.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="mediaobjectco.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of mediaobjectco.attlist -->
+ <!-- end of mediaobjectco.module -->
+ <xs:attributeGroup name="imageobjectco.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for an image object with callouts. -->
+ <xs:element name="imageobjectco" substitutionGroup="mediaobject.mix">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="areaspec"/>
+ <xs:element ref="imageobject"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="calloutlist"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="imageobjectco.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of imageobjectco.element -->
+ <xs:attributeGroup name="imageobjectco.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="imageobjectco.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of imageobjectco.attlist -->
+ <!-- end of imageobjectco.module -->
+ <!-- end of mediaobject.content.module -->
+ <!-- Equations ........................ -->
+ <!-- This PE provides a mechanism for replacing equation content, -->
+ <!-- perhaps adding a new or different model (e.g., MathML) -->
+ <xs:group name="equation.content">
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="alt"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="graphic"/>
+ <xs:element maxOccurs="unbounded" ref="mediaobject"/>
+ <xs:element maxOccurs="unbounded" ref="mathphrase"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+ <xs:complexType name="inlineequation.content">
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="alt"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="graphic"/>
+ <xs:element maxOccurs="unbounded" ref="inlinemediaobject"/>
+ <xs:element maxOccurs="unbounded" ref="mathphrase"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:attributeGroup name="equation.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A displayed mathematical equation. -->
+ <xs:element name="equation" substitutionGroup="formal.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group minOccurs="0" ref="formalobject.title.content"/>
+ <xs:choice>
+ <xs:element ref="informalequation"/>
+ <xs:group ref="equation.content"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="equation.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of equation.element -->
+ <xs:attributeGroup name="equation.attlist">
+ <xs:attribute name="floatstyle"/>
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="equation.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of equation.attlist -->
+ <!-- end of equation.module -->
+ <xs:attributeGroup name="informalequation.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A displayed mathematical equation without a title. -->
+ <xs:element name="informalequation" substitutionGroup="informal.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group ref="equation.content"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="informalequation.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of informalequation.element -->
+ <xs:attributeGroup name="informalequation.attlist">
+ <xs:attribute name="floatstyle"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="informalequation.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of informalequation.attlist -->
+ <!-- end of informalequation.module -->
+ <xs:attributeGroup name="inlineequation.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A mathematical equation or expression occurring inline. -->
+ <xs:element name="inlineequation" substitutionGroup="inlineobj.char.class">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="inlineequation.content">
+ <xs:attributeGroup ref="inlineequation.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of inlineequation.element -->
+ <xs:attributeGroup name="inlineequation.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="inlineequation.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of inlineequation.attlist -->
+ <!-- end of inlineequation.module -->
+ <xs:attributeGroup name="alt.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Text representation for a graphical element. -->
+ <xs:element name="alt">
+ <xs:complexType mixed="true">
+ <xs:attributeGroup ref="alt.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of alt.element -->
+ <xs:attributeGroup name="alt.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="alt.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of alt.attlist -->
+ <!-- end of alt.module -->
+ <xs:attributeGroup name="mathphrase.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A mathematical phrase, an expression that can be represented with ordinary text and a small amount of markup. -->
+ <xs:element name="mathphrase">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="subscript"/>
+ <xs:element ref="superscript"/>
+ <xs:element ref="emphasis"/>
+ </xs:choice>
+ <xs:attributeGroup ref="mathphrase.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of mathphrase.element -->
+ <xs:attributeGroup name="mathphrase.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="mathphrase.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of mathphrase.attlist -->
+ <!-- end of mathphrase.module -->
+ <!-- Tables ........................... -->
+ <!-- Choose a table model. CALS or OASIS XML Exchange -->
+ <!-- Do we allow the HTML table model as well? -->
+ <!-- ====================================================== -->
+ <!--
+ xhtmltbl.mod defines HTML tables and sets parameter
+ entities so that, when the CALS table module is read,
+ we end up allowing any table to be CALS or HTML.
+ i.e. This include must come first!
+ -->
+ <!-- ====================================================== -->
+ <!-- end of allow.html.tables -->
+ <!-- Add label and role attributes to table and informaltable -->
+ <!--
+ Add common attributes to Table, TGroup, TBody, THead, TFoot, Row,
+ EntryTbl, and Entry (and InformalTable element).
+ -->
+ <!-- Content model for Table. -->
+ <!-- Allow either objects or inlines; beware of REs between elements. -->
+ <!-- Reference CALS Table Model -->
+ <!-- end of table.module -->
+ <!--
+ Note that InformalTable is dependent on some of the entity
+ declarations that customize Table.
+ -->
+ <!-- the following entity may have been declared by the XHTML table module -->
+ <!-- doc:A table without a title. -->
+ <xs:element name="informaltable" substitutionGroup="informal.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group ref="informal.tbl.table.mdl"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="informaltable.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of informaltable.element -->
+ <!--
+ Frame, Colsep, and Rowsep must be repeated because
+ they are not in entities in the table module.
+ -->
+ <!--
+ includes TabStyle, ToCentry, ShortEntry,
+ Orient, PgWide
+ -->
+ <!-- includes Label -->
+ <!-- includes common attributes -->
+ <xs:attributeGroup name="informaltable.attlist">
+ <xs:attribute name="frame" type="tbl.frame.attval"/>
+ <xs:attribute name="colsep" type="yesorno.attvals"/>
+ <xs:attribute name="rowsep" type="yesorno.attvals"/>
+ <xs:attributeGroup ref="common.table.attribs"/>
+ <xs:attributeGroup ref="tbl.table.att"/>
+ </xs:attributeGroup>
+ <!-- end of informaltable.attlist -->
+ <!-- end of informaltable.module -->
+ <xs:attributeGroup name="caption.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A caption. -->
+ <xs:element name="caption">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="textobject.mix"/>
+ <xs:attributeGroup ref="caption.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of caption.element -->
+ <!-- attrs comes from HTML tables ... -->
+ <!-- common.attrib, but without ID because ID is in attrs -->
+ <xs:attributeGroup name="caption.attlist.content">
+ <xs:attributeGroup ref="caption.role.attrib"/>
+ <xs:attributeGroup ref="attrs"/>
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="top"/>
+ <xs:enumeration value="bottom"/>
+ <xs:enumeration value="left"/>
+ <xs:enumeration value="right"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="caption.attlist">
+ <xs:attributeGroup ref="caption.attlist.content"/>
+ </xs:attributeGroup>
+ <!-- end of caption.attlist -->
+ <!-- end of caption.module -->
+ <!-- ...................................................................... -->
+ <!-- Synopses ............................................................. -->
+ <!-- Synopsis ......................... -->
+ <xs:attributeGroup name="synopsis.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A general-purpose element for representing the syntax of commands or functions. -->
+ <xs:element name="synopsis" substitutionGroup="synop.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:element ref="graphic"/>
+ <xs:element ref="mediaobject"/>
+ <xs:element ref="co"/>
+ <xs:element ref="coref"/>
+ <xs:element ref="textobject"/>
+ <xs:element ref="lineannotation"/>
+ </xs:choice>
+ <xs:attributeGroup ref="synopsis.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of synopsis.element -->
+ <xs:attributeGroup name="synopsis.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="linespecific.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="synopsis.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of synopsis.attlist -->
+ <!-- LineAnnotation (defined in the Inlines section, below) -->
+ <!-- end of synopsis.module -->
+ <!-- CmdSynopsis ...................... -->
+ <xs:attributeGroup name="cmdsynopsis.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A syntax summary for a software command. -->
+ <xs:element name="cmdsynopsis" substitutionGroup="synop.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="command"/>
+ <xs:element ref="arg"/>
+ <xs:element ref="group"/>
+ <xs:element ref="sbr"/>
+ </xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="synopfragment"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="cmdsynopsis.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of cmdsynopsis.element -->
+ <!--
+ Sepchar: Character that should separate command and all
+ top-level arguments; alternate value might be e.g., &Delta;
+ -->
+ <xs:attributeGroup name="cmdsynopsis.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attribute name="sepchar" default=" "/>
+ <xs:attribute name="cmdlength"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="cmdsynopsis.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of cmdsynopsis.attlist -->
+ <!-- end of cmdsynopsis.module -->
+ <xs:attributeGroup name="arg.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An argument in a CmdSynopsis. -->
+ <xs:element name="arg">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="arg"/>
+ <xs:element ref="group"/>
+ <xs:element ref="option"/>
+ <xs:element ref="synopfragmentref"/>
+ <xs:element ref="replaceable"/>
+ <xs:element ref="sbr"/>
+ </xs:choice>
+ <xs:attributeGroup ref="arg.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of arg.element -->
+ <!--
+ Choice: Whether Arg must be supplied: Opt (optional to
+ supply, e.g. [arg]; the default), Req (required to supply,
+ e.g. {arg}), or Plain (required to supply, e.g. arg)
+ -->
+ <!--
+ Rep: whether Arg is repeatable: Norepeat (e.g. arg without
+ ellipsis; the default), or Repeat (e.g. arg...)
+ -->
+ <xs:attributeGroup name="arg.attlist">
+ <xs:attribute name="choice" default="opt">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="opt"/>
+ <xs:enumeration value="req"/>
+ <xs:enumeration value="plain"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="rep" default="norepeat">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="norepeat"/>
+ <xs:enumeration value="repeat"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="arg.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of arg.attlist -->
+ <!-- end of arg.module -->
+ <xs:attributeGroup name="group.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A group of elements in a CmdSynopsis. -->
+ <xs:element name="group">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="arg"/>
+ <xs:element ref="group"/>
+ <xs:element ref="option"/>
+ <xs:element ref="synopfragmentref"/>
+ <xs:element ref="replaceable"/>
+ <xs:element ref="sbr"/>
+ </xs:choice>
+ <xs:attributeGroup ref="group.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of group.element -->
+ <!--
+ Choice: Whether Group must be supplied: Opt (optional to
+ supply, e.g. [g1|g2|g3]; the default), Req (required to
+ supply, e.g. {g1|g2|g3}), Plain (required to supply,
+ e.g. g1|g2|g3), OptMult (can supply zero or more, e.g.
+ [[g1|g2|g3]]), or ReqMult (must supply one or more, e.g.
+ {{g1|g2|g3}})
+ -->
+ <!--
+ Rep: whether Group is repeatable: Norepeat (e.g. group
+ without ellipsis; the default), or Repeat (e.g. group...)
+ -->
+ <xs:attributeGroup name="group.attlist">
+ <xs:attribute name="choice" default="opt">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="opt"/>
+ <xs:enumeration value="req"/>
+ <xs:enumeration value="plain"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="rep" default="norepeat">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="norepeat"/>
+ <xs:enumeration value="repeat"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="group.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of group.attlist -->
+ <!-- end of group.module -->
+ <!-- Synopsis break -->
+ <xs:attributeGroup name="sbr.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An explicit line break in a command synopsis. -->
+ <xs:element name="sbr">
+ <xs:complexType>
+ <xs:attributeGroup ref="sbr.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sbr.element -->
+ <xs:attributeGroup name="sbr.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sbr.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sbr.attlist -->
+ <!-- end of sbr.module -->
+ <xs:attributeGroup name="synopfragmentref.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A reference to a fragment of a command synopsis. -->
+ <xs:element name="synopfragmentref">
+ <xs:complexType mixed="true">
+ <xs:attributeGroup ref="synopfragmentref.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of synopfragmentref.element -->
+ <!--
+ to SynopFragment of complex synopsis
+ material for separate referencing
+ -->
+ <xs:attributeGroup name="synopfragmentref.attlist">
+ <xs:attributeGroup ref="linkendreq.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="synopfragmentref.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of synopfragmentref.attlist -->
+ <!-- end of synopfragmentref.module -->
+ <xs:attributeGroup name="synopfragment.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A portion of a CmdSynopsis broken out from the main body of the synopsis. -->
+ <xs:element name="synopfragment">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="arg"/>
+ <xs:element ref="group"/>
+ </xs:choice>
+ <xs:attributeGroup ref="synopfragment.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of synopfragment.element -->
+ <xs:attributeGroup name="synopfragment.attlist">
+ <xs:attributeGroup ref="idreq.common.attrib"/>
+ <xs:attributeGroup ref="synopfragment.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of synopfragment.attlist -->
+ <!-- end of synopfragment.module -->
+ <!-- Command (defined in the Inlines section, below) -->
+ <!-- Option (defined in the Inlines section, below) -->
+ <!-- Replaceable (defined in the Inlines section, below) -->
+ <!-- end of cmdsynopsis.content.module -->
+ <!-- FuncSynopsis ..................... -->
+ <xs:attributeGroup name="funcsynopsis.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The syntax summary for a function definition. -->
+ <xs:element name="funcsynopsis" substitutionGroup="synop.class">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="funcsynopsisinfo"/>
+ <xs:element ref="funcprototype"/>
+ </xs:choice>
+ <xs:attributeGroup ref="funcsynopsis.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of funcsynopsis.element -->
+ <xs:attributeGroup name="funcsynopsis.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="funcsynopsis.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of funcsynopsis.attlist -->
+ <!-- end of funcsynopsis.module -->
+ <xs:attributeGroup name="funcsynopsisinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Information supplementing the FuncDefs of a FuncSynopsis. -->
+ <xs:element name="funcsynopsisinfo">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="cptr.char.mix"/>
+ <xs:element ref="textobject"/>
+ <xs:element ref="lineannotation"/>
+ </xs:choice>
+ <xs:attributeGroup ref="funcsynopsisinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of funcsynopsisinfo.element -->
+ <xs:attributeGroup name="funcsynopsisinfo.attlist">
+ <xs:attributeGroup ref="linespecific.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="funcsynopsisinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of funcsynopsisinfo.attlist -->
+ <!-- end of funcsynopsisinfo.module -->
+ <xs:attributeGroup name="funcprototype.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The prototype of a function. -->
+ <xs:element name="funcprototype">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="modifier"/>
+ <xs:element ref="funcdef"/>
+ <xs:choice>
+ <xs:element ref="void"/>
+ <xs:element ref="varargs"/>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="paramdef"/>
+ <xs:element minOccurs="0" ref="varargs"/>
+ </xs:sequence>
+ </xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="modifier"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="funcprototype.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of funcprototype.element -->
+ <xs:attributeGroup name="funcprototype.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="funcprototype.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of funcprototype.attlist -->
+ <!-- end of funcprototype.module -->
+ <xs:attributeGroup name="funcdef.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A function (subroutine) name and its return type. -->
+ <xs:element name="funcdef">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="type"/>
+ <xs:element ref="replaceable"/>
+ <xs:element ref="function"/>
+ </xs:choice>
+ <xs:attributeGroup ref="funcdef.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of funcdef.element -->
+ <xs:attributeGroup name="funcdef.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="funcdef.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of funcdef.attlist -->
+ <!-- end of funcdef.module -->
+ <xs:attributeGroup name="void.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An empty element in a function synopsis indicating that the function in question takes no arguments. -->
+ <xs:element name="void">
+ <xs:complexType>
+ <xs:attributeGroup ref="void.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of void.element -->
+ <xs:attributeGroup name="void.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="void.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of void.attlist -->
+ <!-- end of void.module -->
+ <xs:attributeGroup name="varargs.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An empty element in a function synopsis indicating a variable number of arguments. -->
+ <xs:element name="varargs">
+ <xs:complexType>
+ <xs:attributeGroup ref="varargs.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of varargs.element -->
+ <xs:attributeGroup name="varargs.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="varargs.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of varargs.attlist -->
+ <!-- end of varargs.module -->
+ <!--
+ Processing assumes that only one Parameter will appear in a
+ ParamDef, and that FuncParams will be used at most once, for
+ providing information on the "inner parameters" for parameters that
+ are pointers to functions.
+ -->
+ <xs:attributeGroup name="paramdef.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Information about a function parameter in a programming language. -->
+ <xs:element name="paramdef">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="initializer"/>
+ <xs:element ref="type"/>
+ <xs:element ref="replaceable"/>
+ <xs:element ref="parameter"/>
+ <xs:element ref="funcparams"/>
+ </xs:choice>
+ <xs:attributeGroup ref="paramdef.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of paramdef.element -->
+ <xs:attributeGroup name="paramdef.attlist">
+ <xs:attribute name="choice">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="opt"/>
+ <xs:enumeration value="req"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="paramdef.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of paramdef.attlist -->
+ <!-- end of paramdef.module -->
+ <xs:attributeGroup name="funcparams.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Parameters for a function referenced through a function pointer in a synopsis. -->
+ <xs:element name="funcparams">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="funcparams.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of funcparams.element -->
+ <xs:attributeGroup name="funcparams.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="funcparams.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of funcparams.attlist -->
+ <!-- end of funcparams.module -->
+ <!-- LineAnnotation (defined in the Inlines section, below) -->
+ <!-- Replaceable (defined in the Inlines section, below) -->
+ <!-- Function (defined in the Inlines section, below) -->
+ <!-- Parameter (defined in the Inlines section, below) -->
+ <!-- end of funcsynopsis.content.module -->
+ <!-- ClassSynopsis ..................... -->
+ <xs:attributeGroup name="classsynopsis.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The syntax summary for a class definition. -->
+ <xs:element name="classsynopsis" substitutionGroup="synop.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="ooclass"/>
+ <xs:element ref="oointerface"/>
+ <xs:element ref="ooexception"/>
+ </xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="classsynopsisinfo"/>
+ <xs:element ref="fieldsynopsis"/>
+ <xs:element ref="method.synop.class"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="classsynopsis.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of classsynopsis.element -->
+ <xs:attributeGroup name="classsynopsis.attlist">
+ <xs:attribute name="language"/>
+ <xs:attribute name="class" default="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="class"/>
+ <xs:enumeration value="interface"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="classsynopsis.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of classsynopsis.attlist -->
+ <!-- end of classsynopsis.module -->
+ <xs:attributeGroup name="classsynopsisinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Information supplementing the contents of a ClassSynopsis. -->
+ <xs:element name="classsynopsisinfo">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="cptr.char.mix"/>
+ <xs:element ref="textobject"/>
+ <xs:element ref="lineannotation"/>
+ </xs:choice>
+ <xs:attributeGroup ref="classsynopsisinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of classsynopsisinfo.element -->
+ <xs:attributeGroup name="classsynopsisinfo.attlist">
+ <xs:attributeGroup ref="linespecific.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="classsynopsisinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of classsynopsisinfo.attlist -->
+ <!-- end of classsynopsisinfo.module -->
+ <xs:attributeGroup name="ooclass.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A class in an object-oriented programming language. -->
+ <xs:element name="ooclass" substitutionGroup="tech.char.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="modifier"/>
+ <xs:element ref="package"/>
+ </xs:choice>
+ <xs:element ref="classname"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="ooclass.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of ooclass.element -->
+ <xs:attributeGroup name="ooclass.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="ooclass.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of ooclass.attlist -->
+ <!-- end of ooclass.module -->
+ <xs:attributeGroup name="oointerface.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An interface in an object-oriented programming language. -->
+ <xs:element name="oointerface" substitutionGroup="tech.char.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="modifier"/>
+ <xs:element ref="package"/>
+ </xs:choice>
+ <xs:element ref="interfacename"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="oointerface.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of oointerface.element -->
+ <xs:attributeGroup name="oointerface.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="oointerface.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of oointerface.attlist -->
+ <!-- end of oointerface.module -->
+ <xs:attributeGroup name="ooexception.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An exception in an object-oriented programming language. -->
+ <xs:element name="ooexception" substitutionGroup="tech.char.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="modifier"/>
+ <xs:element ref="package"/>
+ </xs:choice>
+ <xs:element ref="exceptionname"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="ooexception.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of ooexception.element -->
+ <xs:attributeGroup name="ooexception.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="ooexception.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of ooexception.attlist -->
+ <!-- end of ooexception.module -->
+ <xs:attributeGroup name="modifier.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Modifiers in a synopsis. -->
+ <xs:element name="modifier">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="modifier.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of modifier.element -->
+ <xs:attributeGroup name="modifier.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="modifier.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of modifier.attlist -->
+ <!-- end of modifier.module -->
+ <xs:attributeGroup name="interfacename.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of an interface. -->
+ <xs:element name="interfacename" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="interfacename.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of interfacename.element -->
+ <xs:attributeGroup name="interfacename.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="interfacename.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of interfacename.attlist -->
+ <!-- end of interfacename.module -->
+ <xs:attributeGroup name="exceptionname.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of an exception. -->
+ <xs:element name="exceptionname" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="exceptionname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of exceptionname.element -->
+ <xs:attributeGroup name="exceptionname.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="exceptionname.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of exceptionname.attlist -->
+ <!-- end of exceptionname.module -->
+ <xs:attributeGroup name="fieldsynopsis.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a field in a class definition. -->
+ <xs:element name="fieldsynopsis" substitutionGroup="synop.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="modifier"/>
+ <xs:element minOccurs="0" ref="type"/>
+ <xs:element ref="varname"/>
+ <xs:element minOccurs="0" ref="initializer"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="fieldsynopsis.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of fieldsynopsis.element -->
+ <xs:attributeGroup name="fieldsynopsis.attlist">
+ <xs:attribute name="language"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="fieldsynopsis.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of fieldsynopsis.attlist -->
+ <!-- end of fieldsynopsis.module -->
+ <xs:attributeGroup name="initializer.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The initializer for a FieldSynopsis. -->
+ <xs:element name="initializer">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="initializer.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of initializer.element -->
+ <xs:attributeGroup name="initializer.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="initializer.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of initializer.attlist -->
+ <!-- end of initializer.module -->
+ <xs:attributeGroup name="constructorsynopsis.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A syntax summary for a constructor. -->
+ <xs:element name="constructorsynopsis" substitutionGroup="method.synop.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="modifier"/>
+ <xs:element minOccurs="0" ref="methodname"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="methodparam"/>
+ <xs:element minOccurs="0" ref="void"/>
+ </xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="exceptionname"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="constructorsynopsis.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of constructorsynopsis.element -->
+ <xs:attributeGroup name="constructorsynopsis.attlist">
+ <xs:attribute name="language"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="constructorsynopsis.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of constructorsynopsis.attlist -->
+ <!-- end of constructorsynopsis.module -->
+ <xs:attributeGroup name="destructorsynopsis.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A syntax summary for a destructor. -->
+ <xs:element name="destructorsynopsis" substitutionGroup="method.synop.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="modifier"/>
+ <xs:element minOccurs="0" ref="methodname"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="methodparam"/>
+ <xs:element minOccurs="0" ref="void"/>
+ </xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="exceptionname"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="destructorsynopsis.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of destructorsynopsis.element -->
+ <xs:attributeGroup name="destructorsynopsis.attlist">
+ <xs:attribute name="language"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="destructorsynopsis.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of destructorsynopsis.attlist -->
+ <!-- end of destructorsynopsis.module -->
+ <xs:attributeGroup name="methodsynopsis.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A syntax summary for a method. -->
+ <xs:element name="methodsynopsis" substitutionGroup="method.synop.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="modifier"/>
+ <xs:choice minOccurs="0">
+ <xs:element ref="type"/>
+ <xs:element ref="void"/>
+ </xs:choice>
+ <xs:element ref="methodname"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="methodparam"/>
+ <xs:element minOccurs="0" ref="void"/>
+ </xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="exceptionname"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="modifier"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="methodsynopsis.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of methodsynopsis.element -->
+ <xs:attributeGroup name="methodsynopsis.attlist">
+ <xs:attribute name="language"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="methodsynopsis.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of methodsynopsis.attlist -->
+ <!-- end of methodsynopsis.module -->
+ <xs:attributeGroup name="methodname.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a method. -->
+ <xs:element name="methodname" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="methodname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of methodname.element -->
+ <xs:attributeGroup name="methodname.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="methodname.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of methodname.attlist -->
+ <!-- end of methodname.module -->
+ <xs:attributeGroup name="methodparam.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Parameters to a method. -->
+ <xs:element name="methodparam">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="modifier"/>
+ <xs:element minOccurs="0" ref="type"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:element ref="parameter"/>
+ <xs:element minOccurs="0" ref="initializer"/>
+ </xs:sequence>
+ <xs:element ref="funcparams"/>
+ </xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="modifier"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="methodparam.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of methodparam.element -->
+ <xs:attributeGroup name="methodparam.attlist">
+ <xs:attribute name="choice" default="req">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="opt"/>
+ <xs:enumeration value="req"/>
+ <xs:enumeration value="plain"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="rep" default="norepeat">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="norepeat"/>
+ <xs:enumeration value="repeat"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="methodparam.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of methodparam.attlist -->
+ <!-- end of methodparam.module -->
+ <!-- end of classsynopsis.content.module -->
+ <!-- ...................................................................... -->
+ <!-- Document information entities and elements ........................... -->
+ <!--
+ The document information elements include some elements that are
+ currently used only in the document hierarchy module. They are
+ defined here so that they will be available for use in customized
+ document hierarchies.
+ -->
+ <!-- .................................. -->
+ <!-- Ackno ............................ -->
+ <xs:attributeGroup name="ackno.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Acknowledgements in an Article. -->
+ <xs:element name="ackno">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="ackno.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of ackno.element -->
+ <xs:attributeGroup name="ackno.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="ackno.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of ackno.attlist -->
+ <!-- end of ackno.module -->
+ <!-- Address .......................... -->
+ <xs:attributeGroup name="address.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A real-world address, generally a postal address. -->
+ <xs:element name="address" substitutionGroup="informal.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="personname"/>
+ <xs:group ref="person.ident.mix"/>
+ <xs:element ref="street"/>
+ <xs:element ref="pob"/>
+ <xs:element ref="postcode"/>
+ <xs:element ref="city"/>
+ <xs:element ref="state"/>
+ <xs:element ref="country"/>
+ <xs:element ref="phone"/>
+ <xs:element ref="fax"/>
+ <xs:element ref="email"/>
+ <xs:element ref="otheraddr"/>
+ </xs:choice>
+ <xs:attributeGroup ref="address.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of address.element -->
+ <xs:attributeGroup name="address.attlist">
+ <xs:attributeGroup ref="linespecific.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="address.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of address.attlist -->
+ <!-- end of address.module -->
+ <xs:attributeGroup name="street.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A street address in an address. -->
+ <xs:element name="street">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="street.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of street.element -->
+ <xs:attributeGroup name="street.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="street.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of street.attlist -->
+ <!-- end of street.module -->
+ <xs:attributeGroup name="pob.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A post office box in an address. -->
+ <xs:element name="pob">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="pob.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of pob.element -->
+ <xs:attributeGroup name="pob.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="pob.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of pob.attlist -->
+ <!-- end of pob.module -->
+ <xs:attributeGroup name="postcode.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A postal code in an address. -->
+ <xs:element name="postcode">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="postcode.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of postcode.element -->
+ <xs:attributeGroup name="postcode.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="postcode.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of postcode.attlist -->
+ <!-- end of postcode.module -->
+ <xs:attributeGroup name="city.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a city in an address. -->
+ <xs:element name="city">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="city.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of city.element -->
+ <xs:attributeGroup name="city.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="city.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of city.attlist -->
+ <!-- end of city.module -->
+ <xs:attributeGroup name="state.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A state or province in an address. -->
+ <xs:element name="state">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="state.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of state.element -->
+ <xs:attributeGroup name="state.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="state.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of state.attlist -->
+ <!-- end of state.module -->
+ <xs:attributeGroup name="country.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a country. -->
+ <xs:element name="country">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="country.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of country.element -->
+ <xs:attributeGroup name="country.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="country.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of country.attlist -->
+ <!-- end of country.module -->
+ <xs:attributeGroup name="phone.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A telephone number. -->
+ <xs:element name="phone">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="phone.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of phone.element -->
+ <xs:attributeGroup name="phone.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="phone.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of phone.attlist -->
+ <!-- end of phone.module -->
+ <xs:attributeGroup name="fax.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A fax number. -->
+ <xs:element name="fax">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="fax.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of fax.element -->
+ <xs:attributeGroup name="fax.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="fax.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of fax.attlist -->
+ <!-- end of fax.module -->
+ <!-- Email (defined in the Inlines section, below) -->
+ <xs:attributeGroup name="otheraddr.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Uncategorized information in address. -->
+ <xs:element name="otheraddr">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="otheraddr.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of otheraddr.element -->
+ <xs:attributeGroup name="otheraddr.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="otheraddr.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of otheraddr.attlist -->
+ <!-- end of otheraddr.module -->
+ <!-- end of address.content.module -->
+ <!-- Affiliation ...................... -->
+ <xs:attributeGroup name="affiliation.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The institutional affiliation of an individual. -->
+ <xs:element name="affiliation">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="shortaffil"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="jobtitle"/>
+ <xs:element minOccurs="0" ref="orgname"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="orgdiv"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="address"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="affiliation.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of affiliation.element -->
+ <xs:attributeGroup name="affiliation.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="affiliation.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of affiliation.attlist -->
+ <!-- end of affiliation.module -->
+ <xs:attributeGroup name="shortaffil.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A brief description of an affiliation. -->
+ <xs:element name="shortaffil">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="shortaffil.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of shortaffil.element -->
+ <xs:attributeGroup name="shortaffil.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="shortaffil.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of shortaffil.attlist -->
+ <!-- end of shortaffil.module -->
+ <xs:attributeGroup name="jobtitle.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The title of an individual in an organization. -->
+ <xs:element name="jobtitle">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="jobtitle.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of jobtitle.element -->
+ <xs:attributeGroup name="jobtitle.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="jobtitle.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of jobtitle.attlist -->
+ <!-- end of jobtitle.module -->
+ <!-- OrgName (defined elsewhere in this section) -->
+ <xs:attributeGroup name="orgdiv.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A division of an organization. -->
+ <xs:element name="orgdiv">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="orgdiv.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of orgdiv.element -->
+ <xs:attributeGroup name="orgdiv.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="orgdiv.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of orgdiv.attlist -->
+ <!-- end of orgdiv.module -->
+ <!-- Address (defined elsewhere in this section) -->
+ <!-- end of affiliation.content.module -->
+ <!-- ArtPageNums ...................... -->
+ <xs:attributeGroup name="artpagenums.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The page numbers of an article as published. -->
+ <xs:element name="artpagenums">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="artpagenums.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of artpagenums.element -->
+ <xs:attributeGroup name="artpagenums.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="artpagenums.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of artpagenums.attlist -->
+ <!-- end of artpagenums.module -->
+ <!-- PersonName -->
+ <xs:attributeGroup name="personname.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The personal name of an individual. -->
+ <xs:element name="personname" substitutionGroup="gen.char.class">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="honorific"/>
+ <xs:element ref="firstname"/>
+ <xs:element ref="surname"/>
+ <xs:element ref="lineage"/>
+ <xs:element ref="othername"/>
+ </xs:choice>
+ <xs:attributeGroup ref="personname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of personname.element -->
+ <xs:attributeGroup name="personname.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="personname.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of personname.attlist -->
+ <!-- end of personname.module -->
+ <!-- Author ........................... -->
+ <xs:attributeGroup name="author.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of an individual author. -->
+ <xs:element name="author" substitutionGroup="docinfo.char.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:choice>
+ <xs:element ref="personname"/>
+ <xs:group maxOccurs="unbounded" ref="person.ident.mix"/>
+ </xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="personblurb"/>
+ <xs:element ref="email"/>
+ <xs:element ref="address"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="author.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of author.element -->
+ <xs:attributeGroup name="author.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="author.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of author.attlist -->
+ <!-- (see "Personal identity elements" for %person.ident.mix;) -->
+ <!-- end of author.module -->
+ <!-- AuthorGroup ...................... -->
+ <xs:attributeGroup name="authorgroup.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Wrapper for author information when a document has multiple authors or collabarators. -->
+ <xs:element name="authorgroup">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="author"/>
+ <xs:element ref="editor"/>
+ <xs:element ref="collab"/>
+ <xs:element ref="corpauthor"/>
+ <xs:element ref="corpcredit"/>
+ <xs:element ref="othercredit"/>
+ </xs:choice>
+ <xs:attributeGroup ref="authorgroup.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of authorgroup.element -->
+ <xs:attributeGroup name="authorgroup.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="authorgroup.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of authorgroup.attlist -->
+ <!-- end of authorgroup.module -->
+ <!-- Author (defined elsewhere in this section) -->
+ <!-- Editor (defined elsewhere in this section) -->
+ <xs:attributeGroup name="collab.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Identifies a collaborator. -->
+ <xs:element name="collab">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="collabname"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="affiliation"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="collab.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of collab.element -->
+ <xs:attributeGroup name="collab.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="collab.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of collab.attlist -->
+ <!-- end of collab.module -->
+ <xs:attributeGroup name="collabname.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a collaborator. -->
+ <xs:element name="collabname">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="collabname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of collabname.element -->
+ <xs:attributeGroup name="collabname.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="collabname.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of collabname.attlist -->
+ <!-- end of collabname.module -->
+ <!-- Affiliation (defined elsewhere in this section) -->
+ <!-- end of collab.content.module -->
+ <!-- CorpAuthor (defined elsewhere in this section) -->
+ <!-- OtherCredit (defined elsewhere in this section) -->
+ <!-- end of authorgroup.content.module -->
+ <!-- AuthorInitials ................... -->
+ <xs:attributeGroup name="authorinitials.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The initials or other short identifier for an author. -->
+ <xs:element name="authorinitials" substitutionGroup="docinfo.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="authorinitials.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of authorinitials.element -->
+ <xs:attributeGroup name="authorinitials.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="authorinitials.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of authorinitials.attlist -->
+ <!-- end of authorinitials.module -->
+ <!-- ConfGroup ........................ -->
+ <xs:attributeGroup name="confgroup.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for document meta-information about a conference. -->
+ <xs:element name="confgroup">
+ <xs:complexType>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="confdates"/>
+ <xs:element ref="conftitle"/>
+ <xs:element ref="confnum"/>
+ <xs:element ref="address"/>
+ <xs:element ref="confsponsor"/>
+ </xs:choice>
+ <xs:attributeGroup ref="confgroup.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of confgroup.element -->
+ <xs:attributeGroup name="confgroup.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="confgroup.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of confgroup.attlist -->
+ <!-- end of confgroup.module -->
+ <xs:attributeGroup name="confdates.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The dates of a conference for which a document was written. -->
+ <xs:element name="confdates">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="confdates.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of confdates.element -->
+ <xs:attributeGroup name="confdates.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="confdates.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of confdates.attlist -->
+ <!-- end of confdates.module -->
+ <xs:attributeGroup name="conftitle.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The title of a conference for which a document was written. -->
+ <xs:element name="conftitle">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="conftitle.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of conftitle.element -->
+ <xs:attributeGroup name="conftitle.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="conftitle.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of conftitle.attlist -->
+ <!-- end of conftitle.module -->
+ <xs:attributeGroup name="confnum.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An identifier, frequently numerical, associated with a conference for which a document was written. -->
+ <xs:element name="confnum">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="confnum.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of confnum.element -->
+ <xs:attributeGroup name="confnum.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="confnum.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of confnum.attlist -->
+ <!-- end of confnum.module -->
+ <!-- Address (defined elsewhere in this section) -->
+ <xs:attributeGroup name="confsponsor.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The sponsor of a conference for which a document was written. -->
+ <xs:element name="confsponsor">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="confsponsor.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of confsponsor.element -->
+ <xs:attributeGroup name="confsponsor.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="confsponsor.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of confsponsor.attlist -->
+ <!-- end of confsponsor.module -->
+ <!-- end of confgroup.content.module -->
+ <!-- ContractNum ...................... -->
+ <xs:attributeGroup name="contractnum.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The contract number of a document. -->
+ <xs:element name="contractnum">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="contractnum.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of contractnum.element -->
+ <xs:attributeGroup name="contractnum.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="contractnum.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of contractnum.attlist -->
+ <!-- end of contractnum.module -->
+ <!-- ContractSponsor .................. -->
+ <xs:attributeGroup name="contractsponsor.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The sponsor of a contract. -->
+ <xs:element name="contractsponsor">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="contractsponsor.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of contractsponsor.element -->
+ <xs:attributeGroup name="contractsponsor.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="contractsponsor.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of contractsponsor.attlist -->
+ <!-- end of contractsponsor.module -->
+ <!-- Copyright ........................ -->
+ <xs:attributeGroup name="copyright.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Copyright information about a document. -->
+ <xs:element name="copyright">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="year"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="holder"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="copyright.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of copyright.element -->
+ <xs:attributeGroup name="copyright.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="copyright.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of copyright.attlist -->
+ <!-- end of copyright.module -->
+ <xs:attributeGroup name="year.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The year of publication of a document. -->
+ <xs:element name="year">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="year.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of year.element -->
+ <xs:attributeGroup name="year.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="year.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of year.attlist -->
+ <!-- end of year.module -->
+ <xs:attributeGroup name="holder.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of the individual or organization that holds a copyright. -->
+ <xs:element name="holder">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="holder.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of holder.element -->
+ <xs:attributeGroup name="holder.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="holder.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of holder.attlist -->
+ <!-- end of holder.module -->
+ <!-- end of copyright.content.module -->
+ <!-- CorpAuthor ....................... -->
+ <xs:attributeGroup name="corpauthor.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A corporate author, as opposed to an individual. -->
+ <xs:element name="corpauthor" substitutionGroup="docinfo.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="corpauthor.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of corpauthor.element -->
+ <xs:attributeGroup name="corpauthor.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="corpauthor.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of corpauthor.attlist -->
+ <!-- end of corpauthor.module -->
+ <!-- CorpCredit ...................... -->
+ <xs:attributeGroup name="corpcredit.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A corporation or organization credited in a document. -->
+ <xs:element name="corpcredit" substitutionGroup="docinfo.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="corpcredit.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of corpcredit.element -->
+ <xs:attributeGroup name="corpcredit.attlist">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="graphicdesigner"/>
+ <xs:enumeration value="productioneditor"/>
+ <xs:enumeration value="copyeditor"/>
+ <xs:enumeration value="technicaleditor"/>
+ <xs:enumeration value="translator"/>
+ <xs:enumeration value="other"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="corpcredit.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of corpcredit.attlist -->
+ <!-- end of corpcredit.module -->
+ <!-- CorpName ......................... -->
+ <!-- doc:The name of a corporation. -->
+ <xs:element name="corpname">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="corpname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of corpname.element -->
+ <xs:attributeGroup name="corpname.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="corpname.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="corpname.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of corpname.attlist -->
+ <!-- end of corpname.module -->
+ <!-- Date ............................. -->
+ <xs:attributeGroup name="date.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The date of publication or revision of a document. -->
+ <xs:element name="date">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="date.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of date.element -->
+ <xs:attributeGroup name="date.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="date.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of date.attlist -->
+ <!-- end of date.module -->
+ <!-- Edition .......................... -->
+ <xs:attributeGroup name="edition.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name or number of an edition of a document. -->
+ <xs:element name="edition">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="edition.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of edition.element -->
+ <xs:attributeGroup name="edition.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="edition.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of edition.attlist -->
+ <!-- end of edition.module -->
+ <!-- Editor ........................... -->
+ <xs:attributeGroup name="editor.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of the editor of a document. -->
+ <xs:element name="editor">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:choice>
+ <xs:element ref="personname"/>
+ <xs:group maxOccurs="unbounded" ref="person.ident.mix"/>
+ </xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="personblurb"/>
+ <xs:element ref="email"/>
+ <xs:element ref="address"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="editor.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of editor.element -->
+ <xs:attributeGroup name="editor.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="editor.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of editor.attlist -->
+ <!-- (see "Personal identity elements" for %person.ident.mix;) -->
+ <!-- end of editor.module -->
+ <!-- ISBN ............................. -->
+ <xs:attributeGroup name="isbn.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The International Standard Book Number of a document. -->
+ <xs:element name="isbn">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="isbn.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of isbn.element -->
+ <xs:attributeGroup name="isbn.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="isbn.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of isbn.attlist -->
+ <!-- end of isbn.module -->
+ <!-- ISSN ............................. -->
+ <xs:attributeGroup name="issn.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The International Standard Serial Number of a periodical. -->
+ <xs:element name="issn">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="issn.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of issn.element -->
+ <xs:attributeGroup name="issn.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="issn.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of issn.attlist -->
+ <!-- end of issn.module -->
+ <!-- BiblioId ................. -->
+ <xs:attributeGroup name="biblio.class.attrib">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="uri"/>
+ <xs:enumeration value="doi"/>
+ <xs:enumeration value="isbn"/>
+ <xs:enumeration value="isrn"/>
+ <xs:enumeration value="issn"/>
+ <xs:enumeration value="libraryofcongress"/>
+ <xs:enumeration value="pubnumber"/>
+ <xs:enumeration value="other"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otherclass"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="biblioid.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An identifier for a document. -->
+ <xs:element name="biblioid">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="biblioid.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of biblioid.element -->
+ <xs:attributeGroup name="biblioid.attlist">
+ <xs:attributeGroup ref="biblio.class.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="biblioid.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of biblioid.attlist -->
+ <!-- end of biblioid.module -->
+ <!-- CiteBiblioId ................. -->
+ <xs:attributeGroup name="citebiblioid.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A citation of a bibliographic identifier. -->
+ <xs:element name="citebiblioid" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="citebiblioid.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of citebiblioid.element -->
+ <xs:attributeGroup name="citebiblioid.attlist">
+ <xs:attributeGroup ref="biblio.class.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="citebiblioid.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of citebiblioid.attlist -->
+ <!-- end of citebiblioid.module -->
+ <!-- BiblioSource ................. -->
+ <xs:attributeGroup name="bibliosource.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The source of a document. -->
+ <xs:element name="bibliosource">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="bibliosource.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of bibliosource.element -->
+ <xs:attributeGroup name="bibliosource.attlist">
+ <xs:attributeGroup ref="biblio.class.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="bibliosource.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of bibliosource.attlist -->
+ <!-- end of bibliosource.module -->
+ <!-- BiblioRelation ................. -->
+ <xs:attributeGroup name="bibliorelation.type.attrib">
+ <xs:attribute name="type">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="isversionof"/>
+ <xs:enumeration value="hasversion"/>
+ <xs:enumeration value="isreplacedby"/>
+ <xs:enumeration value="replaces"/>
+ <xs:enumeration value="isrequiredby"/>
+ <xs:enumeration value="requires"/>
+ <xs:enumeration value="ispartof"/>
+ <xs:enumeration value="haspart"/>
+ <xs:enumeration value="isreferencedby"/>
+ <xs:enumeration value="references"/>
+ <xs:enumeration value="isformatof"/>
+ <xs:enumeration value="hasformat"/>
+ <xs:enumeration value="othertype"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="othertype"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="bibliorelation.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The relationship of a document to another. -->
+ <xs:element name="bibliorelation">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="bibliorelation.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of bibliorelation.element -->
+ <xs:attributeGroup name="bibliorelation.attlist">
+ <xs:attributeGroup ref="biblio.class.attrib"/>
+ <xs:attributeGroup ref="bibliorelation.type.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="bibliorelation.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of bibliorelation.attlist -->
+ <!-- end of bibliorelation.module -->
+ <!-- BiblioCoverage ................. -->
+ <xs:attributeGroup name="bibliocoverage.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The spatial or temporal coverage of a document. -->
+ <xs:element name="bibliocoverage">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="bibliocoverage.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of bibliocoverage.element -->
+ <xs:attributeGroup name="bibliocoverage.attlist">
+ <xs:attribute name="spatial">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="dcmipoint"/>
+ <xs:enumeration value="iso3166"/>
+ <xs:enumeration value="dcmibox"/>
+ <xs:enumeration value="tgn"/>
+ <xs:enumeration value="otherspatial"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otherspatial"/>
+ <xs:attribute name="temporal">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="dcmiperiod"/>
+ <xs:enumeration value="w3c-dtf"/>
+ <xs:enumeration value="othertemporal"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="othertemporal"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="bibliocoverage.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of bibliocoverage.attlist -->
+ <!-- end of bibliocoverage.module -->
+ <!-- InvPartNumber .................... -->
+ <xs:attributeGroup name="invpartnumber.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An inventory part number. -->
+ <xs:element name="invpartnumber">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="invpartnumber.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of invpartnumber.element -->
+ <xs:attributeGroup name="invpartnumber.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="invpartnumber.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of invpartnumber.attlist -->
+ <!-- end of invpartnumber.module -->
+ <!-- IssueNum ......................... -->
+ <xs:attributeGroup name="issuenum.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The number of an issue of a journal. -->
+ <xs:element name="issuenum">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="issuenum.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of issuenum.element -->
+ <xs:attributeGroup name="issuenum.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="issuenum.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of issuenum.attlist -->
+ <!-- end of issuenum.module -->
+ <!-- LegalNotice ...................... -->
+ <xs:attributeGroup name="legalnotice.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A statement of legal obligations or requirements. -->
+ <xs:element name="legalnotice">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:group maxOccurs="unbounded" ref="legalnotice.mix"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="legalnotice.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of legalnotice.element -->
+ <xs:attributeGroup name="legalnotice.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="legalnotice.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of legalnotice.attlist -->
+ <!-- end of legalnotice.module -->
+ <!-- ModeSpec ......................... -->
+ <xs:attributeGroup name="modespec.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Application-specific information necessary for the completion of an OLink. -->
+ <xs:element name="modespec" substitutionGroup="docinfo.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="modespec.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of modespec.element -->
+ <!--
+ Application: Type of action required for completion
+ of the links to which the ModeSpec is relevant (e.g.,
+ retrieval query)
+ -->
+ <xs:attributeGroup name="modespec.attlist">
+ <xs:attribute name="application" type="notation.class"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="modespec.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of modespec.attlist -->
+ <!-- end of modespec.module -->
+ <!-- OrgName .......................... -->
+ <xs:attributeGroup name="orgname.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of an organization other than a corporation. -->
+ <xs:element name="orgname" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="orgname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of orgname.element -->
+ <xs:attributeGroup name="orgname.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="corporation"/>
+ <xs:enumeration value="nonprofit"/>
+ <xs:enumeration value="consortium"/>
+ <xs:enumeration value="informal"/>
+ <xs:enumeration value="other"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otherclass"/>
+ <xs:attributeGroup ref="orgname.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of orgname.attlist -->
+ <!-- end of orgname.module -->
+ <!-- OtherCredit ...................... -->
+ <xs:attributeGroup name="othercredit.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A person or entity, other than an author or editor, credited in a document. -->
+ <xs:element name="othercredit" substitutionGroup="docinfo.char.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:choice>
+ <xs:element ref="personname"/>
+ <xs:group maxOccurs="unbounded" ref="person.ident.mix"/>
+ </xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="personblurb"/>
+ <xs:element ref="email"/>
+ <xs:element ref="address"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="othercredit.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of othercredit.element -->
+ <xs:attributeGroup name="othercredit.attlist">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="graphicdesigner"/>
+ <xs:enumeration value="productioneditor"/>
+ <xs:enumeration value="copyeditor"/>
+ <xs:enumeration value="technicaleditor"/>
+ <xs:enumeration value="translator"/>
+ <xs:enumeration value="other"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="othercredit.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of othercredit.attlist -->
+ <!-- (see "Personal identity elements" for %person.ident.mix;) -->
+ <!-- end of othercredit.module -->
+ <!-- PageNums ......................... -->
+ <xs:attributeGroup name="pagenums.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The numbers of the pages in a book, for use in a bibliographic entry. -->
+ <xs:element name="pagenums">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="pagenums.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of pagenums.element -->
+ <xs:attributeGroup name="pagenums.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="pagenums.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of pagenums.attlist -->
+ <!-- end of pagenums.module -->
+ <!-- Personal identity elements ....... -->
+ <!--
+ These elements are used only within Author, Editor, and
+ OtherCredit.
+ -->
+ <xs:attributeGroup name="contrib.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A summary of the contributions made to a document by a credited source. -->
+ <xs:element name="contrib">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="contrib.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of contrib.element -->
+ <xs:attributeGroup name="contrib.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="contrib.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of contrib.attlist -->
+ <!-- end of contrib.module -->
+ <xs:attributeGroup name="firstname.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The first name of a person. -->
+ <xs:element name="firstname">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="firstname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of firstname.element -->
+ <xs:attributeGroup name="firstname.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="firstname.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of firstname.attlist -->
+ <!-- end of firstname.module -->
+ <xs:attributeGroup name="honorific.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The title of a person. -->
+ <xs:element name="honorific">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="honorific.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of honorific.element -->
+ <xs:attributeGroup name="honorific.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="honorific.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of honorific.attlist -->
+ <!-- end of honorific.module -->
+ <xs:attributeGroup name="lineage.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The portion of a person's name indicating a relationship to ancestors. -->
+ <xs:element name="lineage">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="lineage.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of lineage.element -->
+ <xs:attributeGroup name="lineage.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="lineage.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of lineage.attlist -->
+ <!-- end of lineage.module -->
+ <xs:attributeGroup name="othername.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A component of a persons name that is not a first name, surname, or lineage. -->
+ <xs:element name="othername">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="othername.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of othername.element -->
+ <xs:attributeGroup name="othername.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="othername.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of othername.attlist -->
+ <!-- end of othername.module -->
+ <xs:attributeGroup name="surname.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A family name; in western cultures the last name. -->
+ <xs:element name="surname">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="surname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of surname.element -->
+ <xs:attributeGroup name="surname.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="surname.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of surname.attlist -->
+ <!-- end of surname.module -->
+ <!-- end of person.ident.module -->
+ <!-- PrintHistory ..................... -->
+ <xs:attributeGroup name="printhistory.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The printing history of a document. -->
+ <xs:element name="printhistory">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="para.class"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="printhistory.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of printhistory.element -->
+ <xs:attributeGroup name="printhistory.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="printhistory.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of printhistory.attlist -->
+ <!-- end of printhistory.module -->
+ <!-- ProductName ...................... -->
+ <xs:attributeGroup name="productname.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The formal name of a product. -->
+ <xs:element name="productname" substitutionGroup="docinfo.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="productname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of productname.element -->
+ <!-- Class: More precisely identifies the item the element names -->
+ <xs:attributeGroup name="productname.attlist">
+ <xs:attribute name="class" default="trade">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="service"/>
+ <xs:enumeration value="trade"/>
+ <xs:enumeration value="registered"/>
+ <xs:enumeration value="copyright"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="productname.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of productname.attlist -->
+ <!-- end of productname.module -->
+ <!-- ProductNumber .................... -->
+ <xs:attributeGroup name="productnumber.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A number assigned to a product. -->
+ <xs:element name="productnumber" substitutionGroup="docinfo.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="productnumber.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of productnumber.element -->
+ <xs:attributeGroup name="productnumber.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="productnumber.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of productnumber.attlist -->
+ <!-- end of productnumber.module -->
+ <!-- PubDate .......................... -->
+ <xs:attributeGroup name="pubdate.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The date of publication of a document. -->
+ <xs:element name="pubdate">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="pubdate.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of pubdate.element -->
+ <xs:attributeGroup name="pubdate.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="pubdate.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of pubdate.attlist -->
+ <!-- end of pubdate.module -->
+ <!-- Publisher ........................ -->
+ <xs:attributeGroup name="publisher.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The publisher of a document. -->
+ <xs:element name="publisher">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="publishername"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="address"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="publisher.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of publisher.element -->
+ <xs:attributeGroup name="publisher.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="publisher.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of publisher.attlist -->
+ <!-- end of publisher.module -->
+ <xs:attributeGroup name="publishername.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of the publisher of a document. -->
+ <xs:element name="publishername">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="publishername.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of publishername.element -->
+ <xs:attributeGroup name="publishername.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="publishername.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of publishername.attlist -->
+ <!-- end of publishername.module -->
+ <!-- Address (defined elsewhere in this section) -->
+ <!-- end of publisher.content.module -->
+ <!-- PubsNumber ....................... -->
+ <xs:attributeGroup name="pubsnumber.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A number assigned to a publication other than an ISBN or ISSN or inventory part number. -->
+ <xs:element name="pubsnumber">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="pubsnumber.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of pubsnumber.element -->
+ <xs:attributeGroup name="pubsnumber.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="pubsnumber.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of pubsnumber.attlist -->
+ <!-- end of pubsnumber.module -->
+ <!-- ReleaseInfo ...................... -->
+ <xs:attributeGroup name="releaseinfo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Information about a particular release of a document. -->
+ <xs:element name="releaseinfo">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="releaseinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of releaseinfo.element -->
+ <xs:attributeGroup name="releaseinfo.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="releaseinfo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of releaseinfo.attlist -->
+ <!-- end of releaseinfo.module -->
+ <!-- RevHistory ....................... -->
+ <xs:attributeGroup name="revhistory.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A history of the revisions to a document. -->
+ <xs:element name="revhistory" substitutionGroup="docinfo.char.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="revision"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="revhistory.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of revhistory.element -->
+ <xs:attributeGroup name="revhistory.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="revhistory.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of revhistory.attlist -->
+ <!-- end of revhistory.module -->
+ <xs:attributeGroup name="revision.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An entry describing a single revision in the history of the revisions to a document. -->
+ <xs:element name="revision">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="revnumber"/>
+ <xs:element ref="date"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="author"/>
+ <xs:element ref="authorinitials"/>
+ </xs:choice>
+ <xs:choice minOccurs="0">
+ <xs:element ref="revremark"/>
+ <xs:element ref="revdescription"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="revision.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of revision.element -->
+ <xs:attributeGroup name="revision.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="revision.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of revision.attlist -->
+ <!-- end of revision.module -->
+ <xs:attributeGroup name="revnumber.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A document revision number. -->
+ <xs:element name="revnumber">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="revnumber.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of revnumber.element -->
+ <xs:attributeGroup name="revnumber.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="revnumber.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of revnumber.attlist -->
+ <!-- end of revnumber.module -->
+ <!-- Date (defined elsewhere in this section) -->
+ <!-- AuthorInitials (defined elsewhere in this section) -->
+ <xs:attributeGroup name="revremark.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A description of a revision to a document. -->
+ <xs:element name="revremark">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="revremark.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of revremark.element -->
+ <xs:attributeGroup name="revremark.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="revremark.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of revremark.attlist -->
+ <!-- end of revremark.module -->
+ <xs:attributeGroup name="revdescription.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A extended description of a revision to a document. -->
+ <xs:element name="revdescription">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="revdescription.mix"/>
+ <xs:attributeGroup ref="revdescription.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of revdescription.element -->
+ <xs:attributeGroup name="revdescription.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="revdescription.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of revdescription.attlist -->
+ <!-- end of revdescription.module -->
+ <!-- end of revhistory.content.module -->
+ <!-- SeriesVolNums .................... -->
+ <xs:attributeGroup name="seriesvolnums.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Numbers of the volumes in a series of books. -->
+ <xs:element name="seriesvolnums">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="seriesvolnums.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of seriesvolnums.element -->
+ <xs:attributeGroup name="seriesvolnums.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="seriesvolnums.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of seriesvolnums.attlist -->
+ <!-- end of seriesvolnums.module -->
+ <!-- VolumeNum ........................ -->
+ <xs:attributeGroup name="volumenum.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The volume number of a document in a set (as of books in a set or articles in a journal). -->
+ <xs:element name="volumenum">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="volumenum.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of volumenum.element -->
+ <xs:attributeGroup name="volumenum.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="volumenum.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of volumenum.attlist -->
+ <!-- end of volumenum.module -->
+ <!-- .................................. -->
+ <!-- end of docinfo.content.module -->
+ <!-- ...................................................................... -->
+ <!-- Inline, link, and ubiquitous elements ................................ -->
+ <!-- Technical and computer terms ......................................... -->
+ <xs:attributeGroup name="accel.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A graphical user interface (GUI) keyboard shortcut. -->
+ <xs:element name="accel">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="accel.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of accel.element -->
+ <xs:attributeGroup name="accel.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="accel.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of accel.attlist -->
+ <!-- end of accel.module -->
+ <xs:attributeGroup name="action.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A response to a user event. -->
+ <xs:element name="action" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="action.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of action.element -->
+ <xs:attributeGroup name="action.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="action.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of action.attlist -->
+ <!-- end of action.module -->
+ <xs:attributeGroup name="application.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a software program. -->
+ <xs:element name="application" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="application.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of application.element -->
+ <xs:attributeGroup name="application.attlist">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="hardware"/>
+ <xs:enumeration value="software"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="application.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of application.attlist -->
+ <!-- end of application.module -->
+ <xs:attributeGroup name="classname.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a class, in the object-oriented programming sense. -->
+ <xs:element name="classname" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="classname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of classname.element -->
+ <xs:attributeGroup name="classname.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="classname.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of classname.attlist -->
+ <!-- end of classname.module -->
+ <xs:attributeGroup name="package.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A package. -->
+ <xs:element name="package" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="package.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of package.element -->
+ <xs:attributeGroup name="package.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="package.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of package.attlist -->
+ <!-- end of package.module -->
+ <!--
+ CO is a callout area of the LineColumn unit type (a single character
+ position); the position is directly indicated by the location of CO.
+ -->
+ <xs:attributeGroup name="co.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The location of a callout embedded in text. -->
+ <xs:element name="co">
+ <xs:complexType>
+ <xs:attributeGroup ref="co.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of co.element -->
+ <!-- bug number/symbol override or initialization -->
+ <!-- to any related information -->
+ <xs:attributeGroup name="co.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="linkends.attrib"/>
+ <xs:attributeGroup ref="idreq.common.attrib"/>
+ <xs:attributeGroup ref="co.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of co.attlist -->
+ <!-- end of co.module -->
+ <!-- COREF is a reference to a CO -->
+ <xs:attributeGroup name="coref.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A cross reference to a co. -->
+ <xs:element name="coref">
+ <xs:complexType>
+ <xs:attributeGroup ref="coref.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of coref.element -->
+ <!-- bug number/symbol override or initialization -->
+ <!-- to any related information -->
+ <xs:attributeGroup name="coref.attlist">
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="linkendreq.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="coref.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of coref.attlist -->
+ <!-- end of coref.module -->
+ <xs:attributeGroup name="command.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of an executable program or other software command. -->
+ <xs:element name="command" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="command.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of command.element -->
+ <xs:attributeGroup name="command.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="command.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of command.attlist -->
+ <!-- end of command.module -->
+ <xs:attributeGroup name="computeroutput.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Data, generally text, displayed or presented by a computer. -->
+ <xs:element name="computeroutput" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="cptr.char.mix"/>
+ <xs:element ref="co"/>
+ </xs:choice>
+ <xs:attributeGroup ref="computeroutput.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of computeroutput.element -->
+ <xs:attributeGroup name="computeroutput.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="computeroutput.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of computeroutput.attlist -->
+ <!-- end of computeroutput.module -->
+ <xs:attributeGroup name="database.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a database, or part of a database. -->
+ <xs:element name="database" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="database.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of database.element -->
+ <!-- Class: Type of database the element names; no default -->
+ <xs:attributeGroup name="database.attlist">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="name"/>
+ <xs:enumeration value="table"/>
+ <xs:enumeration value="field"/>
+ <xs:enumeration value="key1"/>
+ <xs:enumeration value="key2"/>
+ <xs:enumeration value="record"/>
+ <xs:enumeration value="index"/>
+ <xs:enumeration value="view"/>
+ <xs:enumeration value="primarykey"/>
+ <xs:enumeration value="secondarykey"/>
+ <xs:enumeration value="foreignkey"/>
+ <xs:enumeration value="altkey"/>
+ <xs:enumeration value="procedure"/>
+ <xs:enumeration value="datatype"/>
+ <xs:enumeration value="constraint"/>
+ <xs:enumeration value="rule"/>
+ <xs:enumeration value="user"/>
+ <xs:enumeration value="group"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="database.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of database.attlist -->
+ <!-- end of database.module -->
+ <xs:attributeGroup name="email.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An email address. -->
+ <xs:element name="email" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="docinfo.char.mix"/>
+ <xs:attributeGroup ref="email.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of email.element -->
+ <xs:attributeGroup name="email.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="email.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of email.attlist -->
+ <!-- end of email.module -->
+ <xs:attributeGroup name="envar.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A software environment variable. -->
+ <xs:element name="envar" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="envar.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of envar.element -->
+ <xs:attributeGroup name="envar.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="envar.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of envar.attlist -->
+ <!-- end of envar.module -->
+ <xs:attributeGroup name="errorcode.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An error code. -->
+ <xs:element name="errorcode" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="errorcode.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of errorcode.element -->
+ <xs:attributeGroup name="errorcode.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="errorcode.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of errorcode.attlist -->
+ <!-- end of errorcode.module -->
+ <xs:attributeGroup name="errorname.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An error name. -->
+ <xs:element name="errorname" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="errorname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of errorname.element -->
+ <xs:attributeGroup name="errorname.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="errorname.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of errorname.attlist -->
+ <!-- end of errorname.module -->
+ <xs:attributeGroup name="errortext.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An error message.. -->
+ <xs:element name="errortext" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="errortext.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of errortext.element -->
+ <xs:attributeGroup name="errortext.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="errortext.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of errortext.attlist -->
+ <!-- end of errortext.module -->
+ <xs:attributeGroup name="errortype.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The classification of an error message. -->
+ <xs:element name="errortype" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="errortype.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of errortype.element -->
+ <xs:attributeGroup name="errortype.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="errortype.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of errortype.attlist -->
+ <!-- end of errortype.module -->
+ <xs:attributeGroup name="filename.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a file. -->
+ <xs:element name="filename" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="filename.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of filename.element -->
+ <!-- Class: Type of filename the element names; no default -->
+ <!--
+ Path: Search path (possibly system-specific) in which
+ file can be found
+ -->
+ <xs:attributeGroup name="filename.attlist">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="headerfile"/>
+ <xs:enumeration value="partition"/>
+ <xs:enumeration value="devicefile"/>
+ <xs:enumeration value="libraryfile"/>
+ <xs:enumeration value="directory"/>
+ <xs:enumeration value="extension"/>
+ <xs:enumeration value="symlink"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="path"/>
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="filename.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of filename.attlist -->
+ <!-- end of filename.module -->
+ <xs:attributeGroup name="function.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a function or subroutine, as in a programming language. -->
+ <xs:element name="function" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="function.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of function.element -->
+ <xs:attributeGroup name="function.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="function.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of function.attlist -->
+ <!-- end of function.module -->
+ <xs:attributeGroup name="guibutton.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The text on a button in a GUI. -->
+ <xs:element name="guibutton" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="smallcptr.char.mix"/>
+ <xs:element ref="accel"/>
+ <xs:element ref="superscript"/>
+ <xs:element ref="subscript"/>
+ </xs:choice>
+ <xs:attributeGroup ref="guibutton.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of guibutton.element -->
+ <xs:attributeGroup name="guibutton.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="guibutton.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of guibutton.attlist -->
+ <!-- end of guibutton.module -->
+ <xs:attributeGroup name="guiicon.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Graphic and/or text appearing as a icon in a GUI. -->
+ <xs:element name="guiicon" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="smallcptr.char.mix"/>
+ <xs:element ref="accel"/>
+ <xs:element ref="superscript"/>
+ <xs:element ref="subscript"/>
+ </xs:choice>
+ <xs:attributeGroup ref="guiicon.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of guiicon.element -->
+ <xs:attributeGroup name="guiicon.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="guiicon.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of guiicon.attlist -->
+ <!-- end of guiicon.module -->
+ <xs:attributeGroup name="guilabel.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The text of a label in a GUI. -->
+ <xs:element name="guilabel" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="smallcptr.char.mix"/>
+ <xs:element ref="accel"/>
+ <xs:element ref="superscript"/>
+ <xs:element ref="subscript"/>
+ </xs:choice>
+ <xs:attributeGroup ref="guilabel.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of guilabel.element -->
+ <xs:attributeGroup name="guilabel.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="guilabel.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of guilabel.attlist -->
+ <!-- end of guilabel.module -->
+ <xs:attributeGroup name="guimenu.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a menu in a GUI. -->
+ <xs:element name="guimenu" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="smallcptr.char.mix"/>
+ <xs:element ref="accel"/>
+ <xs:element ref="superscript"/>
+ <xs:element ref="subscript"/>
+ </xs:choice>
+ <xs:attributeGroup ref="guimenu.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of guimenu.element -->
+ <xs:attributeGroup name="guimenu.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="guimenu.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of guimenu.attlist -->
+ <!-- end of guimenu.module -->
+ <xs:attributeGroup name="guimenuitem.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a terminal menu item in a GUI. -->
+ <xs:element name="guimenuitem" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="smallcptr.char.mix"/>
+ <xs:element ref="accel"/>
+ <xs:element ref="superscript"/>
+ <xs:element ref="subscript"/>
+ </xs:choice>
+ <xs:attributeGroup ref="guimenuitem.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of guimenuitem.element -->
+ <xs:attributeGroup name="guimenuitem.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="guimenuitem.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of guimenuitem.attlist -->
+ <!-- end of guimenuitem.module -->
+ <xs:attributeGroup name="guisubmenu.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a submenu in a GUI. -->
+ <xs:element name="guisubmenu" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="smallcptr.char.mix"/>
+ <xs:element ref="accel"/>
+ <xs:element ref="superscript"/>
+ <xs:element ref="subscript"/>
+ </xs:choice>
+ <xs:attributeGroup ref="guisubmenu.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of guisubmenu.element -->
+ <xs:attributeGroup name="guisubmenu.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="guisubmenu.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of guisubmenu.attlist -->
+ <!-- end of guisubmenu.module -->
+ <xs:attributeGroup name="hardware.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A physical part of a computer system. -->
+ <xs:element name="hardware" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="hardware.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of hardware.element -->
+ <xs:attributeGroup name="hardware.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="hardware.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of hardware.attlist -->
+ <!-- end of hardware.module -->
+ <xs:attributeGroup name="interface.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An element of a GUI. -->
+ <xs:element name="interface" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="smallcptr.char.mix"/>
+ <xs:element ref="accel"/>
+ </xs:choice>
+ <xs:attributeGroup ref="interface.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of interface.element -->
+ <!-- Class: Type of the Interface item; no default -->
+ <xs:attributeGroup name="interface.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="interface.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of interface.attlist -->
+ <!-- end of interface.module -->
+ <xs:attributeGroup name="keycap.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The text printed on a key on a keyboard. -->
+ <xs:element name="keycap" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="keycap.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of keycap.element -->
+ <xs:attributeGroup name="keycap.attlist">
+ <xs:attribute name="function">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="alt"/>
+ <xs:enumeration value="control"/>
+ <xs:enumeration value="shift"/>
+ <xs:enumeration value="meta"/>
+ <xs:enumeration value="escape"/>
+ <xs:enumeration value="enter"/>
+ <xs:enumeration value="tab"/>
+ <xs:enumeration value="backspace"/>
+ <xs:enumeration value="command"/>
+ <xs:enumeration value="option"/>
+ <xs:enumeration value="space"/>
+ <xs:enumeration value="delete"/>
+ <xs:enumeration value="insert"/>
+ <xs:enumeration value="up"/>
+ <xs:enumeration value="down"/>
+ <xs:enumeration value="left"/>
+ <xs:enumeration value="right"/>
+ <xs:enumeration value="home"/>
+ <xs:enumeration value="end"/>
+ <xs:enumeration value="pageup"/>
+ <xs:enumeration value="pagedown"/>
+ <xs:enumeration value="other"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otherfunction"/>
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="keycap.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of keycap.attlist -->
+ <!-- end of keycap.module -->
+ <xs:attributeGroup name="keycode.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The internal, frequently numeric, identifier for a key on a keyboard. -->
+ <xs:element name="keycode" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="keycode.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of keycode.element -->
+ <xs:attributeGroup name="keycode.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="keycode.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of keycode.attlist -->
+ <!-- end of keycode.module -->
+ <xs:attributeGroup name="keycombo.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A combination of input actions. -->
+ <xs:element name="keycombo" substitutionGroup="tech.char.class">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="keycap"/>
+ <xs:element ref="keycombo"/>
+ <xs:element ref="keysym"/>
+ <xs:element ref="mousebutton"/>
+ </xs:choice>
+ <xs:attributeGroup ref="keycombo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of keycombo.element -->
+ <xs:attributeGroup name="keycombo.attlist">
+ <xs:attributeGroup ref="keyaction.attrib"/>
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="keycombo.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of keycombo.attlist -->
+ <!-- end of keycombo.module -->
+ <xs:attributeGroup name="keysysm.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The symbolic name of a key on a keyboard. -->
+ <xs:element name="keysym" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="keysym.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of keysym.element -->
+ <xs:attributeGroup name="keysym.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="keysysm.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of keysym.attlist -->
+ <!-- end of keysym.module -->
+ <xs:attributeGroup name="lineannotation.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A comment on a line in a verbatim listing. -->
+ <xs:element name="lineannotation">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="lineannotation.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of lineannotation.element -->
+ <xs:attributeGroup name="lineannotation.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="lineannotation.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of lineannotation.attlist -->
+ <!-- end of lineannotation.module -->
+ <xs:attributeGroup name="literal.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Inline text that is some literal value. -->
+ <xs:element name="literal" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="literal.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of literal.element -->
+ <xs:attributeGroup name="literal.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="literal.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of literal.attlist -->
+ <!-- end of literal.module -->
+ <xs:attributeGroup name="code.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An inline code fragment. -->
+ <xs:element name="code" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="code.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of code.element -->
+ <xs:attributeGroup name="code.attlist">
+ <xs:attribute name="language"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="code.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of code.attlist -->
+ <!-- end of code.module -->
+ <xs:attributeGroup name="constant.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A programming or system constant. -->
+ <xs:element name="constant" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="constant.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of constant.element -->
+ <xs:attributeGroup name="constant.attlist">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="limit"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="constant.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of constant.attlist -->
+ <!-- end of constant.module -->
+ <xs:attributeGroup name="varname.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a variable. -->
+ <xs:element name="varname" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="varname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of varname.element -->
+ <xs:attributeGroup name="varname.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="varname.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of varname.attlist -->
+ <!-- end of varname.module -->
+ <xs:attributeGroup name="markup.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A string of formatting markup in text that is to be represented literally. -->
+ <xs:element name="markup" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="markup.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of markup.element -->
+ <xs:attributeGroup name="markup.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="markup.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of markup.attlist -->
+ <!-- end of markup.module -->
+ <xs:attributeGroup name="medialabel.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A name that identifies the physical medium on which some information resides. -->
+ <xs:element name="medialabel" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="medialabel.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of medialabel.element -->
+ <!-- Class: Type of medium named by the element; no default -->
+ <xs:attributeGroup name="medialabel.attlist">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="cartridge"/>
+ <xs:enumeration value="cdrom"/>
+ <xs:enumeration value="disk"/>
+ <xs:enumeration value="tape"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="medialabel.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of medialabel.attlist -->
+ <!-- end of medialabel.module -->
+ <xs:attributeGroup name="menuchoice.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A selection or series of selections from a menu. -->
+ <xs:element name="menuchoice" substitutionGroup="tech.char.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="shortcut"/>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="guibutton"/>
+ <xs:element ref="guiicon"/>
+ <xs:element ref="guilabel"/>
+ <xs:element ref="guimenu"/>
+ <xs:element ref="guimenuitem"/>
+ <xs:element ref="guisubmenu"/>
+ <xs:element ref="interface"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="menuchoice.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of menuchoice.element -->
+ <xs:attributeGroup name="menuchoice.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="menuchoice.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of menuchoice.attlist -->
+ <!-- end of menuchoice.module -->
+ <!-- See also KeyCombo -->
+ <xs:attributeGroup name="shortcut.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A key combination for an action that is also accessible through a menu. -->
+ <xs:element name="shortcut">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="keycap"/>
+ <xs:element ref="keycombo"/>
+ <xs:element ref="keysym"/>
+ <xs:element ref="mousebutton"/>
+ </xs:choice>
+ <xs:attributeGroup ref="shortcut.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of shortcut.element -->
+ <xs:attributeGroup name="shortcut.attlist">
+ <xs:attributeGroup ref="keyaction.attrib"/>
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="shortcut.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of shortcut.attlist -->
+ <!-- end of shortcut.module -->
+ <!-- end of menuchoice.content.module -->
+ <xs:attributeGroup name="mousebutton.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The conventional name of a mouse button. -->
+ <xs:element name="mousebutton" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="mousebutton.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of mousebutton.element -->
+ <xs:attributeGroup name="mousebutton.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="mousebutton.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of mousebutton.attlist -->
+ <!-- end of mousebutton.module -->
+ <xs:attributeGroup name="msgtext.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The actual text of a message component in a message set. -->
+ <xs:element name="msgtext">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="component.mix"/>
+ <xs:attributeGroup ref="msgtext.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of msgtext.element -->
+ <xs:attributeGroup name="msgtext.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="msgtext.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of msgtext.attlist -->
+ <!-- end of msgtext.module -->
+ <xs:attributeGroup name="option.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An option for a software command. -->
+ <xs:element name="option" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="option.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of option.element -->
+ <xs:attributeGroup name="option.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="option.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of option.attlist -->
+ <!-- end of option.module -->
+ <xs:attributeGroup name="optional.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Optional information. -->
+ <xs:element name="optional" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="optional.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of optional.element -->
+ <xs:attributeGroup name="optional.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="optional.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of optional.attlist -->
+ <!-- end of optional.module -->
+ <xs:attributeGroup name="parameter.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A value or a symbolic reference to a value. -->
+ <xs:element name="parameter" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="parameter.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of parameter.element -->
+ <!-- Class: Type of the Parameter; no default -->
+ <xs:attributeGroup name="parameter.attlist">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="command"/>
+ <xs:enumeration value="function"/>
+ <xs:enumeration value="option"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="parameter.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of parameter.attlist -->
+ <!-- end of parameter.module -->
+ <xs:attributeGroup name="prompt.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A character or string indicating the start of an input field in a computer display. -->
+ <xs:element name="prompt" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="smallcptr.char.mix"/>
+ <xs:element ref="co"/>
+ </xs:choice>
+ <xs:attributeGroup ref="prompt.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of prompt.element -->
+ <xs:attributeGroup name="prompt.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="prompt.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of prompt.attlist -->
+ <!-- end of prompt.module -->
+ <xs:attributeGroup name="property.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A unit of data associated with some part of a computer system. -->
+ <xs:element name="property" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="cptr.char.mix"/>
+ <xs:attributeGroup ref="property.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of property.element -->
+ <xs:attributeGroup name="property.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="property.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of property.attlist -->
+ <!-- end of property.module -->
+ <xs:attributeGroup name="replaceable.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Content that may or must be replaced by the user. -->
+ <xs:element name="replaceable" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="link.char.class"/>
+ <xs:element ref="optional"/>
+ <xs:group ref="base.char.class"/>
+ <xs:group ref="other.char.class"/>
+ <xs:element ref="inlinegraphic"/>
+ <xs:element ref="inlinemediaobject"/>
+ <xs:element ref="co"/>
+ </xs:choice>
+ <xs:attributeGroup ref="replaceable.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of replaceable.element -->
+ <!--
+ Class: Type of information the element represents; no
+ default
+ -->
+ <xs:attributeGroup name="replaceable.attlist">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="command"/>
+ <xs:enumeration value="function"/>
+ <xs:enumeration value="option"/>
+ <xs:enumeration value="parameter"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="replaceable.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of replaceable.attlist -->
+ <!-- end of replaceable.module -->
+ <xs:attributeGroup name="returnvalue.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The value returned by a function. -->
+ <xs:element name="returnvalue" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="returnvalue.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of returnvalue.element -->
+ <xs:attributeGroup name="returnvalue.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="returnvalue.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of returnvalue.attlist -->
+ <!-- end of returnvalue.module -->
+ <xs:attributeGroup name="sgmltag.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A component of SGML markup. -->
+ <xs:element name="sgmltag" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="sgmltag.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of sgmltag.element -->
+ <!-- Class: Type of SGML construct the element names; no default -->
+ <xs:attributeGroup name="sgmltag.attlist">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="attribute"/>
+ <xs:enumeration value="attvalue"/>
+ <xs:enumeration value="element"/>
+ <xs:enumeration value="endtag"/>
+ <xs:enumeration value="emptytag"/>
+ <xs:enumeration value="genentity"/>
+ <xs:enumeration value="numcharref"/>
+ <xs:enumeration value="paramentity"/>
+ <xs:enumeration value="pi"/>
+ <xs:enumeration value="xmlpi"/>
+ <xs:enumeration value="starttag"/>
+ <xs:enumeration value="sgmlcomment"/>
+ <xs:enumeration value="prefix"/>
+ <xs:enumeration value="namespace"/>
+ <xs:enumeration value="localname"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="namespace"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="sgmltag.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of sgmltag.attlist -->
+ <!-- end of sgmltag.module -->
+ <xs:attributeGroup name="structfield.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A field in a structure (in the programming language sense). -->
+ <xs:element name="structfield" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="structfield.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of structfield.element -->
+ <xs:attributeGroup name="structfield.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="structfield.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of structfield.attlist -->
+ <!-- end of structfield.module -->
+ <xs:attributeGroup name="structname.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The name of a structure (in the programming language sense). -->
+ <xs:element name="structname" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="structname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of structname.element -->
+ <xs:attributeGroup name="structname.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="structname.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of structname.attlist -->
+ <!-- end of structname.module -->
+ <xs:attributeGroup name="symbol.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A name that is replaced by a value before processing. -->
+ <xs:element name="symbol" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="symbol.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of symbol.element -->
+ <!-- Class: Type of symbol; no default -->
+ <xs:attributeGroup name="symbol.attlist">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="limit"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="symbol.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of symbol.attlist -->
+ <!-- end of symbol.module -->
+ <xs:attributeGroup name="systemitem.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A system-related item or term. -->
+ <xs:element name="systemitem" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="cptr.char.mix"/>
+ <xs:element ref="acronym"/>
+ <xs:element ref="co"/>
+ </xs:choice>
+ <xs:attributeGroup ref="systemitem.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of systemitem.element -->
+ <!-- Class: Type of system item the element names; no default -->
+ <xs:attributeGroup name="systemitem.attlist">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="constant"/>
+ <xs:enumeration value="daemon"/>
+ <xs:enumeration value="domainname"/>
+ <xs:enumeration value="etheraddress"/>
+ <xs:enumeration value="event"/>
+ <xs:enumeration value="eventhandler"/>
+ <xs:enumeration value="filesystem"/>
+ <xs:enumeration value="fqdomainname"/>
+ <xs:enumeration value="groupname"/>
+ <xs:enumeration value="ipaddress"/>
+ <xs:enumeration value="library"/>
+ <xs:enumeration value="macro"/>
+ <xs:enumeration value="netmask"/>
+ <xs:enumeration value="newsgroup"/>
+ <xs:enumeration value="osname"/>
+ <xs:enumeration value="protocol"/>
+ <xs:enumeration value="resource"/>
+ <xs:enumeration value="systemname"/>
+ <xs:enumeration value="username"/>
+ <xs:enumeration value="process"/>
+ <xs:enumeration value="server"/>
+ <xs:enumeration value="service"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="systemitem.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of systemitem.attlist -->
+ <!-- end of systemitem.module -->
+ <xs:attributeGroup name="uri.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A Uniform Resource Identifier. -->
+ <xs:element name="uri" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="uri.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of uri.element -->
+ <!-- Type: Type of URI; no default -->
+ <xs:attributeGroup name="uri.attlist">
+ <xs:attribute name="type"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="uri.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of uri.attlist -->
+ <!-- end of uri.module -->
+ <xs:attributeGroup name="token.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A unit of information. -->
+ <xs:element name="token" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="token.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of token.element -->
+ <xs:attributeGroup name="token.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="token.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of token.attlist -->
+ <!-- end of token.module -->
+ <xs:attributeGroup name="type.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The classification of a value. -->
+ <xs:element name="type" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="smallcptr.char.mix"/>
+ <xs:attributeGroup ref="type.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of type.element -->
+ <xs:attributeGroup name="type.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="type.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of type.attlist -->
+ <!-- end of type.module -->
+ <xs:attributeGroup name="userinput.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Data entered by the user. -->
+ <xs:element name="userinput" substitutionGroup="tech.char.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="cptr.char.mix"/>
+ <xs:element ref="co"/>
+ </xs:choice>
+ <xs:attributeGroup ref="userinput.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of userinput.element -->
+ <xs:attributeGroup name="userinput.attlist">
+ <xs:attributeGroup ref="moreinfo.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="userinput.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of userinput.attlist -->
+ <!-- end of userinput.module -->
+ <xs:attributeGroup name="termdef.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An inline definition of a term. -->
+ <xs:element name="termdef" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="termdef.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of termdef.element -->
+ <xs:attributeGroup name="termdef.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="termdef.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of termdef.attlist -->
+ <!-- end of termdef.module -->
+ <!-- General words and phrases ............................................ -->
+ <xs:attributeGroup name="abbrev.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An abbreviation, especially one followed by a period. -->
+ <xs:element name="abbrev" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="word.char.mix"/>
+ <xs:attributeGroup ref="abbrev.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of abbrev.element -->
+ <xs:attributeGroup name="abbrev.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="abbrev.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of abbrev.attlist -->
+ <!-- end of abbrev.module -->
+ <xs:attributeGroup name="acronym.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An often pronounceable word made from the initial (or selected) letters of a name or phrase. -->
+ <xs:element name="acronym" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="word.char.mix"/>
+ <xs:attributeGroup ref="acronym.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of acronym.element -->
+ <xs:attributeGroup name="acronym.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="acronym.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of acronym.attlist -->
+ <!-- end of acronym.module -->
+ <xs:attributeGroup name="citation.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An inline bibliographic reference to another published work. -->
+ <xs:element name="citation" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="citation.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of citation.element -->
+ <xs:attributeGroup name="citation.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="citation.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of citation.attlist -->
+ <!-- end of citation.module -->
+ <xs:attributeGroup name="citerefentry.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A citation to a reference page. -->
+ <xs:element name="citerefentry" substitutionGroup="gen.char.class">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="refentrytitle"/>
+ <xs:element minOccurs="0" ref="manvolnum"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="citerefentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of citerefentry.element -->
+ <xs:attributeGroup name="citerefentry.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="citerefentry.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of citerefentry.attlist -->
+ <!-- end of citerefentry.module -->
+ <xs:attributeGroup name="refentrytitle.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The title of a reference page. -->
+ <xs:element name="refentrytitle">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="refentrytitle.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of refentrytitle.element -->
+ <xs:attributeGroup name="refentrytitle.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="refentrytitle.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of refentrytitle.attlist -->
+ <!-- end of refentrytitle.module -->
+ <xs:attributeGroup name="namvolnum.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A reference volume number. -->
+ <xs:element name="manvolnum">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="word.char.mix"/>
+ <xs:attributeGroup ref="manvolnum.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of manvolnum.element -->
+ <xs:attributeGroup name="manvolnum.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="namvolnum.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of manvolnum.attlist -->
+ <!-- end of manvolnum.module -->
+ <xs:attributeGroup name="citetitle.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The title of a cited work. -->
+ <xs:element name="citetitle" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="citetitle.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of citetitle.element -->
+ <!-- Pubwork: Genre of published work cited; no default -->
+ <xs:attributeGroup name="citetitle.attlist">
+ <xs:attribute name="pubwork">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="article"/>
+ <xs:enumeration value="book"/>
+ <xs:enumeration value="chapter"/>
+ <xs:enumeration value="part"/>
+ <xs:enumeration value="refentry"/>
+ <xs:enumeration value="section"/>
+ <xs:enumeration value="journal"/>
+ <xs:enumeration value="series"/>
+ <xs:enumeration value="set"/>
+ <xs:enumeration value="manuscript"/>
+ <xs:enumeration value="cdrom"/>
+ <xs:enumeration value="dvd"/>
+ <xs:enumeration value="wiki"/>
+ <xs:enumeration value="gopher"/>
+ <xs:enumeration value="bbs"/>
+ <xs:enumeration value="emailmessage"/>
+ <xs:enumeration value="webpage"/>
+ <xs:enumeration value="newsposting"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="citetitle.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of citetitle.attlist -->
+ <!-- end of citetitle.module -->
+ <xs:attributeGroup name="emphasis.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Emphasized text. -->
+ <xs:element name="emphasis" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="emphasis.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of emphasis.element -->
+ <xs:attributeGroup name="emphasis.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="emphasis.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of emphasis.attlist -->
+ <!-- end of emphasis.module -->
+ <xs:attributeGroup name="foreignphrase.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A word or phrase in a language other than the primary language of the document. -->
+ <xs:element name="foreignphrase" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="foreignphrase.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of foreignphrase.element -->
+ <xs:attributeGroup name="foreignphrase.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="foreignphrase.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of foreignphrase.attlist -->
+ <!-- end of foreignphrase.module -->
+ <xs:attributeGroup name="glossterm.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A glossary term. -->
+ <xs:element name="glossterm" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="glossterm.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of glossterm.element -->
+ <!-- to GlossEntry if Glossterm used in text -->
+ <!--
+ BaseForm: Provides the form of GlossTerm to be used
+ for indexing
+ -->
+ <xs:attributeGroup name="glossterm.attlist">
+ <xs:attribute name="baseform"/>
+ <xs:attributeGroup ref="linkend.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="glossterm.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of glossterm.attlist -->
+ <!-- end of glossterm.module -->
+ <xs:attributeGroup name="firstterm.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The first occurrence of a term. -->
+ <xs:element name="firstterm" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="firstterm.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of firstterm.element -->
+ <!-- to GlossEntry or other explanation -->
+ <xs:attributeGroup name="firstterm.attlist">
+ <xs:attribute name="baseform"/>
+ <xs:attributeGroup ref="linkend.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="firstterm.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of firstterm.attlist -->
+ <!-- end of firstterm.module -->
+ <xs:attributeGroup name="phrase.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A span of text. -->
+ <xs:element name="phrase" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="phrase.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of phrase.element -->
+ <xs:attributeGroup name="phrase.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="phrase.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of phrase.attlist -->
+ <!-- end of phrase.module -->
+ <xs:attributeGroup name="quote.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:An inline quotation. -->
+ <xs:element name="quote" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="quote.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of quote.element -->
+ <xs:attributeGroup name="quote.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="quote.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of quote.attlist -->
+ <!-- end of quote.module -->
+ <xs:attributeGroup name="ssscript.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A subscript (as in H{^2}O, the molecular formula for water). -->
+ <xs:element name="subscript">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="link.char.class"/>
+ <xs:element ref="emphasis"/>
+ <xs:element ref="replaceable"/>
+ <xs:element ref="symbol"/>
+ <xs:element ref="inlinegraphic"/>
+ <xs:element ref="inlinemediaobject"/>
+ <xs:group ref="base.char.class"/>
+ <xs:group ref="other.char.class"/>
+ </xs:choice>
+ <xs:attributeGroup ref="subscript.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of subscript.element -->
+ <xs:attributeGroup name="subscript.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="ssscript.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of subscript.attlist -->
+ <!-- doc:A superscript (as in x^2, the mathematical notation for x multiplied by itself). -->
+ <xs:element name="superscript">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="link.char.class"/>
+ <xs:element ref="emphasis"/>
+ <xs:element ref="replaceable"/>
+ <xs:element ref="symbol"/>
+ <xs:element ref="inlinegraphic"/>
+ <xs:element ref="inlinemediaobject"/>
+ <xs:group ref="base.char.class"/>
+ <xs:group ref="other.char.class"/>
+ </xs:choice>
+ <xs:attributeGroup ref="superscript.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of superscript.element -->
+ <xs:attributeGroup name="superscript.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="ssscript.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of superscript.attlist -->
+ <!-- end of ssscript.module -->
+ <xs:attributeGroup name="trademark.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A trademark. -->
+ <xs:element name="trademark" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="link.char.class"/>
+ <xs:element ref="tech.char.class"/>
+ <xs:group ref="base.char.class"/>
+ <xs:group ref="other.char.class"/>
+ <xs:element ref="inlinegraphic"/>
+ <xs:element ref="inlinemediaobject"/>
+ <xs:element ref="emphasis"/>
+ </xs:choice>
+ <xs:attributeGroup ref="trademark.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of trademark.element -->
+ <!-- Class: More precisely identifies the item the element names -->
+ <xs:attributeGroup name="trademark.attlist">
+ <xs:attribute name="class" default="trade">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="service"/>
+ <xs:enumeration value="trade"/>
+ <xs:enumeration value="registered"/>
+ <xs:enumeration value="copyright"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="trademark.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of trademark.attlist -->
+ <!-- end of trademark.module -->
+ <xs:attributeGroup name="wordasword.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A word meant specifically as a word and not representing anything else. -->
+ <xs:element name="wordasword" substitutionGroup="gen.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="word.char.mix"/>
+ <xs:attributeGroup ref="wordasword.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of wordasword.element -->
+ <xs:attributeGroup name="wordasword.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="wordasword.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of wordasword.attlist -->
+ <!-- end of wordasword.module -->
+ <!-- Links and cross-references ........................................... -->
+ <xs:attributeGroup name="link.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A hypertext link. -->
+ <xs:element name="link" substitutionGroup="link.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="link.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of link.element -->
+ <!--
+ Endterm: ID of element containing text that is to be
+ fetched from elsewhere in the document to appear as
+ the content of this element
+ -->
+ <!-- to linked-to object -->
+ <!-- Type: Freely assignable parameter -->
+ <xs:attributeGroup name="link.attlist">
+ <xs:attribute name="endterm" type="xs:IDREF"/>
+ <xs:attribute name="xrefstyle"/>
+ <xs:attribute name="type"/>
+ <xs:attributeGroup ref="linkendreq.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="link.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of link.attlist -->
+ <!-- end of link.module -->
+ <xs:attributeGroup name="olink.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A link that addresses its target indirectly, through an entity. -->
+ <xs:element name="olink" substitutionGroup="link.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="olink.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of olink.element -->
+ <!-- TargetDocEnt: Name of an entity to be the target of the link -->
+ <!--
+ LinkMode: ID of a ModeSpec containing instructions for
+ operating on the entity named by TargetDocEnt
+ -->
+ <!-- LocalInfo: Information that may be passed to ModeSpec -->
+ <!-- Type: Freely assignable parameter -->
+ <xs:attributeGroup name="olink.attlist">
+ <xs:attribute name="targetdocent" type="xs:ENTITY"/>
+ <xs:attribute name="linkmode" type="xs:IDREF"/>
+ <xs:attribute name="localinfo"/>
+ <xs:attribute name="type"/>
+ <xs:attribute name="targetdoc"/>
+ <xs:attribute name="targetptr"/>
+ <xs:attribute name="xrefstyle"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="olink.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of olink.attlist -->
+ <!-- end of olink.module -->
+ <xs:attributeGroup name="ulink.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A link that addresses its target by means of a URL (Uniform Resource Locator). -->
+ <xs:element name="ulink" substitutionGroup="link.char.class">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="para.char.mix"/>
+ <xs:attributeGroup ref="ulink.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of ulink.element -->
+ <!-- URL: uniform resource locator; the target of the ULink -->
+ <!-- Type: Freely assignable parameter -->
+ <xs:attributeGroup name="ulink.attlist">
+ <xs:attribute name="url" use="required"/>
+ <xs:attribute name="type"/>
+ <xs:attribute name="xrefstyle"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="ulink.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of ulink.attlist -->
+ <!-- end of ulink.module -->
+ <xs:attributeGroup name="footnoteref.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A cross reference to a footnote (a footnote mark). -->
+ <xs:element name="footnoteref" substitutionGroup="xref.char.class">
+ <xs:complexType>
+ <xs:attributeGroup ref="footnoteref.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of footnoteref.element -->
+ <!-- to footnote content supplied elsewhere -->
+ <xs:attributeGroup name="footnoteref.attlist">
+ <xs:attributeGroup ref="linkendreq.attrib"/>
+ <xs:attributeGroup ref="label.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="footnoteref.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of footnoteref.attlist -->
+ <!-- end of footnoteref.module -->
+ <xs:attributeGroup name="xref.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A cross reference to another part of the document. -->
+ <xs:element name="xref" substitutionGroup="xref.char.class">
+ <xs:complexType>
+ <xs:attributeGroup ref="xref.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of xref.element -->
+ <!--
+ Endterm: ID of element containing text that is to be
+ fetched from elsewhere in the document to appear as
+ the content of this element
+ -->
+ <!-- to linked-to object -->
+ <xs:attributeGroup name="xref.attlist">
+ <xs:attribute name="endterm" type="xs:IDREF"/>
+ <xs:attribute name="xrefstyle"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="linkendreq.attrib"/>
+ <xs:attributeGroup ref="xref.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of xref.attlist -->
+ <!-- end of xref.module -->
+ <xs:attributeGroup name="biblioref.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A cross reference to a bibliographic entry. -->
+ <xs:element name="biblioref" substitutionGroup="xref.char.class">
+ <xs:complexType>
+ <xs:attributeGroup ref="biblioref.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of biblioref.element -->
+ <xs:attributeGroup name="biblioref.attlist">
+ <xs:attribute name="endterm" type="xs:IDREF"/>
+ <xs:attribute name="xrefstyle"/>
+ <xs:attribute name="units"/>
+ <xs:attribute name="begin"/>
+ <xs:attribute name="end"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="linkendreq.attrib"/>
+ <xs:attributeGroup ref="biblioref.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of biblioref.attlist -->
+ <!-- end of biblioref.module -->
+ <!-- Ubiquitous elements .................................................. -->
+ <xs:attributeGroup name="anchor.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A spot in the document. -->
+ <xs:element name="anchor">
+ <xs:complexType>
+ <xs:attributeGroup ref="anchor.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of anchor.element -->
+ <!-- required -->
+ <!-- replaces Lang -->
+ <xs:attributeGroup name="anchor.attlist">
+ <xs:attributeGroup ref="idreq.attrib"/>
+ <xs:attributeGroup ref="pagenum.attrib"/>
+ <xs:attributeGroup ref="remap.attrib"/>
+ <xs:attributeGroup ref="xreflabel.attrib"/>
+ <xs:attributeGroup ref="revisionflag.attrib"/>
+ <xs:attributeGroup ref="effectivity.attrib"/>
+ <xs:attributeGroup ref="anchor.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of anchor.attlist -->
+ <!-- end of anchor.module -->
+ <xs:attributeGroup name="beginpage.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The location of a page break in a print version of the document. -->
+ <xs:element name="beginpage">
+ <xs:complexType>
+ <xs:attributeGroup ref="beginpage.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of beginpage.element -->
+ <!-- PageNum: Number of page that begins at this point -->
+ <xs:attributeGroup name="beginpage.attlist">
+ <xs:attributeGroup ref="pagenum.attrib"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="beginpage.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of beginpage.attlist -->
+ <!-- end of beginpage.module -->
+ <!--
+ IndexTerms appear in the text flow for generating or linking an
+ index.
+ -->
+ <xs:attributeGroup name="indexterm.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:A wrapper for terms to be indexed. -->
+ <xs:element name="indexterm" substitutionGroup="ndxterm.class"/>
+ <!-- end of indexterm.element -->
+ <!--
+ Scope: Indicates which generated indices the IndexTerm
+ should appear in: Global (whole document set), Local (this
+ document only), or All (both)
+ -->
+ <!--
+ Significance: Whether this IndexTerm is the most pertinent
+ of its series (Preferred) or not (Normal, the default)
+ -->
+ <!--
+ Class: Indicates type of IndexTerm; default is Singular,
+ or EndOfRange if StartRef is supplied; StartOfRange value
+ must be supplied explicitly on starts of ranges
+ -->
+ <!--
+ StartRef: ID of the IndexTerm that starts the indexing
+ range ended by this IndexTerm
+ -->
+ <!--
+ Zone: IDs of the elements to which the IndexTerm applies,
+ and indicates that the IndexTerm applies to those entire
+ elements rather than the point at which the IndexTerm
+ occurs
+ -->
+ <xs:attributeGroup name="indexterm.attlist">
+ <xs:attributeGroup ref="pagenum.attrib"/>
+ <xs:attribute name="scope">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="all"/>
+ <xs:enumeration value="global"/>
+ <xs:enumeration value="local"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="significance" default="normal">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="preferred"/>
+ <xs:enumeration value="normal"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="singular"/>
+ <xs:enumeration value="startofrange"/>
+ <xs:enumeration value="endofrange"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="startref" type="xs:IDREF"/>
+ <xs:attribute name="zone" type="xs:IDREFS"/>
+ <xs:attribute name="type"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="indexterm.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of indexterm.attlist -->
+ <!-- end of indexterm.module -->
+ <xs:attributeGroup name="primsecter.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:The primary word or phrase under which an index term should be sorted. -->
+ <xs:element name="primary">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="ndxterm.char.mix"/>
+ <xs:attributeGroup ref="primary.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of primary.element -->
+ <!--
+ SortAs: Alternate sort string for index sorting, e.g.,
+ "fourteen" for an element containing "14"
+ -->
+ <xs:attributeGroup name="primary.attlist">
+ <xs:attribute name="sortas"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="primsecter.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of primary.attlist -->
+ <!-- doc:A secondary word or phrase in an index term. -->
+ <xs:element name="secondary">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="ndxterm.char.mix"/>
+ <xs:attributeGroup ref="secondary.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of secondary.element -->
+ <!--
+ SortAs: Alternate sort string for index sorting, e.g.,
+ "fourteen" for an element containing "14"
+ -->
+ <xs:attributeGroup name="secondary.attlist">
+ <xs:attribute name="sortas"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="primsecter.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of secondary.attlist -->
+ <!-- doc:A tertiary word or phrase in an index term. -->
+ <xs:element name="tertiary">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="ndxterm.char.mix"/>
+ <xs:attributeGroup ref="tertiary.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of tertiary.element -->
+ <!--
+ SortAs: Alternate sort string for index sorting, e.g.,
+ "fourteen" for an element containing "14"
+ -->
+ <xs:attributeGroup name="tertiary.attlist">
+ <xs:attribute name="sortas"/>
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="primsecter.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of tertiary.attlist -->
+ <!-- end of primsecter.module -->
+ <xs:attributeGroup name="seeseealso.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- doc:Part of an index term directing the reader instead to another entry in the index. -->
+ <xs:element name="see">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="ndxterm.char.mix"/>
+ <xs:attributeGroup ref="see.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of see.element -->
+ <xs:attributeGroup name="see.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="seeseealso.role.attrib"/>
+ </xs:attributeGroup>
+ <!-- end of see.attlist -->
+ <!-- doc:Part of an index term directing the reader also to another entry in the index. -->
+ <xs:element name="seealso">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="ndxterm.char.mix"/>
+ <xs:attributeGroup ref="seealso.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- end of seealso.element -->
+ <xs:attributeGroup name="seealso.attlist">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attributeGroup ref="seeseealso.role.attrib"/>
+ </xs:attributeGroup>
+</xs:schema>
+<!-- end of seealso.attlist -->
+<!-- end of seeseealso.module -->
+<!-- end of indexterm.content.module -->
+<!-- End of SCons DocBook V4.5-Based extension V1.0 XML information pool module ... -->
+<!-- .............................................................................. -->
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/scons_xsd/htmltblx.xsd b/doc/editor_configs/xmlmind/addon/config/scons/scons_xsd/htmltblx.xsd
new file mode 100644
index 0000000..9f82a02
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/scons_xsd/htmltblx.xsd
@@ -0,0 +1,431 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- ...................................................................... -->
+<!-- SCons DocBook V4.5-Based extension V1.0 XML HTML Table Module ........ -->
+<!-- File htmltblx.xsd .................................................... -->
+<!-- Copyright (c) 2001-7,2010,2011,2012 The SCons Foundation
+
+ Permission is hereby granted, free of charge, to any person obtaining
+ a copy of this software and associated documentation files (the
+ "Software"), to deal in the Software without restriction, including
+ without limitation the rights to use, copy, modify, merge, publish,
+ distribute, sublicense, and/or sell copies of the Software, and to
+ permit persons to whom the Software is furnished to do so, subject to
+ the following conditions:
+
+ The above copyright notice and this permission notice shall be included
+ in all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
+ KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+ WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+ This DTD extension is based on the DocBook XML HTML Table
+ Module V4.5 with:
+
+ Copyright 2003-2006 ArborText, Inc., Norman Walsh, Sun Microsystems,
+ Inc., and the Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ $Id: htmltblx.mod 6340 2006-10-03 13:23:24Z nwalsh $
+
+ 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/.
+ For the modified SCons extension files
+
+ scons.xsd, dbpoolx.xsd,
+
+ you can write to its developer mailing list. Check out
+ http://www.scons.org/ and http://www.scons.org/lists.php.
+
+-->
+<!-- ...................................................................... -->
+<!--
+ This module contains the definitions for elements that are
+ isomorphic to the HTML elements. One could argue we should
+ instead have based ourselves on the XHTML Table Module, but the
+ HTML one is more like what browsers are likely to accept today
+ and users are likely to use.
+
+ This module has been developed for use with the DocBook V4.5
+ "union table model" in which elements and attlists common to both
+ models are defined (as the union) in the CALS table module by
+ setting various parameter entities appropriately in this file.
+
+ In DTD driver files referring to this module, please use an entity
+ declaration that uses the public identifier shown below:
+
+ <!ENTITY % htmltbl PUBLIC
+ "-//OASIS//ELEMENTS DocBook XML HTML Tables V4.5//EN"
+ "htmltblx.mod">
+ %htmltbl;
+
+ See the documentation for detailed information on the parameter
+ entity and module scheme used in DocBook, customizing DocBook and
+ planning for interchange, and changes made since the last release
+ of DocBook.
+-->
+<!-- ======================= XHTML Tables ======================================= -->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <xs:attributeGroup name="html.coreattrs">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attribute name="class"/>
+ <xs:attribute name="style"/>
+ <xs:attribute name="title"/>
+ </xs:attributeGroup>
+ <!-- Does not contain lang or dir because they are in %common.attribs -->
+ <xs:attributeGroup name="i18n">
+ <xs:attribute ref="xml:lang"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="events">
+ <xs:attribute name="onclick"/>
+ <xs:attribute name="ondblclick"/>
+ <xs:attribute name="onmousedown"/>
+ <xs:attribute name="onmouseup"/>
+ <xs:attribute name="onmouseover"/>
+ <xs:attribute name="onmousemove"/>
+ <xs:attribute name="onmouseout"/>
+ <xs:attribute name="onkeypress"/>
+ <xs:attribute name="onkeydown"/>
+ <xs:attribute name="onkeyup"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="attrs">
+ <xs:attributeGroup ref="html.coreattrs"/>
+ <xs:attributeGroup ref="i18n"/>
+ <xs:attributeGroup ref="events"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="cellhalign">
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="left"/>
+ <xs:enumeration value="center"/>
+ <xs:enumeration value="right"/>
+ <xs:enumeration value="justify"/>
+ <xs:enumeration value="char"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="char"/>
+ <xs:attribute name="charoff"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="cellvalign">
+ <xs:attribute name="valign">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="top"/>
+ <xs:enumeration value="middle"/>
+ <xs:enumeration value="bottom"/>
+ <xs:enumeration value="baseline"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <!-- doc:A group of columns in an HTML table. -->
+ <xs:element name="colgroup">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="col"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="colgroup.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- doc:Specifications for a column in an HTML table. -->
+ <xs:element name="col">
+ <xs:complexType>
+ <xs:attributeGroup ref="col.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- doc:A row in an HTML table. -->
+ <xs:element name="tr">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="th"/>
+ <xs:element ref="td"/>
+ </xs:choice>
+ <xs:attributeGroup ref="tr.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- doc:A table header entry in an HTML table. -->
+ <xs:element name="th">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:group ref="tabentry.mix"/>
+ <xs:element ref="table"/>
+ <xs:element ref="informaltable"/>
+ </xs:choice>
+ <xs:attributeGroup ref="th.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- doc:A table ntry in an HTML table. -->
+ <xs:element name="td">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="para.char.mix"/>
+ <xs:group ref="tabentry.mix"/>
+ <xs:element ref="table"/>
+ <xs:element ref="informaltable"/>
+ </xs:choice>
+ <xs:attributeGroup ref="td.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:attributeGroup name="colgroup.attlist">
+ <xs:attributeGroup ref="attrs"/>
+ <xs:attribute name="span" default="1"/>
+ <xs:attribute name="width"/>
+ <xs:attributeGroup ref="cellhalign"/>
+ <xs:attributeGroup ref="cellvalign"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="col.attlist">
+ <xs:attributeGroup ref="attrs"/>
+ <xs:attribute name="span" default="1"/>
+ <xs:attribute name="width"/>
+ <xs:attributeGroup ref="cellhalign"/>
+ <xs:attributeGroup ref="cellvalign"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="tr.attlist">
+ <xs:attributeGroup ref="attrs"/>
+ <xs:attributeGroup ref="cellhalign"/>
+ <xs:attributeGroup ref="cellvalign"/>
+ <xs:attribute name="bgcolor"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="th.attlist">
+ <xs:attributeGroup ref="attrs"/>
+ <xs:attribute name="abbr"/>
+ <xs:attribute name="axis"/>
+ <xs:attribute name="headers" type="xs:IDREFS"/>
+ <xs:attribute name="scope">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="row"/>
+ <xs:enumeration value="col"/>
+ <xs:enumeration value="rowgroup"/>
+ <xs:enumeration value="colgroup"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="rowspan" default="1"/>
+ <xs:attribute name="colspan" default="1"/>
+ <xs:attributeGroup ref="cellhalign"/>
+ <xs:attributeGroup ref="cellvalign"/>
+ <xs:attribute name="nowrap">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="nowrap"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="bgcolor"/>
+ <xs:attribute name="width"/>
+ <xs:attribute name="height"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="td.attlist">
+ <xs:attributeGroup ref="attrs"/>
+ <xs:attribute name="abbr"/>
+ <xs:attribute name="axis"/>
+ <xs:attribute name="headers" type="xs:IDREFS"/>
+ <xs:attribute name="scope">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="row"/>
+ <xs:enumeration value="col"/>
+ <xs:enumeration value="rowgroup"/>
+ <xs:enumeration value="colgroup"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="rowspan" default="1"/>
+ <xs:attribute name="colspan" default="1"/>
+ <xs:attributeGroup ref="cellhalign"/>
+ <xs:attributeGroup ref="cellvalign"/>
+ <xs:attribute name="nowrap">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="nowrap"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="bgcolor"/>
+ <xs:attribute name="width"/>
+ <xs:attribute name="height"/>
+ </xs:attributeGroup>
+ <!-- ====================================================== -->
+ <!--
+ Set up to read in the CALS model configured to
+ merge with the XHTML table model
+ -->
+ <!-- ====================================================== -->
+ <xs:attributeGroup name="tables.role.attrib">
+ <xs:attributeGroup ref="role.attrib"/>
+ </xs:attributeGroup>
+ <!-- Add label and role attributes to table and informaltable -->
+ <xs:attributeGroup name="bodyatt">
+ <xs:attribute name="floatstyle"/>
+ <xs:attribute name="rowheader">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="firstcol"/>
+ <xs:enumeration value="norowheader"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="label.attrib"/>
+ </xs:attributeGroup>
+ <!--
+ Add common attributes to Table, TGroup, TBody, THead, TFoot, Row,
+ EntryTbl, and Entry (and InformalTable element).
+ -->
+ <xs:attributeGroup name="secur">
+ <xs:attributeGroup ref="common.attrib"/>
+ <xs:attribute name="class"/>
+ <xs:attribute name="style"/>
+ <xs:attribute name="title"/>
+ <xs:attributeGroup ref="i18n"/>
+ <xs:attributeGroup ref="events"/>
+ <xs:attributeGroup ref="tables.role.attrib"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="common.table.attribs">
+ <xs:attributeGroup ref="bodyatt"/>
+ <xs:attributeGroup ref="secur"/>
+ </xs:attributeGroup>
+ <!-- Content model for Table (that also allows HTML tables) -->
+ <xs:complexType name="tbl.table.mdl">
+ <xs:choice>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="blockinfo"/>
+ <xs:group ref="formalobject.title.content"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="ndxterm.class"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="textobject"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="graphic"/>
+ <xs:element maxOccurs="unbounded" ref="mediaobject"/>
+ <xs:element maxOccurs="unbounded" ref="tgroup"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:sequence>
+ <xs:element ref="caption"/>
+ <xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="col"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="colgroup"/>
+ </xs:choice>
+ <xs:element minOccurs="0" ref="thead"/>
+ <xs:element minOccurs="0" ref="tfoot"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="tbody"/>
+ <xs:element maxOccurs="unbounded" ref="tr"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:choice>
+ </xs:complexType>
+ <xs:group name="informal.tbl.table.mdl">
+ <xs:choice>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="textobject"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="graphic"/>
+ <xs:element maxOccurs="unbounded" ref="mediaobject"/>
+ <xs:element maxOccurs="unbounded" ref="tgroup"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:sequence>
+ <xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="col"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="colgroup"/>
+ </xs:choice>
+ <xs:element minOccurs="0" ref="thead"/>
+ <xs:element minOccurs="0" ref="tfoot"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="tbody"/>
+ <xs:element maxOccurs="unbounded" ref="tr"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:choice>
+ </xs:group>
+ <!-- Attributes for Table (including HTML ones) -->
+ <!-- N.B. rules = (none | groups | rows | cols | all) but it can't be spec'd -->
+ <!-- that way because 'all' already occurs in a different enumeration in -->
+ <!-- CALS tables (frame). -->
+ <xs:attributeGroup name="tbl.table.att">
+ <xs:attribute name="tabstyle"/>
+ <xs:attribute name="tocentry" type="yesorno.attvals"/>
+ <xs:attribute name="shortentry" type="yesorno.attvals"/>
+ <xs:attribute name="orient">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="port"/>
+ <xs:enumeration value="land"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="pgwide" type="yesorno.attvals"/>
+ <xs:attribute name="summary"/>
+ <xs:attribute name="width"/>
+ <xs:attribute name="border"/>
+ <xs:attribute name="rules"/>
+ <xs:attribute name="cellspacing"/>
+ <xs:attribute name="cellpadding"/>
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="left"/>
+ <xs:enumeration value="center"/>
+ <xs:enumeration value="right"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="bgcolor"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="tbl.frame.attval">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="void"/>
+ <xs:enumeration value="above"/>
+ <xs:enumeration value="below"/>
+ <xs:enumeration value="hsides"/>
+ <xs:enumeration value="lhs"/>
+ <xs:enumeration value="rhs"/>
+ <xs:enumeration value="vsides"/>
+ <xs:enumeration value="box"/>
+ <xs:enumeration value="border"/>
+ <xs:enumeration value="top"/>
+ <xs:enumeration value="bottom"/>
+ <xs:enumeration value="topbot"/>
+ <xs:enumeration value="all"/>
+ <xs:enumeration value="sides"/>
+ <xs:enumeration value="none"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!-- Allow either objects or inlines; beware of REs between elements. -->
+ <xs:group name="tbl.entry.mdl">
+ <xs:choice>
+ <xs:group ref="para.char.mix"/>
+ <xs:group ref="tabentry.mix"/>
+ </xs:choice>
+ </xs:group>
+ <!--
+ thead, tfoot, and tbody are defined in both table models,
+ so we set up parameter entities to define union models for them
+ -->
+ <xs:complexType name="tbl.hdft.mdl">
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="tr"/>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="colspec"/>
+ <xs:element maxOccurs="unbounded" ref="row"/>
+ </xs:sequence>
+ </xs:choice>
+ </xs:complexType>
+ <xs:complexType name="tbl.tbody.mdl">
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="tr"/>
+ <xs:element maxOccurs="unbounded" ref="row"/>
+ </xs:choice>
+ </xs:complexType>
+</xs:schema>
+<!-- End of SCons DocBook V4.5-Based extension V1.0 XML HTML Table Module . -->
+<!-- ...................................................................... -->
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/scons_xsd/scons.xsd b/doc/editor_configs/xmlmind/addon/config/scons/scons_xsd/scons.xsd
new file mode 100644
index 0000000..481c2d4
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/scons_xsd/scons.xsd
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- ...................................................................... -->
+<!-- SCons DocBook V4.5-Based extension V1.0 .............................. -->
+<!-- File scons.xsd ....................................................... -->
+<!-- Copyright (c) 2001-7,2010,2011,2012 The SCons Foundation
+
+ Permission is hereby granted, free of charge, to any person obtaining
+ a copy of this software and associated documentation files (the
+ "Software"), to deal in the Software without restriction, including
+ without limitation the rights to use, copy, modify, merge, publish,
+ distribute, sublicense, and/or sell copies of the Software, and to
+ permit persons to whom the Software is furnished to do so, subject to
+ the following conditions:
+
+ The above copyright notice and this permission notice shall be included
+ in all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
+ KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+ WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+ This DTD extension is based on the DocBook V4.5 DTD with:
+
+ Copyright 1992-2006 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).
+
+ See also http://docbook.org/specs/
+
+ $Id: docbookx.dtd 6340 2006-10-03 13:23:24Z nwalsh $
+
+
+ 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/.
+ For the modified SCons extension files
+
+ scons.xsd, dbpoolx.xsd,
+
+ you can write to its developer mailing list. Check out
+ http://www.scons.org/ and http://www.scons.org/lists.php.
+
+-->
+<!-- ...................................................................... -->
+<!--
+ This is the driver file for V4.5 of the DocBook DTD.
+ Please use the following formal public identifier to identify it:
+
+ "-//OASIS//DTD DocBook XML V4.5//EN"
+
+ For example, if your document's top-level element is Book, and
+ you are using DocBook directly, use the FPI in the DOCTYPE
+ declaration:
+
+ <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
+ "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"
+ [...]>
+
+ Or, if you have a higher-level driver file that customizes DocBook,
+ use the FPI in the parameter entity declaration:
+
+ <!ENTITY % DocBookDTD PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
+ "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
+ %DocBookDTD;
+
+ See the documentation for detailed information on the parameter
+ entity and module scheme used in DocBook, customizing DocBook and
+ planning for interchange, and changes made since the last release
+ of DocBook.
+-->
+<!-- ...................................................................... -->
+<!-- Enable SGML features ................................................. -->
+<!-- ...................................................................... -->
+<!-- Notation declarations ................................................ -->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.scons.org/dbxsd/v1.0"
+ elementFormDefault="qualified">
+ <xs:include schemaLocation="dbnotnx.xsd"/>
+ <xs:include schemaLocation="dbpoolx.xsd"/>
+ <xs:include schemaLocation="dbhierx.xsd"/>
+ <!-- ...................................................................... -->
+ <!-- ISO character entity sets ............................................ -->
+ <!-- euro sign, U+20AC NEW -->
+ <!-- ...................................................................... -->
+ <!-- DTD modules .......................................................... -->
+ <!-- Information pool .............. -->
+ <!-- Redeclaration placeholder ..... -->
+ <!-- Document hierarchy ............ -->
+</xs:schema>
+<!-- ...................................................................... -->
+<!-- Other general entities ............................................... -->
+<!-- End of SCons DocBook V4.5-Based extension V1.0 ....................... -->
+<!-- ...................................................................... -->
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/scons_xsd/xml.xsd b/doc/editor_configs/xmlmind/addon/config/scons/scons_xsd/xml.xsd
new file mode 100644
index 0000000..600f399
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/scons_xsd/xml.xsd
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ targetNamespace="http://www.w3.org/XML/1998/namespace">
+ <xs:import schemaLocation="scons.xsd"/>
+ <xs:attribute name="base"/>
+ <xs:attribute name="space">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="preserve"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="lang" type="xs:NMTOKEN"/>
+</xs:schema>
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/toolBar.incl b/doc/editor_configs/xmlmind/addon/config/scons/toolBar.incl
new file mode 100644
index 0000000..a610a2d
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/toolBar.incl
@@ -0,0 +1,189 @@
+<?xml version='1.0' encoding='ISO-8859-1'?>
+<configuration
+ xmlns="http://www.xmlmind.com/xmleditor/schema/configuration"
+ xmlns:cfg="http://www.xmlmind.com/xmleditor/schema/configuration">
+
+ <toolBar>
+ <button toolTip="Convert to emphasis"
+ icon="../common/icons/emphasisText_menu.png">
+ <menu>
+ <item label="emphasis"
+ command="convert"
+ parameter="[implicitElement] emphasis" />
+ <item label="emphasis[bold]"
+ command="docb.convertWithAttribute"
+ parameter="emphasis role bold" />
+ <item label="firstterm" command="convert"
+ parameter="[implicitElement] firstterm" />
+ <item label="replaceable" command="convert"
+ parameter="[implicitElement] replaceable" />
+ <separator />
+ <item label="literal" command="convert"
+ parameter="[implicitElement] literal" />
+ <item label="filename" command="convert"
+ parameter="[implicitElement] filename" />
+ <separator />
+ <item label="trademark" command="convert"
+ parameter="[implicitElement] trademark" />
+ <item label="trademark[registered]" command="docb.convertWithAttribute"
+ parameter="trademark class registered" />
+ <separator />
+ <item label="guilabel" command="convert"
+ parameter="[implicitElement] guilabel" />
+ <item label="guibutton" command="convert"
+ parameter="[implicitElement] guibutton" />
+ <item label="guimenuitem" command="convert"
+ parameter="[implicitElement] guimenuitem" />
+ <item label="guisubmenu" command="convert"
+ parameter="[implicitElement] guisubmenu" />
+ <item label="guimenu" command="convert"
+ parameter="[implicitElement] guimenu" />
+ <separator />
+ <item label="keycap" command="convert"
+ parameter="[implicitElement] keycap" />
+ <item label="keysym" command="convert"
+ parameter="[implicitElement] keysym" />
+ <separator />
+ <item label="sgmltag[element]" command="docb.convertWithAttribute"
+ parameter="sgmltag class element" />
+ <item label="sgmltag[attribute]" command="docb.convertWithAttribute"
+ parameter="sgmltag class attribute" />
+ <item label="sgmltag[attvalue]" command="docb.convertWithAttribute"
+ parameter="sgmltag class attvalue" />
+ </menu>
+ </button>
+
+ <button toolTip="Convert to link"
+ icon="../common/icons/hyperText_menu.png">
+ <menu>
+ <item label="link" command="convert"
+ parameter="[implicitElement] link" />
+ <item label="ulink" command="convert"
+ parameter="[implicitElement] ulink" />
+ </menu>
+ </button>
+
+ <button toolTip="Convert to plain text"
+ icon="../common/icons/plainText.png">
+ <command name="convert" parameter="[implicitElement] #text" />
+ </button>
+
+ <separator />
+
+ <button toolTip="Add para" icon="../common/icons/paragraph.png">
+ <command name="docb.addAfter" parameter="para" />
+ </button>
+
+ <button toolTip="Add listitem or varlistentry [Ctrl-Enter]"
+ icon="../common/icons/addListItem.png">
+ <command name="docb.addListItem" parameter="After" />
+ </button>
+
+ <button toolTip="Add itemizedlist"
+ icon="../common/icons/itemizedList.png">
+ <command name="docb.addAfter" parameter="itemizedlist" />
+ </button>
+
+ <button toolTip="Add orderedlist"
+ icon="../common/icons/orderedList.png">
+ <command name="docb.addAfter" parameter="orderedlist" />
+ </button>
+
+ <button toolTip="Add variablelist"
+ icon="../common/icons/definitionList.png">
+ <command name="docb.addAfter" parameter="variablelist" />
+ </button>
+
+ <button toolTip="Add table" icon="../common/icons/table_menu.png">
+ <menu>
+ <item label="informaltable" command="docb.addAfter"
+ parameter="informaltable" />
+ <item label="informaltable(head_row)" command="docb.addAfter"
+ parameter="#template(informaltable,head_row)" />
+ <item label="informaltable(head_column)" command="docb.addAfter"
+ parameter="#template(informaltable,head_column)" />
+ <item label="informaltable(head_row_column)" command="docb.addAfter"
+ parameter="#template(informaltable,head_row_column)" />
+ <separator />
+ <item label="table" command="docb.addAfter"
+ parameter="table" />
+ <item label="table(head_row)" command="docb.addAfter"
+ parameter="#template(table,head_row)" />
+ <item label="table(head_column)" command="docb.addAfter"
+ parameter="#template(table,head_column)" />
+ <item label="table(head_row_column)" command="docb.addAfter"
+ parameter="#template(table,head_row_column)" />
+
+ <separator />
+
+ <item label="informaltable(HTML)" command="docb.addAfter"
+ parameter="#template(informaltable,HTML)" />
+ <item label="informaltable(HTML_head_row)" command="docb.addAfter"
+ parameter="#template(informaltable,HTML_head_row)" />
+ <item label="informaltable(HTML_head_column)" command="docb.addAfter"
+ parameter="#template(informaltable,HTML_head_column)" />
+ <item label="informaltable(HTML_head_row_column)"
+ command="docb.addAfter"
+ parameter="#template(informaltable,HTML_head_row_column)" />
+ <separator />
+ <item label="table(HTML)" command="docb.addAfter"
+ parameter="#template(table,HTML)" />
+ <item label="table(HTML_head_row)" command="docb.addAfter"
+ parameter="#template(table,HTML_head_row)" />
+ <item label="table(HTML_head_column)" command="docb.addAfter"
+ parameter="#template(table,HTML_head_column)" />
+ <item label="table(HTML_head_row_column)" command="docb.addAfter"
+ parameter="#template(table,HTML_head_row_column)" />
+ </menu>
+ </button>
+
+ <button toolTip="Add image" icon="../common/icons/figure_menu.png">
+ <menu>
+ <item label="inlinemediaobject" command="insert"
+ parameter="into inlinemediaobject" />
+ <separator />
+ <item label="mediaobject" command="docb.addAfter"
+ parameter="mediaobject" />
+ <separator />
+ <item label="screenshot" command="docb.addAfter"
+ parameter="screenshot" />
+ <separator />
+ <item label="figure" command="docb.addAfter"
+ parameter="figure" />
+ <item label="figure(screenshot)" command="docb.addAfter"
+ parameter="#template(figure,screenshot)" />
+ </menu>
+ </button>
+
+ <button toolTip="Add section" icon="../common/icons/section_menu.png">
+ <menu>
+ <item label="chapter" command="add"
+ parameter="after[implicitElement] chapter" />
+ <separator />
+ <item label="section" command="add"
+ parameter="after[implicitElement] section" />
+ <item label="sect1" command="add"
+ parameter="after[implicitElement] sect1" />
+ <item label="sect2" command="add"
+ parameter="after[implicitElement] sect2" />
+ <item label="sect3" command="add"
+ parameter="after[implicitElement] sect3" />
+ <item label="sect4" command="add"
+ parameter="after[implicitElement] sect4" />
+ <item label="sect5" command="add"
+ parameter="after[implicitElement] sect5" />
+ <separator />
+ <item label="appendix" command="add"
+ parameter="after[implicitElement] appendix" />
+ </menu>
+ </button>
+
+ <separator />
+
+ <button toolTip="Go to opposite link end"
+ icon="../common/icons/navigate.png">
+ <command name="selectById" parameter="swapIdAndReference" />
+ </button>
+ </toolBar>
+
+</configuration>
diff --git a/doc/editor_configs/xmlmind/addon/config/scons/xslMenu.incl b/doc/editor_configs/xmlmind/addon/config/scons/xslMenu.incl
new file mode 100644
index 0000000..8b639fb
--- /dev/null
+++ b/doc/editor_configs/xmlmind/addon/config/scons/xslMenu.incl
@@ -0,0 +1,688 @@
+<?xml version='1.0' encoding='ISO-8859-1'?>
+<configuration
+ xmlns="http://www.xmlmind.com/xmleditor/schema/configuration"
+ xmlns:cfg="http://www.xmlmind.com/xmleditor/schema/configuration">
+
+ <!-- ====== First step used by most process commands defined here ====== -->
+
+ <command name="docb.convertStep1">
+ <process>
+ <mkdir dir="resources" />
+ <mkdir dir="raw" />
+
+ <copyDocument to="__doc.xml">
+ <resources match="(https|http|ftp)://.*" />
+
+ <!-- Support for textdata/@fileref.
+ add your favorite text file extensions here: -->
+ <resources
+ match=".+\.(txt|text|htm|html|xml|h|c|cpp|java|js|tcl|py|pl|rb)"
+ copyTo="." />
+
+ <resources match=".+\.(png|jpg|jpeg|gif)"
+ copyTo="resources" />
+ <resources match="(?:.+/)?(.+)\.(\w+)"
+ copyTo="raw" referenceAs="resources/$1.png" />
+ <resources match=".+"
+ copyTo="resources" />
+ </copyDocument>
+
+ <convertImage from="raw" to="resources" format="png" />
+
+ <mkdir dir="images/callouts" />
+ <copyProcessResources resources="xsl/images/draft.png" to="images" />
+ <copyProcessResources resources="@xsl/images/callouts/png_callouts.list"
+ to="images/callouts" />
+ </process>
+ </command>
+
+ <!-- =================================================================== -->
+
+ <command name="docb.toHTML">
+ <process>
+ <subProcess name="docb.convertStep1" />
+
+ <copyProcessResources resources="xsl/css/html.css" to="html.css"
+ name="css" />
+
+ <transform stylesheet="xsl/html/chunk.xsl"
+ file="__doc.xml" to="__doc.html"
+ label="Convert to multi-page HTML"
+ documentation="http://docbook.sourceforge.net/release/xsl/current/doc/html/%{parameter.name|html.stylesheet}.html">
+ <parameter name="use.extensions">1</parameter>
+ <!-- Cannot work and generates a lot of error messages. -->
+ <parameter name="graphicsize.extension">0</parameter>
+
+ <parameter name="base.dir">%W%S</parameter>
+ <parameter name="chunk.first.sections">1</parameter>
+ <parameter name="chunk.section.depth">1</parameter>
+
+ <parameter name="toc.section.depth">3</parameter>
+ <parameter name="section.autolabel">1</parameter>
+
+ <parameter name="callout.graphics">1</parameter>
+
+ <parameter name="html.stylesheet">html.css</parameter>
+
+ <parameterGroup name="docb.toHTML.transformParameters" />
+ </transform>
+
+ <!-- The real HTML file is index.html -->
+ <delete files="__doc.*" />
+
+ <upload base="%0/">
+ <copyFiles files="*.*" toDir="." />
+ <copyFiles files="resources/*" toDir="resources" />
+ <copyFiles files="images/*" toDir="images" />
+ </upload>
+ </process>
+ </command>
+
+ <command name="docb.convertToHTML">
+ <macro>
+ <sequence>
+ <command name="selectConvertedFile"
+ parameter="saveDirectoryURL" />
+ <command name="docb.toHTML" parameter='"%_"' />
+ </sequence>
+ </macro>
+ </command>
+
+ <!-- =================================================================== -->
+
+ <command name="docb.toHTML1">
+ <process>
+ <subProcess name="docb.convertStep1" />
+
+ <copyProcessResources resources="xsl/css/html.css" to="html.css"
+ name="css" />
+
+ <transform stylesheet="xsl/html/docbook.xsl"
+ file="__doc.xml" to="__doc.html"
+ label="Convert to single-page HTML"
+ documentation="http://docbook.sourceforge.net/release/xsl/current/doc/html/%{parameter.name|html.stylesheet}.html">
+ <parameter name="use.extensions">1</parameter>
+ <!-- Cannot work and generates a lot of error messages. -->
+ <parameter name="graphicsize.extension">0</parameter>
+
+ <parameter name="generate.toc">%0</parameter>
+ <parameter name="toc.section.depth">3</parameter>
+ <parameter name="section.autolabel">%1</parameter>
+
+ <parameter name="callout.graphics">1</parameter>
+
+ <parameter name="html.stylesheet">html.css</parameter>
+
+ <parameterGroup name="docb.toHTML1.transformParameters" />
+ </transform>
+
+ <upload base="%2">
+ <copyFile file="__doc.html" to="%2" />
+ <copyFile file="html.css" to="html.css" />
+ <copyFiles files="resources/*" toDir="resources" />
+ <copyFiles files="images/*" toDir="images" />
+ </upload>
+ </process>
+ </command>
+
+ <command name="docb.convertToHTML1">
+ <macro>
+ <sequence>
+ <command name="selectConvertedFile"
+ parameter="saveFileURLWithExtension=html" />
+ <command name="docb.toHTML1" parameter='"%0" "%1" "%_"' />
+ </sequence>
+ </macro>
+ </command>
+
+ <!-- =================================================================== -->
+
+ <command name="docb.toHTMLHelp">
+ <process>
+ <subProcess name="docb.convertStep1" />
+
+ <copyProcessResources resources="xsl/css/htmlhelp.css"
+ to="htmlhelp.css" name="css" />
+
+ <transform stylesheet="xsl/htmlhelp/htmlhelp.xsl"
+ file="__doc.xml" to="__doc.html"
+ label="Convert to HTML Help"
+ documentation="http://docbook.sourceforge.net/release/xsl/current/doc/html/%{parameter.name|html.stylesheet}.html">
+ <parameter name="use.extensions">1</parameter>
+ <!-- Cannot work and generates a lot of error messages. -->
+ <parameter name="graphicsize.extension">0</parameter>
+
+ <parameter name="base.dir">%W%S</parameter>
+ <parameter name="manifest.in.base.dir">1</parameter>
+
+ <parameter name="chunk.first.sections">1</parameter>
+ <parameter name="chunk.section.depth">1</parameter>
+
+ <parameter name="toc.section.depth">3</parameter>
+ <parameter name="section.autolabel">1</parameter>
+
+ <parameter name="callout.graphics">1</parameter>
+
+ <parameter name="html.stylesheet">htmlhelp.css</parameter>
+
+ <parameterGroup name="docb.toHTMLHelp.transformParameters" />
+ </transform>
+
+ <!-- Not useful. -->
+ <delete files="__doc.*" />
+
+ <!-- "C:\Program Files\HTML Help Workshop\hhc.exe" is the
+ HTML Help compiler.
+ hhc.exe exit code is 1 even when the compilation is successful.
+ Its exit code should be 0. That's why, without "|| exit 0",
+ the process command thinks hhc.exe has failed. -->
+
+ <shell command="helper(.hhp) htmlhelp.hhp || exit 0"
+ platform="Windows" />
+
+ <upload base="%0">
+ <copyFile file="htmlhelp.chm" to="%0" />
+ </upload>
+ </process>
+ </command>
+
+ <command name="docb.convertToHTMLHelp">
+ <macro>
+ <sequence>
+ <!-- path.separator==';' only on Windows. -->
+ <test expression="system-property('path.separator') = ';'" />
+
+ <command name="selectConvertedFile"
+ parameter="saveFileURLWithExtension=chm" />
+ <command name="docb.toHTMLHelp" parameter='"%_"' />
+ </sequence>
+ </macro>
+ </command>
+
+ <!-- =================================================================== -->
+
+ <command name="docb.toJavaHelpStep1">
+ <process>
+ <subProcess name="docb.convertStep1" />
+
+ <copyProcessResources resources="xsl/css/javahelp.css"
+ to="javahelp.css" name="css" />
+
+ <transform stylesheet="xsl/javahelp/javahelp.xsl"
+ file="__doc.xml" to="__doc.html"
+ label="Convert to Java Help"
+ documentation="http://docbook.sourceforge.net/release/xsl/current/doc/html/%{parameter.name|html.stylesheet}.html">
+ <parameter name="use.extensions">1</parameter>
+ <!-- Cannot work and generates a lot of error messages. -->
+ <parameter name="graphicsize.extension">0</parameter>
+
+ <parameter name="base.dir">%W%S</parameter>
+
+ <parameter name="chunk.first.sections">1</parameter>
+ <parameter name="chunk.section.depth">2</parameter>
+
+ <parameter name="generate.toc"> </parameter>
+
+ <parameter name="callout.graphics">1</parameter>
+
+ <parameter name="html.stylesheet">javahelp.css</parameter>
+
+ <parameterGroup name="docb.toJavaHelp.transformParameters" />
+ </transform>
+
+ <!-- The real file is not __doc.html -->
+ <delete files="__doc.*" />
+
+ <shell command="helper(application/x-java-help-index) ." />
+ </process>
+ </command>
+
+ <command name="docb.toJavaHelp">
+ <process>
+ <subProcess name="docb.toJavaHelpStep1" />
+
+ <jar archive="__help_jar__">
+ <add files="*.*" />
+ <add files="resources/*" />
+ <add files="images/*" />
+ <add files="JavaHelpSearch/*" />
+ </jar>
+
+ <upload base="%0">
+ <copyFile file="__help_jar__" to="%0" />
+ </upload>
+ </process>
+ </command>
+
+ <!-- Useful when the application merges several HelpSets -->
+ <command name="docb.toJavaHelpWithPrefix">
+ <process>
+ <subProcess name="docb.toJavaHelpStep1" />
+
+ <mkdir dir="%1" />
+ <copy files="*.*" to="%1" />
+ <copy recurse="true" files="resources" to="%1" />
+ <copy recurse="true" files="images" to="%1" />
+ <copy recurse="true" files="JavaHelpSearch" to="%1" />
+
+ <jar archive="__help_jar__">
+ <add files="%1/*" />
+ </jar>
+
+ <upload base="%0">
+ <copyFile file="__help_jar__" to="%0" />
+ </upload>
+ </process>
+ </command>
+
+ <command name="docb.convertToJavaHelp">
+ <macro>
+ <sequence>
+ <command name="selectConvertedFile"
+ parameter="saveFileURLWithExtension=jar" />
+ <command name="docb.toJavaHelp" parameter='"%_"' />
+ </sequence>
+ </macro>
+ </command>
+
+ <!-- =================================================================== -->
+
+ <command name="docb.toEclipseHelp">
+ <process>
+ <subProcess name="docb.convertStep1" />
+
+ <copyProcessResources resources="xsl/css/eclipsehelp.css"
+ to="eclipsehelp.css" name="css" />
+
+ <transform stylesheet="xsl/eclipse/eclipse.xsl"
+ file="__doc.xml" to="__doc.html"
+ label="Convert to Eclipse Help"
+ documentation="http://docbook.sourceforge.net/release/xsl/current/doc/html/%{parameter.name|html.stylesheet}.html">
+ <parameter name="use.extensions">1</parameter>
+ <!-- Cannot work and generates a lot of error messages. -->
+ <parameter name="graphicsize.extension">0</parameter>
+
+ <parameter name="base.dir">%W%S</parameter>
+ <parameter name="manifest.in.base.dir">1</parameter>
+
+ <parameter name="chunk.first.sections">1</parameter>
+ <parameter name="chunk.section.depth">3</parameter>
+
+ <parameter name="toc.section.depth">3</parameter>
+ <parameter name="section.autolabel">1</parameter>
+
+ <parameter name="callout.graphics">1</parameter>
+
+ <parameter name="html.stylesheet">eclipsehelp.css</parameter>
+
+ <parameter name="eclipse.plugin.name"
+ >REDEFINE THIS: title of this help</parameter>
+ <parameter name="eclipse.plugin.id"
+ >REDEFINE THIS: unique.id.of.this.plugin</parameter>
+ <parameter name="eclipse.plugin.provider"
+ >REDEFINE THIS: author, company or organization</parameter>
+
+ <parameterGroup name="docb.toEclipseHelp.transformParameters" />
+ </transform>
+
+ <!-- Not useful. -->
+ <delete files="__doc.*" />
+
+ <upload base="%0/">
+ <copyFiles files="*.*" toDir="." />
+ <copyFiles files="resources/*" toDir="resources" />
+ <copyFiles files="images/*" toDir="images" />
+ </upload>
+ </process>
+ </command>
+
+ <command name="docb.convertToEclipseHelp">
+ <macro>
+ <sequence>
+ <command name="selectConvertedFile"
+ parameter="saveDirectoryURL" />
+ <command name="docb.toEclipseHelp" parameter='"%_"' />
+ </sequence>
+ </macro>
+ </command>
+
+ <!-- =================================================================== -->
+
+ <command name="docb.toEpub">
+ <process>
+ <mkdir dir="raw" />
+ <mkdir dir="images" />
+ <mkdir dir="META-INF" />
+
+ <copyDocument to="__doc.xml">
+ <resources match="(https|http|ftp)://.*" />
+
+ <!-- Support for textdata/@fileref.
+ add your favorite text file extensions here: -->
+ <resources
+ match=".+\.(txt|text|htm|html|xml|h|c|cpp|java|js|tcl|py|pl|rb)"
+ copyTo="." />
+
+ <resources match=".+\.(png|jpg|jpeg|gif)"
+ copyTo="images" />
+ <resources match="(?:.+/)?(.+)\.(\w+)"
+ copyTo="raw" referenceAs="images/$1.png" />
+ <resources match=".+"
+ copyTo="images" />
+ </copyDocument>
+
+ <convertImage from="raw" to="images" format="png" />
+
+ <mkdir dir="images/callouts" />
+ <copyProcessResources resources="xsl/images/draft.png"
+ to="images" />
+ <copyProcessResources resources="@xsl/images/callouts/png_callouts.list"
+ to="images/callouts" />
+
+ <copyProcessResources resources="xsl/css/epub.css"
+ to="epub.css" name="css" />
+ <copyProcessResources resources="xsl/epub/mimetype"
+ to="mimetype" />
+ <copyProcessResources resources="xsl/epub/META-INF/container.xml"
+ to="META-INF/container.xml" />
+
+ <transform stylesheet="xsl/epub/epub.xsl"
+ file="__doc.xml" to="__doc.html"
+ label="Convert to Epub"
+ documentation="http://docbook.sourceforge.net/release/xsl/current/doc/html/%{parameter.name|html.stylesheet}.html">
+ <parameter name="use.extensions">1</parameter>
+ <!-- Cannot work and generates a lot of error messages. -->
+ <parameter name="graphicsize.extension">0</parameter>
+
+ <parameter name="base.dir">%W%S</parameter>
+
+ <parameter name="chunk.first.sections">1</parameter>
+ <parameter name="chunk.section.depth">3</parameter>
+
+ <parameter name="generate.toc"> </parameter>
+
+ <parameter name="callout.graphics">1</parameter>
+
+ <parameter name="html.stylesheet">epub.css</parameter>
+
+ <parameterGroup name="docb.toEpub.transformParameters" />
+ </transform>
+
+ <!-- Not useful. -->
+ <delete files="__doc.*" />
+
+ <zip archive="epub.zip">
+ <add files="mimetype" store="true" />
+ <add files="META-INF/*" />
+ <add files="*.html" />
+ <add files="*.css" />
+ <add files="images/*" />
+ <add files="content.opf" />
+ <add files="toc.ncx" />
+ </zip>
+
+ <upload base="%0">
+ <copyFile file="epub.zip" to="%0" />
+ </upload>
+ </process>
+ </command>
+
+ <command name="docb.convertToEpub">
+ <macro>
+ <sequence>
+ <command name="selectConvertedFile"
+ parameter="saveFileURLWithExtension=epub" />
+ <command name="docb.toEpub" parameter='"%_"' />
+ </sequence>
+ </macro>
+ </command>
+
+ <!-- =================================================================== -->
+
+ <command name="docb.toRTF">
+ <process>
+ <subProcess name="docb.convertStep1" />
+
+ <transform stylesheet="xsl/fo/docbook.xsl"
+ file="__doc.xml" to="__doc.fo"
+ label="Convert to RTF, WordprocessingML, OOXML, OpenDocument"
+ documentation="http://docbook.sourceforge.net/release/xsl/current/doc/fo/%{parameter.name|paper.type}.html">
+ <parameter name="use.extensions">1</parameter>
+ <!-- Cannot work and generates a lot of error messages. -->
+ <parameter name="graphicsize.extension">0</parameter>
+
+ <parameter name="paper.type">A4</parameter>
+
+ <parameter name="generate.toc">%2</parameter>
+ <parameter name="toc.section.depth">3</parameter>
+ <parameter name="section.autolabel">%3</parameter>
+
+ <parameter name="callout.graphics">1</parameter>
+
+ <parameter name="shade.verbatim">1</parameter>
+
+ <parameter name="ulink.show">0</parameter>
+
+ <parameterGroup name="docb.toRTF.transformParameters" />
+ </transform>
+
+ <processFO processor="XFC" file="__doc.fo" to="__doc.%0">
+ <parameter name="outputFormat">%0</parameter>
+ <parameter name="outputEncoding">%1</parameter>
+ <parameter name="imageResolution">120</parameter>
+ <parameter name="prescaleImages">false</parameter>
+ <parameterGroup name="docb.toRTF.XFCParameters" />
+ </processFO>
+
+ <upload base="%4">
+ <copyFile file="__doc.%0" to="%4" />
+ </upload>
+ </process>
+ </command>
+
+ <command name="docb.convertToRTF">
+ <macro>
+ <sequence>
+ <command name="selectConvertedFile"
+ parameter="saveFileURLWithExtension=%4" />
+ <command name="docb.toRTF" parameter='"%0" "%1" "%2" "%3" "%_"' />
+ </sequence>
+ </macro>
+ </command>
+
+ <!-- =================================================================== -->
+
+ <command name="docb.toPS">
+ <process>
+ <mkdir dir="resources" />
+ <mkdir dir="raw" />
+
+ <copyDocument to="__doc.xml">
+ <resources match="(https|http|ftp)://.*" />
+
+ <!-- Support for textdata/@fileref.
+ add your favorite text file extensions here: -->
+ <resources
+ match=".+\.(txt|text|htm|html|xml|h|c|cpp|java|js|tcl|py|pl|rb)"
+ copyTo="." />
+
+ <!-- referenceAs=absolute_URL is used as a workaround for
+ FOP 0.20.5 ``really strange'' image managment.
+ (This is harmless for XEP.) -->
+
+ <resources match="(?:.+/)?(.+)\.(png|jpg|jpeg|gif|mml|svg|svgz%1)"
+ copyTo="resources" referenceAs="%w/resources/$1.$2" />
+ <resources match="(?:.+/)?(.+)\.tex"
+ copyTo="raw" referenceAs="%w/resources/$1.%0" />
+ <resources match="(?:.+/)?(.+)\.(\w+)"
+ copyTo="raw" referenceAs="%w/resources/$1.png" />
+ <resources match="(?:.+/)?(.+)"
+ copyTo="resources" referenceAs="%w/resources/$1" />
+ </copyDocument>
+
+ <convertImage from="raw" to="resources" format="%0 png" />
+
+ <mkdir dir="images/callouts" />
+ <copyProcessResources resources="xsl/images/draft.png" to="images" />
+ <copyProcessResources resources="@xsl/images/callouts/png_callouts.list"
+ to="images/callouts" />
+
+ <transform stylesheet="xsl/fo/docbook.xsl"
+ file="__doc.xml" to="__doc.fo"
+ label="Convert to PDF, PostScript"
+ documentation="http://docbook.sourceforge.net/release/xsl/current/doc/fo/%{parameter.name|paper.type}.html">
+ <parameter name="use.extensions">1</parameter>
+ <!-- Cannot work and generates a lot of error messages. -->
+ <parameter name="graphicsize.extension">0</parameter>
+
+ <parameter name="paper.type">A4</parameter>
+
+ <parameter name="generate.toc">%2</parameter>
+ <parameter name="toc.section.depth">3</parameter>
+ <parameter name="section.autolabel">%3</parameter>
+
+ <parameter name="callout.graphics">1</parameter>
+
+ <parameter name="shade.verbatim">1</parameter>
+
+ <parameter name="ulink.show">0</parameter>
+
+ <parameterGroup name="docb.toPS.transformParameters" />
+ </transform>
+
+ <processFO processor="XEP" file="__doc.fo" to="__doc.%0">
+ <parameter name="OUTPUT_FORMAT">%0</parameter>
+ <parameter name="PS.LANGUAGE_LEVEL">2</parameter>
+ <parameterGroup name="docb.toPS.XEPParameters" />
+
+ <!-- If XEP plug-in has not been installed, try FOP plug-in. -->
+ <processFO processor="FOP" file="__doc.fo" to="__doc.%0">
+ <parameter name="renderer">%0</parameter>
+ <parameter name="strict-validation">false</parameter>
+ <parameterGroup name="docb.toPS.FOPParameters" />
+ </processFO>
+ </processFO>
+ </process>
+ </command>
+
+ <command name="docb.toPSFile">
+ <process>
+ <subProcess name="docb.toPS" parameter='"%0" "%1" "%2" "%3"' />
+
+ <upload base="%4">
+ <copyFile file="__doc.%0" to="%4" />
+ </upload>
+ </process>
+ </command>
+
+ <command name="docb.convertToPS">
+ <macro>
+ <sequence>
+ <command name="selectConvertedFile"
+ parameter="saveFileURLWithExtension=%0" />
+ <command name="docb.toPSFile" parameter='"%0" "%1" "%2" "%3" "%_"' />
+ </sequence>
+ </macro>
+ </command>
+
+ <!-- =================================================================== -->
+
+ <command name="docb.toPSPrinter">
+ <process>
+ <subProcess name="docb.toPS" parameter='"%0" "%1" "%2" "%3"' />
+
+ <print file="__doc.%0" printer="%4" />
+ </process>
+ </command>
+
+ <command name="docb.printPS">
+ <macro>
+ <sequence>
+ <command name="selectPrinter" parameter="%0" />
+ <command name="docb.toPSPrinter" parameter='"%0" "%1" "%2" "%3" "%_"'/>
+ </sequence>
+ </macro>
+ </command>
+
+ <!-- =================================================================== -->
+
+ <menu label="_DocBook"
+ insert="ifDefined(XXE.Edition.Unrestricted)after ##last">
+ <separator />
+ <menu label="_Convert Document">
+ <item label="Convert to _HTML..."
+ command="docb.convertToHTML" />
+ <item label="Convert to HTML [_one page]..."
+ command="docb.convertToHTML1"
+ parameter='"/book toc /article toc" 1' />
+ <item label="Convert to HTML [one page, _no TOC]..."
+ command="docb.convertToHTML1" parameter='" " 0' />
+ <separator />
+ <item label="Convert to HTM_L Help..."
+ command="docb.convertToHTMLHelp" />
+ <separator />
+ <item label="Convert to _Java Help..."
+ command="docb.convertToJavaHelp" />
+ <separator />
+ <item label="Convert to _Eclipse Help..."
+ command="docb.convertToEclipseHelp" />
+ <separator />
+ <item label="Convert to Epu_b..."
+ command="docb.convertToEpub" />
+ <separator />
+ <item label="Convert to _RTF (Word 2000+)..."
+ command="docb.convertToRTF"
+ parameter='rtf Cp1252 "/book toc /article toc" 1 rtf' />
+ <item label="Convert to R_TF [no TOC]..."
+ command="docb.convertToRTF"
+ parameter='rtf Cp1252 " " 0 rtf' />
+ <separator />
+ <item label="Convert to _WordprocessingML (Word 2003+)..."
+ command="docb.convertToRTF"
+ parameter='wml UTF-8 "/book toc /article toc" 1 wml' />
+ <item label="Convert to Wordprocessing_ML [no TOC]..."
+ command="docb.convertToRTF"
+ parameter='wml UTF-8 " " 0 wml' />
+ <separator />
+ <item label="Convert to Office Open _XML (Word 2007+)..."
+ command="docb.convertToRTF"
+ parameter='docx UTF-8 "/book toc /article toc" 1 docx' />
+ <item label="Con_vert to Office Open XML [no TOC]..."
+ command="docb.convertToRTF"
+ parameter='docx UTF-8 " " 0 docx' />
+ <separator />
+ <item label="Convert to Open_Document (OpenOffice.org 2+)..."
+ command="docb.convertToRTF"
+ parameter='odt UTF-8 "/book toc /article toc" 1 odt' />
+ <item label="Convert to OpenDoc_ument [no TOC]..."
+ command="docb.convertToRTF"
+ parameter='odt UTF-8 " " 0 odt' />
+ <separator />
+ <item label="Print Post_Script..."
+ command="docb.printPS"
+ parameter='ps |eps|ps "/book toc /article toc" 1' />
+ <item label="Print PostScr_ipt [no TOC]..."
+ command="docb.printPS"
+ parameter='ps |eps|ps " " 0' />
+ <separator />
+ <item label="Convert to _PDF..."
+ command="docb.convertToPS"
+ parameter='pdf |pdf "/book toc /article toc" 1' />
+ <item label="Convert to PD_F [no TOC]..."
+ command="docb.convertToPS"
+ parameter='pdf |pdf " " 0' />
+ </menu>
+ </menu>
+
+ <!-- =================================================================== -->
+
+ <command name="docb.conversionPreferences">
+ <class>com.xmlmind.xmleditext.docbook.ConversionPreferences</class>
+ </command>
+
+ <menu name="customizeConfig" label="_Customize Configuration">
+ <item label="Document Conversion _Preferences..."
+ command="docb.conversionPreferences" />
+ </menu>
+
+</configuration>
diff --git a/doc/editor_configs/xmlmind/custom/dummy.txt b/doc/editor_configs/xmlmind/custom/dummy.txt
new file mode 100644
index 0000000..f786cef
--- /dev/null
+++ b/doc/editor_configs/xmlmind/custom/dummy.txt
@@ -0,0 +1 @@
+# just to make hg happy \ No newline at end of file
diff --git a/doc/editor_configs/xmlmind/preferences.properties b/doc/editor_configs/xmlmind/preferences.properties
new file mode 100644
index 0000000..47a819a
--- /dev/null
+++ b/doc/editor_configs/xmlmind/preferences.properties
@@ -0,0 +1,108 @@
+#XMLmind XML Editor Personal Edition 4.6.0
+#Thu Feb 28 18:53:33 CET 2013
+ignoreMixedCase=false
+maxUndo=20
+underlineHeader=true
+useSchemaCache=false
+warnAboutAdvancedXInclude=false
+rightTab.insertCharacterPane.selected=false
+addInteractiveMargin=none
+rightTab.checkSpellingPane.atStart=false
+textAntiAliasing=true
+rightTab.editPane.atStart=true
+addonSource=servers
+lastOpenedFiles=
+defaultForeground=0 0 0
+rightTab.textSearchReplacePane.selected=false
+serifFontFamily=Serif
+overrideConfiguration=false
+footerColor=128 128 128
+rightSplit.dividerLocation=990
+button2PastesSystemSelection=false
+ignoreDuplicates=false
+addonInstallDir=best
+rightTab.checkSpellingPane.selected=false
+favorInteroperability=true
+addonDir=
+rightTabs.horizontalRatio=0.33
+addonServers=http\://www.xmlmind.com/xmleditor/_usercontrib/list.xxe_addon\nhttp\://www.xmlmind.net/xmleditor/_download/list-${XXE_VERSION}.xxe_addon\nhttp\://www.xmlmind.net/xmleditor/_download/list.xxe_addon
+overlineFooter=true
+rightTab.checkValidityPane.atStart=false
+ensureSaveFileHasExtension=true
+lockOwner=
+passwords=
+footerBegin=%F
+allowCompound=true
+charsSavedAsEntityRefs=
+useURLChooser=false
+rightTab.checkValidityPane.selected=true
+treeViewPercent=33
+showValidityPaneOnSave=false
+autoSaveTimeout=30
+onlyShowSuggestions=false
+footerEnd=%P
+appendSuggestionMode=manual
+makeBackupFiles=true
+guessIgnorableWhitespace=true
+lockLocalDocuments=false
+features=
+filterDuplicateIDs=true
+updateInclusionsOnSave=true
+treeViewAtRight=false
+autoSaveInterval=-300
+ignoreStyleSheetPI=false
+headerMiddle=
+locale=-
+defaultBackground=255 255 255
+autoSelectAttribute=placeholder
+maxSuggestionForce=false
+monospaceFontFamily=Monospaced
+maxLineLength=78
+helperApplications.entries=\:text/plain\:txt\:\:\:xterm -e vi "%F"
+firstCharDisplayedByTable=0
+singleInstance=false
+activeInputMethodClient=false
+selectedLanguage=en
+rightTab.editPane.selected=true
+defaultFontIsSerif=false
+ignoreCase=false
+fontSize=-1
+sansSerifFontFamily=SansSerif
+headerEnd=
+indent=2
+allowPrefixes=true
+headerColor=128 128 128
+helperApplications.defaultViewer=firefox "%U"
+lockMode=exclusive
+dontIndentUnconstrainedDocs=false
+rightTab.editAttributePane.selected=false
+ignoreURL=true
+geometry=72 52 1161 855
+maximized=no
+headerBegin=
+rightTab.insertCharacterPane.atStart=false
+allowFileExtensions=true
+rightTab.editAttributePane.atStart=false
+footerMiddle=
+startFromCaret=true
+singleInstancePort=49987
+reopenLastOpenedFile=false
+fileChooserSize=500 326
+screenResolutionWhenPrinting=100.0
+saveCharsAsEntityRefs=true
+copyDocumentTemplate=false
+wrapSearch=false
+infoAboutReadOnlyInclusions=true
+lookAndFeelClassName=-
+imageViewportMode=image
+defaultFontSize=12
+checkPunctuation=false
+showBothViews=false
+xxeVersion=4.6.0
+wrapLongWords=false
+rightTab.textSearchReplacePane.atStart=false
+addAutoDocumentType=true
+allowAdvancedXInclude=false
+addOpenLines=true
+encoding=ORIGINAL_ENCODING
+ignoreDigits=true
diff --git a/doc/editor_configs/xmlmind/ser/dummy.txt b/doc/editor_configs/xmlmind/ser/dummy.txt
new file mode 100644
index 0000000..f786cef
--- /dev/null
+++ b/doc/editor_configs/xmlmind/ser/dummy.txt
@@ -0,0 +1 @@
+# just to make hg happy \ No newline at end of file
diff --git a/doc/editor_configs/xmlmind/spell/dummy.txt b/doc/editor_configs/xmlmind/spell/dummy.txt
new file mode 100644
index 0000000..f786cef
--- /dev/null
+++ b/doc/editor_configs/xmlmind/spell/dummy.txt
@@ -0,0 +1 @@
+# just to make hg happy \ No newline at end of file