<!-- *********************************************************************
     *** THIS IS THE FLATTENED DTD. DO NOT EDIT THIS DTD BY HAND, EDIT ***
     *** THE CUSTOMIZATION LAYER AND REGNERATE THE FLATTENED DTD! ********
     ********************************************************************* -->

<!-- ====================================================================== -->
<!-- Simplified DocBk XML V3.1.7.1 DTD
     Copyright (C) 1999 Norman Walsh
     http://nwalsh.com/docbook/simple/

     See COPYRIGHT for more information

     Please direct all questions and comments about this DTD to
     Norman Walsh, <ndw@nwalsh.com>.

     Common declaration:

     <?xml version=1.0?>
     <!DOCTYPE article
       PUBLIC "-//Norman Walsh//DTD Simplified DocBk XML V3.1.7.1//EN"
       "sdocbook.dtd">
                                                                            -->
<!-- ====================================================================== -->

<!ENTITY % formalobject.title.content "title">
<!ENTITY % div.title.content "title, subtitle?">
<!ENTITY % bookcomponent.title.content
	"docinfo?, title, subtitle?">
<!ENTITY % sect.title.content
	"title, subtitle?">
<!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 % local.descobj.class "">
<!ENTITY % descobj.class
		"abstract|authorblurb|epigraph
		%local.descobj.class;">
<!ENTITY % 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
		"xref|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 % local.docinfo.char.class "">
<!ENTITY % docinfo.char.class
		"author|corpauthor|othercredit
		|revhistory
		%local.docinfo.char.class;">
<!ENTITY % local.inlineobj.char.class "">
<!ENTITY % inlineobj.char.class
		"inlinemediaobject %local.inlineobj.char.class;">
<!ENTITY % local.effectivity.attrib "">
<!ENTITY % local.common.attrib "">
<!ENTITY % common.attrib
	"id		ID		#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|volumenum|citetitle
		|%person.ident.mix;
		%local.bibliocomponent.mix;">
<!ENTITY % local.component.mix "">
<!ENTITY % component.mix
		"%list.class;		|%admon.class;
		|%linespecific.class;
		|%para.class;		|%informal.class;
		|%formal.class;		|%compound.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;
		%local.sidebar.mix;">
<!ENTITY % local.qandaset.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.highlights.mix "">
<!ENTITY % local.para.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.glossdef.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.para.char.mix "">
<!ENTITY % para.char.mix
		"#PCDATA
					|%gen.char.class;
		|%link.char.class;	|%tech.char.class;
					|%inlineobj.char.class;
		%local.para.char.mix;">
<!ENTITY % local.title.char.mix "">
<!ENTITY % title.char.mix
		"#PCDATA
					|%gen.char.class;
		|%link.char.class;	|%tech.char.class;
					|%docinfo.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;
					|inlinemediaobject
		%local.cptr.char.mix;">
<!ENTITY % local.smallcptr.char.mix "">
<!ENTITY % local.word.char.mix "">
<!ENTITY % word.char.mix
		"#PCDATA
					|acronym|emphasis|trademark
		|%link.char.class;
					|inlinemediaobject
		%local.word.char.mix;">
<!ENTITY % local.docinfo.char.mix "">
<!ENTITY % docinfo.char.mix
		"#PCDATA
		|%link.char.class;
					|emphasis|trademark
					|replaceable
					|inlinemediaobject
		%local.docinfo.char.mix;">
<!ENTITY % tbl.table.mdl
	"(title, titleabbrev?, (mediaobject+|tgroup+))">
<!ENTITY % programlisting.content "%para.char.mix; | lineannotation">
<!ENTITY % local.divcomponent.mix "">
<!ENTITY % divcomponent.mix
		"%list.class;		|%admon.class;
		|%linespecific.class;
		|%para.class;		|%informal.class;
		|%formal.class;		|%compound.class;
					|%descobj.class;
		%local.divcomponent.mix;">
<!ENTITY % bookcomponent.content
	"((%divcomponent.mix;)+, section*)
	| section+">

<!ENTITY % ISOlat1 PUBLIC
"ISO 8879:1986//ENTITIES Added Latin 1//EN//XML"
"ent/iso-lat1.ent">
%ISOlat1;

<!ENTITY % ISOnum PUBLIC
"ISO 8879:1986//ENTITIES Numeric and Special Graphic//EN//XML"
"ent/iso-num.ent">
%ISOnum;

<!ENTITY % ISOpub PUBLIC
"ISO 8879:1986//ENTITIES Publishing//EN//XML"
"ent/iso-pub.ent">
%ISOpub;
<!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 | PS | SGML | TBL | TEX | TIFF | WMF | WPG
		| linespecific
		%local.notation.class;">
<!NOTATION BMP		PUBLIC
"+//ISBN 0-7923-9432-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-9432-1::Graphic Notation//NOTATION ZSoft PCX bitmap//EN">
<!NOTATION PIC		SYSTEM "PIC">
<!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-9432-1::Graphic Notation//NOTATION Microsoft Windows Metafile//EN">
<!NOTATION WPG		SYSTEM "WPG">
<!NOTATION linespecific	SYSTEM "linespecific">
<!ENTITY % yesorno.attvals	"CDATA">
<!ENTITY % local.ndxterm.class "">
<!ENTITY % local.synop.class "">
<!ENTITY % synop.class
		"synopsis|cmdsynopsis|funcsynopsis %local.synop.class;">
<!ENTITY % local.other.char.class "">
<!ENTITY % other.char.class
		"comment|subscript|superscript %local.other.char.class;">
<!ENTITY % local.mediaobject.mix "">
<!ENTITY % mediaobject.mix 
		"videoobject|audioobject|imageobject %local.mediaobject.mix;">
<!ENTITY % local.ndxterm.char.mix "">
<!ENTITY % role.attrib
	"role		CDATA		#IMPLIED">
<!ENTITY % local.graphics.attrib "">
<!ENTITY % local.keyaction.attrib "">
<!ENTITY % label.attrib
	"label		CDATA		#IMPLIED">
<!ENTITY % linespecific.attrib
	"format		NOTATION
			(linespecific)	'linespecific'">
<!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.artheader.attrib "">
<!ENTITY % artheader.role.attrib "%role.attrib;">
<!ATTLIST artheader
		%common.attrib;
		%artheader.role.attrib;
		%local.artheader.attrib;
>
<!ENTITY % bibliomset.role.attrib "%role.attrib;">
<!ENTITY % local.bibliomset.attrib "">
<!ELEMENT bibliomset (#PCDATA | %bibliocomponent.mix; | bibliomset)*>
<!ATTLIST bibliomset
		relation	CDATA		#IMPLIED
		%bibliomset.role.attrib;
		%common.attrib;
		%local.bibliomset.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;">
<!ELEMENT sidebar ((%formalobject.title.content;)?, (%sidebar.mix;)+)>
<!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;">
<!ELEMENT blockquote (title?, attribution?, (%component.mix;)+)>
<!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;)+)>
<!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;">
<!ELEMENT itemizedlist (listitem+)>
<!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;">
<!ELEMENT orderedlist (listitem+)>
<!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;">
<!ELEMENT variablelist ((%formalobject.title.content;)?, varlistentry+)>
<!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;">
<!ELEMENT example ((%formalobject.title.content;), (%example.mix;)+)>
<!ATTLIST example
		%label.attrib;
		%width.attrib;
		%common.attrib;
		%example.role.attrib;
		%local.example.attrib;
>
<!ENTITY % local.programlisting.attrib "">
<!ENTITY % programlisting.role.attrib "%role.attrib;">
<!ELEMENT programlisting (%programlisting.content;)*>
<!ATTLIST programlisting
		%width.attrib;
		%linespecific.attrib;
		%common.attrib;
		%programlisting.role.attrib;
		%local.programlisting.attrib;
>
<!ENTITY % local.literallayout.attrib "">
<!ENTITY % literallayout.role.attrib "%role.attrib;">
<!ELEMENT literallayout (%para.char.mix; | lineannotation)*>
<!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;">
<!ELEMENT figure ((%formalobject.title.content;), (%figure.mix; |
		%link.char.class;)+)>
<!ATTLIST figure
		float		%yesorno.attvals;	'0'
		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;),
			   (%mediaobject.mix;|textobject)*,
			   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;),
				 (%mediaobject.mix;|textobject)*)>
<!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|(%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
		%common.attrib;
		%objectdata.attrib;
	width		CDATA		#IMPLIED
	depth		CDATA		#IMPLIED
	align		(left
			|right 
			|center)	#IMPLIED
	scale		CDATA		#IMPLIED
	scalefit	%yesorno.attvals;
					#IMPLIED
		%videodata.role.attrib;
		%local.videodata.attrib;
>
<!ENTITY % local.audiodata.attrib "">
<!ENTITY % audiodata.role.attrib "%role.attrib;">
<!ELEMENT audiodata EMPTY>
<!ATTLIST audiodata
		%common.attrib;
		%objectdata.attrib;
		%local.audiodata.attrib;
		%audiodata.role.attrib;
>
<!ENTITY % local.imagedata.attrib "">
<!ENTITY % imagedata.role.attrib "%role.attrib;">
<!ELEMENT imagedata EMPTY>
<!ATTLIST imagedata
		%common.attrib;
		%objectdata.attrib;
	width		CDATA		#IMPLIED
	depth		CDATA		#IMPLIED
	align		(left
			|right 
			|center)	#IMPLIED
	scale		CDATA		#IMPLIED
	scalefit	%yesorno.attvals;
					#IMPLIED
		%local.imagedata.attrib;
		%imagedata.role.attrib;
>
<!ENTITY % local.caption.attrib "">
<!ENTITY % caption.role.attrib "%role.attrib;">
<!ELEMENT caption (%textobject.mix;)*>
<!ATTLIST caption
		%common.attrib;
		%local.caption.attrib;
		%caption.role.attrib;
>
<!ENTITY % tables.role.attrib "%role.attrib;">
<!ENTITY % bodyatt 
	"%common.attrib;
	%label.attrib;
	%tables.role.attrib;">
<!ENTITY % common.table.attribs
	"%bodyatt;">
<!ENTITY % tbl.tgroup.att       "%common.attrib;">
<!ENTITY % tbl.colspec.att      "%common.attrib;">
<!ENTITY % tbl.tbody.att        "%common.attrib;">
<!ENTITY % tbl.thead.att        "%common.attrib;">
<!ENTITY % tbl.row.att          "%common.attrib;">
<!ENTITY % tbl.entry.att        "%common.attrib;">
<!ENTITY % tbl.entry.mdl "(%para.char.mix; | %tabentry.mix;)*">
<!ENTITY % yesorno 'NMTOKEN'>
<!ENTITY % titles  'title?'>
<!ENTITY % tbl.table.name       "table">
<!ENTITY % tbl.table.att        "
    pgwide      %yesorno;       #IMPLIED ">
<!ENTITY % tbl.tgroup.mdl       "colspec*,thead?,tbody">
<!ENTITY % tbl.row.mdl          "entry+">
<!ELEMENT %tbl.table.name; (%tbl.table.mdl;)>
<!ATTLIST %tbl.table.name;
        frame           (top|bottom|topbot|all|sides|none)      #IMPLIED
        colsep          %yesorno;                               #IMPLIED
        rowsep          %yesorno;                               #IMPLIED
        %tbl.table.att;
        %bodyatt;
>
<!ELEMENT tgroup (%tbl.tgroup.mdl;) >
<!ATTLIST tgroup
        cols            NMTOKEN                                 #REQUIRED
        colsep          %yesorno;                               #IMPLIED
        rowsep          %yesorno;                               #IMPLIED
        align           (left|right|center|justify|char)        #IMPLIED
        %tbl.tgroup.att;
>
<!ELEMENT colspec EMPTY >
<!ATTLIST colspec
        colnum          NMTOKEN                                 #IMPLIED
        colname         NMTOKEN                                 #IMPLIED
        colwidth        CDATA                                   #IMPLIED
        colsep          %yesorno;                               #IMPLIED
        rowsep          %yesorno;                               #IMPLIED
        align           (left|right|center|justify|char)        #IMPLIED
        char            CDATA                                   #IMPLIED
        charoff         NMTOKEN                                 #IMPLIED
        %tbl.colspec.att;
>
<!ELEMENT thead (row+)>
<!ATTLIST thead
        valign          (top|middle|bottom)                     #IMPLIED
        %tbl.thead.att;
>
<!ELEMENT tbody (row+)>
<!ATTLIST tbody
        valign          (top|middle|bottom)                     #IMPLIED
        %tbl.tbody.att;
>
<!ELEMENT row (%tbl.row.mdl;)>
<!ATTLIST row
        rowsep          %yesorno;                               #IMPLIED
        valign          (top|middle|bottom)                     #IMPLIED
        %tbl.row.att;
>
<!ELEMENT entry %tbl.entry.mdl;>
<!ATTLIST entry
        colname         NMTOKEN                                 #IMPLIED
        namest          NMTOKEN                                 #IMPLIED
        nameend         NMTOKEN                                 #IMPLIED
        morerows        NMTOKEN                                 #IMPLIED
        colsep          %yesorno;                               #IMPLIED
        rowsep          %yesorno;                               #IMPLIED
        align           (left|right|center|justify|char)        #IMPLIED
        char            CDATA                                   #IMPLIED
        charoff         NMTOKEN                                 #IMPLIED
        valign          (top|middle|bottom)                     #IMPLIED
        %tbl.entry.att;
>
<!ENTITY % local.informaltable.attrib "">
<!ATTLIST informaltable
		frame		(top
				|bottom
				|topbot
				|all
				|sides
				|none)			#IMPLIED
		colsep		%yesorno.attvals;	#IMPLIED
		rowsep		%yesorno.attvals;	#IMPLIED
		%common.table.attribs;
		%tbl.table.att;
		%local.informaltable.attrib;
>
<!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;">
<!ELEMENT author ((%person.ident.mix;)+)>
<!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.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;">
<!ELEMENT editor ((%person.ident.mix;)+)>
<!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;">
<!ELEMENT legalnotice (title?, (%legalnotice.mix;)+)>
<!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;
		%orgname.role.attrib;
		%local.orgname.attrib;
>
<!ENTITY % local.othercredit.attrib "">
<!ENTITY % othercredit.role.attrib "%role.attrib;">
<!ELEMENT othercredit ((%person.ident.mix;)+)>
<!ATTLIST othercredit
		%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, authorinitials*, revremark?)>
<!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.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;">
<!ELEMENT computeroutput (%cptr.char.mix;)*>
<!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
				|symlink
				|directory)	#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
			|environvar
			|macro
			|osname
			|prompt
			|resource
			|systemname)	#IMPLIED
		%moreinfo.attrib;
		%common.attrib;
		%systemitem.role.attrib;
		%local.systemitem.attrib;
>
<!ENTITY % local.userinput.attrib "">
<!ENTITY % userinput.role.attrib "%role.attrib;">
<!ELEMENT userinput (%cptr.char.mix;)*>
<!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)	#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.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
		%linkendreq.attrib;		type		CDATA		#IMPLIED
		%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
		%common.attrib;
		%ulink.role.attrib;
		%local.ulink.attrib;
>
<!ENTITY % local.xref.attrib "">
<!ENTITY % xref.role.attrib "%role.attrib;">
<!ELEMENT xref EMPTY>
<!ATTLIST xref
		endterm		IDREF		#IMPLIED
		%linkendreq.attrib;		%common.attrib;
		%xref.role.attrib;
		%local.xref.attrib;
>
<!ENTITY % local.appendix.class "">
<!ENTITY % appendix.class	"appendix %local.appendix.class;">
<!ENTITY % local.article.class "">
<!ENTITY % article.class	"article %local.article.class;">
<!ENTITY % local.book.class "">
<!ENTITY % local.chapter.class "">
<!ENTITY % chapter.class	"chapter %local.chapter.class;">
<!ENTITY % local.index.class "">
<!ENTITY % local.refentry.class "">
<!ENTITY % refentry.class	"refentry %local.refentry.class;">
<!ENTITY % local.nav.class "">
<!ENTITY % nav.class		"toc|lot|index|glossary|bibliography 
				%local.nav.class;">
<!ENTITY % local.refcomponent.mix "">
<!ENTITY % local.indexdivcomponent.mix "">
<!ENTITY % local.refname.char.mix "">
<!ENTITY % local.partcontent.mix "">
<!ENTITY % local.refinline.char.mix "">
<!ENTITY % local.refclass.char.mix "">
<!ENTITY % local.appendix.attrib "">
<!ENTITY % appendix.role.attrib "%role.attrib;">
<!ATTLIST appendix
		%label.attrib;
		%status.attrib;
		%common.attrib;
		%appendix.role.attrib;
		%local.appendix.attrib;
>
<!ENTITY % local.section.attrib "">
<!ENTITY % section.role.attrib "%role.attrib;">
<!ATTLIST section
		%label.attrib;
		%status.attrib;
		%common.attrib;
		%section.role.attrib;
		%local.section.attrib;
>
<!ENTITY % sectioninfo.role.attrib "%role.attrib;">
<!ENTITY % local.sectioninfo.attrib "">
<!ATTLIST sectioninfo
		%common.attrib;
		%sectioninfo.role.attrib;
		%local.sectioninfo.attrib;
>
<!ENTITY % local.article.attrib "">
<!ENTITY % article.role.attrib "%role.attrib;">
<!ELEMENT docinfo ((mediaobject 
		| legalnotice
		| keywordset | subjectset | %bibliocomponent.mix;)+)>
<!ELEMENT objectinfo ((mediaobject | legalnotice
	| keywordset | subjectset | %bibliocomponent.mix;)+)>
<!ELEMENT section (sectioninfo?,
			(%sect.title.content;),
			(((%divcomponent.mix;)+, section*)
			 | section+))>
<!ELEMENT sectioninfo ((mediaobject | legalnotice
	| keywordset | subjectset | %bibliocomponent.mix;)+)>
<!ELEMENT authorgroup ((author|editor|corpauthor|othercredit)+)>
<!ELEMENT affiliation (jobtitle?, orgname?)>
<!ELEMENT para (%para.char.mix;)*>
<!ELEMENT informaltable (mediaobject+|tgroup+) >
<!ELEMENT replaceable (#PCDATA 
		| %link.char.class; 
		| inlinemediaobject)*>
<!ELEMENT trademark (#PCDATA 
		| %link.char.class; 
		| %tech.char.class;
		| inlinemediaobject
		| emphasis)*>
<!ELEMENT systemitem (%cptr.char.mix;)*>
<!ELEMENT article ((%div.title.content;)?, artheader?,
		       (%bookcomponent.content;),
		       (%appendix.class;)*)>
<!ATTLIST article
		class		(journalarticle
				|productsheet
				|whitepaper
				|techreport
				|faq)		#IMPLIED
		%status.attrib;
		%common.attrib;
		%article.role.attrib;
		%local.article.attrib;
>
<!ELEMENT artheader (mediaobject | legalnotice
	| keywordset | subjectset | %bibliocomponent.mix;)+>
<!ELEMENT appendix ((%bookcomponent.title.content;),
		(%bookcomponent.content;))>
