| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| * Copyright 2004 The Apache Software Foundation. |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); |
| * you may not use this file except in compliance with the License. |
| * You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| --> |
| <!-- ============================================================= --> |
| <!-- MODULE: spec DTD --> |
| <!-- VERSION: 1.0 --> |
| <!-- DATE: October 18, 2000 --> |
| |
| |
| <!-- ============================================================= --> |
| <!-- ISO STANDARD SPECIAL CHARACTER SETS --> |
| <!-- ============================================================= --> |
| <!-- |
| <!ENTITY % isolat1 PUBLIC |
| "ISO 8879-1986//ENTITIES Added Latin 1//EN" |
| "entities/ISOlat1.pen" |
| > |
| |
| <!ENTITY % isonum PUBLIC |
| "ISO 8879-1986//ENTITIES Numeric and Special Graphic//EN" |
| "entities/ISOnum.pen" |
| > |
| |
| <!ENTITY % isopub PUBLIC |
| "ISO 8879-1986//ENTITIES Publishing//EN" |
| "entities/ISOpub.pen" |
| > |
| |
| <!ENTITY % isotech PUBLIC |
| "ISO 8879-1986//ENTITIES General Technical//EN" |
| "entities/ISOtech.pen" |
| > |
| |
| %isolat1; %isonum; %isopub; %isotech; |
| --> |
| |
| <!-- ============================================================= --> |
| <!-- parameter entities for content models --> |
| <!-- ============================================================= --> |
| |
| |
| <!-- list elements --> |
| <!ENTITY % lists "itemizedlist | orderedlist | variablelist" > |
| |
| |
| <!-- linespecific elements --> |
| <!-- elements where line endings and whitespace |
| are significant --> |
| <!ENTITY % linespecific |
| "literallayout | programlisting" > |
| |
| |
| <!-- phrase-level elements --> |
| <!-- elements allowed at the same level as text --> |
| <!ENTITY % phraselevel "citation | emphasis | inlinegraphic | link | plink | |
| subscript | superscript | ulink | termref" > |
| |
| |
| <!-- paragraph-level elements --> |
| <!-- elements (including paragraphs) allowed at |
| the level of paragraphs --> |
| <!ENTITY % paralevel "%linespecific; | %lists; | note | para | issue | |
| table | figure | graphic" > |
| |
| |
| <!-- ============================================================= --> |
| <!-- parameter entities for attributes --> |
| <!-- ============================================================= --> |
| |
| |
| <!-- common attributes --> |
| <!ENTITY % common.atts |
| "id ID #IMPLIED |
| link-url CDATA #IMPLIED" > |
| |
| <!-- graphic-related attributes --> |
| <!ENTITY % graphic.atts |
| "fileref CDATA #IMPLIED |
| alt CDATA #IMPLIED |
| srccredit CDATA #IMPLIED |
| width NMTOKEN #IMPLIED |
| depth NMTOKEN #IMPLIED |
| scale NMTOKEN #IMPLIED |
| scalefit NMTOKEN #IMPLIED" > |
| |
| <!-- ============================================================= --> |
| <!-- external modules --> |
| <!-- ============================================================= --> |
| |
| <!-- |
| <!ENTITY % table.ent SYSTEM "table.ent" > |
| %table.ent; |
| --> |
| |
| <!-- ============================================================= --> |
| <!-- element definitions --> |
| <!-- ============================================================= --> |
| |
| |
| <!-- specification --> |
| <!ELEMENT spec (title, frontmatter, introduction, requirements, model, sect1+, |
| appendix*, bibliography?) > |
| |
| <!ATTLIST spec |
| %common.atts; > |
| |
| <!ELEMENT frontmatter (pubdate, copyright, author*, abstract?) > |
| |
| <!-- title --> |
| <!ELEMENT title (#PCDATA | %phraselevel;)* > |
| <!ATTLIST title |
| %common.atts; > |
| |
| |
| <!-- issue --> |
| <!ELEMENT issue (#PCDATA | %phraselevel;)* > |
| <!ATTLIST issue |
| %common.atts; > |
| |
| |
| <!-- publication date --> |
| <!-- publication date and, possibly, time --> |
| <!ELEMENT pubdate (#PCDATA) > |
| <!ATTLIST pubdate |
| %common.atts; > |
| |
| |
| <!-- copyright statement --> |
| <!ELEMENT copyright (#PCDATA) > |
| <!-- id unique identifier --> |
| <!ATTLIST copyright |
| %common.atts; > |
| |
| |
| <!-- author --> |
| <!ELEMENT author (firstname, surname, jobtitle?, orgname?, |
| address?) > |
| <!-- id unique identifier --> |
| <!ATTLIST author |
| %common.atts; > |
| |
| |
| <!-- abstract --> |
| <!ELEMENT abstract (para+) > |
| <!-- id unique identifier --> |
| <!ATTLIST abstract |
| %common.atts; > |
| |
| <!ELEMENT introduction (title, (((%paralevel;)+, sect2*) | sect2+)) > |
| <!-- id unique identifier --> |
| <!ATTLIST introduction |
| %common.atts; > |
| |
| <!ELEMENT requirements (title, (((%paralevel;)+, sect2*) | sect2+)) > |
| <!-- id unique identifier --> |
| <!ATTLIST requirements |
| %common.atts; > |
| |
| <!ELEMENT model (title, (((%paralevel;)+, patterns) | sect2+)) > |
| <!-- id unique identifier --> |
| <!ATTLIST model |
| %common.atts; > |
| |
| <!ELEMENT patterns (pattern+) > |
| <!-- id unique identifier --> |
| <!ATTLIST patterns |
| %common.atts; |
| module CDATA #IMPLIED |
| > |
| |
| <!ELEMENT pattern (pattern-name, potential-alternate-name?, intent, responsibilities, thread-safety, notes?) > |
| <!-- id unique identifier --> |
| <!ATTLIST pattern |
| %common.atts; |
| > |
| <!ELEMENT pattern-name (#PCDATA | %phraselevel;)* > |
| <!-- id unique identifier --> |
| <!ATTLIST pattern-name |
| %common.atts; > |
| |
| <!ELEMENT potential-alternate-name (#PCDATA | %phraselevel;)* > |
| <!-- id unique identifier --> |
| <!ATTLIST potential-alternate-name |
| %common.atts; > |
| |
| <!ELEMENT intent (#PCDATA | %phraselevel;)* > |
| <!-- id unique identifier --> |
| <!ATTLIST intent |
| %common.atts; > |
| |
| <!ELEMENT responsibilities (#PCDATA | %phraselevel;)* > |
| <!-- id unique identifier --> |
| <!ATTLIST responsibilities |
| %common.atts; > |
| |
| <!ELEMENT thread-safety (#PCDATA | %phraselevel;)* > |
| <!-- id unique identifier --> |
| <!ATTLIST thread-safety |
| %common.atts; > |
| |
| <!ELEMENT notes (#PCDATA | %phraselevel;)* > |
| <!-- id unique identifier --> |
| <!ATTLIST notes |
| %common.atts; > |
| |
| <!-- id unique identifier --> |
| <!ATTLIST sect1 |
| %common.atts; > |
| |
| <!-- section 1 --> |
| <!ELEMENT sect1 (title, (((%paralevel;)+, sect2*) | sect2+)) > |
| <!-- section 2 --> |
| <!ELEMENT sect2 (title, (((%paralevel;)+, sect3*) | sect3+)) > |
| <!-- id unique identifier --> |
| <!ATTLIST sect2 |
| %common.atts; > |
| |
| |
| <!-- section 3 --> |
| <!ELEMENT sect3 (title, (((%paralevel;)+, sect4*) | sect4+)) > |
| <!-- id unique identifier --> |
| <!ATTLIST sect3 |
| %common.atts; > |
| |
| |
| <!-- section 4 --> |
| <!ELEMENT sect4 (title, (%paralevel;)+) > |
| <!-- id unique identifier --> |
| <!ATTLIST sect4 |
| %common.atts; > |
| |
| |
| <!-- appendix --> |
| <!ELEMENT appendix (title, (((%paralevel;)+, sect1*) | sect1+)) > |
| <!-- id unique identifier --> |
| <!ATTLIST appendix |
| %common.atts; > |
| |
| |
| <!-- bibliography --> |
| <!ELEMENT bibliography (title, biblioitem+) > |
| <!-- id unique identifier --> |
| <!ATTLIST bibliography |
| %common.atts; > |
| |
| |
| <!-- bibliography item --> |
| <!ELEMENT biblioitem (designator, biblioentry) > |
| <!-- id unique identifier --> |
| <!ATTLIST biblioitem |
| %common.atts; > |
| |
| |
| <!-- bibliography item designator --> |
| <!-- designator contains whatever designator the |
| author uses to identify publications listed in |
| the bibliography (e.g., [lab 87]). the |
| stylesheet generates the square "[]" brackets |
| fore & aft. --> |
| <!ELEMENT designator (#PCDATA) > |
| <!-- id unique identifier --> |
| <!ATTLIST designator |
| %common.atts; > |
| |
| |
| <!-- bibliography entry --> |
| <!ELEMENT biblioentry (#PCDATA | %phraselevel;)* > |
| <!-- id unique identifier --> |
| <!ATTLIST biblioentry |
| %common.atts; > |
| |
| |
| <!-- ============================================================= --> |
| <!-- author-related elements --> |
| <!-- ============================================================= --> |
| |
| |
| <!-- first name --> |
| <!ELEMENT firstname (#PCDATA) > |
| <!-- id unique identifier --> |
| <!ATTLIST firstname |
| %common.atts; > |
| |
| |
| <!-- surname --> |
| <!ELEMENT surname (#PCDATA) > |
| <!-- id unique identifier --> |
| <!ATTLIST surname |
| %common.atts; > |
| |
| |
| <!-- job title --> |
| <!ELEMENT jobtitle (#PCDATA) > |
| <!-- id unique identifier --> |
| <!ATTLIST jobtitle |
| %common.atts; > |
| |
| |
| <!-- organization name --> |
| <!ELEMENT orgname (#PCDATA) > |
| <!-- id unique identifier --> |
| <!ATTLIST orgname |
| %common.atts; > |
| |
| |
| <!-- address --> |
| <!ELEMENT address (street?, pob?, city?, state?, postcode?, |
| country?, phone?, fax?, email?) > |
| <!-- id unique identifier --> |
| <!ATTLIST address |
| %common.atts; > |
| |
| |
| <!-- ============================================================= --> |
| <!-- address elements --> |
| <!-- ============================================================= --> |
| |
| |
| <!-- street address --> |
| <!ELEMENT street (#PCDATA) > |
| <!-- id unique identifier --> |
| <!ATTLIST street |
| %common.atts; > |
| |
| |
| <!-- post office box --> |
| <!ELEMENT pob (#PCDATA) > |
| <!-- id unique identifier --> |
| <!ATTLIST pob |
| %common.atts; > |
| |
| |
| <!-- postcode --> |
| <!ELEMENT postcode (#PCDATA) > |
| <!-- id unique identifier --> |
| <!ATTLIST postcode |
| %common.atts; > |
| |
| |
| <!-- city --> |
| <!ELEMENT city (#PCDATA) > |
| <!-- id unique identifier --> |
| <!ATTLIST city |
| %common.atts; > |
| |
| |
| <!-- state --> |
| <!ELEMENT state (#PCDATA) > |
| <!-- id unique identifier --> |
| <!ATTLIST state |
| %common.atts; > |
| |
| |
| <!-- country --> |
| <!ELEMENT country (#PCDATA) > |
| <!-- id unique identifier --> |
| <!ATTLIST country |
| %common.atts; > |
| |
| |
| <!-- phone number --> |
| <!ELEMENT phone (#PCDATA) > |
| <!-- id unique identifier --> |
| <!ATTLIST phone |
| %common.atts; > |
| |
| |
| <!-- fax number --> |
| <!ELEMENT fax (#PCDATA) > |
| <!-- id unique identifier --> |
| <!ATTLIST fax |
| %common.atts; > |
| |
| |
| <!-- email address --> |
| <!ELEMENT email (#PCDATA) > |
| <!-- id unique identifier --> |
| <!ATTLIST email |
| %common.atts; > |
| |
| |
| <!-- ============================================================= --> |
| <!-- paragraph-level elements --> |
| <!-- ============================================================= --> |
| |
| |
| <!-- paragraph --> |
| <!ELEMENT para (#PCDATA | %phraselevel;)* > |
| <!-- id unique identifier --> |
| <!ATTLIST para |
| %common.atts; > |
| |
| |
| <!-- note --> |
| <!ELEMENT note (%paralevel;)+ > |
| <!-- id unique identifier --> |
| <!ATTLIST note |
| %common.atts; > |
| |
| |
| <!-- itemized list --> |
| <!ELEMENT itemizedlist (listitem+) > |
| <!-- id unique identifier --> |
| <!ATTLIST itemizedlist |
| %common.atts; > |
| |
| |
| <!-- ordered list --> |
| <!ELEMENT orderedlist (listitem+) > |
| <!-- id unique identifier --> |
| <!ATTLIST orderedlist |
| %common.atts; > |
| |
| |
| <!-- variable list --> |
| <!ELEMENT variablelist (varlistentry+) > |
| <!-- id unique identifier --> |
| <!ATTLIST variablelist |
| %common.atts; > |
| |
| |
| <!-- list item --> |
| <!ELEMENT listitem (#PCDATA | %phraselevel; | %paralevel;)* > |
| <!-- id unique identifier --> |
| <!ATTLIST listitem |
| %common.atts; > |
| |
| |
| <!-- variable list entry --> |
| <!ELEMENT varlistentry (term+, listitem) > |
| <!-- id unique identifier --> |
| <!ATTLIST varlistentry |
| %common.atts; > |
| |
| |
| <!-- term --> |
| <!ELEMENT term (#PCDATA | %phraselevel;)* > |
| <!-- id unique identifier --> |
| <!ATTLIST term |
| %common.atts; > |
| |
| <!-- termref --> |
| <!ELEMENT termref (#PCDATA | %phraselevel;)* > |
| <!-- id unique identifier --> |
| <!ATTLIST termref |
| %common.atts; > |
| |
| <!-- literal layout --> |
| <!ELEMENT literallayout |
| (#PCDATA | %phraselevel;)* > |
| <!-- xml:space whitespace handling |
| id unique identifier --> |
| <!ATTLIST literallayout |
| %common.atts; > |
| |
| |
| <!-- program listing --> |
| <!ELEMENT programlisting |
| (#PCDATA | %phraselevel;)* > |
| <!-- xml:space whitespace handling |
| id unique identifier --> |
| <!ATTLIST programlisting |
| %common.atts; > |
| |
| |
| <!-- figure --> |
| <!ELEMENT figure (title, graphic) > |
| <!-- id unique identifier --> |
| <!ATTLIST figure |
| %common.atts; > |
| |
| |
| <!-- graphic --> |
| <!ELEMENT graphic EMPTY > |
| <!-- align alignment of graphic image. values are: |
| left left aligned |
| right right aligned |
| center centered |
| fileref path to external file |
| alt alternate text |
| srccredit source of graphic |
| width width of area in which to fit graphic |
| depth depth of area in which to fit graphic |
| scale percentage scaling factor |
| scalefit scale to fit width and/or depth |
| id unique identifier --> |
| <!ATTLIST graphic |
| align (left |right |center) #IMPLIED |
| %graphic.atts; |
| %common.atts; > |
| |
| <!-- inline graphic --> |
| <!ELEMENT inlinegraphic |
| EMPTY > |
| <!-- fileref path to external file |
| alt alternate text |
| srccredit source of graphic |
| width width of area in which to fit graphic |
| depth depth of area in which to fit graphic |
| scale percentage scaling factor |
| scalefit scale to fit width and/or depth |
| id unique identifier --> |
| <!ATTLIST inlinegraphic |
| %graphic.atts; |
| %common.atts; > |
| |
| <!-- ============================================================= --> |
| <!-- text-level elements --> |
| <!-- ============================================================= --> |
| |
| |
| <!-- bibliographic citation --> |
| <!-- a <citation> appears in the body of the |
| article, and it refers through its |
| "linkend" attribute to the id of the |
| relevant bibliography item. |
| the <citation> receives the same |
| formatting as the <designator> element |
| within the <biblioitem> being referenced. |
| for example, when for the bibitem |
| <biblioitem id="bib1"><designator>lab |
| 87</designator>...</biblioitem> is |
| formatted as "[lab 87]", the bibliographic |
| citation <citation linkend="bib1">lab |
| 87</citation> also formats as "[lab 87]". --> |
| <!ELEMENT citation (#PCDATA | emphasis | inlinegraphic | |
| subscript | superscript)* > |
| <!-- linkend id of referenced bibliography entry |
| id unique identifier --> |
| <!ATTLIST citation |
| linkend IDREF #REQUIRED |
| %common.atts; > |
| |
| |
| <!-- emphasis --> |
| <!ELEMENT emphasis (#PCDATA | %phraselevel;)* > |
| <!-- id unique identifier --> |
| <!ATTLIST emphasis |
| %common.atts; > |
| |
| |
| <!-- subscript --> |
| <!ELEMENT subscript (#PCDATA | emphasis | subscript | |
| superscript)* > |
| <!-- id unique identifier --> |
| <!ATTLIST subscript |
| %common.atts; > |
| |
| |
| <!-- superscript --> |
| <!ELEMENT superscript (#PCDATA | emphasis | subscript | |
| superscript)* > |
| <!-- id unique identifier --> |
| <!ATTLIST superscript |
| %common.atts; > |
| |
| |
| <!-- link --> |
| <!ELEMENT link (#PCDATA) > |
| <!-- linkend id of referenced element |
| id unique identifier --> |
| <!ATTLIST link |
| linkend IDREF #REQUIRED |
| %common.atts; > |
| |
| <!-- package link (for {@link org.xml.trax.Processor} type links, for javadocs. --> |
| <!ELEMENT plink (#PCDATA) > |
| <!ATTLIST plink |
| %common.atts; > |
| |
| <!-- ulink (external link) --> |
| <!ELEMENT ulink (#PCDATA) > |
| <!-- url uniform resource locator; the target of the |
| ulink |
| id unique identifier --> |
| <!ATTLIST ulink |
| url CDATA #REQUIRED |
| %common.atts; > |
| |
| |