<?xml version="1.0" encoding="UTF-8"?>
<!-- ============================================================= -->
<!--  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;                                            >


