diff options
Diffstat (limited to 'doc/editor_configs/xmlmind/addon')
37 files changed, 17376 insertions, 0 deletions
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..eafa0a4 --- /dev/null +++ b/doc/editor_configs/xmlmind/addon/config/scons/common.incl @@ -0,0 +1,652 @@ +<?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" /> + + <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<element> to/from <element>"> + <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() > 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() > 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<element> to/from <element>" + 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..07b846d --- /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</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..324e0fa --- /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"> + <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..289fd6a --- /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"> + <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..1a985c5 --- /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"> + <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..a16a4e5 --- /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"> + <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..25fca75 --- /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"> + <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..ab4e01d --- /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"> + <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..a757894 --- /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"> + <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..f1f36f6 --- /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"> + <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..9bfcdf9 --- /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"> + <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..7306851 --- /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"> + <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..ab32eab --- /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: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" use="required" /> + <xs:attribute name="example" 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.char.mix"/> + <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.char.mix"/> + <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.char.mix"/> + <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 “called out” 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., Δ + --> + <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> |