<!-- ============================================================= --> <!-- MODULE: Formatting Element Classes --> <!-- VERSION: 1.0 --> <!-- DATE: December 2002 --> <!-- --> <!-- ============================================================= --> <!-- ============================================================= --> <!-- PUBLIC DOCUMENT TYPE DEFINITION --> <!-- TYPICAL INVOCATION --> <!-- "-//NLM//DTD Archiving and Interchange DTD Suite Formatting Element Classes v1.0 20021201//EN" Delivered as file "format.ent" --> <!-- ============================================================= --> <!-- ============================================================= --> <!-- SYSTEM: NLM Archiving and Interchange DTD Suite --> <!-- --> <!-- --> <!-- PURPOSE: Elements concerned with rendition of output, for --> <!-- example printing on a page or display on a screen --> <!-- --> <!-- CONTAINS: 1) Default definitions of format classes --> <!-- 2) Appearance class elements --> <!-- 3) Break class elements --> <!-- 4) Typographic emphasis elements --> <!-- 5) Advanced overline and underline elements --> <!-- --> <!-- CREATED FOR: --> <!-- Digital archives and publishers who wish to --> <!-- create a custom XML DTD for original markup of --> <!-- journal literature, books, and related material, --> <!-- or for archiving and transferring such material --> <!-- between archives. --> <!-- --> <!-- This DTD is in the public domain. An organization --> <!-- that wishes to create its own DTD from the suite --> <!-- may do so without permission from NLM. However, --> <!-- NLM requests that the following statement be --> <!-- included as a comment in all derivative DTDs or --> <!-- DTD modules: --> <!-- "Created using the NLM Archiving and Interchange --> <!-- DTD suite." --> <!-- --> <!-- Suggestions for refinements and enhancements to --> <!-- the DTD suite should be sent in email to: --> <!-- pmc@ncbi.nlm.nih.gov --> <!-- The suite has been set up to be extended using a --> <!-- new DTD and a customization module to redefine --> <!-- the many Parameter Entities. Do not modify the --> <!-- suite directly or redistribute modified versions --> <!-- of the suite. --> <!-- --> <!-- ORIGINAL CREATION DATE: --> <!-- December 2002 --> <!-- --> <!-- CREATED BY: Jeff Beck (NCBI) --> <!-- Deborah Lapeyre (Mulberry Technologies, Inc.) --> <!-- Bruce Rosenblum (Inera Inc.) --> <!-- --> <!-- NLM thanks the Mellon Foundation's e-Journal --> <!-- Archiving Program and Harvard University --> <!-- Libraries for their contribution to Version 1.0 --> <!-- of the suite: first, for proposing that a draft --> <!-- archiving NLM DTD for life sciences journals be --> <!-- extended to accommodate journals in all --> <!-- disciplines, and then for funding Bruce --> <!-- Rosenblum's collaboration with other DTD authors --> <!-- in completing Version 1.0. --> <!-- --> <!-- ============================================================= --> <!-- ============================================================= --> <!-- DTD VERSION\CHANGE HISTORY --> <!-- ============================================================= --> <!-- ============================================================= Version Reason/Occasion (who) vx.x (yyyy-mm-dd) --> <!-- ============================================================= --> <!-- PARAMETER ENTITY DEPENDENCIES Requires the following parameter entities be defined before calling this module, usually accomplished in the Customization Module for the specific DTD: %emphasized-text; - what elements can be inside an emphasis element --> <!-- ============================================================= --> <!-- ============================================================= --> <!-- DEFAULT DEFINITION OF THE FORMAT CLASSES --> <!-- ============================================================= --> <!-- APPEARANCE CLASS ELEMENTS --> <!-- Names those elements (inherited from the XHTML table DTD that are only concerned with appearance, not with structure or content. Use of these elements is to be discouraged.--> <!ENTITY % appearance.class "font | hr" > <!-- FORCED BREAK FORMATTING CLASS ELEMENTS --> <!-- Element to force a formatting break such as a line break --> <!ENTITY % break.class "break" > <!-- EMPHASIS/RENDITION ELEMENTS --> <!-- Elements concerning with marking the location of typographical emphasis (highlighting) DTD Design Note: There are no emphasis elements for <fractur>, <openface> (black board), <script>, etc. because this DTD recommends the use of the STIX extensions to accomplish this, as soon as they are available. --> <!ENTITY % emphasis.class "bold | italic | monospace | overline | overline-start | overline-end | sc | strike | sub | sup | underline | underline-start | underline-end " > <!-- ============================================================= --> <!-- PARAMETER ENTITIES FOR ATTRIBUTE LISTS --> <!-- ============================================================= --> <!-- UNDERLINE ATTRIBUTES --> <!-- Attributes for the <underline> element --> <!ENTITY % underline-atts "underline-style CDATA #IMPLIED" > <!-- ============================================================= --> <!-- APPEARANCE CLASS ELEMENTS --> <!-- ============================================================= --> <!-- FONT --> <!-- Defined to allow the user to specify an explicit (non stylesheet-generated) font. This element is restricted to use inside table cells <td> and <th> and was inherited from the XHTML table DTD. Authoring Note: Usage is discouraged. --> <!ELEMENT font (#PCDATA %rendition-plus;)* > <!ATTLIST font color CDATA #IMPLIED > <!-- HORIZONTAL RULE --> <!-- Defined to allow the user to specify an explicit (non machine-generated) rule. This element is restricted to use inside table cells <td> and <th> and was inherited from the XHTML table DTD. Authoring Note: Usage is discouraged. --> <!ELEMENT hr EMPTY > <!-- ============================================================= --> <!-- BREAK CLASS ELEMENTS --> <!-- ============================================================= --> <!-- LINE BREAK --> <!-- Defined to allow the user to specify an explicit (non machine-generated) linebreak. This element is restricted to a very few contexts, for example inside <title>s and inside table cells <td> and <th>. Authoring Note: Usage is discouraged. --> <!ELEMENT break EMPTY > <!-- ============================================================= --> <!-- EMPHASIS/RENDITION CLASS ELEMENTS --> <!-- ============================================================= --> <!-- BOLD --> <!-- Used to mark text that should appear in bold face type for print or display --> <!ELEMENT bold (#PCDATA | %emphasized-text;)* > <!-- ITALIC --> <!-- Used to mark text that should appear in italic type on output. --> <!ELEMENT italic (#PCDATA | %emphasized-text;)* > <!-- MONOSPACE TEXT (TYPEWRITER TEXT) --> <!-- Used to mark text that should appear in a non-proportional font, such as courier for display or print. This is common for computer code examples, man-machine dialogues, etc. --> <!ELEMENT monospace (#PCDATA | %emphasized-text;)* > <!-- SMALL CAPS --> <!-- Used to mark text that should appear in a font which creates smaller capital letters on output. --> <!ELEMENT sc (#PCDATA | %emphasized-text;)* > <!-- OVERLINE --> <!-- Used to mark text that should appear with a horizontal line above each character in display or print --> <!ELEMENT overline (#PCDATA | %emphasized-text;)* > <!-- STRIKE THROUGH --> <!-- Used to mark text that should appear with a line through it so as to appear "struck out" on display or print --> <!ELEMENT strike (#PCDATA | %emphasized-text;)* > <!-- SUBSCRIPT --> <!-- A number or expression that is set lower than the baseline and slightly smaller, to act as an inferior or subscript --> <!ELEMENT sub (#PCDATA | %emphasized-text;)* > <!-- arrange Used to indicate whether multiple subscripts or superscripts that apply to the same character should stack, i.e., be placed one above the other, or stagger, i.e., be stretched out in a line. --> <!ATTLIST sub arrange (stack | stagger) #IMPLIED > <!-- SUPERSCRIPT --> <!-- A number or expression that is set higher than the baseline and slightly smaller, to act as a superior or superscript --> <!ELEMENT sup (#PCDATA | %emphasized-text;)* > <!-- arrange Used to indicate whether multiple subscripts or superscripts that apply to the same character should stack, i.e., be placed one above the other as compactly as possible, or stagger, i.e., be stretched out in a line. --> <!ATTLIST sup arrange (stack | stagger) #IMPLIED > <!-- UNDERLINE --> <!-- Used to mark text that should appear with a horizontal line beneath it for display or print --> <!ELEMENT underline (#PCDATA | %emphasized-text;)* > <!ATTLIST underline %underline-atts; > <!-- ============================================================= --> <!-- ADVANCED UNDERLINE AND OVERLINE ELEMENTS (From the Elsevier DTD, used mostly within mathematics, when ordinary MathML underline and overline functions are inadequate. The elements act as milestone tags marking the start and end of over or underlining that may extend across element boundaries.) --> <!-- ============================================================= --> <!-- OVERLINE START --> <!-- The start of a milestone-created overline, the end of ornament will be marked by an Overline End element. Remarks: The <overline-start> and <overline-end> elements enable creation of overlines in content, most commonly in mathematical content, where an normal overline tag <overline> would break the XML well-formedness rule that no two elements may overlap. The overline created using these two elements can have arbitrary start and end points because the start and end elements are paired through the use of the unique IDs, not as the start and end of a single element. For example, in the text "ABCD", if the text "ABC" is the be overlined and the text "CD" is to be underlined, ordinary overlining with <overline> would create invalid tag overlap. The text could be correctly tagged, using the Overline Start and Overline End elements as: <overline-start id="ovl4"/>AB <underline-start id="ul1"/>C </overline-end rid="ov14"/>D <underline-end rid="ul1"/> --> <!ELEMENT overline-start EMPTY > <!-- id Unique identifier so the element may be referenced --> <!ATTLIST overline-start id ID #REQUIRED > <!-- OVERLINE END --> <!-- The end of a milestone-created overline, the start of ornament will be marked by an Overline Start element. --> <!ELEMENT overline-end EMPTY > <!-- rid Points to the identifier of a definition, so that a term and definition may be linked --> <!ATTLIST overline-end rid IDREF #REQUIRED > <!-- UNDERLINE START --> <!-- The start of a milestone-created underline, the end of ornament will be marked by an Underline End element. Remarks: The <underline-start> and <underline-end> elements enable creation of underlines in content, most commonly in mathematical content, where an normal underline tag <underline> would break the XML well-formedness rule that no two elements may overlap. The underline created using these two elements can have arbitrary start and end points because the start and end elements are paired through the use of the unique IDs, not as the start and end of a single element. For example, in the text "ABCD", if the text "ABC" is the be overlined and the text "CD" is to be underlined, ordinary overlining with <overline> would create invalid tag overlap. The text could be correctly tagged, using the Overline Start and Overline End elements as: <overline-start id="ovl"/>AB <underline-start id="ul1"/>C </overline-end rid="ov1"/>D <underline-end rid="ul1"/> --> <!ELEMENT underline-start EMPTY > <!-- id Unique identifier so the element may be referenced --> <!ATTLIST underline-start id ID #REQUIRED > <!-- UNDERLINE END --> <!-- The end of a milestone-created underline, the start of ornament will be marked by an Underline Start element. --> <!ELEMENT underline-end EMPTY > <!-- rid Points to the identifier of a definition, so that a term and definition may be linked --> <!ATTLIST underline-end rid IDREF #REQUIRED > <!-- ================== End Format Class Module =================== -->