<!--
     DTD for the Page Layout Language
     Version: 0.7.1
     Author: G. Wade Johnson
     Copyright 2000, by G. Wade Johnson
       Released under the Perl Artistic License.
-->
<!-- Entities: attribute values -->
<!ENTITY  % fileref     "CDATA">
<!ENTITY  % number      "CDATA">
<!ENTITY  % length      "CDATA">
<!ENTITY  % styleclass  "CDATA">
<!ENTITY  % valignvals  "(top|center|bottom|baseline)">
<!ENTITY  % alignvals   "(left|center|right)">

<!-- Entities: content values -->
<!ENTITY  % rawtext           "#PCDATA">

<!-- Element definitions -->

<!ELEMENT layout   (prelayout?, head?, body)>
<!ATTLIST layout
              class    (html4)    "html4">

<!ELEMENT prelayout   (%rawtext;)>
<!ATTLIST prelayout
              ref      NMTOKEN    #IMPLIED> <!-- ref to a text element -->

<!ELEMENT head     ((text|code)*)>
<!ATTLIST head     >

<!ELEMENT body     ((row+)|(content|header|footer|text|code)+)>
<!ATTLIST body
              cols     %number;   #IMPLIED
              rows     %number;   #IMPLIED>

<!ELEMENT row      ((cell|gutter)*)>
<!ATTLIST row 
              class  %styleclass; #IMPLIED>

<!ELEMENT cell     (header|footer|text|code|content)+>
<!ATTLIST cell
              width    %length;   #IMPLIED
              colspan  %number;   #IMPLIED
              rowspan  %number;   #IMPLIED
              valign %valignvals; #IMPLIED
              align   %alignvals; #IMPLIED
              class  %styleclass; #IMPLIED>

<!ELEMENT gutter   EMPTY>
<!ATTLIST gutter
              width    %number;   #IMPLIED
              rowspan  %number;   #IMPLIED
              class  %styleclass; #IMPLIED>

<!ELEMENT header   EMPTY>
<!ATTLIST header
              ref      NMTOKEN    #IMPLIED>

<!ELEMENT footer   EMPTY>
<!ATTLIST footer
              ref      NMTOKEN    #IMPLIED>

<!ELEMENT code     EMPTY>
<!ATTLIST code
              ref      NMTOKEN    #IMPLIED>

<!ELEMENT text     EMPTY>
<!ATTLIST text
              ref      NMTOKEN    #IMPLIED>


<!ELEMENT content   EMPTY>
<!ATTLIST content
              file     %fileref   #IMPLIED>

