<!-- ...................................................................... -->
<!-- Simplified DocBook DTD V1.1 .......................................... -->
<!-- File sdocbook-custom.dtd ............................................. -->

<!-- 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).

     $Id: sdocbook-custom.dtd,v 1.22 2005/04/01 21:02:17 nwalsh Exp $

     Permission to use, copy, modify and distribute the DocBook XML DTD
     and its accompanying documentation for any purpose and without fee
     is hereby granted in perpetuity, provided that the above copyright
     notice and this paragraph appear in all copies.  The copyright
     holders make no representation about the suitability of the DTD for
     any purpose.  It is provided "as is" without expressed or implied
     warranty.

     If you modify the Simplified DocBook DTD in any way, except for
     declaring and referencing additional sets of general entities and
     declaring additional notations, label your DTD as a variant of
     DocBook.  See the maintenance documentation for more information.

     Please direct all questions, bug reports, or suggestions for
     changes to the docbook@lists.oasis-open.org mailing list. For more
     information, see http://www.oasis-open.org/docbook/.
-->

<!-- ...................................................................... -->

<!-- This is the driver file for V1.1 of the Simplified DocBook XML DTD.
     Please use the following formal public identifier to identify it:

     "-//OASIS//DTD Simplified DocBook XML V1.1//EN"

     For example:

     <!DOCTYPE article
               PUBLIC "-//OASIS//DTD Simplified DocBook XML V1.1//EN"
      "http://www.oasis-open.org/docbook/xml/simple/1.1/sdocbook.dtd"
     [...]>
-->

<!-- ...................................................................... -->

<!ENTITY % include.refentry "IGNORE">
<![ %include.refentry; [
<!ENTITY % exclude.refentry "IGNORE">
<!ENTITY % refentry.element "IGNORE">
<!ENTITY % refmeta.element "IGNORE">
<!ENTITY % refnamediv.element "IGNORE">
]]>
<!ENTITY % exclude.refentry "INCLUDE">

<!ENTITY % sinclist SYSTEM "sinclist.mod">
%sinclist;

<!ENTITY % ndxterm.class "">

<!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 % local.linespecific.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;">

<!-- Character-level classes .............................................. -->

<!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 % idreq.common.attrib
	"id		ID		#REQUIRED
	lang		CDATA		#IMPLIED
        remap           CDATA           #IMPLIED
	revisionflag	(changed
			|added
			|deleted
			|off)		#IMPLIED
	%local.common.attrib;"
>

<!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
		|%person.ident.mix;
		%local.bibliocomponent.mix;">

<!ENTITY % local.info.class "">
<!ENTITY % info.class
		"mediaobject | legalnotice
		 | subjectset | keywordset | %bibliocomponent.mix;
                 %local.info.class;">

<!ENTITY % dbpool.redecl.module "INCLUDE">
<!ENTITY % rdbpool SYSTEM "sdbpool.mod">

<!ENTITY % dbhier.redecl.module "INCLUDE">
<!ENTITY % rdbhier SYSTEM "sdbhier.mod">

<!ENTITY % sdbcent SYSTEM "sdbcent.mod">
%sdbcent;

<!ENTITY % docinfo.element "IGNORE">
<!ENTITY % objectinfo.element "IGNORE">
<!ENTITY % section.element "IGNORE">
<!ENTITY % sectioninfo.element "IGNORE">
<!ENTITY % authorgroup.element "IGNORE">
<!ENTITY % author.element "IGNORE">
<!ENTITY % editor.element "IGNORE">
<!ENTITY % othercredit.element "IGNORE">
<!ENTITY % para.element "IGNORE">
<!ENTITY % informaltable.element "IGNORE">
<!ENTITY % replaceable.element "IGNORE">
<!ENTITY % trademark.element "IGNORE">
<!ENTITY % article.element "IGNORE">
<!ENTITY % articleinfo.element "IGNORE">
<!ENTITY % appendix.element "IGNORE">
<!ENTITY % appendixinfo.module "IGNORE">
<!ENTITY % sidebar.element "IGNORE">
<!ENTITY % programlisting.element "IGNORE">
<!ENTITY % literallayout.element "IGNORE">
<!ENTITY % itemizedlist.element "IGNORE">
<!ENTITY % orderedlist.element "IGNORE">
<!ENTITY % variablelist.element "IGNORE">
<!ENTITY % example.element "IGNORE">
<!ENTITY % figure.element "IGNORE">
<!ENTITY % legalnotice.element "IGNORE">
<!ENTITY % systemitem.element "IGNORE">
<!ENTITY % computeroutput.element "IGNORE">
<!ENTITY % userinput.element "IGNORE">
<!ENTITY % blockquote.element  "IGNORE">
<!ENTITY % subscript.element "IGNORE">
<!ENTITY % superscript.element "IGNORE">

<!ENTITY % cals.table.module "INCLUDE">
<!ENTITY % docbook PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
                   "http://docbook.org/xml/4.3/docbookx.dtd"
>
%docbook;

<!ENTITY % simple.objectinfo.element "INCLUDE">
<![%simple.objectinfo.element;[
<!ELEMENT objectinfo ((mediaobject | legalnotice
	| keywordset | subjectset | %bibliocomponent.mix;)+)>
]]>

<!ENTITY % simple.section.element "INCLUDE">
<![%simple.section.element;[
<!ELEMENT section (sectioninfo?,
			(%sect.title.content;),
			(((%divcomponent.mix;)+, section*)
			 | section+))>
]]>

<!ENTITY % simple.sectioninfo.element "INCLUDE">
<![%simple.sectioninfo.element;[
<!ELEMENT sectioninfo ((mediaobject | legalnotice
	| keywordset | subjectset | %bibliocomponent.mix;)+)>
]]>

<!ENTITY % simple.authorgroup.element "INCLUDE">
<![%simple.authorgroup.element;[
<!ELEMENT authorgroup ((author|editor|corpauthor|othercredit)+)>
]]>

<!ENTITY % simple.author.element "INCLUDE">
<![%simple.author.element;[
<!ELEMENT author ((%person.ident.mix;)+)>
]]>

<!ENTITY % simple.editor.element "INCLUDE">
<![%simple.editor.element;[
<!ELEMENT editor ((%person.ident.mix;)+)>
]]>

<!ENTITY % simple.othercredit.element "INCLUDE">
<![%simple.othercredit.element;[
<!ELEMENT othercredit ((%person.ident.mix;)+)>
]]>

<!ENTITY % simple.affiliation.element "INCLUDE">
<![%simple.affiliation.element;[
<!ELEMENT affiliation (jobtitle?, orgname?)>
]]>

<!ENTITY % simple.para.element "INCLUDE">
<![%simple.para.element;[
<!ELEMENT para (%para.char.mix;)*>
]]>

<!ENTITY % simple.informaltable.element "INCLUDE">
<![%simple.informaltable.element;[

<![%allow.html.tables;[
<!ENTITY % informaltable.table.mdl
	"((mediaobject+|tgroup+)
          |(caption, (col*|colgroup*), thead?, tfoot?, (tbody+|tr+)))">
]]>
<!ENTITY % informaltable.table.mdl
	"(mediaobject+|tgroup+)">

<!ELEMENT informaltable (%informaltable.table.mdl;) %tbl.table.excep;>
]]>

<!ENTITY % simple.replaceable.element "INCLUDE">
<![%simple.replaceable.element;[
<!ELEMENT replaceable (#PCDATA 
		| %link.char.class;
                | %base.char.class;
		| inlinemediaobject)*>
]]>

<!ENTITY % simple.trademark.element "INCLUDE">
<![%simple.trademark.element;[
<!ELEMENT trademark (#PCDATA 
		| %link.char.class; 
		| %tech.char.class;
		| inlinemediaobject
		| emphasis)*>
]]>

<!ENTITY % simple.article.element "INCLUDE">
<![%simple.article.element;[
<!ELEMENT article ((%div.title.content;)?, articleinfo?,
		       (%bookcomponent.content;),
		       ((%appendix.class;)|bibliography)*)>
]]>

<!ENTITY % simple.articleinfo.element "INCLUDE">
<![%simple.articleinfo.element;[
<!ELEMENT articleinfo ((mediaobject | legalnotice
	| subjectset | keywordset | %bibliocomponent.mix;)+)>
]]>

<!ENTITY % simple.appendix.element "INCLUDE">
<![%simple.appendix.element;[
<!ELEMENT appendix ((%bookcomponent.title.content;),
		(%bookcomponent.content;))>
]]>

<!ENTITY % simple.bibliography.element "INCLUDE">
<![%simple.bibliography.element;[
<!ELEMENT bibliography ((%bookcomponent.title.content;)?,
                        (%component.mix;)*,
                        (bibliodiv+ | bibliomixed+))>
]]>

<!ENTITY % simple.bibliomixed.element "INCLUDE">
<![%simple.bibliomixed.element;[
<!ELEMENT bibliomixed (#PCDATA | %bibliocomponent.mix; | bibliomset)*>
]]>

<!ENTITY % simple.bibliodiv.element "INCLUDE">
<![%simple.bibliodiv.element;[
<!ELEMENT bibliodiv ((%sect.title.content;)?, (%component.mix;)*,
		(bibliomixed)+)>
]]>

<!ENTITY % simple.sidebar.element "INCLUDE">
<![%simple.sidebar.element;[
<!ELEMENT sidebar ((%formalobject.title.content;)?,
                   (%sidebar.mix;)+)>
]]>

<!ENTITY % simple.programlisting.element "INCLUDE">
<![%simple.programlisting.element;[
<!ELEMENT programlisting (%para.char.mix; | lineannotation)*>
]]>

<!ENTITY % simple.literallayout.element "INCLUDE">
<![%simple.literallayout.element;[
<!ELEMENT literallayout (%para.char.mix; | lineannotation)*>
]]>

<!ENTITY % simple.itemizedlist.element "INCLUDE">
<![%simple.itemizedlist.element;[
<!ELEMENT itemizedlist ((%formalobject.title.content;)?,
 			    (%listpreamble.mix;)*, listitem+)>
]]>

<!ENTITY % simple.orderedlist.element "INCLUDE">
<![%simple.orderedlist.element;[
<!ELEMENT orderedlist ((%formalobject.title.content;)?,
 			    (%listpreamble.mix;)*, listitem+)>
]]>

<!ENTITY % simple.variablelist.element "INCLUDE">
<![%simple.variablelist.element;[
<!ELEMENT variablelist ((%formalobject.title.content;)?,
 			    (%listpreamble.mix;)*, varlistentry+)>
]]>

<!ENTITY % simple.example.element "INCLUDE">
<![%simple.example.element;[
<!ELEMENT example ((%formalobject.title.content;), (%example.mix;)+)
		>
]]>

<!ENTITY % simple.figure.element "INCLUDE">
<![%simple.figure.element;[
<!ELEMENT figure ((%formalobject.title.content;),
                       (%figure.mix; | %link.char.class;)+)>
]]>

<!ENTITY % simple.legalnotice.element "INCLUDE">
<![%simple.legalnotice.element;[
<!ELEMENT legalnotice (title?, (%legalnotice.mix;)+)
		>
]]>

<!ENTITY % simple.systemitem.element "INCLUDE">
<![%simple.systemitem.element;[
<!ELEMENT systemitem (%cptr.char.mix; | acronym)*>
]]>

<!ENTITY % simple.computeroutput.element "INCLUDE">
<![%simple.computeroutput.element;[
<!ELEMENT computeroutput %ho; (%cptr.char.mix;)*>
]]>

<!ENTITY % simple.userinput.element "INCLUDE">
<![%simple.userinput.element;[
<!ELEMENT userinput %ho; (%cptr.char.mix;)*>
]]>

<!ENTITY % simple.blockquote.element "INCLUDE">
<![%simple.blockquote.element;[
<!ELEMENT blockquote %ho; (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;)*
		>

<!-- End of Simplified DocBook DTD V1.1 ................................... -->
<!-- ...................................................................... -->
