Doctype Descriptor DTD

The DTD format for /META-INF/doctype.xml files.
<?xml version="1.0" encoding="UTF-8"?>
<!-- =============================================================== -->
<!-- Titania Delivery Document Type Descriptor                       -->
<!-- Describes a document type's elements for processing by Titania  -->
<!-- Delivery. Accessed via the public identifier                    -->
<!--    <!DOCTYPE doctype PUBLIC                                     -->
<!--      "-//Titania//DTD Document Type Descriptor 1.0//EN"         -->
<!--      "doctype.dtd">                                             -->
<!-- =============================================================== -->
<!ENTITY % heading "title?, documentation?">
<!ENTITY % common-atts "match CDATA #REQUIRED html-element NMTOKEN #IMPLIED">
<!ENTITY % types
    "inline |
    titled-block |
    title |
    division |
    para |
    preformatted |
    monospace |
    ordered-list |
    unordered-list |
    list-item |
    definition-list |
    dlentry |
    dt |
    dd |
    bold |
    italic |
    underline |
    emphasis |
    indexterm |
    no-search |
    hidden |
    blockquote |
    strikethrough |
    superscript |
    subscript"
>
<!ENTITY % type "type (%types;) #IMPLIED">

<!ELEMENT doctype
    ((%heading;),
    (links |
    graphics |
    specials |
    profiling-atts |
    comment-element)*)
>
<!ATTLIST doctype
    id CDATA #REQUIRED
    id-attr NMTOKEN #IMPLIED
    lang-attr NMTOKEN #IMPLIED
>

<!ELEMENT title (#PCDATA)*>
<!ELEMENT documentation (#PCDATA)*>

<!ELEMENT specials ((%heading;), special*)>
<!ATTLIST specials %type;>
<!ELEMENT special EMPTY>
<!ATTLIST special
    %common-atts;
    %type;
>

<!ELEMENT links ((%heading;), (idref | external | fileref)*)>
<!ELEMENT idref EMPTY>
<!ATTLIST idref
    %common-atts;
    linkend NMTOKEN #REQUIRED
>
<!ELEMENT external EMPTY>
<!ATTLIST external
    %common-atts;
    href NMTOKEN #REQUIRED
>
<!ELEMENT fileref EMPTY>
<!ATTLIST fileref
    %common-atts;
    href NMTOKEN #REQUIRED
>

<!ELEMENT graphics ((%heading;), graphic*)>
<!ELEMENT graphic EMPTY>
<!ATTLIST graphic
    %common-atts;
    src NMTOKEN #REQUIRED
>

<!ELEMENT profiling-atts ((%heading;), profiling-att*)>
<!ELEMENT profiling-att EMPTY>
<!ATTLIST  profiling-att
    name NMTOKEN #REQUIRED
    delim CDATA ' '
>

<!ELEMENT comment-element EMPTY>
<!ATTLIST comment-element
    name NMTOKEN #REQUIRED
    dispositionAttr NMTOKEN 'disposition'
    authorAttr NMTOKEN 'author'
    timestampAttr NMTOKEN 'time'
    dataElement NMTOKEN #IMPLIED
    dataKeyAttr NMTOKEN 'name'
    dataValueAttr NMTOKEN 'value'
    wrapReplies (true|false) 'true'
>