<!-- ============================================================= --> <!-- MODULE: Default Element Classes Module --> <!-- VERSION: 2.1 --> <!-- DATE: June 2005 --> <!-- --> <!-- ============================================================= --> <!-- ============================================================= --> <!-- PUBLIC DOCUMENT TYPE DEFINITION --> <!-- TYPICAL INVOCATION --> <!-- "-//NLM//DTD Default Element Classes Module v2.1 20050630//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.1 (DAL/BTU) v2.1 (2005-06-30) Changed to MathML 2.0 and MathML 2.0 Character Sets Added new material requested by NCBI 18. Parameter Entity naming comments that called classes "mixes" were changed to reflect class status. There are no mixes in this module. 17. PERMISSIONS - Added a new <permissions> wrapper element to consolidate copyright and licensing information. For backwards compatibility, the new element will be added alongside the existing copyright elements. Best practice will be to use the new container, but <copyright-statement>, <copyright-year>, and <license> will be accepted in their old positions (for example inside in preformat elements) - Added <permissions> to display back matter class, thus adding it to nearly all the display and paragraph-level elements. <permissions> should be used in preference to the <copyright> statement directly in the same PE. For the defaults, the following elements were changed: appendix, article-meta, boxed-text, chem-struct-wrapper, disp-formula, disp-quote, fig, graphic, preformat, statement, supplementary-material, table-wrap, table-wrap-foot, verse-group 16. Updated public identifier to "v2.1 20050630" ============================================================= Version 2.0 (DAL/BTU/TRG) v2.0 (2005-01-25) 15. Removed duplicate declaration of the %ref-list.class; The two were (fortunately) identical. 14. Comments for this module were cleaned up as part of the delivery of the NCBI Historical DTD. Since only comments were changed, this was not even considered to be a dot release and the formal public identifier remained unchanged. ============================================================= 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" > <!-- ============================================================= --> <!-- 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. --> <!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 | permissions" > <!-- 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 CLASS ELEMENTS --> <!ENTITY % block-math.class "disp-formula" > <!-- INLINE MATHEMATICAL EXPRESSIONS MIX CLASS ELEMENTS --> <!ENTITY % inline-math.class "inline-formula" > <!-- MATHEMATICAL EXPRESSIONS CLASS ELEMENTS --> <!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 REFERENCE-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" > <!-- TABLE BODY CLASS --> <!-- To include just a table <tale-wrap> element --> <!ENTITY % tbody.class "tbody" > <!-- ================== End Journal Suite Default Classes ======= -->