]> granicus.if.org Git - docbook-dsssl/commitdiff
- Replace old Slides grammar with the namespace-based DocBook 5.0 extension
authorGábor Kövesdán <gabor@kovesdan.org>
Thu, 23 Aug 2012 16:35:52 +0000 (16:35 +0000)
committerGábor Kövesdán <gabor@kovesdan.org>
Thu, 23 Aug 2012 16:35:52 +0000 (16:35 +0000)
- RELAX-NG is now the main schema language
- Generate XSD as well but not DTD

slides/schema/Makefile
slides/schema/dtd/.gitignore [deleted file]
slides/schema/dtd/Makefile [deleted file]
slides/schema/dtd/slides-custom.dtd [deleted file]
slides/schema/dtd/slides-full.dtd [deleted file]
slides/schema/dtd/slides.dtd [deleted file]
slides/schema/dtd/slides.mod [deleted file]
slides/schema/relaxng/Makefile
slides/schema/relaxng/slides.rnc [new file with mode: 0644]
slides/schema/xsd/Makefile [new file with mode: 0644]

index e862159575f7f3ef662219eb4c659f2dc0c7d7c4..b8d77f4230619287d52455ba73982b66b53db413 100644 (file)
@@ -1,9 +1,16 @@
+SUBDIRS= relaxng xsd
+
 all:
-       $(MAKE) -C dtd
-       $(MAKE) -C relaxng
+       for d in ${SUBDIRS}; do \
+               ${MAKE} -C $${d}; \
+       done
 
 clean:
-       $(MAKE) -C relaxng clean
+       for d in ${SUBDIRS}; do \
+               ${MAKE} -C $${d} clean; \
+       done
 
-maintainer-clean: clean
-       $(MAKE) -C dtd maintainer-clean
+maintainer-clean:
+       for d in ${SUBDIRS}; do \
+               ${MAKE} -C $${d} maintainer-clean; \
+       done
diff --git a/slides/schema/dtd/.gitignore b/slides/schema/dtd/.gitignore
deleted file mode 100644 (file)
index 2e1d109..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-slides.dtd
-ChangeLog
diff --git a/slides/schema/dtd/Makefile b/slides/schema/dtd/Makefile
deleted file mode 100644 (file)
index 5752f48..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-include ../../../buildtools/Makefile.incl
-
-all: slides.dtd
-
-slides.dtd: slides-custom.dtd slides.mod
-       $(FLATTEN) $< > $@
-
-clean:
-
-maintainer-clean: clean
-       rm -f slides.dtd
diff --git a/slides/schema/dtd/slides-custom.dtd b/slides/schema/dtd/slides-custom.dtd
deleted file mode 100644 (file)
index 101d96f..0000000
+++ /dev/null
@@ -1,114 +0,0 @@
-<!-- ====================================================================== -->
-<!-- Slides XML V3.4 DTD
-     Copyright (C) 1999, 2000, 2001, 2002, 2003 Norman Walsh
-     http://sourceforge.net/projects/docbook/
-
-     $Id$
-
-     Please direct all questions and comments about this DTD to
-     Norman Walsh, <ndw@nwalsh.com>.
-
-     Common declaration:
-
-     <?xml version='1.0'?>
-     <!DOCTYPE slides
-       PUBLIC "-//Norman Walsh//DTD Slides V3.4//EN"
-       "http://docbook.sourceforge.net/release/slides/3.4/schema/dtd/slides.dtd">
-                                                                            -->
-<!-- ====================================================================== -->
-
-<!ENTITY % local.linespecific.class "|screen">
-
-<!ENTITY % simple.section.element "IGNORE">
-<!ENTITY % section.attlist "IGNORE">
-
-<!ENTITY % simple.sectioninfo.element "IGNORE">
-<!ENTITY % sectioninfo.attlist "IGNORE">
-
-<!ENTITY % article.module "IGNORE">
-<!ENTITY % simple.article.element "IGNORE">
-<!ENTITY % simple.articleinfo.element "IGNORE">
-<!ENTITY % articleinfo.attlist "IGNORE">
-<!ENTITY % simple.appendix.element "IGNORE">
-<!ENTITY % appendix.attlist "IGNORE">
-<!ENTITY % simple.bibliography.element "IGNORE">
-<!ENTITY % bibliography.attlist "IGNORE">
-<!ENTITY % simple.bibliomixed.element "IGNORE">
-<!ENTITY % bibliomixed.attlist "IGNORE">
-<!ENTITY % bibliomset.module "IGNORE">
-<!ENTITY % simple.bibliodiv.element "IGNORE">
-<!ENTITY % bibliodiv.attlist "IGNORE">
-<!ENTITY % simple.affiliation.element "IGNORE">
-<!ENTITY % sidebar.module "INCLUDE">
-
-<!ENTITY % confgroup.content.module "INCLUDE">
-<!ENTITY % confgroup.module "INCLUDE">
-  <!ENTITY % confdates.module "INCLUDE">
-  <!ENTITY % conftitle.module "INCLUDE">
-  <!ENTITY % confnum.module "INCLUDE">
-  <!ENTITY % confsponsor.module "INCLUDE">
-
-<!ENTITY % local.person.ident.mix "">
-<!ENTITY % person.ident.mix
-               "honorific|firstname|surname|lineage|othername|affiliation
-               |authorblurb
-               %local.person.ident.mix;">
-
-<!ENTITY % local.bibliocomponent.mix "">
-<!ENTITY % bibliocomponent.mix
-               "abbrev|abstract|author
-               |authorgroup|bibliomisc
-               |copyright|corpauthor|date|edition
-               |editor|issuenum
-               |othercredit
-               |pubdate|publishername
-               |releaseinfo|revhistory
-               |subtitle|title|titleabbrev|volumenum|citetitle
-               |confgroup
-               |%person.ident.mix;
-               %local.bibliocomponent.mix;">
-
-<!ENTITY % local.divcomponent.mix "|speakernotes">
-<!ENTITY % local.component.mix "|speakernotes">
-
-<!ENTITY % sdocbook.dtd 
-      PUBLIC "-//OASIS//DTD Simplified DocBook XML Customization V1.1//EN"
-      "http://docbook.org/xml/simple/1.1/sdocbook-custom.dtd">
-%sdocbook.dtd;
-
-<!-- ====================================================================== -->
-<!-- Add screen back into the DTD -->
-
-<!ELEMENT screen (%para.char.mix; | lineannotation)*>
-<!ENTITY % screen.role.attrib "%role.attrib;">
-<!ENTITY % local.screen.attrib "">
-<!ATTLIST screen
-               %width.attrib;
-               %linespecific.attrib;
-               %common.attrib;
-               %screen.role.attrib;
-               %local.screen.attrib;
->
-
-<!-- Add address back into the affiliation... -->
-<!ELEMENT affiliation (jobtitle?, orgname?, address*)>
-
-<!-- And add address back into the DTD -->
-<!ELEMENT address (#PCDATA)>
-<!ENTITY % address.role.attrib "%role.attrib;">
-<!ENTITY % local.address.attrib "">
-<!ATTLIST address
-               %linespecific.attrib;
-               %common.attrib;
-               %address.role.attrib;
->
-
-<!-- ====================================================================== -->
-
-<!ENTITY % only-in-full-nav.class "">
-
-<!ENTITY % slides.mod SYSTEM "slides.mod">
-%slides.mod;
-
-<!-- End of Slides XML V3.4 DTD ......................................... -->
-<!-- .................................................................... -->
diff --git a/slides/schema/dtd/slides-full.dtd b/slides/schema/dtd/slides-full.dtd
deleted file mode 100644 (file)
index 355ae94..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-<!-- ====================================================================== -->
-<!-- Slides Full XML V3.4 DTD
-     Copyright (C) 1999, 2000, 2001, 2002, 2003 Norman Walsh
-     http://sourceforge.net/projects/docbook/
-
-     This version of Slides is based on "full" DocBook rather than
-     the Simplified DocBook XML DTD.
-
-     $Id$
-
-     Please direct all questions and comments about this DTD to
-     Norman Walsh, <ndw@nwalsh.com>.
-
-     Common declaration:
-
-     <?xml version='1.0'?>
-     <!DOCTYPE slides
-       PUBLIC "-//Norman Walsh//DTD Slides Full XML V3.4//EN"
-       "http://docbook.sourceforge.net/release/slides/3.4/schema/dtd/slides-full.dtd">
-                                                                            -->
-<!-- ====================================================================== -->
-
-<!ENTITY % local.divcomponent.mix "|speakernotes">
-<!ENTITY % local.component.mix "|speakernotes">
-
-<!-- In this version, we use full DocBook -->
-<!ENTITY % docbook.dtd PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
-  "http://docbook.org/xml/4.4/docbookx.dtd">
-%docbook.dtd;
-
-<!ENTITY % slides.mod SYSTEM "slides.mod">
-%slides.mod;
-
-<!-- End of Slides Full XML V3.4 DTD .................................... -->
-<!-- ...................................................................... -->
diff --git a/slides/schema/dtd/slides.dtd b/slides/schema/dtd/slides.dtd
deleted file mode 100644 (file)
index 7654f44..0000000
+++ /dev/null
@@ -1,1865 +0,0 @@
-<!-- *********************************************************************
-     *** THIS IS THE FLATTENED DTD. DO NOT EDIT THIS DTD BY HAND, EDIT ***
-     *** THE CUSTOMIZATION LAYER AND REGENERATE THE FLATTENED DTD! ********
-     ********************************************************************* -->
-
-<!-- ====================================================================== -->
-<!-- Slides XML V3.4 DTD
-     Copyright (C) 1999, 2000, 2001, 2002, 2003 Norman Walsh
-     http://sourceforge.net/projects/docbook/
-
-     $Id$
-
-     Please direct all questions and comments about this DTD to
-     Norman Walsh, <ndw@nwalsh.com>.
-
-     Common declaration:
-
-     <?xml version='1.0'?>
-     <!DOCTYPE slides
-       PUBLIC "-//Norman Walsh//DTD Slides V3.4//EN"
-       "http://docbook.sourceforge.net/release/slides/3.4/schema/dtd/slides.dtd">
-                                                                            -->
-<!-- ====================================================================== -->
-
-
-<!ENTITY % local.linespecific.class "|screen">
-<!ENTITY % local.person.ident.mix "">
-<!ENTITY % person.ident.mix
-               "honorific|firstname|surname|lineage|othername|affiliation
-               |authorblurb
-               %local.person.ident.mix;">
-<!ENTITY % local.bibliocomponent.mix "">
-<!ENTITY % bibliocomponent.mix
-               "abbrev|abstract|author
-               |authorgroup|bibliomisc
-               |copyright|corpauthor|date|edition
-               |editor|issuenum
-               |othercredit
-               |pubdate|publishername
-               |releaseinfo|revhistory
-               |subtitle|title|titleabbrev|volumenum|citetitle
-               |confgroup
-               |%person.ident.mix;
-               %local.bibliocomponent.mix;">
-<!ENTITY % local.divcomponent.mix "|speakernotes">
-<!ENTITY % local.component.mix "|speakernotes">
-<!ENTITY % local.list.class "">
-<!ENTITY % list.class
-               "itemizedlist|orderedlist
-               |variablelist %local.list.class;">
-<!ENTITY % local.admon.class "">
-<!ENTITY % admon.class
-               "note %local.admon.class;">
-<!ENTITY % linespecific.class
-               "literallayout|programlisting %local.linespecific.class;">
-<!ENTITY % local.para.class "">
-<!ENTITY % para.class
-               "para %local.para.class;">
-<!ENTITY % local.informal.class "">
-<!ENTITY % informal.class
-               "blockquote
-               |mediaobject
-               |informaltable %local.informal.class;">
-<!ENTITY % local.formal.class "">
-<!ENTITY % formal.class
-               "example|figure|table %local.formal.class;">
-<!ENTITY % local.compound.class "">
-<!ENTITY % compound.class
-               "sidebar %local.compound.class;">
-<!ENTITY % local.genobj.class "">
-<!ENTITY % genobj.class "anchor %local.genobj.class;">
-<!ENTITY % local.descobj.class "">
-<!ENTITY % descobj.class
-               "abstract|authorblurb|epigraph
-               %local.descobj.class;">
-<!ENTITY % local.xref.char.class "">
-<!ENTITY % xref.char.class "footnoteref|xref %local.xref.char.class;">
-<!ENTITY % local.gen.char.class "">
-<!ENTITY % gen.char.class
-               "abbrev|acronym|citetitle|emphasis|footnote|phrase
-               |quote|trademark %local.gen.char.class;">
-<!ENTITY % local.link.char.class "">
-<!ENTITY % link.char.class
-               "link|ulink %local.link.char.class;">
-<!ENTITY % local.tech.char.class "">
-<!ENTITY % tech.char.class
-               "command|computeroutput
-               |email|filename
-               |literal
-               |option
-               |replaceable
-               |systemitem|userinput
-               %local.tech.char.class;">
-<!ENTITY % local.base.char.class "">
-<!ENTITY % base.char.class "anchor %local.base.char.class;">
-<!ENTITY % local.docinfo.char.class "">
-<!ENTITY % docinfo.char.class
-               "author|corpauthor|othercredit
-               |revhistory
-               %local.docinfo.char.class;">
-<!ENTITY % local.other.char.class "">
-<!ENTITY % other.char.class
-               "subscript|superscript %local.other.char.class;">
-<!ENTITY % local.inlineobj.char.class "">
-<!ENTITY % inlineobj.char.class
-               "inlinemediaobject %local.inlineobj.char.class;">
-<!ENTITY % local.effectivity.attrib "">
-<!ENTITY % effectivity.attrib 
-       "%local.effectivity.attrib;"
->
-<!ENTITY % local.common.attrib "">
-<!ENTITY % common.attrib
-       "id             ID              #IMPLIED
-       lang            CDATA           #IMPLIED
-        remap           CDATA           #IMPLIED
-       revisionflag    (changed
-                       |added
-                       |deleted
-                       |off)           #IMPLIED
-       %local.common.attrib;"
->
-<!ENTITY % component.mix
-               "%list.class;           |%admon.class;
-               |%linespecific.class;
-               |%para.class;           |%informal.class;
-               |%formal.class;         |%compound.class;
-               |%genobj.class;         |%descobj.class;
-               %local.component.mix;">
-<!ENTITY % local.sidebar.mix "">
-<!ENTITY % sidebar.mix
-               "%list.class;           |%admon.class;
-               |%linespecific.class;
-               |%para.class;           |%informal.class;
-               |%formal.class;
-               |%genobj.class;
-               %local.sidebar.mix;">
-<!ENTITY % local.revdescription.mix "">
-<!ENTITY % revdescription.mix
-               "%list.class;           |%admon.class;
-               |%linespecific.class;
-               |%para.class;           |%informal.class;
-               |%formal.class;
-               |%genobj.class;
-               %local.revdescription.mix;">
-<!ENTITY % local.footnote.mix "">
-<!ENTITY % footnote.mix
-               "%list.class;
-               |%linespecific.class;
-               |%para.class;           |%informal.class;
-               %local.footnote.mix;">
-<!ENTITY % local.example.mix "">
-<!ENTITY % example.mix
-               "%list.class;
-               |%linespecific.class;
-               |%para.class;           |%informal.class;
-               %local.example.mix;">
-<!ENTITY % local.admon.mix "">
-<!ENTITY % admon.mix
-               "%list.class;
-               |%linespecific.class;
-               |%para.class;           |%informal.class;
-               |%formal.class;
-               %local.admon.mix;">
-<!ENTITY % local.figure.mix "">
-<!ENTITY % figure.mix
-               "%linespecific.class;
-                                       |%informal.class;
-               %local.figure.mix;">
-<!ENTITY % local.tabentry.mix "">
-<!ENTITY % tabentry.mix
-               "%list.class;           |%admon.class;
-               |%linespecific.class;
-               |%para.class;           |mediaobject
-               %local.tabentry.mix;">
-<!ENTITY % local.legalnotice.mix "">
-<!ENTITY % legalnotice.mix
-               "%list.class;           |%admon.class;
-               |%linespecific.class;
-               |%para.class;           |blockquote
-               %local.legalnotice.mix;">
-<!ENTITY % local.textobject.mix "">
-<!ENTITY % textobject.mix
-               "%list.class;           |%admon.class;
-               |%linespecific.class;
-               |%para.class;           |blockquote
-               %local.textobject.mix;">
-<!ENTITY % local.listpreamble.mix "">
-<!ENTITY % listpreamble.mix
-               "                        %admon.class;
-               |%linespecific.class;
-               |%para.class;           |%informal.class;
-               |%genobj.class;         |%descobj.class;
-               %local.listpreamble.mix;">
-<!ENTITY % local.para.char.mix "">
-<!ENTITY % para.char.mix
-               "#PCDATA
-               |%xref.char.class;      |%gen.char.class;
-               |%link.char.class;      |%tech.char.class;
-                |%base.char.class;
-               |%other.char.class;     |%inlineobj.char.class;
-               %local.para.char.mix;">
-<!ENTITY % local.title.char.mix "">
-<!ENTITY % title.char.mix
-               "#PCDATA
-               |%xref.char.class;      |%gen.char.class;
-               |%link.char.class;      |%tech.char.class;
-                |%base.char.class;
-                                       |%docinfo.char.class;
-               |%other.char.class;     |%inlineobj.char.class;
-               %local.title.char.mix;">
-<!ENTITY % local.cptr.char.mix "">
-<!ENTITY % cptr.char.mix
-               "#PCDATA
-               |%link.char.class;      |%tech.char.class;
-                |%base.char.class;
-               |%other.char.class;     |inlinemediaobject
-               %local.cptr.char.mix;">
-<!ENTITY % local.word.char.mix "">
-<!ENTITY % word.char.mix
-               "#PCDATA
-                                       |acronym|emphasis|trademark
-               |%link.char.class;
-                |%base.char.class;
-               |%other.char.class;     |inlinemediaobject
-               %local.word.char.mix;">
-<!ENTITY % local.docinfo.char.mix "">
-<!ENTITY % docinfo.char.mix
-               "#PCDATA
-               |%link.char.class;
-                                       |emphasis|trademark
-                                       |replaceable
-               |%other.char.class;     |inlinemediaobject
-               %local.docinfo.char.mix;">
-<!ENTITY % tbl.table.mdl
-       "((title, (mediaobject+|tgroup+))
-          |(caption, (col*|colgroup*), thead?, tfoot?, (tbody+|tr+)))">
-<!ENTITY % divcomponent.mix
-               "%list.class;           |%admon.class;
-               |%linespecific.class;
-               |%para.class;           |%informal.class;
-               |%formal.class;         |%compound.class;
-                                       |%descobj.class;
-               %local.divcomponent.mix;">
-<!ENTITY Aacute           "&#x000C1;" >
-<!ENTITY aacute           "&#x000E1;" >
-<!ENTITY Acirc            "&#x000C2;" >
-<!ENTITY acirc            "&#x000E2;" >
-<!ENTITY AElig            "&#x000C6;" >
-<!ENTITY aelig            "&#x000E6;" >
-<!ENTITY Agrave           "&#x000C0;" >
-<!ENTITY agrave           "&#x000E0;" >
-<!ENTITY Aring            "&#x000C5;" >
-<!ENTITY aring            "&#x000E5;" >
-<!ENTITY Atilde           "&#x000C3;" >
-<!ENTITY atilde           "&#x000E3;" >
-<!ENTITY Auml             "&#x000C4;" >
-<!ENTITY auml             "&#x000E4;" >
-<!ENTITY Ccedil           "&#x000C7;" >
-<!ENTITY ccedil           "&#x000E7;" >
-<!ENTITY Eacute           "&#x000C9;" >
-<!ENTITY eacute           "&#x000E9;" >
-<!ENTITY Ecirc            "&#x000CA;" >
-<!ENTITY ecirc            "&#x000EA;" >
-<!ENTITY Egrave           "&#x000C8;" >
-<!ENTITY egrave           "&#x000E8;" >
-<!ENTITY ETH              "&#x000D0;" >
-<!ENTITY eth              "&#x000F0;" >
-<!ENTITY Euml             "&#x000CB;" >
-<!ENTITY euml             "&#x000EB;" >
-<!ENTITY Iacute           "&#x000CD;" >
-<!ENTITY iacute           "&#x000ED;" >
-<!ENTITY Icirc            "&#x000CE;" >
-<!ENTITY icirc            "&#x000EE;" >
-<!ENTITY Igrave           "&#x000CC;" >
-<!ENTITY igrave           "&#x000EC;" >
-<!ENTITY Iuml             "&#x000CF;" >
-<!ENTITY iuml             "&#x000EF;" >
-<!ENTITY Ntilde           "&#x000D1;" >
-<!ENTITY ntilde           "&#x000F1;" >
-<!ENTITY Oacute           "&#x000D3;" >
-<!ENTITY oacute           "&#x000F3;" >
-<!ENTITY Ocirc            "&#x000D4;" >
-<!ENTITY ocirc            "&#x000F4;" >
-<!ENTITY Ograve           "&#x000D2;" >
-<!ENTITY ograve           "&#x000F2;" >
-<!ENTITY Oslash           "&#x000D8;" >
-<!ENTITY oslash           "&#x000F8;" >
-<!ENTITY Otilde           "&#x000D5;" >
-<!ENTITY otilde           "&#x000F5;" >
-<!ENTITY Ouml             "&#x000D6;" >
-<!ENTITY ouml             "&#x000F6;" >
-<!ENTITY szlig            "&#x000DF;" >
-<!ENTITY THORN            "&#x000DE;" >
-<!ENTITY thorn            "&#x000FE;" >
-<!ENTITY Uacute           "&#x000DA;" >
-<!ENTITY uacute           "&#x000FA;" >
-<!ENTITY Ucirc            "&#x000DB;" >
-<!ENTITY ucirc            "&#x000FB;" >
-<!ENTITY Ugrave           "&#x000D9;" >
-<!ENTITY ugrave           "&#x000F9;" >
-<!ENTITY Uuml             "&#x000DC;" >
-<!ENTITY uuml             "&#x000FC;" >
-<!ENTITY Yacute           "&#x000DD;" >
-<!ENTITY yacute           "&#x000FD;" >
-<!ENTITY yuml             "&#x000FF;" >
-<!ENTITY amp              "&#38;#38;" >
-<!ENTITY apos             "&#x00027;" >
-<!ENTITY ast              "&#x0002A;" >
-<!ENTITY brvbar           "&#x000A6;" >
-<!ENTITY bsol             "&#x0005C;" >
-<!ENTITY cent             "&#x000A2;" >
-<!ENTITY colon            "&#x0003A;" >
-<!ENTITY comma            "&#x0002C;" >
-<!ENTITY commat           "&#x00040;" >
-<!ENTITY copy             "&#x000A9;" >
-<!ENTITY curren           "&#x000A4;" >
-<!ENTITY darr             "&#x02193;" >
-<!ENTITY deg              "&#x000B0;" >
-<!ENTITY divide           "&#x000F7;" >
-<!ENTITY dollar           "&#x00024;" >
-<!ENTITY equals           "&#x0003D;" >
-<!ENTITY excl             "&#x00021;" >
-<!ENTITY frac12           "&#x000BD;" >
-<!ENTITY frac14           "&#x000BC;" >
-<!ENTITY frac18           "&#x0215B;" >
-<!ENTITY frac34           "&#x000BE;" >
-<!ENTITY frac38           "&#x0215C;" >
-<!ENTITY frac58           "&#x0215D;" >
-<!ENTITY frac78           "&#x0215E;" >
-<!ENTITY gt               "&#x0003E;" >
-<!ENTITY half             "&#x000BD;" >
-<!ENTITY horbar           "&#x02015;" >
-<!ENTITY hyphen           "&#x02010;" >
-<!ENTITY iexcl            "&#x000A1;" >
-<!ENTITY iquest           "&#x000BF;" >
-<!ENTITY laquo            "&#x000AB;" >
-<!ENTITY larr             "&#x02190;" >
-<!ENTITY lcub             "&#x0007B;" >
-<!ENTITY ldquo            "&#x0201C;" >
-<!ENTITY lowbar           "&#x0005F;" >
-<!ENTITY lpar             "&#x00028;" >
-<!ENTITY lsqb             "&#x0005B;" >
-<!ENTITY lsquo            "&#x02018;" >
-<!ENTITY lt               "&#38;#60;" >
-<!ENTITY micro            "&#x000B5;" >
-<!ENTITY middot           "&#x000B7;" >
-<!ENTITY nbsp             "&#x000A0;" >
-<!ENTITY not              "&#x000AC;" >
-<!ENTITY num              "&#x00023;" >
-<!ENTITY ohm              "&#x02126;" >
-<!ENTITY ordf             "&#x000AA;" >
-<!ENTITY ordm             "&#x000BA;" >
-<!ENTITY para             "&#x000B6;" >
-<!ENTITY percnt           "&#x00025;" >
-<!ENTITY period           "&#x0002E;" >
-<!ENTITY plus             "&#x0002B;" >
-<!ENTITY plusmn           "&#x000B1;" >
-<!ENTITY pound            "&#x000A3;" >
-<!ENTITY quest            "&#x0003F;" >
-<!ENTITY quot             "&#x00022;" >
-<!ENTITY raquo            "&#x000BB;" >
-<!ENTITY rarr             "&#x02192;" >
-<!ENTITY rcub             "&#x0007D;" >
-<!ENTITY rdquo            "&#x0201D;" >
-<!ENTITY reg              "&#x000AE;" >
-<!ENTITY rpar             "&#x00029;" >
-<!ENTITY rsqb             "&#x0005D;" >
-<!ENTITY rsquo            "&#x02019;" >
-<!ENTITY sect             "&#x000A7;" >
-<!ENTITY semi             "&#x0003B;" >
-<!ENTITY shy              "&#x000AD;" >
-<!ENTITY sol              "&#x0002F;" >
-<!ENTITY sung             "&#x0266A;" >
-<!ENTITY sup1             "&#x000B9;" >
-<!ENTITY sup2             "&#x000B2;" >
-<!ENTITY sup3             "&#x000B3;" >
-<!ENTITY times            "&#x000D7;" >
-<!ENTITY trade            "&#x02122;" >
-<!ENTITY uarr             "&#x02191;" >
-<!ENTITY verbar           "&#x0007C;" >
-<!ENTITY yen              "&#x000A5;" >
-<!ENTITY blank            "&#x02423;" >
-<!ENTITY blk12            "&#x02592;" >
-<!ENTITY blk14            "&#x02591;" >
-<!ENTITY blk34            "&#x02593;" >
-<!ENTITY block            "&#x02588;" >
-<!ENTITY bull             "&#x02022;" >
-<!ENTITY caret            "&#x02041;" >
-<!ENTITY check            "&#x02713;" >
-<!ENTITY cir              "&#x025CB;" >
-<!ENTITY clubs            "&#x02663;" >
-<!ENTITY copysr           "&#x02117;" >
-<!ENTITY cross            "&#x02717;" >
-<!ENTITY Dagger           "&#x02021;" >
-<!ENTITY dagger           "&#x02020;" >
-<!ENTITY dash             "&#x02010;" >
-<!ENTITY diams            "&#x02666;" >
-<!ENTITY dlcrop           "&#x0230D;" >
-<!ENTITY drcrop           "&#x0230C;" >
-<!ENTITY dtri             "&#x025BF;" >
-<!ENTITY dtrif            "&#x025BE;" >
-<!ENTITY emsp             "&#x02003;" >
-<!ENTITY emsp13           "&#x02004;" >
-<!ENTITY emsp14           "&#x02005;" >
-<!ENTITY ensp             "&#x02002;" >
-<!ENTITY female           "&#x02640;" >
-<!ENTITY ffilig           "&#x0FB03;" >
-<!ENTITY fflig            "&#x0FB00;" >
-<!ENTITY ffllig           "&#x0FB04;" >
-<!ENTITY filig            "&#x0FB01;" >
-<!ENTITY flat             "&#x0266D;" >
-<!ENTITY fllig            "&#x0FB02;" >
-<!ENTITY frac13           "&#x02153;" >
-<!ENTITY frac15           "&#x02155;" >
-<!ENTITY frac16           "&#x02159;" >
-<!ENTITY frac23           "&#x02154;" >
-<!ENTITY frac25           "&#x02156;" >
-<!ENTITY frac35           "&#x02157;" >
-<!ENTITY frac45           "&#x02158;" >
-<!ENTITY frac56           "&#x0215A;" >
-<!ENTITY hairsp           "&#x0200A;" >
-<!ENTITY hearts           "&#x02665;" >
-<!ENTITY hellip           "&#x02026;" >
-<!ENTITY hybull           "&#x02043;" >
-<!ENTITY incare           "&#x02105;" >
-<!ENTITY ldquor           "&#x0201E;" >
-<!ENTITY lhblk            "&#x02584;" >
-<!ENTITY loz              "&#x025CA;" >
-<!ENTITY lozf             "&#x029EB;" >
-<!ENTITY lsquor           "&#x0201A;" >
-<!ENTITY ltri             "&#x025C3;" >
-<!ENTITY ltrif            "&#x025C2;" >
-<!ENTITY male             "&#x02642;" >
-<!ENTITY malt             "&#x02720;" >
-<!ENTITY marker           "&#x025AE;" >
-<!ENTITY mdash            "&#x02014;" >
-<!ENTITY mldr             "&#x02026;" >
-<!ENTITY natur            "&#x0266E;" >
-<!ENTITY ndash            "&#x02013;" >
-<!ENTITY nldr             "&#x02025;" >
-<!ENTITY numsp            "&#x02007;" >
-<!ENTITY phone            "&#x0260E;" >
-<!ENTITY puncsp           "&#x02008;" >
-<!ENTITY rdquor           "&#x0201D;" >
-<!ENTITY rect             "&#x025AD;" >
-<!ENTITY rsquor           "&#x02019;" >
-<!ENTITY rtri             "&#x025B9;" >
-<!ENTITY rtrif            "&#x025B8;" >
-<!ENTITY rx               "&#x0211E;" >
-<!ENTITY sext             "&#x02736;" >
-<!ENTITY sharp            "&#x0266F;" >
-<!ENTITY spades           "&#x02660;" >
-<!ENTITY squ              "&#x025A1;" >
-<!ENTITY squf             "&#x025AA;" >
-<!ENTITY star             "&#x02606;" >
-<!ENTITY starf            "&#x02605;" >
-<!ENTITY target           "&#x02316;" >
-<!ENTITY telrec           "&#x02315;" >
-<!ENTITY thinsp           "&#x02009;" >
-<!ENTITY uhblk            "&#x02580;" >
-<!ENTITY ulcrop           "&#x0230F;" >
-<!ENTITY urcrop           "&#x0230E;" >
-<!ENTITY utri             "&#x025B5;" >
-<!ENTITY utrif            "&#x025B4;" >
-<!ENTITY vellip           "&#x022EE;" >
-<!ENTITY % local.notation.class "">
-<!ENTITY % notation.class
-               "BMP| CGM-CHAR | CGM-BINARY | CGM-CLEAR | DITROFF | DVI
-               | EPS | EQN | FAX | GIF | GIF87a | GIF89a
-               | JPG | JPEG | IGES | PCX
-               | PIC | PNG | PS | SGML | TBL | TEX | TIFF | WMF | WPG
-                | SVG | PDF | SWF
-               | linespecific
-               %local.notation.class;">
-<!NOTATION BMP         PUBLIC
-"+//ISBN 0-7923-94.2-1::Graphic Notation//NOTATION Microsoft Windows bitmap//EN">
-<!NOTATION CGM-CHAR    PUBLIC "ISO 8632/2//NOTATION Character encoding//EN">
-<!NOTATION CGM-BINARY  PUBLIC "ISO 8632/3//NOTATION Binary encoding//EN">
-<!NOTATION CGM-CLEAR   PUBLIC "ISO 8632/4//NOTATION Clear text encoding//EN">
-<!NOTATION DITROFF     SYSTEM "DITROFF">
-<!NOTATION DVI         SYSTEM "DVI">
-<!NOTATION EPS         PUBLIC
-"+//ISBN 0-201-18127-4::Adobe//NOTATION PostScript Language Ref. Manual//EN">
-<!NOTATION EQN         SYSTEM "EQN">
-<!NOTATION FAX         PUBLIC
-"-//USA-DOD//NOTATION CCITT Group 4 Facsimile Type 1 Untiled Raster//EN">
-<!NOTATION GIF         SYSTEM "GIF">
-<!NOTATION GIF87a               PUBLIC
-"-//CompuServe//NOTATION Graphics Interchange Format 87a//EN">
-<!NOTATION GIF89a               PUBLIC
-"-//CompuServe//NOTATION Graphics Interchange Format 89a//EN">
-<!NOTATION JPG         SYSTEM "JPG">
-<!NOTATION JPEG                SYSTEM "JPG">
-<!NOTATION IGES                PUBLIC
-"-//USA-DOD//NOTATION (ASME/ANSI Y14.26M-1987) Initial Graphics Exchange Specification//EN">
-<!NOTATION PCX         PUBLIC
-"+//ISBN 0-7923-94.2-1::Graphic Notation//NOTATION ZSoft PCX bitmap//EN">
-<!NOTATION PIC         SYSTEM "PIC">
-<!NOTATION PNG          SYSTEM "http://www.w3.org/TR/REC-png">
-<!NOTATION PS          SYSTEM "PS">
-<!NOTATION SGML                PUBLIC
-"ISO 8879:1986//NOTATION Standard Generalized Markup Language//EN">
-<!NOTATION TBL         SYSTEM "TBL">
-<!NOTATION TEX         PUBLIC
-"+//ISBN 0-201-13448-9::Knuth//NOTATION The TeXbook//EN">
-<!NOTATION TIFF                SYSTEM "TIFF">
-<!NOTATION WMF         PUBLIC
-"+//ISBN 0-7923-94.2-1::Graphic Notation//NOTATION Microsoft Windows Metafile//EN">
-<!NOTATION WPG         SYSTEM "WPG">
-<!NOTATION SVG         SYSTEM "http://www.w3.org/TR/SVG/">
-<!NOTATION PDF         SYSTEM "http://www.adobe.com/products/acrobat/adobepdf.html">
-<!NOTATION SWF          SYSTEM "http://www.macromedia.com/software/flash">
-<!NOTATION linespecific        SYSTEM "linespecific">
-<!ENTITY euro "&#x20AC;">
-<!ENTITY % yesorno.attvals     "CDATA">
-<!ENTITY % formalobject.title.content "title, titleabbrev?">
-<!ENTITY % local.mediaobject.mix "">
-<!ENTITY % mediaobject.mix
-               "videoobject|audioobject|imageobject|textobject %local.mediaobject.mix;">
-<!ENTITY % idreq.attrib
-       "id             ID              #REQUIRED">
-<!ENTITY % lang.attrib
-       "lang           CDATA           #IMPLIED">
-<!ENTITY % remap.attrib
-       "remap          CDATA           #IMPLIED">
-<!ENTITY % role.attrib
-       "role           CDATA           #IMPLIED">
-<!ENTITY % xreflabel.attrib
-       "xreflabel      CDATA           #IMPLIED">
-<!ENTITY % revisionflag.attrib
-       "revisionflag   (changed
-                       |added
-                       |deleted
-                       |off)           #IMPLIED">
-<!ENTITY % dir.attrib
-       "dir            (ltr
-                       |rtl
-                       |lro
-                       |rlo)           #IMPLIED">
-<!ENTITY % xml-base.attrib
-       "xml:base       CDATA           #IMPLIED">
-<!ENTITY % label.attrib
-       "label          CDATA           #IMPLIED">
-<!ENTITY % linespecific.attrib
-       "format         NOTATION
-                       (linespecific)  'linespecific'
-         linenumbering (numbered|unnumbered)   #IMPLIED
-         continuation  (continues|restarts)    #IMPLIED
-         startinglinenumber    CDATA           #IMPLIED
-         language      CDATA                   #IMPLIED">
-<!ENTITY % linkendreq.attrib
-       "linkend        IDREF           #REQUIRED">
-<!ENTITY % local.mark.attrib "">
-<!ENTITY % mark.attrib
-       "mark           CDATA           #IMPLIED
-       %local.mark.attrib;"
->
-<!ENTITY % moreinfo.attrib
-       "moreinfo       (refentry|none) 'none'">
-<!ENTITY % pagenum.attrib
-       "pagenum        CDATA           #IMPLIED">
-<!ENTITY % local.status.attrib "">
-<!ENTITY % status.attrib
-       "status         CDATA           #IMPLIED
-       %local.status.attrib;"
->
-<!ENTITY % width.attrib
-       "width          CDATA           #IMPLIED">
-<!ENTITY % local.title.attrib "">
-<!ENTITY % title.role.attrib "%role.attrib;">
-<!ELEMENT title  (%title.char.mix;)*>
-<!ATTLIST title
-               %pagenum.attrib;
-               %common.attrib;
-               %title.role.attrib;
-               %local.title.attrib;
->
-<!ENTITY % local.titleabbrev.attrib "">
-<!ENTITY % titleabbrev.role.attrib "%role.attrib;">
-<!ELEMENT titleabbrev  (%title.char.mix;)*>
-<!ATTLIST titleabbrev
-               %common.attrib;
-               %titleabbrev.role.attrib;
-               %local.titleabbrev.attrib;
->
-<!ENTITY % local.subtitle.attrib "">
-<!ENTITY % subtitle.role.attrib "%role.attrib;">
-<!ELEMENT subtitle  (%title.char.mix;)*>
-<!ATTLIST subtitle
-               %common.attrib;
-               %subtitle.role.attrib;
-               %local.subtitle.attrib;
->
-<!ENTITY % local.bibliomisc.attrib "">
-<!ENTITY % bibliomisc.role.attrib "%role.attrib;">
-<!ELEMENT bibliomisc  (%para.char.mix;)*>
-<!ATTLIST bibliomisc
-               %common.attrib;
-               %bibliomisc.role.attrib;
-               %local.bibliomisc.attrib;
->
-<!ENTITY % local.subjectset.attrib "">
-<!ENTITY % subjectset.role.attrib "%role.attrib;">
-<!ELEMENT subjectset  (subject+)>
-<!ATTLIST subjectset
-               scheme          NMTOKEN         #IMPLIED
-               %common.attrib;
-               %subjectset.role.attrib;
-               %local.subjectset.attrib;
->
-<!ENTITY % local.subject.attrib "">
-<!ENTITY % subject.role.attrib "%role.attrib;">
-<!ELEMENT subject  (subjectterm+)>
-<!ATTLIST subject
-               weight          CDATA           #IMPLIED
-               %common.attrib;
-               %subject.role.attrib;
-               %local.subject.attrib;
->
-<!ENTITY % local.subjectterm.attrib "">
-<!ENTITY % subjectterm.role.attrib "%role.attrib;">
-<!ELEMENT subjectterm  (#PCDATA)>
-<!ATTLIST subjectterm
-               %common.attrib;
-               %subjectterm.role.attrib;
-               %local.subjectterm.attrib;
->
-<!ENTITY % local.keywordset.attrib "">
-<!ENTITY % keywordset.role.attrib "%role.attrib;">
-<!ELEMENT keywordset  (keyword+)>
-<!ATTLIST keywordset
-               %common.attrib;
-               %keywordset.role.attrib;
-               %local.keywordset.attrib;
->
-<!ENTITY % local.keyword.attrib "">
-<!ENTITY % keyword.role.attrib "%role.attrib;">
-<!ELEMENT keyword  (#PCDATA)>
-<!ATTLIST keyword
-               %common.attrib;
-               %keyword.role.attrib;
-               %local.keyword.attrib;
->
-<!ENTITY % local.sidebar.attrib "">
-<!ENTITY % sidebar.role.attrib "%role.attrib;">
-<!ATTLIST sidebar
-               %common.attrib;
-               %sidebar.role.attrib;
-               %local.sidebar.attrib;
->
-<!ENTITY % local.abstract.attrib "">
-<!ENTITY % abstract.role.attrib "%role.attrib;">
-<!ELEMENT abstract  (title?, (%para.class;)+)>
-<!ATTLIST abstract
-               %common.attrib;
-               %abstract.role.attrib;
-               %local.abstract.attrib;
->
-<!ENTITY % local.authorblurb.attrib "">
-<!ENTITY % authorblurb.role.attrib "%role.attrib;">
-<!ELEMENT authorblurb  (title?, (%para.class;)+)>
-<!ATTLIST authorblurb
-               %common.attrib;
-               %authorblurb.role.attrib;
-               %local.authorblurb.attrib;
->
-<!ENTITY % local.blockquote.attrib "">
-<!ENTITY % blockquote.role.attrib "%role.attrib;">
-<!ATTLIST blockquote
-               %common.attrib;
-               %blockquote.role.attrib;
-               %local.blockquote.attrib;
->
-<!ENTITY % local.attribution.attrib "">
-<!ENTITY % attribution.role.attrib "%role.attrib;">
-<!ELEMENT attribution  (%para.char.mix;)*>
-<!ATTLIST attribution
-               %common.attrib;
-               %attribution.role.attrib;
-               %local.attribution.attrib;
->
-<!ENTITY % local.epigraph.attrib "">
-<!ENTITY % epigraph.role.attrib "%role.attrib;">
-<!ELEMENT epigraph  (attribution?, ((%para.class;)|literallayout)+)>
-<!ATTLIST epigraph
-               %common.attrib;
-               %epigraph.role.attrib;
-               %local.epigraph.attrib;
->
-<!ENTITY % local.footnote.attrib "">
-<!ENTITY % footnote.role.attrib "%role.attrib;">
-<!ELEMENT footnote  ((%footnote.mix;)+)
-                      >
-<!ATTLIST footnote
-               %label.attrib;
-               %common.attrib;
-               %footnote.role.attrib;
-               %local.footnote.attrib;
->
-<!ENTITY % local.para.attrib "">
-<!ENTITY % para.role.attrib "%role.attrib;">
-<!ATTLIST para
-               %common.attrib;
-               %para.role.attrib;
-               %local.para.attrib;
->
-<!ENTITY % local.admon.attrib "">
-<!ENTITY % admon.role.attrib "%role.attrib;">
-<!ELEMENT note  (title?, (%admon.mix;)+)
-                      >
-<!ATTLIST note
-               %common.attrib;
-               %admon.role.attrib;
-               %local.admon.attrib;
->
-<!ENTITY % local.itemizedlist.attrib "">
-<!ENTITY % itemizedlist.role.attrib "%role.attrib;">
-<!ATTLIST itemizedlist         spacing         (normal
-                               |compact)       #IMPLIED
-               %mark.attrib;
-               %common.attrib;
-               %itemizedlist.role.attrib;
-               %local.itemizedlist.attrib;
->
-<!ENTITY % local.orderedlist.attrib "">
-<!ENTITY % orderedlist.role.attrib "%role.attrib;">
-<!ATTLIST orderedlist
-               numeration      (arabic
-                               |upperalpha
-                               |loweralpha
-                               |upperroman
-                               |lowerroman)    #IMPLIED
-               inheritnum      (inherit
-                               |ignore)        "ignore"
-               continuation    (continues
-                               |restarts)      "restarts"
-               spacing         (normal
-                               |compact)       #IMPLIED
-               %common.attrib;
-               %orderedlist.role.attrib;
-               %local.orderedlist.attrib;
->
-<!ENTITY % local.listitem.attrib "">
-<!ENTITY % listitem.role.attrib "%role.attrib;">
-<!ELEMENT listitem  ((%component.mix;)+)>
-<!ATTLIST listitem
-               override        CDATA           #IMPLIED
-               %common.attrib;
-               %listitem.role.attrib;
-               %local.listitem.attrib;
->
-<!ENTITY % local.variablelist.attrib "">
-<!ENTITY % variablelist.role.attrib "%role.attrib;">
-<!ATTLIST variablelist
-               termlength      CDATA           #IMPLIED
-               %common.attrib;
-               %variablelist.role.attrib;
-               %local.variablelist.attrib;
->
-<!ENTITY % local.varlistentry.attrib "">
-<!ENTITY % varlistentry.role.attrib "%role.attrib;">
-<!ELEMENT varlistentry  (term+, listitem)>
-<!ATTLIST varlistentry
-               %common.attrib;
-               %varlistentry.role.attrib;
-               %local.varlistentry.attrib;
->
-<!ENTITY % local.term.attrib "">
-<!ENTITY % term.role.attrib "%role.attrib;">
-<!ELEMENT term  (%para.char.mix;)*>
-<!ATTLIST term
-               %common.attrib;
-               %term.role.attrib;
-               %local.term.attrib;
->
-<!ENTITY % local.example.attrib "">
-<!ENTITY % example.role.attrib "%role.attrib;">
-<!ATTLIST example
-               floatstyle      CDATA                   #IMPLIED
-               %label.attrib;
-               %width.attrib;
-               %common.attrib;
-               %example.role.attrib;
-               %local.example.attrib;
->
-<!ENTITY % local.programlisting.attrib "">
-<!ENTITY % programlisting.role.attrib "%role.attrib;">
-<!ATTLIST programlisting
-               %width.attrib;
-               %linespecific.attrib;
-               %common.attrib;
-               %programlisting.role.attrib;
-               %local.programlisting.attrib;
->
-<!ENTITY % local.literallayout.attrib "">
-<!ENTITY % literallayout.role.attrib "%role.attrib;">
-<!ATTLIST literallayout
-               %width.attrib;
-               %linespecific.attrib;
-               class   (monospaced|normal)     "normal"
-               %common.attrib;
-               %literallayout.role.attrib;
-               %local.literallayout.attrib;
->
-<!ENTITY % local.figure.attrib "">
-<!ENTITY % figure.role.attrib "%role.attrib;">
-<!ATTLIST figure
-               float           %yesorno.attvals;       '0'
-               floatstyle      CDATA                   #IMPLIED
-               pgwide          %yesorno.attvals;       #IMPLIED
-               %label.attrib;
-               %common.attrib;
-               %figure.role.attrib;
-               %local.figure.attrib;
->
-<!ENTITY % local.mediaobject.attrib "">
-<!ENTITY % mediaobject.role.attrib "%role.attrib;">
-<!ELEMENT mediaobject  (objectinfo?,
-                           (%mediaobject.mix;)+,
-                          caption?)>
-<!ATTLIST mediaobject
-               %common.attrib;
-               %mediaobject.role.attrib;
-               %local.mediaobject.attrib;
->
-<!ENTITY % local.inlinemediaobject.attrib "">
-<!ENTITY % inlinemediaobject.role.attrib "%role.attrib;">
-<!ELEMENT inlinemediaobject  (objectinfo?,
-                                (%mediaobject.mix;)+)>
-<!ATTLIST inlinemediaobject
-               %common.attrib;
-               %inlinemediaobject.role.attrib;
-               %local.inlinemediaobject.attrib;
->
-<!ENTITY % local.videoobject.attrib "">
-<!ENTITY % videoobject.role.attrib "%role.attrib;">
-<!ELEMENT videoobject  (objectinfo?, videodata)>
-<!ATTLIST videoobject
-               %common.attrib;
-               %videoobject.role.attrib;
-               %local.videoobject.attrib;
->
-<!ENTITY % local.audioobject.attrib "">
-<!ENTITY % audioobject.role.attrib "%role.attrib;">
-<!ELEMENT audioobject  (objectinfo?, audiodata)>
-<!ATTLIST audioobject
-               %common.attrib;
-               %audioobject.role.attrib;
-               %local.audioobject.attrib;
->
-<!ENTITY % local.imageobject.attrib "">
-<!ENTITY % imageobject.role.attrib "%role.attrib;">
-<!ELEMENT imageobject  (objectinfo?, imagedata)>
-<!ATTLIST imageobject
-               %common.attrib;
-               %imageobject.role.attrib;
-               %local.imageobject.attrib;
->
-<!ENTITY % local.textobject.attrib "">
-<!ENTITY % textobject.role.attrib "%role.attrib;">
-<!ELEMENT textobject  (objectinfo?, (phrase|textdata|(%textobject.mix;)+))>
-<!ATTLIST textobject
-               %common.attrib;
-               %textobject.role.attrib;
-               %local.textobject.attrib;
->
-<!ENTITY % local.objectinfo.attrib "">
-<!ENTITY % objectinfo.role.attrib "%role.attrib;">
-<!ATTLIST objectinfo
-               %common.attrib;
-               %objectinfo.role.attrib;
-               %local.objectinfo.attrib;
->
-<!ENTITY % local.objectdata.attrib "">
-<!ENTITY % objectdata.attrib
-       "
-       entityref       ENTITY          #IMPLIED
-       fileref         CDATA           #IMPLIED
-       format          (%notation.class;)
-                                       #IMPLIED
-       srccredit       CDATA           #IMPLIED
-       %local.objectdata.attrib;"
->
-<!ENTITY % local.videodata.attrib "">
-<!ENTITY % videodata.role.attrib "%role.attrib;">
-<!ELEMENT videodata  EMPTY>
-<!ATTLIST videodata
-       width           CDATA           #IMPLIED
-       contentwidth    CDATA           #IMPLIED
-       depth           CDATA           #IMPLIED
-       contentdepth    CDATA           #IMPLIED
-       align           (left
-                       |right
-                       |center)        #IMPLIED
-       valign          (top
-                       |middle
-                       |bottom)        #IMPLIED
-       scale           CDATA           #IMPLIED
-       scalefit        %yesorno.attvals;
-                                       #IMPLIED
-               %objectdata.attrib;
-               %common.attrib;
-               %videodata.role.attrib;
-               %local.videodata.attrib;
->
-<!ENTITY % local.audiodata.attrib "">
-<!ENTITY % audiodata.role.attrib "%role.attrib;">
-<!ELEMENT audiodata  EMPTY>
-<!ATTLIST audiodata
-               %objectdata.attrib;
-               %common.attrib;
-               %audiodata.role.attrib;
-               %local.audiodata.attrib;
->
-<!ENTITY % local.imagedata.attrib "">
-<!ENTITY % imagedata.role.attrib "%role.attrib;">
-<!ELEMENT imagedata  EMPTY>
-<!ATTLIST imagedata
-       width           CDATA           #IMPLIED
-       contentwidth    CDATA           #IMPLIED
-       depth           CDATA           #IMPLIED
-       contentdepth    CDATA           #IMPLIED
-       align           (left
-                       |right
-                       |center)        #IMPLIED
-       valign          (top
-                       |middle
-                       |bottom)        #IMPLIED
-       scale           CDATA           #IMPLIED
-       scalefit        %yesorno.attvals;
-                                       #IMPLIED
-               %objectdata.attrib;
-               %common.attrib;
-               %imagedata.role.attrib;
-               %local.imagedata.attrib;
->
-<!ENTITY % local.textdata.attrib "">
-<!ENTITY % textdata.role.attrib "%role.attrib;">
-<!ELEMENT textdata  EMPTY>
-<!ATTLIST textdata
-               encoding        CDATA   #IMPLIED
-               %objectdata.attrib;
-               %common.attrib;
-               %textdata.role.attrib;
-               %local.textdata.attrib;
->
-<!ENTITY % html.coreattrs
- "id          ID             #IMPLIED
-  class       CDATA          #IMPLIED
-  style       CDATA          #IMPLIED
-  title       CDATA         #IMPLIED"
-  >
-<!ENTITY % i18n
- "xml:lang    NMTOKEN        #IMPLIED"
-  >
-<!ENTITY % events
- "onclick     CDATA       #IMPLIED
-  ondblclick  CDATA       #IMPLIED
-  onmousedown CDATA       #IMPLIED
-  onmouseup   CDATA       #IMPLIED
-  onmouseover CDATA       #IMPLIED
-  onmousemove CDATA       #IMPLIED
-  onmouseout  CDATA       #IMPLIED
-  onkeypress  CDATA       #IMPLIED
-  onkeydown   CDATA       #IMPLIED
-  onkeyup     CDATA       #IMPLIED"
-  >
-<!ENTITY % attrs "%html.coreattrs; %i18n; %events;">
-<!ENTITY % cellhalign
-  "align      (left|center|right|justify|char) #IMPLIED
-   char       CDATA    #IMPLIED
-   charoff    CDATA       #IMPLIED"
-  >
-<!ENTITY % cellvalign
-  "valign     (top|middle|bottom|baseline) #IMPLIED"
-  >
-<!ELEMENT colgroup (col)*>
-<!ELEMENT col      EMPTY>
-<!ELEMENT tr       (th|td)+>
-<!ELEMENT th       (%para.char.mix; | %tabentry.mix;)*>
-<!ELEMENT td       (%para.char.mix; | %tabentry.mix;)*>
-<!ATTLIST colgroup
-  %attrs;
-  span        CDATA       "1"
-  width       CDATA  #IMPLIED
-  %cellhalign;
-  %cellvalign;
-  >
-<!ATTLIST col
-  %attrs;
-  span        CDATA       "1"
-  width       CDATA  #IMPLIED
-  %cellhalign;
-  %cellvalign;
-  >
-<!ATTLIST tr
-  %attrs;
-  %cellhalign;
-  %cellvalign;
-  bgcolor     CDATA        #IMPLIED
-  >
-<!ATTLIST th
-  %attrs;
-  abbr        CDATA         #IMPLIED
-  axis        CDATA          #IMPLIED
-  headers     IDREFS         #IMPLIED
-  scope       (row|col|rowgroup|colgroup)   #IMPLIED
-  rowspan     CDATA       "1"
-  colspan     CDATA       "1"
-  %cellhalign;
-  %cellvalign;
-  nowrap      (nowrap)       #IMPLIED
-  bgcolor     CDATA         #IMPLIED
-  width       CDATA       #IMPLIED
-  height      CDATA       #IMPLIED
-  >
-<!ATTLIST td
-  %attrs;
-  abbr        CDATA         #IMPLIED
-  axis        CDATA          #IMPLIED
-  headers     IDREFS         #IMPLIED
-  scope       (row|col|rowgroup|colgroup)   #IMPLIED
-  rowspan     CDATA       "1"
-  colspan     CDATA       "1"
-  %cellhalign;
-  %cellvalign;
-  nowrap      (nowrap)       #IMPLIED
-  bgcolor     CDATA         #IMPLIED
-  width       CDATA       #IMPLIED
-  height      CDATA       #IMPLIED
-  >
-<!ENTITY % tables.role.attrib "%role.attrib;">
-<!ENTITY % bodyatt "
-               floatstyle      CDATA                   #IMPLIED
-                %label.attrib;"
->
-<!ENTITY % secur "
-       %common.attrib;
-       class       CDATA          #IMPLIED
-       style       CDATA          #IMPLIED
-       title       CDATA         #IMPLIED
-       %i18n;
-       %events;
-       %tables.role.attrib;">
-<!ENTITY % common.table.attribs
-       "%bodyatt;
-       %secur;">
-<!ENTITY % tbl.table.att        '
-    tabstyle    CDATA           #IMPLIED
-    tocentry    %yesorno.attvals;       #IMPLIED
-    shortentry  %yesorno.attvals;       #IMPLIED
-    orient      (port|land)     #IMPLIED
-    pgwide      %yesorno.attvals;       #IMPLIED 
-    summary     CDATA          #IMPLIED
-    width       CDATA        #IMPLIED
-    border      CDATA        #IMPLIED
-    rules       (none | groups | rows | cols | all)      #IMPLIED
-    cellspacing CDATA        #IMPLIED
-    cellpadding CDATA        #IMPLIED
-    align       (left|center|right)   #IMPLIED
-    bgcolor     CDATA         #IMPLIED
-'>
-<!ENTITY % tbl.frame.attval "void|above|below|hsides|lhs|rhs|vsides|box|border|
-top|bottom|topbot|all|sides|none">
-<!ENTITY % tbl.entry.mdl "%para.char.mix; | %tabentry.mix;">
-<!ENTITY % tbl.hdft.mdl        "(tr+|(colspec*,row+))">
-<!ENTITY % tbl.tbody.mdl       "(tr+|row+)">
-<!ENTITY % yesorno 'CDATA'>
-<!ENTITY % tbl.tgroup.mdl       "colspec*,spanspec*,thead?,tfoot?,tbody">
-<!ENTITY % tbl.tgroup.att       '
-    tgroupstyle CDATA           #IMPLIED '>
-<!ENTITY % tbl.row.mdl          "(entry|entrytbl)+">
-<!ENTITY % tbl.entrytbl.mdl     "colspec*,spanspec*,thead?,tbody">
-<!ELEMENT table  (%tbl.table.mdl;)>
-<!ATTLIST table
-        frame           (%tbl.frame.attval;)                    #IMPLIED
-        colsep          %yesorno;                               #IMPLIED
-        rowsep          %yesorno;                               #IMPLIED
-        %tbl.table.att;
-        %bodyatt;
-        %secur;
->
-<!ELEMENT tgroup  (%tbl.tgroup.mdl;) >
-<!ATTLIST tgroup
-        cols            CDATA                                   #REQUIRED
-        %tbl.tgroup.att;
-        colsep          %yesorno;                               #IMPLIED
-        rowsep          %yesorno;                               #IMPLIED
-        align           (left|right|center|justify|char)        #IMPLIED
-        char            CDATA                                   #IMPLIED
-        charoff         CDATA                                   #IMPLIED
-        %secur;
->
-<!ELEMENT colspec  EMPTY >
-<!ATTLIST colspec
-        colnum          CDATA                                   #IMPLIED
-        colname         CDATA                                   #IMPLIED
-        colwidth        CDATA                                   #IMPLIED
-        colsep          %yesorno;                               #IMPLIED
-        rowsep          %yesorno;                               #IMPLIED
-        align           (left|right|center|justify|char)        #IMPLIED
-        char            CDATA                                   #IMPLIED
-        charoff         CDATA                                   #IMPLIED
->
-<!ELEMENT spanspec  EMPTY >
-<!ATTLIST spanspec
-        namest          CDATA                                   #REQUIRED
-        nameend         CDATA                                   #REQUIRED
-        spanname        CDATA                                   #REQUIRED
-        colsep          %yesorno;                               #IMPLIED
-        rowsep          %yesorno;                               #IMPLIED
-        align           (left|right|center|justify|char)        #IMPLIED
-        char            CDATA                                   #IMPLIED
-        charoff         CDATA                                   #IMPLIED
->
-<!ELEMENT thead  (%tbl.hdft.mdl;)>
-<!ATTLIST thead
-        valign          (top|middle|bottom)                     #IMPLIED
-        %secur;
->
-<!ELEMENT tfoot  (%tbl.hdft.mdl;)>
-<!ATTLIST tfoot
-        valign          (top|middle|bottom)                     #IMPLIED
-        %secur;
->
-<!ELEMENT tbody  (%tbl.tbody.mdl;)>
-<!ATTLIST tbody
-        valign          (top|middle|bottom)                     #IMPLIED
-        %secur;
->
-<!ELEMENT row  (%tbl.row.mdl;)>
-<!ATTLIST row
-        rowsep          %yesorno;                               #IMPLIED
-        valign          (top|middle|bottom)                     #IMPLIED
-        %secur;
->
-<!ELEMENT entrytbl  (%tbl.entrytbl.mdl;)>
-<!ATTLIST entrytbl
-        cols            CDATA                                   #REQUIRED
-        %tbl.tgroup.att;
-        colname         CDATA                                   #IMPLIED
-        spanname        CDATA                                   #IMPLIED
-        namest          CDATA                                   #IMPLIED
-        nameend         CDATA                                   #IMPLIED
-        colsep          %yesorno;                               #IMPLIED
-        rowsep          %yesorno;                               #IMPLIED
-        align           (left|right|center|justify|char)        #IMPLIED
-        char            CDATA                                   #IMPLIED
-        charoff         CDATA                                   #IMPLIED
-        %secur;
->
-<!ELEMENT entry  (%tbl.entry.mdl;)*>
-<!ATTLIST entry
-        colname         CDATA                                   #IMPLIED
-        namest          CDATA                                   #IMPLIED
-        nameend         CDATA                                   #IMPLIED
-        spanname        CDATA                                   #IMPLIED
-        morerows        CDATA                                   #IMPLIED
-        colsep          %yesorno;                               #IMPLIED
-        rowsep          %yesorno;                               #IMPLIED
-        align           (left|right|center|justify|char)        #IMPLIED
-        char            CDATA                                   #IMPLIED
-        charoff         CDATA                                   #IMPLIED
-        rotate          %yesorno;                               #IMPLIED
-        valign          (top|middle|bottom)                     #IMPLIED
-        %secur;
->
-<!ENTITY % local.informaltable.attrib "">
-<!ATTLIST informaltable
-               frame           (%tbl.frame.attval;)    #IMPLIED
-               colsep          %yesorno.attvals;       #IMPLIED
-               rowsep          %yesorno.attvals;       #IMPLIED
-               %common.table.attribs;
-               %tbl.table.att;
-               %local.informaltable.attrib;
->
-<!ENTITY % local.caption.attrib "">
-<!ENTITY % caption.role.attrib "%role.attrib;">
-<!ELEMENT caption  (#PCDATA | %textobject.mix;)*>
-<!ENTITY % caption.attlist.content "
-       %lang.attrib;
-       %remap.attrib;
-       %xreflabel.attrib;
-       %revisionflag.attrib;
-       %effectivity.attrib;
-       %dir.attrib;
-       %xml-base.attrib;
-       %local.common.attrib;
-               %caption.role.attrib;
-               %attrs;
-               align   (top|bottom|left|right) #IMPLIED
-               %local.caption.attrib;
-">
-<!ATTLIST caption %caption.attlist.content;>
-<!ENTITY % local.affiliation.attrib "">
-<!ENTITY % affiliation.role.attrib "%role.attrib;">
-<!ATTLIST affiliation
-               %common.attrib;
-               %affiliation.role.attrib;
-               %local.affiliation.attrib;
->
-<!ENTITY % local.jobtitle.attrib "">
-<!ENTITY % jobtitle.role.attrib "%role.attrib;">
-<!ELEMENT jobtitle  (%docinfo.char.mix;)*>
-<!ATTLIST jobtitle
-               %common.attrib;
-               %jobtitle.role.attrib;
-               %local.jobtitle.attrib;
->
-<!ENTITY % local.author.attrib "">
-<!ENTITY % author.role.attrib "%role.attrib;">
-<!ATTLIST author
-               %common.attrib;
-               %author.role.attrib;
-               %local.author.attrib;
->
-<!ENTITY % local.authorgroup.attrib "">
-<!ENTITY % authorgroup.role.attrib "%role.attrib;">
-<!ATTLIST authorgroup
-               %common.attrib;
-               %authorgroup.role.attrib;
-               %local.authorgroup.attrib;
->
-<!ENTITY % local.authorinitials.attrib "">
-<!ENTITY % authorinitials.role.attrib "%role.attrib;">
-<!ELEMENT authorinitials  (%docinfo.char.mix;)*>
-<!ATTLIST authorinitials
-               %common.attrib;
-               %authorinitials.role.attrib;
-               %local.authorinitials.attrib;
->
-<!ENTITY % local.confgroup.attrib "">
-<!ENTITY % confgroup.role.attrib "%role.attrib;">
-<!ELEMENT confgroup  ((confdates|conftitle|confnum|address|confsponsor)*)>
-<!ATTLIST confgroup
-               %common.attrib;
-               %confgroup.role.attrib;
-               %local.confgroup.attrib;
->
-<!ENTITY % local.confdates.attrib "">
-<!ENTITY % confdates.role.attrib "%role.attrib;">
-<!ELEMENT confdates  (%docinfo.char.mix;)*>
-<!ATTLIST confdates
-               %common.attrib;
-               %confdates.role.attrib;
-               %local.confdates.attrib;
->
-<!ENTITY % local.conftitle.attrib "">
-<!ENTITY % conftitle.role.attrib "%role.attrib;">
-<!ELEMENT conftitle  (%docinfo.char.mix;)*>
-<!ATTLIST conftitle
-               %common.attrib;
-               %conftitle.role.attrib;
-               %local.conftitle.attrib;
->
-<!ENTITY % local.confnum.attrib "">
-<!ENTITY % confnum.role.attrib "%role.attrib;">
-<!ELEMENT confnum  (%docinfo.char.mix;)*>
-<!ATTLIST confnum
-               %common.attrib;
-               %confnum.role.attrib;
-               %local.confnum.attrib;
->
-<!ENTITY % local.confsponsor.attrib "">
-<!ENTITY % confsponsor.role.attrib "%role.attrib;">
-<!ELEMENT confsponsor  (%docinfo.char.mix;)*>
-<!ATTLIST confsponsor
-               %common.attrib;
-               %confsponsor.role.attrib;
-               %local.confsponsor.attrib;
->
-<!ENTITY % local.copyright.attrib "">
-<!ENTITY % copyright.role.attrib "%role.attrib;">
-<!ELEMENT copyright  (year+, holder*)>
-<!ATTLIST copyright
-               %common.attrib;
-               %copyright.role.attrib;
-               %local.copyright.attrib;
->
-<!ENTITY % local.year.attrib "">
-<!ENTITY % year.role.attrib "%role.attrib;">
-<!ELEMENT year  (%docinfo.char.mix;)*>
-<!ATTLIST year
-               %common.attrib;
-               %year.role.attrib;
-               %local.year.attrib;
->
-<!ENTITY % local.holder.attrib "">
-<!ENTITY % holder.role.attrib "%role.attrib;">
-<!ELEMENT holder  (%docinfo.char.mix;)*>
-<!ATTLIST holder
-               %common.attrib;
-               %holder.role.attrib;
-               %local.holder.attrib;
->
-<!ENTITY % local.corpauthor.attrib "">
-<!ENTITY % corpauthor.role.attrib "%role.attrib;">
-<!ELEMENT corpauthor  (%docinfo.char.mix;)*>
-<!ATTLIST corpauthor
-               %common.attrib;
-               %corpauthor.role.attrib;
-               %local.corpauthor.attrib;
->
-<!ENTITY % local.date.attrib "">
-<!ENTITY % date.role.attrib "%role.attrib;">
-<!ELEMENT date  (%docinfo.char.mix;)*>
-<!ATTLIST date
-               %common.attrib;
-               %date.role.attrib;
-               %local.date.attrib;
->
-<!ENTITY % local.edition.attrib "">
-<!ENTITY % edition.role.attrib "%role.attrib;">
-<!ELEMENT edition  (%docinfo.char.mix;)*>
-<!ATTLIST edition
-               %common.attrib;
-               %edition.role.attrib;
-               %local.edition.attrib;
->
-<!ENTITY % local.editor.attrib "">
-<!ENTITY % editor.role.attrib "%role.attrib;">
-<!ATTLIST editor
-               %common.attrib;
-               %editor.role.attrib;
-               %local.editor.attrib;
->
-<!ENTITY % local.issuenum.attrib "">
-<!ENTITY % issuenum.role.attrib "%role.attrib;">
-<!ELEMENT issuenum  (%docinfo.char.mix;)*>
-<!ATTLIST issuenum
-               %common.attrib;
-               %issuenum.role.attrib;
-               %local.issuenum.attrib;
->
-<!ENTITY % local.legalnotice.attrib "">
-<!ENTITY % legalnotice.role.attrib "%role.attrib;">
-<!ATTLIST legalnotice
-               %common.attrib;
-               %legalnotice.role.attrib;
-               %local.legalnotice.attrib;
->
-<!ENTITY % local.orgname.attrib "">
-<!ENTITY % orgname.role.attrib "%role.attrib;">
-<!ELEMENT orgname  (%docinfo.char.mix;)*>
-<!ATTLIST orgname
-               %common.attrib;
-               class   (corporation|nonprofit|consortium|informal|other)       #IMPLIED
-               otherclass      CDATA                   #IMPLIED
-               %orgname.role.attrib;
-               %local.orgname.attrib;
->
-<!ENTITY % local.othercredit.attrib "">
-<!ENTITY % othercredit.role.attrib "%role.attrib;">
-<!ATTLIST othercredit
-               class   (graphicdesigner
-                       |productioneditor
-                       |copyeditor
-                       |technicaleditor
-                       |translator
-                       |other)                 #IMPLIED
-               %common.attrib;
-               %othercredit.role.attrib;
-               %local.othercredit.attrib;
->
-<!ENTITY % local.firstname.attrib "">
-<!ENTITY % firstname.role.attrib "%role.attrib;">
-<!ELEMENT firstname  (%docinfo.char.mix;)*>
-<!ATTLIST firstname
-               %common.attrib;
-               %firstname.role.attrib;
-               %local.firstname.attrib;
->
-<!ENTITY % local.honorific.attrib "">
-<!ENTITY % honorific.role.attrib "%role.attrib;">
-<!ELEMENT honorific  (%docinfo.char.mix;)*>
-<!ATTLIST honorific
-               %common.attrib;
-               %honorific.role.attrib;
-               %local.honorific.attrib;
->
-<!ENTITY % local.lineage.attrib "">
-<!ENTITY % lineage.role.attrib "%role.attrib;">
-<!ELEMENT lineage  (%docinfo.char.mix;)*>
-<!ATTLIST lineage
-               %common.attrib;
-               %lineage.role.attrib;
-               %local.lineage.attrib;
->
-<!ENTITY % local.othername.attrib "">
-<!ENTITY % othername.role.attrib "%role.attrib;">
-<!ELEMENT othername  (%docinfo.char.mix;)*>
-<!ATTLIST othername
-               %common.attrib;
-               %othername.role.attrib;
-               %local.othername.attrib;
->
-<!ENTITY % local.surname.attrib "">
-<!ENTITY % surname.role.attrib "%role.attrib;">
-<!ELEMENT surname  (%docinfo.char.mix;)*>
-<!ATTLIST surname
-               %common.attrib;
-               %surname.role.attrib;
-               %local.surname.attrib;
->
-<!ENTITY % local.pubdate.attrib "">
-<!ENTITY % pubdate.role.attrib "%role.attrib;">
-<!ELEMENT pubdate  (%docinfo.char.mix;)*>
-<!ATTLIST pubdate
-               %common.attrib;
-               %pubdate.role.attrib;
-               %local.pubdate.attrib;
->
-<!ENTITY % local.publishername.attrib "">
-<!ENTITY % publishername.role.attrib "%role.attrib;">
-<!ELEMENT publishername  (%docinfo.char.mix;)*>
-<!ATTLIST publishername
-               %common.attrib;
-               %publishername.role.attrib;
-               %local.publishername.attrib;
->
-<!ENTITY % local.releaseinfo.attrib "">
-<!ENTITY % releaseinfo.role.attrib "%role.attrib;">
-<!ELEMENT releaseinfo  (%docinfo.char.mix;)*>
-<!ATTLIST releaseinfo
-               %common.attrib;
-               %releaseinfo.role.attrib;
-               %local.releaseinfo.attrib;
->
-<!ENTITY % local.revhistory.attrib "">
-<!ENTITY % revhistory.role.attrib "%role.attrib;">
-<!ELEMENT revhistory  (revision+)>
-<!ATTLIST revhistory
-               %common.attrib;
-               %revhistory.role.attrib;
-               %local.revhistory.attrib;
->
-<!ENTITY % local.revision.attrib "">
-<!ENTITY % revision.role.attrib "%role.attrib;">
-<!ELEMENT revision  (revnumber, date, (author|authorinitials)*,
-                    (revremark|revdescription)?)>
-<!ATTLIST revision
-               %common.attrib;
-               %revision.role.attrib;
-               %local.revision.attrib;
->
-<!ENTITY % local.revnumber.attrib "">
-<!ENTITY % revnumber.role.attrib "%role.attrib;">
-<!ELEMENT revnumber  (%docinfo.char.mix;)*>
-<!ATTLIST revnumber
-               %common.attrib;
-               %revnumber.role.attrib;
-               %local.revnumber.attrib;
->
-<!ENTITY % local.revremark.attrib "">
-<!ENTITY % revremark.role.attrib "%role.attrib;">
-<!ELEMENT revremark  (%docinfo.char.mix;)*>
-<!ATTLIST revremark
-               %common.attrib;
-               %revremark.role.attrib;
-               %local.revremark.attrib;
->
-<!ENTITY % local.revdescription.attrib "">
-<!ENTITY % revdescription.role.attrib "%role.attrib;">
-<!ELEMENT revdescription  ((%revdescription.mix;)+)>
-<!ATTLIST revdescription
-               %common.attrib;
-               %revdescription.role.attrib;
-               %local.revdescription.attrib;
->
-<!ENTITY % local.volumenum.attrib "">
-<!ENTITY % volumenum.role.attrib "%role.attrib;">
-<!ELEMENT volumenum  (%docinfo.char.mix;)*>
-<!ATTLIST volumenum
-               %common.attrib;
-               %volumenum.role.attrib;
-               %local.volumenum.attrib;
->
-<!ENTITY % local.command.attrib "">
-<!ENTITY % command.role.attrib "%role.attrib;">
-<!ELEMENT command  (%cptr.char.mix;)*>
-<!ATTLIST command
-               %moreinfo.attrib;
-               %common.attrib;
-               %command.role.attrib;
-               %local.command.attrib;
->
-<!ENTITY % local.computeroutput.attrib "">
-<!ENTITY % computeroutput.role.attrib "%role.attrib;">
-<!ATTLIST computeroutput
-               %moreinfo.attrib;
-               %common.attrib;
-               %computeroutput.role.attrib;
-               %local.computeroutput.attrib;
->
-<!ENTITY % local.email.attrib "">
-<!ENTITY % email.role.attrib "%role.attrib;">
-<!ELEMENT email  (%docinfo.char.mix;)*>
-<!ATTLIST email
-               %common.attrib;
-               %email.role.attrib;
-               %local.email.attrib;
->
-<!ENTITY % local.filename.attrib "">
-<!ENTITY % filename.role.attrib "%role.attrib;">
-<!ELEMENT filename  (%cptr.char.mix;)*>
-<!ATTLIST filename
-               class           (headerfile
-                                |partition
-                                |devicefile
-                                |libraryfile
-                                |directory
-                                |extension
-                               |symlink)       #IMPLIED
-               path            CDATA           #IMPLIED
-               %moreinfo.attrib;
-               %common.attrib;
-               %filename.role.attrib;
-               %local.filename.attrib;
->
-<!ENTITY % local.lineannotation.attrib "">
-<!ENTITY % lineannotation.role.attrib "%role.attrib;">
-<!ELEMENT lineannotation  (%para.char.mix;)*>
-<!ATTLIST lineannotation
-               %common.attrib;
-               %lineannotation.role.attrib;
-               %local.lineannotation.attrib;
->
-<!ENTITY % local.literal.attrib "">
-<!ENTITY % literal.role.attrib "%role.attrib;">
-<!ELEMENT literal  (%cptr.char.mix;)*>
-<!ATTLIST literal
-               %moreinfo.attrib;
-               %common.attrib;
-               %literal.role.attrib;
-               %local.literal.attrib;
->
-<!ENTITY % local.option.attrib "">
-<!ENTITY % option.role.attrib "%role.attrib;">
-<!ELEMENT option  (%cptr.char.mix;)*>
-<!ATTLIST option
-               %common.attrib;
-               %option.role.attrib;
-               %local.option.attrib;
->
-<!ENTITY % local.replaceable.attrib "">
-<!ENTITY % replaceable.role.attrib "%role.attrib;">
-<!ATTLIST replaceable
-               class           (command
-                               |function
-                               |option
-                               |parameter)     #IMPLIED
-               %common.attrib;
-               %replaceable.role.attrib;
-               %local.replaceable.attrib;
->
-<!ENTITY % local.systemitem.attrib "">
-<!ENTITY % systemitem.role.attrib "%role.attrib;">
-<!ATTLIST systemitem
-               class   (constant
-                       |event
-                       |eventhandler
-                       |domainname
-                       |fqdomainname
-                       |ipaddress
-                       |netmask
-                       |etheraddress
-                       |groupname
-                       |library
-                       |macro
-                       |osname
-                       |filesystem
-                       |resource
-                       |systemname
-                       |username
-                       |newsgroup
-                        |process
-                        |service
-                        |server
-                        |daemon)       #IMPLIED
-               %moreinfo.attrib;
-               %common.attrib;
-               %systemitem.role.attrib;
-               %local.systemitem.attrib;
->
-<!ENTITY % local.userinput.attrib "">
-<!ENTITY % userinput.role.attrib "%role.attrib;">
-<!ATTLIST userinput
-               %moreinfo.attrib;
-               %common.attrib;
-               %userinput.role.attrib;
-               %local.userinput.attrib;
->
-<!ENTITY % local.abbrev.attrib "">
-<!ENTITY % abbrev.role.attrib "%role.attrib;">
-<!ELEMENT abbrev  (%word.char.mix;)*>
-<!ATTLIST abbrev
-               %common.attrib;
-               %abbrev.role.attrib;
-               %local.abbrev.attrib;
->
-<!ENTITY % local.acronym.attrib "">
-<!ENTITY % acronym.role.attrib "%role.attrib;">
-<!ELEMENT acronym  (%word.char.mix;)*
-               >
-<!ATTLIST acronym
-               %common.attrib;
-               %acronym.role.attrib;
-               %local.acronym.attrib;
->
-<!ENTITY % local.citetitle.attrib "">
-<!ENTITY % citetitle.role.attrib "%role.attrib;">
-<!ELEMENT citetitle  (%para.char.mix;)*>
-<!ATTLIST citetitle
-               pubwork         (article
-                               |book
-                               |chapter
-                               |part
-                               |refentry
-                               |section
-                               |journal
-                               |series
-                               |set
-                               |manuscript
-                               |cdrom
-                               |dvd
-                               |wiki
-                               |gopher
-                               |bbs
-                                |emailmessage
-                                |webpage
-                                |newsposting)  #IMPLIED
-               %common.attrib;
-               %citetitle.role.attrib;
-               %local.citetitle.attrib;
->
-<!ENTITY % local.emphasis.attrib "">
-<!ENTITY % emphasis.role.attrib "%role.attrib;">
-<!ELEMENT emphasis  (%para.char.mix;)*>
-<!ATTLIST emphasis
-               %common.attrib;
-               %emphasis.role.attrib;
-               %local.emphasis.attrib;
->
-<!ENTITY % local.phrase.attrib "">
-<!ENTITY % phrase.role.attrib "%role.attrib;">
-<!ELEMENT phrase  (%para.char.mix;)*>
-<!ATTLIST phrase
-               %common.attrib;
-               %phrase.role.attrib;
-               %local.phrase.attrib;
->
-<!ENTITY % local.quote.attrib "">
-<!ENTITY % quote.role.attrib "%role.attrib;">
-<!ELEMENT quote  (%para.char.mix;)*>
-<!ATTLIST quote
-               %common.attrib;
-               %quote.role.attrib;
-               %local.quote.attrib;
->
-<!ENTITY % local.ssscript.attrib "">
-<!ENTITY % ssscript.role.attrib "%role.attrib;">
-<!ATTLIST subscript
-               %common.attrib;
-               %ssscript.role.attrib;
-               %local.ssscript.attrib;
->
-<!ATTLIST superscript
-               %common.attrib;
-               %ssscript.role.attrib;
-               %local.ssscript.attrib;
->
-<!ENTITY % local.trademark.attrib "">
-<!ENTITY % trademark.role.attrib "%role.attrib;">
-<!ATTLIST trademark
-               class           (service
-                               |trade
-                               |registered
-                               |copyright)     'trade'
-               %common.attrib;
-               %trademark.role.attrib;
-               %local.trademark.attrib;
->
-<!ENTITY % local.link.attrib "">
-<!ENTITY % link.role.attrib "%role.attrib;">
-<!ELEMENT link  (%para.char.mix;)*
-               >
-<!ATTLIST link
-               endterm         IDREF           #IMPLIED
-               xrefstyle       CDATA           #IMPLIED
-               type            CDATA           #IMPLIED
-               %linkendreq.attrib;
-               %common.attrib;
-               %link.role.attrib;
-               %local.link.attrib;
->
-<!ENTITY % local.ulink.attrib "">
-<!ENTITY % ulink.role.attrib "%role.attrib;">
-<!ELEMENT ulink  (%para.char.mix;)*
-               >
-<!ATTLIST ulink
-               url             CDATA           #REQUIRED
-               type            CDATA           #IMPLIED
-               xrefstyle       CDATA           #IMPLIED
-               %common.attrib;
-               %ulink.role.attrib;
-               %local.ulink.attrib;
->
-<!ENTITY % local.footnoteref.attrib "">
-<!ENTITY % footnoteref.role.attrib "%role.attrib;">
-<!ELEMENT footnoteref  EMPTY>
-<!ATTLIST footnoteref
-               %linkendreq.attrib;             %label.attrib;
-               %common.attrib;
-               %footnoteref.role.attrib;
-               %local.footnoteref.attrib;
->
-<!ENTITY % local.xref.attrib "">
-<!ENTITY % xref.role.attrib "%role.attrib;">
-<!ELEMENT xref  EMPTY>
-<!ATTLIST xref
-               endterm         IDREF           #IMPLIED
-               xrefstyle       CDATA           #IMPLIED
-               %common.attrib;
-               %linkendreq.attrib;
-               %xref.role.attrib;
-               %local.xref.attrib;
->
-<!ENTITY % local.anchor.attrib "">
-<!ENTITY % anchor.role.attrib "%role.attrib;">
-<!ELEMENT anchor  EMPTY>
-<!ATTLIST anchor
-               %idreq.attrib;          %pagenum.attrib;                %remap.attrib;
-               %xreflabel.attrib;
-               %revisionflag.attrib;
-               %effectivity.attrib;
-               %anchor.role.attrib;
-               %local.anchor.attrib;
->
-<!ELEMENT objectinfo ((mediaobject | legalnotice
-       | keywordset | subjectset | %bibliocomponent.mix;)+)>
-<!ELEMENT authorgroup ((author|editor|corpauthor|othercredit)+)>
-<!ELEMENT author ((%person.ident.mix;)+)>
-<!ELEMENT editor ((%person.ident.mix;)+)>
-<!ELEMENT othercredit ((%person.ident.mix;)+)>
-<!ELEMENT para (%para.char.mix;)*>
-<!ENTITY % informaltable.table.mdl
-       "((mediaobject+|tgroup+)
-          |(caption, (col*|colgroup*), thead?, tfoot?, (tbody+|tr+)))">
-<!ELEMENT informaltable (%informaltable.table.mdl;) >
-<!ELEMENT replaceable (#PCDATA 
-               | %link.char.class;
-                | %base.char.class;
-               | inlinemediaobject)*>
-<!ELEMENT trademark (#PCDATA 
-               | %link.char.class; 
-               | %tech.char.class;
-               | inlinemediaobject
-               | emphasis)*>
-<!ELEMENT sidebar ((%formalobject.title.content;)?,
-                   (%sidebar.mix;)+)>
-<!ELEMENT programlisting (%para.char.mix; | lineannotation)*>
-<!ELEMENT literallayout (%para.char.mix; | lineannotation)*>
-<!ELEMENT itemizedlist ((%formalobject.title.content;)?,
-                           (%listpreamble.mix;)*, listitem+)>
-<!ELEMENT orderedlist ((%formalobject.title.content;)?,
-                           (%listpreamble.mix;)*, listitem+)>
-<!ELEMENT variablelist ((%formalobject.title.content;)?,
-                           (%listpreamble.mix;)*, varlistentry+)>
-<!ELEMENT example ((%formalobject.title.content;), (%example.mix;)+)
-               >
-<!ELEMENT figure ((%formalobject.title.content;),
-                       (%figure.mix; | %link.char.class;)+)>
-<!ELEMENT legalnotice (title?, (%legalnotice.mix;)+)
-               >
-<!ELEMENT systemitem (%cptr.char.mix; | acronym)*>
-<!ELEMENT computeroutput  (%cptr.char.mix;)*>
-<!ELEMENT userinput  (%cptr.char.mix;)*>
-<!ELEMENT blockquote  (title?, attribution?, (%component.mix;)+)>
-<!ELEMENT subscript  (#PCDATA
-               | %link.char.class;
-               | emphasis
-               | replaceable
-                | inlinemediaobject
-               | %base.char.class;
-               | %other.char.class;)*
-               >
-<!ELEMENT superscript  (#PCDATA
-               | %link.char.class;
-               | emphasis
-               | replaceable
-                | inlinemediaobject
-               | %base.char.class;
-               | %other.char.class;)*
-               >
-<!ELEMENT screen (%para.char.mix; | lineannotation)*>
-<!ENTITY % screen.role.attrib "%role.attrib;">
-<!ENTITY % local.screen.attrib "">
-<!ATTLIST screen
-               %width.attrib;
-               %linespecific.attrib;
-               %common.attrib;
-               %screen.role.attrib;
-               %local.screen.attrib;
->
-<!ELEMENT affiliation (jobtitle?, orgname?, address*)>
-<!ELEMENT address (#PCDATA)>
-<!ENTITY % address.role.attrib "%role.attrib;">
-<!ATTLIST address
-               %linespecific.attrib;
-               %common.attrib;
-               %address.role.attrib;
->
-<!ELEMENT slides (slidesinfo, speakernotes?, foil*, foilgroup*)>
-<!ATTLIST slides
-               %label.attrib;
-               %status.attrib;
-               %common.attrib;
-               %role.attrib;
->
-<!ELEMENT slidesinfo ((mediaobject
-                      | legalnotice
-                       | subjectset | keywordset
-                       | %bibliocomponent.mix;)+)>
-<!ATTLIST slidesinfo
-               %common.attrib;
-               %role.attrib;
->
-<!ELEMENT foilgroup (foilgroupinfo?, title, subtitle?, titleabbrev?,
-                   (%divcomponent.mix;)*,
-                   foil+)>
-<!ATTLIST foilgroup
-               %label.attrib;
-               %status.attrib;
-               %common.attrib;
-               %role.attrib;
->
-<!ELEMENT foilgroupinfo ((mediaobject
-                      | legalnotice
-                       | subjectset | keywordset
-                       | %bibliocomponent.mix;)+)>
-<!ATTLIST foilgroupinfo
-               %common.attrib;
-               %role.attrib;
->
-<!ELEMENT foil (foilinfo?, title, subtitle?, titleabbrev?,
-                (%divcomponent.mix;)+)>
-<!ATTLIST foil
-               %label.attrib;
-               %status.attrib;
-               %common.attrib;
-               %role.attrib;
->
-<!ELEMENT foilinfo ((mediaobject
-                        | legalnotice
-                         | subjectset | keywordset
-                         | %bibliocomponent.mix;)+)>
-<!ATTLIST foilinfo
-               %common.attrib;
-               %role.attrib;
->
-<!ELEMENT speakernotes (%divcomponent.mix;)*>
-<!ATTLIST speakernotes
-               %common.attrib;
-               %role.attrib;
->
diff --git a/slides/schema/dtd/slides.mod b/slides/schema/dtd/slides.mod
deleted file mode 100644 (file)
index 8b301e6..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-<!-- ====================================================================== -->
-<!-- Slides Module V3.3.0
-     Copyright (C) 1999, 2000, 2001, 2002, 2003 Norman Walsh
-     http://sourceforge.net/projects/docbook/
-
-     $Id$
-
-     Please direct all questions and comments about this DTD to
-     Norman Walsh, <ndw@nwalsh.com>.
-                                                                            -->
-<!-- ====================================================================== -->
-
-<!ENTITY % only-in-full-nav.class "|%nav.class;">
-
-<!ELEMENT slides (slidesinfo, speakernotes?, foil*, foilgroup*)>
-
-<!ATTLIST slides
-               %label.attrib;
-               %status.attrib;
-               %common.attrib;
-               %role.attrib;
->
-
-<!ELEMENT slidesinfo ((mediaobject
-                      | legalnotice
-                       | subjectset | keywordset
-                       | %bibliocomponent.mix;)+)>
-
-<!ATTLIST slidesinfo
-               %common.attrib;
-               %role.attrib;
->
-
-<!ELEMENT foilgroup (foilgroupinfo?, title, subtitle?, titleabbrev?,
-                   (%divcomponent.mix;%only-in-full-nav.class;)*,
-                   foil+)>
-<!ATTLIST foilgroup
-               %label.attrib;
-               %status.attrib;
-               %common.attrib;
-               %role.attrib;
->
-
-<!ELEMENT foilgroupinfo ((mediaobject
-                      | legalnotice
-                       | subjectset | keywordset
-                       | %bibliocomponent.mix;)+)>
-
-<!ATTLIST foilgroupinfo
-               %common.attrib;
-               %role.attrib;
->
-
-<!ELEMENT foil (foilinfo?, title, subtitle?, titleabbrev?,
-                (%divcomponent.mix;%only-in-full-nav.class;)+)>
-
-<!ATTLIST foil
-               %label.attrib;
-               %status.attrib;
-               %common.attrib;
-               %role.attrib;
->
-
-<!ELEMENT foilinfo ((mediaobject
-                        | legalnotice
-                         | subjectset | keywordset
-                         | %bibliocomponent.mix;)+)>
-
-<!ATTLIST foilinfo
-               %common.attrib;
-               %role.attrib;
->
-
-<!ELEMENT speakernotes (%divcomponent.mix;)*>
-<!ATTLIST speakernotes
-               %common.attrib;
-               %role.attrib;
->
-
-<!-- End of Slides Module V3.3.0 .......................................... -->
-<!-- ...................................................................... -->
index 28a11d66ed73f6905c564ee6ae836ca024554275..05421029da22a45639f87cc34eb75e0f0d240221 100644 (file)
@@ -1,36 +1,11 @@
 include ../../../buildtools/Makefile.incl
 
-ifeq ($(RUNTRANG),)
-$(error Cannot find "runtrang" script. Please do a "cvs update" of your buildtools directory)
-endif
-
-VPATH=../dtd
-
-SED=sed
-SED_OPTS=-i # edit files in place
-
-all: slides.rng slides-full.rng
-
-slides-full.rnc: slides-full.dtd
-       $(RUNTRANG) $< $@
-
-slides.rnc: ../dtd/slides.dtd
-       $(RUNTRANG) $< $@
-
-../dtd/slides.dtd:
-       $(MAKE) -C ../dtd
+all: slides.rng
 
 %.rng: %.rnc
-       $(RUNTRANG) $< $@
+       trang $< $@
 
 clean:
-       rm -f \
-       slides.rnc slides.rng \
-       slides-full.rnc slides-full.rng \
-       calstblx.rnc calstblx.rng \
-       docbookx.rnc docbookx.rng \
-       dbhierx.mod.rnc dbhierx.mod.rng \
-       dbnotnx.mod.rnc dbnotnx.mod.rng \
-       dbpoolx.mod.rnc dbpoolx.mod.rng \
-       htmltblx.mod.rnc htmltblx.mod.rng \
-       slides.mod.rnc slides.mod.rng
+
+maintainer-clean: clean
+       rm -f slides.rng
diff --git a/slides/schema/relaxng/slides.rnc b/slides/schema/relaxng/slides.rnc
new file mode 100644 (file)
index 0000000..5853e34
--- /dev/null
@@ -0,0 +1,206 @@
+namespace db = "http://docbook.org/ns/docbook"
+namespace mml = "http://www.w3.org/1998/Math/MathML"
+namespace svg = "http://www.w3.org/2000/svg"
+default namespace dbs = "http://docbook.org/ns/docbook-slides"
+
+# See http://docbook.org/ns/docbook-slides
+
+# This file is part of DocBook Slides V5.0
+# 
+# Copyright 2012 Gabor Kovesdan
+# 
+# Release: $Id$
+# 
+# Permission to use, copy, modify and distribute the DocBook Slides
+# schema and its accompanying documentation for any purpose and without
+# fee is hereby granted in perpetuity, provided that the above copyright
+# notice and this paragraph appear in all copies. The copyright
+# holders make no representation about the suitability of the schema
+# for any purpose. It is provided "as is" without expressed or implied
+# warranty.
+# 
+# If you modify the DocBook Slides schema in any way, label your schema
+# as a variant of DocBook Slides. See the reference documentation
+# (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+# for more information.
+# 
+# Please direct all questions, bug reports, or suggestions for changes
+# to the docbook@lists.oasis-open.org mailing list. For more
+# information, see http://www.oasis-open.org/docbook/.
+# 
+# ======================================================================
+
+include "../../../docbook/relaxng/docbook/docbook/docbook.rnc" inherit = db {
+  start = dbs.slides
+  
+  # Avoid ID clashes
+  db._any.attribute = attribute * - (xml:id | linkend) { text }
+
+  db.common.attributes =
+    db.xml.id.attribute?
+    & db.common.base.attributes
+    & db.annotations.attribute?
+    & dbs.style.attributes?
+
+  # Any element and attribute from the SVG namespace
+  db._any.svg =
+    element svg:* { (dbs._any.attribute | text | db._any)* }
+
+  # Any element and attribute from the MathML namespace
+  db._any.mml =
+    element mml:* { (dbs._any.attribute | text | db._any)* }
+}
+
+# Any attribute from any namespace
+dbs._any.attribute = attribute * { text }
+
+dbs.all.content = db.all.blocks? &
+  dbs.speakernotes &
+  dbs.handoutnotes &
+  db._any.svg? &
+  db._any.mml? &
+  dbs.block?
+
+dbs.block =
+  ## Indicates a formatting block that can have its own styling applied
+  element block { dbs.block.attlist,
+  dbs.all.content*
+}
+
+dbs.block.role.attribute =
+  ## Role attribute for the block element
+  attribute role { text }
+
+dbs.block.status.attribute =
+  ## Status attribute for the block element
+  db.status.attribute
+
+dbs.block.attlist = dbs.block.role.attribute?
+  & db.common.attributes
+  & db.common.linking.attributes
+  & db.label.attribute?
+  & dbs.block.status.attribute?
+
+dbs.slides =
+  ## Root element of a slides document
+  element slides { dbs.slides.attlist,
+  db._info.title.req,
+  dbs.speakernotes?,
+  dbs.handoutnotes?,
+  (
+    dbs.foil? &
+    dbs.foilgroup?
+  )*
+}
+
+dbs.slides.role.attribute =
+  ## Role attribute for the slides element
+  attribute role { text }
+
+dbs.slides.status.attribute =
+  ## Status attribute for the slides element
+  db.status.attribute
+
+dbs.slides.attlist = dbs.slides.role.attribute?
+  & db.common.attributes
+  & db.common.linking.attributes
+  & db.label.attribute?
+  & dbs.slides.status.attribute?
+
+dbs.foilgroup = element foilgroup {
+  dbs.foilgroup.attlist,
+  db._info.title.req,
+  dbs.all.content*,
+  dbs.foil+
+}
+
+dbs.foilgroup.role.attribute =
+  ## Role attribute for the foilgroup element
+  attribute role { text }
+
+dbs.foilgroup.status.attribute =
+  ## Status attribute for the foilgroup element
+  db.status.attribute
+
+dbs.foilgroup.attlist = dbs.foilgroup.role.attribute?
+  & db.common.attributes
+  & db.common.linking.attributes
+  & db.label.attribute?
+  & dbs.slides.status.attribute?
+
+dbs.foil =
+  ## Indicates a foil that may have some info and content
+  element foil { dbs.foil.attlist,
+  db._info.title.req,
+  dbs.all.content*,
+  db.navigation.components*
+}
+
+dbs.foil.role.attribute =
+  ## Role attribute for the foil element
+  attribute role { text }
+
+dbs.foil.status.attribute =
+  ## Status attribute for the foil element
+  db.status.attribute
+
+dbs.foil.attlist = dbs.foil.role.attribute?
+  & db.common.attributes
+  & db.common.linking.attributes
+  & db.label.attribute?
+  & dbs.foil.status.attribute?
+
+dbs.speakernotes =
+  ## Indicates notes for the speaker
+  element speakernotes { dbs.speakernotes.attlist,
+  db.all.blocks+
+}
+
+dbs.speakernotes.role.attribute =
+  ## Role attribute for the speakernotes element
+  attribute role { text }
+
+dbs.speakernotes.attlist = dbs.speakernotes.role.attribute?
+  & db.common.attributes
+  & db.common.linking.attributes
+
+dbs.handoutnotes =
+  ## Indicates notes that are meant for printed copies
+  element handoutnotes { dbs.handoutnotes.attlist,
+  db.all.blocks+
+}
+
+## Role attribute for the handoutnotes element
+dbs.handoutnotes.role.attribute =
+  ## Role attribute for the handoutnotes element
+  attribute role { text }
+
+dbs.handoutnotes.attlist = dbs.handoutnotes.role.attribute?
+  & db.common.attributes
+  & db.common.linking.attributes
+
+dbs.style.attributes  = dbs.incremental.attribute?
+  & dbs.collapsible.attribute?
+  & dbs.style.attribute?
+
+dbs.incremental.attribute =
+  ## Attribute indicating an incremental part
+  attribute dbs:incremental {
+  ## disabled
+  "0" | 
+  ## enabled
+  "1" }
+
+dbs.collapsible.attribute =
+  ## Attribute indicating a collapsible part
+  attribute dbs:collapsible {
+  ## disabled
+  "0" |
+  ## enabled
+  "1" |
+  ## enabled and expanded by default
+  "expanded" }
+
+dbs.style.attribute =
+  ## Attribute indicating a formatting style class
+  attribute dbs:style { text }
diff --git a/slides/schema/xsd/Makefile b/slides/schema/xsd/Makefile
new file mode 100644 (file)
index 0000000..6be9d59
--- /dev/null
@@ -0,0 +1,11 @@
+include ../../../buildtools/Makefile.incl
+
+all: slides.xsd
+
+slides.xsd: ../relaxng/slides.rnc
+       trang $< $@
+
+clean:
+
+maintainer-clean: clean
+       rm -f *.xsd