<!-- ============================================================= --> <!-- MODULE: Default Element Classes Module --> <!-- VERSION: 2.0 --> <!-- DATE: August 2004 --> <!-- --> <!-- ============================================================= --> <!-- ============================================================= --> <!-- PUBLIC DOCUMENT TYPE DEFINITION --> <!-- TYPICAL INVOCATION --> <!-- "-//NLM//DTD Default Element Classes Module v2.0 20040830//EN" Delivered as file "default-classes.ent" --> <!-- ============================================================= --> <!-- ============================================================= --> <!-- SYSTEM: Journal Archiving and Interchange DTD of the --> <!-- Archiving and Interchange DTD Suite --> <!-- --> <!-- PURPOSE: To declare the Parameter Entities (PEs) used to --> <!-- define the default element classes. Classes are --> <!-- OR-groups of elements that are defined together --> <!-- to be used in mixes and in Element Declarations. --> <!-- --> <!-- Note: Since PEs must be declared before they --> <!-- are used, this module must be called before all --> <!-- content modules that declare elements, and after --> <!-- the class customization module (if any). --> <!-- --> <!-- CONTAINS: PEs that define the element classes to be used --> <!-- in the Journal Archive and Interchange DTD Suite --> <!-- modules. --> <!-- --> <!-- 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-08-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 13. ACCESS CLASS ### Customization Alert ### a. Took <ext-link> out of -%access.class;. It did not belong. It belongs in -%address-link.class; 12. PARA CLASS ### Customization Alert ### a. Deleted -%para.class; b. Its place in the definition of the Paragraph <p> element will be taken by the -%p-elements; entity. c. Its place in other mixes will be taken by the combination of: - %just-para.class; and - %rest-of-para.class; 11. LINK CLASSES ### Customization Alert ### a. Deleted the following classes: - %link.class; - %inpara-address; - %ext-links.class; b. Replaced above with four link classes: - %address-link.class; (the links used in addresses) - %fn-link.class; (just fn) - %simple-link.class; (the internal links, same) - %article-link.class; (links for journal article) as follows: - All occurrences of -%ext-links.class; replaced with the new class %address-links.class; - All occurrences of -%link.class; replaced with some combination of the new link classes just named. These were not usually DTD changes, just parameterization changes. 10. PERSON NAME/STRING-NAME - Allowed a looser name model <string-name> to be used anywhere <name> is used. This includes: - Inside %references.class; (Therefore added to <citation>, <product>, <related-article>) - New Parameter Entity %name.class; for types of names: <name>, <string-name>, <collab> - Inside %contrib-model; (which uses %name.class; thus adding <string-name> to <contributor>) - Inside <person-group> (in %name.class;) 9. ROLE ELEMENT - Was added to the default references class %references.class; 8. DATES a. Added new class -%date-parts.class; to hold all the potential components of date, such as <year>, <day>, etc. b. Added <string-date> to default -%date.class; 7. NEW IDENTIFICATION ELEMENTS a. Added three new identification elements: - ISSUE ID = new element for an identifier such as a DOI (as opposed to an <issue> Issue Number) associated with a journal issue - ISSUE TITLE = new element for a theme or special issue title - VOLUME ID = new element for a theme or special issue title b. These identification elements were: - Added to <article-meta> - Added to %references.class; (thus to <citation>, <related-article>, and <product>) - Defined in common module - Added to several new Parameter Entities that are named %nnn-elements; (Such Parameter Entities hold the elements that may be mixed with #PCDATA inside the element named "nnn".) 6. REFERENCES.CLASS - Added the following elements to the - %references.class;: - <issue-id> - <issue-title> - <page-range> - <role> - <string-name> - <volume-id> Thus adding them to: - <citation> - <related-article> - <product> 5. DISPLAY BACK MATTER - Added <attrib> to %display-back-matter; thus adding it to the following elements: - <array> - <boxed-text> - <chem-struct-wrapper> - <disp-quote> - <fig> - <graphic> - <preformat> - <table-wrap> - <verse-group> 4. ADDRESS ELEMENTS CLASS ### Customization Alert ### - Redefined to remove <email> and <uri> 3. MAKE CLASS NAMES EXPLICIT - Some classes did not have the ".class" suffix. Renamed such classes to add the suffix. ### Customization Alert ### - %address-elements; ==> to -%address.class; - %contrib-info; ==> -%contrib-info.class; (uri added to class) - %display-back-matter; ==> -%display-back-matter.class; - %block-math; ==> -%block-math.class; - %inline-math; ==> -%inline-math.class; 2. NEW CLASSES - To correct potential classing problems, added the following new Parameter Entities and added a few new comments: New Classes: - %app.class; - %corresp.class; - %def.class; - %degree.class; - %fn-link.class; - %front-back.class; and %sec-back.class; changed the following to use them %doc-back-matter-mix; %sec-back-matter-mix; - %just-base-display.class; and used it in %chem-struct-wrapper-model; %array-model; %fig-group-model; - %just-para.class; used in <author-comment>, <bio>, <def>, <caption>, %fig-model; - %just-table.class; - %kwd.class; - %back.class; - %front-back.class; - %ref-list.class; - %sec-back.class; - %table-foot.class; - %tbody.class; 1. Created this module as version "v2.0 20040830" --> <!-- ============================================================= --> <!-- CLASSES FOR COMMON ELEMENTS (%common.ent;) --> <!-- ============================================================= --> <!-- ADDRESS CLASS ELEMENTS --> <!-- Potential element components of an address; not a proper class --> <!ENTITY % address.class "addr-line | country | fax | institution | phone " > <!-- CITATION CLASS ELEMENTS --> <!-- Reference to an external document, as used within, for example, the text of a paragraph --> <!ENTITY % citation.class "citation" > <!-- DEFINITION CLASS ELEMENTS --> <!-- Definitions and other elements to match with terms and abbreviations --> <!ENTITY % def.class "def" > <!-- DEGREE CLASS --> <!-- The academic or professional degrees that accompany a person's name --> <!ENTITY % degree.class "degrees" > <!-- IDENTIFIER CLASS ELEMENTS --> <!-- DOIs and other identifiers are used by publishers at many levels, for example for an <abstract> or a <figure>. --> <!ENTITY % id.class "object-id" > <!-- LABEL CLASS --> <!-- The label element, used to hold the number or character of a labeled object such as a table or footnote --> <!ENTITY % label.class "label" > <!-- NAMES CLASS --> <!-- The elements used to name the personal names for individuals and the collaboration names for groups --> <!ENTITY % name.class "collab | name | string-name" > <!-- PERSONAL NAMES CLASS --> <!-- The element components of a person's name, for the name of a contributor --> <!ENTITY % person-name.class "given-names | prefix | surname | suffix" > <!-- ============================================================= --> <!-- ARTICLE METADATA CLASSES %articlemeta.ent; --> <!-- ============================================================= --> <!-- CONTRIBUTOR INFORMATION --> <!-- Metadata about a contributor --> <!ENTITY % contrib-info.class "address | aff | author-comment | bio | email | etal | ext-link | on-behalf-of | role | uri | xref" > <!-- CONFERENCE CLASS --> <!-- The element components of the description of a conference; not a proper class --> <!ENTITY % conference.class "conf-date | conf-name | conf-num | conf-loc | conf-sponsor | conf-theme | conf-acronym" > <!-- CORRESPONDING AUTHOR CLASS --> <!-- Elements associated with the corresponding author --> <!ENTITY % corresp.class "corresp" > <!-- DATE CLASS ELEMENTS --> <!-- Dates and other matters of history --> <!ENTITY % date.class "date | string-date" > <!-- DATE PARTS CLASS ELEMENTS --> <!-- Components of date-style elements --> <!ENTITY % date-parts.class "day | month | season | year" > <!-- KEYWORD CLASS ELEMENTS --> <!-- Keywords and any keyword-synonyms --> <!ENTITY % kwd.class "kwd" > <!-- ============================================================= --> <!-- BACK MATTER CLASSES (%backmatter.ent;) --> <!-- ============================================================= --> <!-- JUST APPENDIX CLASS --> <!-- The appendix and only the appendix --> <!ENTITY % app.class "app" > <!-- BACK MATTER CLASS --> <!-- Ancillary elements, typically used in the back matter of an article, section, etc. --> <!ENTITY % back.class "ack | app-group | bio | fn-group | glossary | ref-list" > <!-- FRONT MATTER CLASS --> <!-- Ancillary elements, typically used in the front matter of an article, book, etc. . --> <!ENTITY % front.class "ack | bio | fn-group | glossary" > <!-- FRONT AND BACK CLASS --> <!-- Ancillary elements, typically used in the front or back matter of an article --> <!ENTITY % front-back.class "notes" > <!-- SECTION BACK MATTER CLASS --> <!-- Ancillary elements, typically used in the back matter of a section, etc. --> <!ENTITY % sec-back.class "fn-group | glossary | ref-list" > <!-- JUST REF-LIST CLASS --> <!-- The reference list and only the reference list (The element <ref-list> is defined in %references.ent;.) --> <!ENTITY % ref-list.class "ref-list" > <!-- ============================================================= --> <!-- DISPLAY CLASSES --> <!-- ============================================================= --> <!-- ACCESSIBILITY CLASS ELEMENTS --> <!-- Elements added to make it easier to process journal articles in ways that are more accessible to people and devices with special needs, for example the visually handicapped. <alt-text> is a short phrase description of an objects, <long-desc> is a more complete description of the content or intent of an object, and the <ext-link> in this grouping would point to an alternate form of the object. --> <!ENTITY % access.class "alt-text | long-desc" > <!-- DISPLAY CLASS ELEMENTS --> <!-- Graphical or other image-related elements. The display elements may occur within the text of a table cell or paragraph although they are typically at the same hierarchical level as a paragraph. --> <!ENTITY % block-display.class "array | boxed-text | chem-struct | chem-struct-wrapper | fig | fig-group | graphic | media | preformat | supplementary-material | table-wrap | table-wrap-group" > <!-- CAPTION DISPLAY ELEMENTS --> <!-- Basic figure display elements --> <!ENTITY % caption.class "caption" > <!-- DISPLAY ELEMENT BACK MATTER ELEMENTS --> <!-- Miscellaneous stuff at the end of a display element such as a figure or a boxed text element such as a sidebar --> <!ENTITY % display-back-matter.class "attrib | copyright-statement" > <!-- FIGURE DISPLAY ELEMENTS --> <!-- Basic figure display elements --> <!ENTITY % fig-display.class "fig" > <!-- INLINE DISPLAY CLASS ELEMENTS --> <!-- Non-block display elements that set or display inline with the text --> <!ENTITY % inline-display.class "inline-graphic | private-char" > <!-- MOST BASIC DISPLAY ELEMENTS --> <!-- Just the few display elements that are simple display objects: a picture, a movie, a sound file. --> <!ENTITY % just-base-display.class "graphic | media" > <!-- SIMPLE DISPLAY ELEMENTS --> <!-- The simplest and most basic of the Display Class elements, which may be allowed in many places, for example, inside other Display Class elements or inside the cell of a Table --> <!ENTITY % simple-display.class "array | chem-struct | graphic | media | preformat" > <!-- SIMPLE TABLE DISPLAY ELEMENTS --> <!-- Very similar to the simple-display.class, but Table Wrappers <table-wrap> should contain <table>s, <oasis:table>s, etc., not arrays. --> <!ENTITY % simple-intable-display.class "chem-struct | graphic | media | preformat" > <!-- ============================================================= --> <!-- FORMAT CLASSES (%format.ent;) --> <!-- ============================================================= --> <!-- 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 | underline | underline-start | underline-end " > <!-- UP/DOWN RENDITION ELEMENTS --> <!ENTITY % subsup.class "sub | sup" > <!-- ============================================================= --> <!-- LINK CLASSES (%link.ent;) --> <!-- ============================================================= --> <!-- ADDRESS LINK CLASS ELEMENTS --> <!-- Link elements that can be used inside addresses. This is essentially the three generic external links. (Note: in earlier releases, this Parameter Entity was named %address-elements;, although it functioned as a class.) --> <!ENTITY % address-link.class "email | ext-link | uri" > <!-- JOURNAL ARTICLE LINK CLASS ELEMENTS --> <!-- Links used inside journal articles, to point to related material --> <!ENTITY % article-link.class "inline-supplementary-material | related-article" > <!-- FOOTNOTE LINKS CLASS --> <!-- Only the most basic, internal links --> <!ENTITY % fn-link.class "fn" > <!-- RELATED ARTICLE LINKS CLASS --> <!-- For using <related-article> at the paragraph level --> <!ENTITY % related-article.class "related-article" > <!-- SIMPLE LINKS/CROSS-REFERENCES CLASS --> <!-- The smaller and simpler linking elements that might be inside, for example, a Keyword <kwd> --> <!ENTITY % simple-link.class "fn | target | xref" > <!-- ============================================================= --> <!-- LIST CLASSES (%list.ent;) --> <!-- ============================================================= --> <!-- LIST CLASS ELEMENTS --> <!-- All the types of lists that may occur as part of the text, therefore excluding Bibliographic Reference Lists <ref-list> --> <!ENTITY % list.class "def-list | list" > <!-- ============================================================= --> <!-- MATH CLASSES (%math.ent;) --> <!-- ============================================================= --> <!-- MATHEMATICAL EXPRESSIONS AND FORMULAE MIX --> <!ENTITY % block-math.class "disp-formula" > <!-- INLINE MATHEMATICAL EXPRESSIONS MIX --> <!ENTITY % inline-math.class "inline-formula" > <!-- MATHEMATICAL EXPRESSIONS --> <!ENTITY % math.class "tex-math | mml:math" > <!-- ============================================================= --> <!-- PARAGRAPH CLASSES (%para.ent;) --> <!-- ============================================================= --> <!-- REST OF PARAGRAPH CLASS --> <!-- Information for the reader that is at the same structural level as a Paragraph. Contains all paragraph-level objects that are not also used inside tables and excepting also the paragraph element itself --> <!ENTITY % rest-of-para.class "ack | disp-quote | speech | statement | verse-group" > <!-- IN TABLE PARAGRAPH CLASS --> <!-- The simpler of the paragraph-level elements that might be found inside a table cell --> <!ENTITY % intable-para.class "disp-quote | speech | statement | verse-group" > <!-- JUST PARAGRAPH CLASS --> <!-- To hold the Paragraph element, alone. --> <!ENTITY % just-para.class "p" > <!-- ============================================================= --> <!-- PHRASE CLASSES (%phrase.ent;) --> <!-- ============================================================= --> <!-- PHRASE CLASS ELEMENTS --> <!-- Small inline elements, that surround a word or phrase in the text because the subject (content) should be identified as something special or different --> <!ENTITY % phrase.class "abbrev | named-content" > <!-- ============================================================= --> <!-- REFERENCES CLASSES (%references.ent;) --> <!-- ============================================================= --> <!-- BIBLIOGRAPHIC REFERENCE (CITATION) CLASS --> <!-- The elements that may be included inside a Citation (bibliographic reference) --> <!ENTITY % references.class "access-date | annotation | article-title | collab | comment | conf-date | conf-loc | conf-name | day | edition | email | elocation-id | etal | ext-link | fpage | gov | isbn | issn | issue | issue-id | issue-title | lpage | month | name | object-id | page-count | page-range | patent | person-group | pub-id | publisher-loc | publisher-name | role | season | series | source | std | string-name | supplement | time-stamp | trans-source | trans-title | uri | volume | volume-id | year" > <!-- JUST REF-LIST CLASS --> <!-- The reference list and only the reference list --> <!ENTITY % ref-list.class "ref-list" > <!-- ============================================================= --> <!-- SECTION CLASS (%section.ent;) --> <!-- ============================================================= --> <!-- SECTION CLASS ELEMENTS --> <!-- Information for the reader that is at the same structural level as a Section, which is a headed structure full of smaller elements such as paragraphs. --> <!ENTITY % sec.class "sec" > <!-- ============================================================= --> <!-- TABLE MODEL CLASSES --> <!-- ============================================================= --> <!-- JUST TABLE CLASS --> <!-- To include just a table <tale-wrap> element --> <!ENTITY % just-table.class "table-wrap" > <!-- TABLE CLASS ELEMENTS --> <!-- Elements that will be used to contain the rows and columns inside the Table Wrapper element <table-wrap>. The following elements can be set up for inclusion: XHTML Table Model table --> <!ENTITY % table.class "table" > <!-- TABLE FOOT CLASS --> <!-- Elements to include at the end of a table in the table. --> <!ENTITY % table-foot.class "table-wrap-foot" > <!-- TBODY CLASS --> <!-- To include just a table <tale-wrap> element --> <!ENTITY % tbody.class "tbody" > <!-- ================== End Journal Suite Default Classes ======= -->