<!-- ============================================================= --> <!-- MODULE: Journal Archiving DTD Customize Mixes Module --> <!-- VERSION: 2.0 --> <!-- DATE: August 2004 --> <!-- --> <!-- ============================================================= --> <!-- ============================================================= --> <!-- PUBLIC DOCUMENT TYPE DEFINITION --> <!-- TYPICAL INVOCATION --> <!-- "-//NLM//DTD Journal Archiving DTD Customize Mixes Module v2.0 20040830//EN" Delivered as file "archivecustom-mixes.ent" --> <!-- ============================================================= --> <!-- ============================================================= --> <!-- SYSTEM: Journal Archiving and Interchange DTD of the --> <!-- Archiving and Interchange DTD Suite --> <!-- --> <!-- PURPOSE: Declares over-ride values for the default element --> <!-- mixes in the Suite. These over-rides are specific --> <!-- to the Journal Archiving and Interchange DTD. --> <!-- --> <!-- Note: Since PEs must be declared before they --> <!-- are used, this module must be called before the --> <!-- default mixes modules (%default-mixes;) --> <!-- --> <!-- CONTAINS: 1) PEs that define the element mixes to be --> <!-- over-ridden --> <!-- --> <!-- CREATED FOR: --> <!-- Digital Archive of Journal Articles --> <!-- National Center for Biotechnology Information --> <!-- (NCBI) --> <!-- National Library of Medicine (NLM) --> <!-- --> <!-- ORIGINAL CREATION DATE: --> <!-- August 2004 --> <!-- --> <!-- CREATED BY: Deborah Lapeyre (Mulberry Technologies, Inc.) --> <!-- B. Tommie Usdin (Mulberry Technologies, Inc.) --> <!-- --> <!-- Suggestions for refinements and enhancements to --> <!-- this DTD should be sent in email to: --> <!-- archive-dtd@ncbi.nlm.nih.gov --> <!-- ============================================================= --> <!-- ============================================================= --> <!-- DTD VERSION/CHANGE HISTORY --> <!-- ============================================================= --> <!-- Version Reason/Occasion (who) vx.x (yyyy-mm-dd) ============================================================= Version 2.0 (DAL/BTU) v2.0 (2004-07-30) Major requirement changes led to the new release, producing DTD version "2.0": a) The splitting of the Archival and Interchange Tag Set DTDs into three DTDs from two: an authoring DTD, an archive regularization and interchange DTD (the current Blue Publishing DTD), and a preservationist archive DTD (the current Green Archiving and Interchange DTD). b) AIT Working Group suggestions from the June 04 meeting and June/July 2004 followup discussions c) Suite remodularization to meet new (and newly articulated) modularization requirements d) New or renamed classes and mixes to make modifications easier and more consistent 3. LOOSENING ALL PHRASE-LEVEL ELEMENT USAGE - As part of the version 2.0 split into 3 DTDs, removed the distinctions between where phrase-level elements may be used. Now, if you can use one phrase-level, you can use them all. This allows any in any order. Phrase-level elements include the address elements (which is only a little odd for <addr-line>). The New Parameter Entity is %all-phrase; used inside: - %inside-cell; as well as inside the following inline mixes: - %emphasized-text; - %just-rendition; - %rendition-plus; - %simple-phrase; - %simple-text; 2. REGULARIZING CLASS/MIX NAMES AND USAGE a. MODIFY INLINE PARAMETER MIXES ### Customization Alert ### Changed the inline-mix Parameter Entities to use the OR-bar-first mechanism. This requires changing not only the Parameter Entity, but all content models that use the entity. - %emphasized-text; (used in most of the format elements) - %simple-phrase; - %simple-text; The following PEs were already in OR-bar-first form and were not changed: - %just-rendition; - %rendition-plus; b. RENAME EXISTING MIXES ### Customization Alert ### Rename all general-purpose mixes whose named ended in the suffix "-elements", since that suffix is reserved for mixes that are mixed with #PCDATA for a particular element - %doc-back-matter-elements; ==> %doc-back-matter-mix; - %sec-back-matter-elements; ==> %sec-back-matter-mix; c. RENAME EXISTING CLASSES ### Customization Alert ### Some classes did not have the ".class" suffix in their names. Changed the names to add the class suffix. - %block-math.class; used in - %p-elements; - %inside-cell; - %inline-math.class; used in -%all-phrase; d. MODIFIED %doc-back-matter-mix; (formerly named %doc-back-matter-elements; ### Customization Alert ### Corrected the historical error that had this Parameter Entity calling a mix (-%sec-level;) and not a class (-%sec.class);. Since there was nothing in -%sec-level; but <sec>, this has no effect on blue or green but may change existing customizations. 1. Created this module as version "v2.0 20040830" --> <!-- ============================================================= --> <!-- ELEMENT MIXES FOR USE IN CONTENT MODELS --> <!-- (MIXES ARE COMPOSED USING CLASSES) --> <!-- ============================================================= --> <!-- ============================================================= --> <!-- EXCEPTION: A MIX USED IN OTHER MIXES --> <!-- ============================================================= --> <!-- ALL PHRASE-LEVEL ELEMENTS --> <!-- This Parameter Entity contains all of the phrase-level elements in the entire Archival Tag Set EXCEPT THE <x> AND <break> elements. This change is as a result of the version 2.0 of the DTDs splitting into three. The restrictions in the phrase-level content models were in place to help regularize the archive. They have no place in a more descriptive, open archival DTD. The cleanest way to accomplish this is to relax the fairly clean class/mix structure that the DTD uses and do one layer of "onion" entities. Thus the individual entities such as %emphasized-text; will continue to exist, but they will contain all the phrase-level elements, through this Parameter Entity. Developer's Note: At the moment, the <break> and <x> elements are not included considered to be "ordinary" phrase-level elements and are not in %all-phrase;. ### Usage Alert ### Design Notes: 1) Since this is used in other mixes, unlike all other mixes, all-phrase must be declared first in this module. 2) Since it acts like a class (is used in other mixes) it does not start with an OR bar, as all other inline mixes do --> <!ENTITY % all-phrase "%address-link.class; | %article-link.class; | %appearance.class; | %emphasis.class; | %inline-display.class; | %inline-math.class; | %math.class; | %phrase.class; | %simple-link.class; | %subsup.class;" > <!-- ============================================================= --> <!-- TABLE ELEMENT MIXES --> <!-- ============================================================= --> <!-- INSIDE TABLE CELL ELEMENTS --> <!-- Mixed with #PCDATA inside a table cell, such as a <td> or <th> element in the XHTML table model, the <entry> element in the OASIS CALS table model, etc. This PE will be used as the value of %Flow.mix;, %paracon;, etc. ### Usage Alert ### Design Note: Inside cell is an exception, an inline mix that does not start with an OR bar. This is because is used within the PE -%Flow.mix;, which is an inline mix defined in the course of the XHTML Table DTD, a DTD not under control of this DTD Suite. --> <!ENTITY % inside-cell "%all-phrase; | %block-math.class; | %break.class; | %citation.class; | %list.class; | %simple-display.class;" > <!-- ============================================================= --> <!-- BACK MATTER ELEMENT MIXES(%backmatter.ent;)--> <!-- ============================================================= --> <!-- DOCUMENT BACK MATTER ELEMENTS --> <!-- Back Matter Elements used by a full document such as a journal article. This is an element grouping rather than a class. These elements may also appear in the content models of structural elements, such as back matter. --> <!ENTITY % doc-back-matter-mix "%back.class; | %front-back.class; | %sec.class;" > <!-- ============================================================= --> <!-- INLINE ELEMENT MIXES --> <!-- ============================================================= --> <!-- EMPHASIS MIX ELEMENTS --> <!-- Elements that may be used inside most of the emphasis class elements --> <!ENTITY % emphasized-text "| %all-phrase;" > <!-- JUST RENDITION --> <!-- Only the simplest of the typographic emphasis elements, as well as subscript and superscript. Usually used in a model that allows #PCDATA and this restricted mixture. This mix may be stripped down to only subscript and superscript by some, more restrictive DTDs. DTD Maintenance Note: This Parameter Entity and the related PE "rendition-plus" have been put in place to restrict the amount of variability that a person modifying the DTD through PE redefinition can achieve. Some elements have been set #PCDATA plus one PE and some have been set to #PCDATA plus the other in an effort to allow designers to modify entire groups of elements, but not to change similar models individually . --> <!ENTITY % just-rendition "| %all-phrase;" > <!-- RENDITION MARKUP PLUS --> <!-- Only the simplest of the typographic emphasis elements, as well as subscript and superscript. Usually used in a model that allows #PCDATA and this restricted mixture. This mix may be enhanced slightly in some more permissive DTDs, and should always contain at least typographic emphasis, subscript, and superscript. DTD Maintenance Note: This Parameter Entity and the related PE "Just-rendition" have been put in place to restrict the amount of variability that a person modifying the DTD through PE redefinition can achieve. Some elements have been set #PCDATA plus one PE and some have been set to #PCDATA plus the other in an effort to allow designers to modify entire groups of elements, but not to individually change similar models. modify entire groups of elements, but not to change similar models individually . --> <!ENTITY % rendition-plus "| %all-phrase;" > <!-- SIMPLE PHRASE-LEVEL TEXTUAL ELEMENTS --> <!-- Elements that may be used almost anywhere text is used, for example, inside a title. Simple text plus inline display and math elements. --> <!ENTITY % simple-phrase "| %all-phrase;" > <!-- SIMPLE TEXTUAL CONTENT --> <!-- Elements that may be used inside elements that are really expected to be #PCDATA and not to contain any of these things. Note that in the original, this contained no math and no links, thus is was even simpler than %simple-phrase; Now (v2 2004) the two are the same. --> <!ENTITY % simple-text "| %all-phrase;" > <!-- ================== End Archiving DTD Mixes Customization ==== -->