<!-- DTD customization file ......................................... -->

<!-- Redefine any pool elements here, because they need the pool          -->
<!--       and mix entity definitions.                                    -->

<!-- Redefine blockquote to remove attribution  -->
<!ENTITY % local.blockquote.attrib "">
<!ENTITY % blockquote.role.attrib "%role.attrib;">
<!ELEMENT blockquote (title?, (%component.mix;)+)>
<!ATTLIST blockquote
		%common.attrib;
		%blockquote.role.attrib;
		%local.blockquote.attrib;
>

<!-- Redefine citetitle to remove pubwork attribute  -->
<!ENTITY % local.citetitle.attrib "">
<!ENTITY % citetitle.role.attrib "%role.attrib;">
<!ELEMENT citetitle (%para.char.mix;)*>

<!ATTLIST citetitle
		%common.attrib;
		%citetitle.role.attrib;
		%local.citetitle.attrib;
>

<!-- Redefine filename to remove class and path attributes  -->
<!ENTITY % local.filename.attrib "">
<!ENTITY % filename.role.attrib "%role.attrib;">
<!ELEMENT filename (%cptr.char.mix;)*>

<!ATTLIST filename
		%moreinfo.attrib;
		%common.attrib;
		%filename.role.attrib;
		%local.filename.attrib;
>

<!-- Redefine glossentry element to remove acronym, glosssee, and abbrev -->
<!ENTITY % local.glossentry.attrib "">
<!ENTITY % glossentry.role.attrib "%role.attrib;">
<!ELEMENT glossentry (glossterm, glossdef+)>

<!-- SortAs: String by which the GlossEntry is to be sorted
		(alphabetized) in lieu of its proper content -->

<!ATTLIST glossentry
		sortas		CDATA		#IMPLIED
		%common.attrib;
		%glossentry.role.attrib;
		%local.glossentry.attrib;
>

<!-- Redefine glossdef to remove glossseealso, -->
<!--     and remove subject attribute          -->
<!ENTITY % local.glossdef.attrib "">
<!ENTITY % glossdef.role.attrib "%role.attrib;">
<!ELEMENT glossdef ((%glossdef.mix;)+)>

<!ATTLIST glossdef
		%common.attrib;
		%glossdef.role.attrib;
		%local.glossdef.attrib;
>

<!-- Redefine keycombo to remove keysym and mousebutton     -->
<!--          and remove keyaction and moreinfo attributes  -->
<!ENTITY % local.keycombo.attrib "">
<!ENTITY % keycombo.role.attrib "%role.attrib;">
<!ELEMENT keycombo ((keycap|keycombo)+)>
<!ATTLIST keycombo
		%common.attrib;
		%keycombo.role.attrib;
		%local.keycombo.attrib;
>

<!-- Redefine listitem to remove override attribute -->
<!ENTITY % local.listitem.attrib "">
<!ENTITY % listitem.role.attrib "%role.attrib;">
<!ELEMENT listitem ((%component.mix;)+)>

<!ATTLIST listitem
		%common.attrib;
		%listitem.role.attrib;
		%local.listitem.attrib;
>

<!-- Redefine menuchoice to remove interface -->
<!ENTITY % local.menuchoice.attrib "">
<!ENTITY % menuchoice.role.attrib "%role.attrib;">
<!ELEMENT menuchoice ((guibutton|guiicon|guilabel|guisubmenu
		|guimenu|guimenuitem|shortcut)+)>
<!ATTLIST menuchoice
		%moreinfo.attrib;
		%common.attrib;
		%menuchoice.role.attrib;
		%local.menuchoice.attrib;
>

<!-- Redefine olink to change type of targetdocent attribute -->
<!ENTITY % local.olink.attrib "">
<!ENTITY % olink.role.attrib "%role.attrib;">
<!ELEMENT olink (%para.char.mix;)*>

<!ATTLIST olink
		targetdocent	CDATA 		#IMPLIED
		linkmode	IDREF		#IMPLIED
		localinfo 	CDATA		#IMPLIED
		type		CDATA		#IMPLIED
		%common.attrib;
		%olink.role.attrib;
		%local.olink.attrib;
>

<!-- Redefine parameter to remove class and moreinfo attributes   -->
<!ENTITY % local.parameter.attrib "">
<!ENTITY % parameter.role.attrib "%role.attrib;">
<!ELEMENT parameter (%cptr.char.mix;)*>

<!ATTLIST parameter
		%common.attrib;
		%parameter.role.attrib;
		%local.parameter.attrib;
>

<!-- Redefine productname to remove class attribute -->
<!ENTITY % local.productname.attrib "">
<!ENTITY % productname.role.attrib "%role.attrib;">
<!ELEMENT productname (%para.char.mix;)*>

<!ATTLIST productname
		%common.attrib;
		%productname.role.attrib;
		%local.productname.attrib;
>

<!-- Redefine step to remove performance attribute -->
<!ENTITY % local.step.attrib "">
<!ENTITY % step.role.attrib "%role.attrib;">
<!ELEMENT step (title?, (((%component.mix;)+, (substeps,
		(%component.mix;)*)?) | (substeps, (%component.mix;)*)))>

<!ATTLIST step
		%common.attrib;
		%step.role.attrib;
		%local.step.attrib;
>

<!-- Redefine substeps to remove performance attribute -->
<!ENTITY % local.substeps.attrib "">
<!ENTITY % substeps.role.attrib "%role.attrib;">
<!ELEMENT substeps (step+)>

<!ATTLIST substeps
		%common.attrib;
		%substeps.role.attrib;
		%local.substeps.attrib;
>

<!-- Redefine systemitem to remove acronym         -->
<!ENTITY % local.systemitem.attrib "">
<!ENTITY % systemitem.role.attrib "%role.attrib;">
<!ELEMENT systemitem (%cptr.char.mix;)*>

<!ATTLIST systemitem
		%common.attrib;
		%systemitem.role.attrib;
		%local.systemitem.attrib;
>

<!-- Redefine subscript to remove symbol       -->
<!ENTITY % local.ssscript.attrib "">
<!ENTITY % ssscript.role.attrib "%role.attrib;">
<!ELEMENT subscript (#PCDATA 
		| %link.char.class;
		| emphasis
		| replaceable 
		| inlinegraphic 
		| %base.char.class; 
		| %other.char.class;)*>
<!ATTLIST subscript
		%common.attrib;
		%ssscript.role.attrib;
		%local.ssscript.attrib;
>

<!-- Redefine superscript to remove symbol       -->
<!ELEMENT superscript (#PCDATA 
		| %link.char.class;
		| emphasis
		| replaceable 
		| inlinegraphic 
		| %base.char.class; 
		| %other.char.class;)*>
<!ATTLIST superscript
		%common.attrib;
		%ssscript.role.attrib;
		%local.ssscript.attrib;
>

<!-- Redefine shortcut element to remove keysym and mousebutton     -->
<!ENTITY % local.shortcut.attrib "">
<!ENTITY % shortcut.role.attrib "%role.attrib;">
<!ELEMENT shortcut ((keycap|keycombo)+)>
<!ATTLIST shortcut
		%keyaction.attrib;
		%moreinfo.attrib;
		%common.attrib;
		%shortcut.role.attrib;
		%local.shortcut.attrib;
>

<!-- Redefine replaceable element to remove "optional" element   -->
<!--         and class attribute                                 -->
<!ENTITY % local.replaceable.attrib "">
<!ENTITY % replaceable.role.attrib "%role.attrib;">
<!ELEMENT replaceable (#PCDATA 
		| %link.char.class; 
		| %base.char.class; 
		| %other.char.class; 
		| inlinegraphic)*>

<!ATTLIST replaceable
		%common.attrib;
		%replaceable.role.attrib;
		%local.replaceable.attrib;
>
<!-- Redeclare class entities used in dbhierx.mod which comes after this.  -->

<!--   in nav.class, remove lot, index, and bibliography  -->
<!ENTITY % nav.class    "toc|glossary">
<!--   in index.class, remove setindex, index            -->
<!ENTITY % index.class  "">