%PDF- %PDF-
Direktori : /usr/share/sgml/dtd/ |
Current File : //usr/share/sgml/dtd/mod-general.dtd |
<!-- (C) International Organization for Standardization 1986 Permission to copy in any form is granted for use with conforming SGML systems and applications as defined in ISO 8879, provided this notice is included in all copies. --> <!-- Public identifier: "+//ISBN 82-7640-000//DTD General Document//EN" Note: This DTD is a modified version of the public DTD known as "ISO 8879:1986//DTD General Document//EN". The modification concerns the titlep element, where the content model contains "address" twice in the final OR group. The first "address" has been removed, as it was redundant and introduced ambiguity to the content model for the titlep element. Documents which conform to the above mentioned DTD will conform to this DTD. Credits: Jaap Akkerhuis <jaap@alice.att.com> discovered the ambiguity. Wayne Wohler <WOHLER@BLDVM1.VNET.IBM.COM> provided the original DTD. Modification by Erik Naggum <erik@naggum.no>. Contact: ISBN 82-7640 assigned to Naggum Software, Box 1570 Vika, 0118 OSLO, NORWAY. Phone +47-295-0313. E-mail: <books@naggum.no>. This DTD will be provided free of charge, electronically, by means of electronic mail or receiver-initiated file transfer, to those who have legal access to the ISO document from which this is a derived work. This published material will _not_ be provided in paper copy, except as required by law. --> <!-- Public document type definition. Typical invocation: <!DOCTYPE general PUBLIC "+//ISBN 82-7640-000//DTD General Document//EN" [ <!ENTITY % ISOnum PUBLIC "ISO 8879:1986//ENTITIES Numeric and Special Graphic//EN"> <!ENTITY % ISOpub PUBLIC "ISO 8879:1986//ENTITIES Publishing//EN"> %ISOnum; %ISOpub; (Parameter entities and additional elements can be defined here.) ]> --> <!ENTITY % doctype "general" -- Document type generic identifier --> <!-- This is a document type definition for a "general" document. It contains the necessary elements for use in many applications, and is organized so that other elements can be added in the document type declaration subset. --> <!-- Entity Naming Conventions --> <!-- Prefix = where used: p. = in paragraphs (also in phrases if .ph suffix) s. = in sections (i.e., among paragraphs) ps. = in paragraphs and sections i. = where allowed by inclusion exceptions m. = content model or declared content a. = attribute definition NONE= specific use defined in models Suffix = allowed content: .ph = elements whose content is %m.ph; .d = elements whose content has same definition NONE= elements with unique definitions --> <!-- Element Tokens --> <!ENTITY % p.em.ph "hp1|hp2|hp3|hp0|cit" -- Emphasized phrases --> <!ENTITY % p.rf.ph "hdref|figref" -- Reference phrases --> <!ENTITY % p.rf.d "fnref|liref" -- References (empty) --> <!ENTITY % p.zz.ph "q|(%p.em.ph;)|(%p.rf.ph;)|(%p.rf.d;)" -- All phrases --> <!ENTITY % ps.ul.d "ol|sl|ul|nl" -- Unit-item lists --> <!ENTITY % ps.list "%ps.ul.d;|dl|gl" -- All lists --> <!ENTITY % ps.elem "xmp|lq|lines|tbl|address|artwork" -- Other elements --> <!ENTITY % ps.zz "(%ps.elem;)|(%ps.list;)" -- Para/sect subelements --> <!ENTITY % s.p.d "p|note" -- Simple paragraphs --> <!ENTITY % s.top "top1|top2|top3|top4" -- Topics --> <!ENTITY % s.zz "(%s.p.d;)|(%ps.zz;)|(%s.top;)" -- Section subelements --> <!ENTITY % i.float "fig|fn" -- Floating elements --> <!ENTITY % fm.d "abstract|preface" -- Front matter --> <!ENTITY % bm.d "glossary|bibliog" -- Back matter --> <!-- Model Groups --> <!ENTITY % m.ph "(#PCDATA|(%p.zz.ph;))*" -- Phrase model --> <!ENTITY % m.p "(#PCDATA|(%p.zz.ph;)|(%ps.zz;))*" -- Paragraph model --> <!ENTITY % m.pseq "(p, ((%s.p.d;)|(%ps.zz;))*)" -- Paragraph sequence --> <!ENTITY % m.top "(th?, p, (%s.zz;)*)" -- Topic model --> <!-- Document Structure --> <!-- ELEMENTS MIN CONTENT (EXCEPTIONS) --> <!ELEMENT %doctype; - - (frontm?, body, appendix?, backm?) +(ix|%i.float;)> <!ELEMENT frontm - O (titlep, (%fm.d;|h1)*, toc?, figlist?)> <!ELEMENT body - O (h0+|h1+)> <!ELEMENT appendix - O (h1+)> <!ELEMENT backm - O ((%bm.d;|h1)*, index?)> <!ELEMENT (toc|figlist|index) -- Table of contents, figure list, -- - O EMPTY -- and index have generated content --> <!-- Title Page Elements --> <!-- ELEMENTS MIN CONTENT (EXCEPTIONS) --> <!ELEMENT titlep - O (title & docnum? & date? & abstract? & (author|%s.zz;)*)> <!ELEMENT (docnum|date|author) - O (#PCDATA) -- Document number, etc. --> <!ELEMENT title - O (tline+) -- Document title --> <!ELEMENT tline O O %m.ph; -- Title line --> <!-- Headed Sections --> <!-- ELEMENTS MIN CONTENT (EXCEPTIONS) --> <!ELEMENT h0 - O (h0t, (%s.zz;)*, h1+) -- Part --> <!ELEMENT (h1|%bm.d;|%fm.d;) - O (h1t, (%s.zz;)*, h2*) -- Chapter --> <!ELEMENT h2 - O (h2t, (%s.zz;)*, h3*) -- Section --> <!ELEMENT h3 - O (h3t, (%s.zz;)*, h4*) -- Subsection --> <!ELEMENT h4 - O (h4t, (%s.zz;)*) -- Sub-subsection --> <!ELEMENT (h0t|h1t|h2t|h3t|h4t) O O %m.ph; -- Headed section titles --> <!-- Topics (Captioned Subsections) --> <!-- ELEMENTS MIN CONTENT (EXCEPTIONS) --> <!ELEMENT top1 - O %m.top; -(top1) -- Topic 1 --> <!ELEMENT top2 - O %m.top; -(top2) -- Topic 2 --> <!ELEMENT top3 - O %m.top; -(top3) -- Topic 3 --> <!ELEMENT top4 - O %m.top; -(top4) -- Topic 4 --> <!ELEMENT th - O %m.ph; -- Topic heading --> <!-- Elements in Sections or Paragraphs --> <!-- ELEMENTS MIN CONTENT (EXCEPTIONS) --> <!ELEMENT address - - (aline+)> <!ELEMENT aline O O %m.ph; -- Address line --> <!ELEMENT artwork - O EMPTY> <!ELEMENT dl - - ((dthd+, ddhd)?, (dt+, dd)*)> <!ELEMENT dt - O %m.ph; -- Definition term --> <!ELEMENT (dthd|ddhd)- O (#PCDATA) -- Headings for dt and dd --> <!ELEMENT dd - O %m.pseq; -- Definition description --> <!ELEMENT gl - - (gt, (gd|gdg))* -- Glossary list --> <!ELEMENT gt - O (#PCDATA) -- Glossary term --> <!ELEMENT gdg - O (gd+) -- Glossary definition group --> <!ELEMENT gd - O %m.pseq; -- Glossary definition --> <!ELEMENT (%ps.ul.d;) - - (li*) -- Unit item lists --> <!ELEMENT li - O %m.pseq; -- List item --> <!ELEMENT lines O O %m.pseq; -- Line elements --> <!ELEMENT (lq|xmp) - - %m.pseq; -(%i.float;) -- Long quote --> <!ELEMENT (%s.p.d;) O O %m.p; -- Paragraphs --> <!-- Table --> <!-- ELEMENTS MIN CONTENT (EXCEPTIONS) --> <!ELEMENT tbl - - (hr*, fr*, r+)> <!ELEMENT hr - O (h+) -- Heading row --> <!ELEMENT fr - O (f+) -- Footing row --> <!ELEMENT r O O (c+) -- Row (body of table) --> <!ELEMENT c O O %m.pseq; -- Cell in body row --> <!ELEMENT (f|h) O O (#PCDATA) -- Cell in fr or hr --> <!-- Phrases --> <!-- ELEMENTS MIN CONTENT (EXCEPTIONS) --> <!ELEMENT (%p.em.ph;) - - %m.ph; -- Emphasized phrases --> <!ELEMENT q - - %m.ph; -- Quotation --> <!ELEMENT (%p.rf.ph;) - O %m.ph; -- Reference phrases --> <!ELEMENT (%p.rf.d;) - O EMPTY -- Generated references --> <!-- Includable Subelements --> <!-- ELEMENTS MIN CONTENT (EXCEPTIONS) --> <!ELEMENT fig - - (figbody, (figcap, figdesc?)?) -(%i.float;)> <!ELEMENT figbody O O %m.pseq; -- Figure body --> <!ELEMENT figcap - O %m.ph; -- Figure caption --> <!ELEMENT figdesc - O %m.pseq; -- Figure description --> <!ELEMENT fn - - %m.pseq; -(%i.float;) -- Footnote --> <!ELEMENT ix - O (#PCDATA) -- Index entry --> <!-- Attribute Definition Lists --> <!-- As this document type definition is intended for basic SGML documents, in which the LINK features are not supported, it was necessary to include link attributes in the definitions. --> <!-- ELEMENTS NAME VALUE DEFAULT --> <!ATTLIST %doctype; security CDATA #IMPLIED status CDATA "" version CDATA #IMPLIED> <!ATTLIST title stitle CDATA #IMPLIED> <!ATTLIST (h0|h1|h2|%bm.d;|%fm.d;) id ID #IMPLIED stitle CDATA #IMPLIED> <!ATTLIST (h3|h4) id ID #IMPLIED> <!ATTLIST artwork sizex NMTOKEN textsize -- Default is current text width in column. -- sizey NUTOKEN #REQUIRED -- (Sizes are specified in the units supported by the application in which this declaration appears; for sizex, the keyword "textsize" can be used to mean "the width at which previous text was set"). --> <!ATTLIST gl compact (compact) #IMPLIED termhi NUMBER 2> <!ATTLIST dl compact (compact) #IMPLIED headhi NUMBER 2 termhi NUMBER 2 tsize NUMBERS 9 -- The number of dt elements per dd must equal the number of numbers specified for tsize (here 1). The number of dthd elements must be the same. --> <!ATTLIST gd source CDATA #IMPLIED> <!ATTLIST (%ps.ul.d;) compact (compact) #IMPLIED> <!ATTLIST li id ID #IMPLIED> <!ATTLIST xmp depth NUTOKEN #IMPLIED keep NMTOKEN all lines (flow|lines) lines> <!ATTLIST tbl cols NUMBERS #REQUIRED -- The number of c elements per r must equal the number of numbers specified for cols (similarly, the number of h per hr and f per fr). --> <!ATTLIST c heading (h) #IMPLIED -- If h is specified, cell is row heading. --> <!ATTLIST (%p.rf.ph;) refid IDREF #CONREF page (yes|no) yes> <!ATTLIST fnref refid IDREF #REQUIRED> <!ATTLIST liref refid IDREF #REQUIRED page (yes|no) yes> <!ATTLIST fig id ID #IMPLIED frame (box|rule|none) none place (top|fixed|bottom) top width (column|page) page align (left|center|right) center lines (flow|lines) lines> <!ATTLIST ix id ID #IMPLIED print CDATA #IMPLIED see CDATA #IMPLIED seeid IDREF #IMPLIED> <!ATTLIST fn id ID #IMPLIED> <!-- Entities for Short References --> <!ENTITY ptag STARTTAG "p" -- Paragraph start-tag --> <!ENTITY qtag STARTTAG "q" -- Quoted phrase start-tag --> <!ENTITY qetag ENDTAG "q" -- Quoted phrase end-tag --> <!ENTITY endtag ENDTAG "" -- Empty end-tag for any element --> <!SHORTREF docmap -- Map for general use -- "&#RS;&#RE;" ptag -- Blank line is <p> -- '"' qtag -- " is <q> --> <!USEMAP docmap %doctype;> <!SHORTREF qmap -- Map for quoted phrases -- '"' qetag -- " is </q> --> <!USEMAP qmap q> <!SHORTREF ixmap -- Map for index entries -- "&#RE;" endtag -- Record end is </> --> <!USEMAP ixmap ix>