<!-- Typical use: <!DOCTYPE fot PUBLIC "-//James Clark//DTD DSSSL Flow Object Tree//EN" "fot.dtd"> --> <!ENTITY % length-spec "CDATA"> <!-- represents length-spec or #f; #f is represented by empty value --> <!ENTITY % opt-length-spec "CDATA"> <!ENTITY % length "NMTOKEN"> <!ENTITY % enum "NMTOKEN"> <!ENTITY % enum-or-boolean "NMTOKEN"> <!ENTITY % boolean "(true|false)"> <!ENTITY % flow " (paragraph |sequence |display-group |line-field |link |scroll |marginalia |leader |sideline |box |score |table-row |math-sequence |unmath |subscript |superscript |grid |grid-cell |paragraph-break |external-graphic |rule |alignment-point |table-column |character |simple-page-sequence |fraction |script |mark |fence |radical |math-operator |table |table-part |table-cell |multi-mode |page-number |text |sdata |a |define-glyph-subst-table)*"> <!ELEMENT fot %flow;> <!ELEMENT text (#PCDATA)> <!ELEMENT sdata EMPTY> <!ATTLIST sdata name CDATA #REQUIRED text CDATA #REQUIRED> <!ELEMENT paragraph %flow;> <!ELEMENT sequence %flow;> <!ELEMENT display-group %flow;> <!ELEMENT line-field %flow;> <!ELEMENT link %flow;> <!ELEMENT scroll %flow;> <!ELEMENT marginalia %flow;> <!ELEMENT leader %flow;> <!ELEMENT sideline %flow;> <!ELEMENT box %flow;> <!ELEMENT score %flow;> <!ELEMENT table-row %flow;> <!ELEMENT math-sequence %flow;> <!ELEMENT unmath %flow;> <!ELEMENT subscript %flow;> <!ELEMENT superscript %flow;> <!ELEMENT grid %flow;> <!ELEMENT grid-cell %flow;> <!ELEMENT paragraph-break EMPTY> <!ELEMENT external-graphic EMPTY> <!ELEMENT rule EMPTY> <!ELEMENT alignment-point EMPTY> <!ELEMENT table-column EMPTY> <!ELEMENT character EMPTY> <!ELEMENT page-number EMPTY> <!ATTLIST page-number ref CDATA #IMPLIED> <!ELEMENT define-glyph-subst-table (glyph-subst*)> <!ATTLIST define-glyph-subst-table id ID #REQUIRED> <!ELEMENT glyph-subst EMPTY> <!ATTLIST glyph-subst old CDATA #REQUIRED new CDATA #REQUIRED> <!ELEMENT a EMPTY> <!ATTLIST a name CDATA #REQUIRED > <!ELEMENT simple-page-sequence ((simple-page-sequence.right-header |simple-page-sequence.center-header |simple-page-sequence.left-header |simple-page-sequence.right-footer |simple-page-sequence.center-footer |simple-page-sequence.left-footer)*, %flow;) > <!ELEMENT simple-page-sequence.left-header %flow;> <!ELEMENT simple-page-sequence.right-header %flow;> <!ELEMENT simple-page-sequence.center-header %flow;> <!ELEMENT simple-page-sequence.left-footer %flow;> <!ELEMENT simple-page-sequence.right-footer %flow;> <!ELEMENT simple-page-sequence.center-footer %flow;> <!ENTITY % hf " front %boolean; #IMPLIED first %boolean; #IMPLIED "> <!ATTLIST simple-page-sequence.right-header %hf;> <!ATTLIST simple-page-sequence.center-header %hf;> <!ATTLIST simple-page-sequence.left-footer %hf;> <!ATTLIST simple-page-sequence.right-footer %hf;> <!ATTLIST simple-page-sequence.center-footer %hf;> <!ELEMENT table (table.before-row-border, table.after-row-border, table.before-column-border, table.after-column-border, %flow;)> <!ELEMENT table.before-row-border EMPTY> <!ELEMENT table.after-row-border EMPTY> <!ELEMENT table.before-column-border EMPTY> <!ELEMENT table.after-column-border EMPTY> <!ELEMENT table-part (table-part.principal, table-part.header, table-part.footer) > <!ELEMENT table-part.header %flow;> <!ELEMENT table-part.footer %flow;> <!ELEMENT table-part.principal %flow;> <!ELEMENT table-cell (table-cell.before-row-border, table-cell.after-row-border, table-cell.before-column-border, table-cell.after-column-border, %flow;)> <!ELEMENT table-cell.before-row-border EMPTY> <!ELEMENT table-cell.after-row-border EMPTY> <!ELEMENT table-cell.before-column-border EMPTY> <!ELEMENT table-cell.after-column-border EMPTY> <!ELEMENT fraction (fraction.fraction-bar, fraction.numerator, fraction.denominator)> <!ELEMENT fraction.numerator %flow;> <!ELEMENT fraction.denominator %flow;> <!ELEMENT fraction.fraction-bar EMPTY> <!ELEMENT script (script.principal, script.pre-sup, script.pre-sub, script.post-sup, script.post-sub, script.mid-sup, script.mid-sub)> <!ELEMENT script.principal %flow;> <!ELEMENT script.pre-sup %flow;> <!ELEMENT script.pre-sub %flow;> <!ELEMENT script.post-sup %flow;> <!ELEMENT script.post-sub %flow;> <!ELEMENT script.mid-sup %flow;> <!ELEMENT script.mid-sub %flow;> <!ELEMENT mark (mark.principal, mark.over-mark, mark.under-mark)> <!ELEMENT mark.principal %flow;> <!ELEMENT mark.over-mark %flow;> <!ELEMENT mark.under-mark %flow;> <!ELEMENT fence (fence.principal, fence.open, fence.close)> <!ELEMENT fence.principal %flow;> <!ELEMENT fence.open %flow;> <!ELEMENT fence.close %flow;> <!ELEMENT radical (radical.radical?, radical.principal, radical.degree)> <!ELEMENT radical.principal %flow;> <!ELEMENT radical.degree %flow;> <!ELEMENT radical.radical EMPTY> <!ELEMENT math-operator (math-operator.principal, math-operator.operator, math-operator.lower-limit, math-operator.upper-limit)> <!ELEMENT math-operator.principal %flow;> <!ELEMENT math-operator.operator %flow;> <!ELEMENT math-operator.lower-limit %flow;> <!ELEMENT math-operator.upper-limit %flow;> <!ELEMENT multi-mode (multi-mode.mode, multi-mode.mode+)> <!ELEMENT multi-mode.mode %flow;> <!ATTLIST multi-mode.mode name CDATA #IMPLIED desc CDATA #IMPLIED > <!ENTITY % inherited-characteristics " font-size %length; #IMPLIED font-family-name CDATA #IMPLIED font-weight %enum-or-boolean; #IMPLIED font-posture %enum-or-boolean; #IMPLIED start-indent %length-spec; #IMPLIED end-indent %length-spec; #IMPLIED first-line-start-indent %length-spec; #IMPLIED last-line-end-indent %length-spec; #IMPLIED line-spacing %length-spec; #IMPLIED min-pre-line-spacing %opt-length-spec; #IMPLIED min-post-line-spacing %opt-length-spec; #IMPLIED min-leading %opt-length-spec; #IMPLIED field-width %length-spec; #IMPLIED lines %enum; #IMPLIED quadding %enum; #IMPLIED display-alignment %enum; #IMPLIED field-align %enum; #IMPLIED marginalia-side %enum; #IMPLIED principal-mode-simultaneous %boolean; #IMPLIED marginalia-sep %length-spec; #IMPLIED marginalia-keep-with-previous %boolean; #IMPLIED grid-equidistant-rows %boolean; #IMPLIED grid-equidistant-columns %boolean; #IMPLIED color CDATA #IMPLIED background-color CDATA #IMPLIED page-width %length; #IMPLIED page-height %length; #IMPLIED left-margin %length; #IMPLIED right-margin %length; #IMPLIED top-margin %length; #IMPLIED bottom-margin %length; #IMPLIED header-margin %length; #IMPLIED footer-margin %length; #IMPLIED border-present %boolean; #IMPLIED hyphenate %boolean; #IMPLIED kern %boolean; #IMPLIED ligature %boolean; #IMPLIED score-spaces %boolean; #IMPLIED float-out-marginalia %boolean; #IMPLIED float-out-sidelines %boolean; #IMPLIED float-out-line-numbers %boolean; #IMPLIED cell-background %boolean; #IMPLIED span-weak %boolean; #IMPLIED ignore-record-end %boolean; #IMPLIED numbered-lines %boolean; #IMPLIED hanging-punct %boolean; #IMPLIED box-open-end %boolean; #IMPLIED truncate-leader %boolean; #IMPLIED align-leader %boolean; #IMPLIED table-part-omit-middle-header %boolean; #IMPLIED table-part-omit-middle-footer %boolean; #IMPLIED border-omit-at-break %boolean; #IMPLIED line-join %enum; #IMPLIED line-cap %enum; #IMPLIED line-number-side %enum; #IMPLIED kern-mode %enum; #IMPLIED input-whitespace-treatment %enum; #IMPLIED filling-direction %enum; #IMPLIED writing-mode %enum; #IMPLIED last-line-quadding %enum; #IMPLIED math-display-mode %enum; #IMPLIED script-pre-align %enum; #IMPLIED script-post-align %enum; #IMPLIED script-mid-sup-align %enum; #IMPLIED script-mid-sub-align %enum; #IMPLIED numerator-align %enum; #IMPLIED denominator-align %enum; #IMPLIED grid-position-cell-type %enum; #IMPLIED grid-column-alignment %enum; #IMPLIED grid-row-Alignment %enum; #IMPLIED box-type %enum; #IMPLIED glyph-alignment-mode %enum; #IMPLIED box-border-alignment %enum; #IMPLIED cell-row-alignment %enum; #IMPLIED border-alignment %enum; #IMPLIED sideline-side %enum; #IMPLIED hyphenation-keep %enum-or-boolean; #IMPLIED font-structure %enum-or-boolean; #IMPLIED font-proportionate-width %enum-or-boolean; #IMPLIED cell-crossed %enum-or-boolean; #IMPLIED position-point-shift %length-spec; #IMPLIED start-margin %length-spec; #IMPLIED end-margin %length-spec; #IMPLIED sideline-sep %length-spec; #IMPLIED asis-wrap-indent %length-spec; #IMPLIED line-number-sep %length-spec; #IMPLIED last-line-justify-limit %length-spec; #IMPLIED justify-glyph-space-max-add %length-spec; #IMPLIED justify-glyph-space-max-remove %length-spec; #IMPLIED table-corner-radius %length-spec; #IMPLIED box-corner-radius %length-spec; #IMPLIED line-thickness %length; #IMPLIED cell-before-row-margin %length; #IMPLIED cell-after-row-margin %length; #IMPLIED cell-before-column-margin %length; #IMPLIED cell-after-column-margin %length; #IMPLIED line-sep %length; #IMPLIED box-size-before %length; #IMPLIED box-size-after %length; #IMPLIED country NMTOKEN #IMPLIED language NMTOKEN #IMPLIED expand-tabs NMTOKEN #IMPLIED hyphenation-ladder-count NMTOKEN #IMPLIED layer NMTOKEN #IMPLIED background-layer NMTOKEN #IMPLIED border-priority NMTOKEN #IMPLIED line-repeat NMTOKEN #IMPLIED span NMTOKEN #IMPLIED min-leader-repeat NMTOKEN #IMPLIED hyphenation-remain-char-count NMTOKEN #IMPLIED hyphenation-push-char-count NMTOKEN #IMPLIED widow-count NMTOKEN #IMPLIED orphan-count NMTOKEN #IMPLIED background-tile CDATA #IMPLIED line-breaking-method CDATA #IMPLIED line-composition-method CDATA #IMPLIED implicit-bidi-method CDATA #IMPLIED glyph-subst-method CDATA #IMPLIED glyph-reorder-method CDATA #IMPLIED hyphenation-method CDATA #IMPLIED table-auto-width-method CDATA #IMPLIED font-name CDATA #IMPLIED escapement-space-before CDATA #IMPLIED escapement-space-after CDATA #IMPLIED glyph-subst-table NMTOKENS #IMPLIED "> <!ENTITY % display-nic " position-preference %enum-or-boolean; #IMPLIED keep-with-next %boolean; 'false' keep-with-previous %boolean; 'false' may-violate-keep-before %boolean; 'false' may-violate-keep-after %boolean; 'false' keep %enum-or-boolean; #IMPLIED break-before %enum-or-boolean; #IMPLIED break-after %enum-or-boolean; #IMPLIED space-before CDATA #IMPLIED space-before-conditional %boolean; #IMPLIED space-before-priority NMTOKEN #IMPLIED space-after CDATA #IMPLIED space-after-conditional %boolean; #IMPLIED space-after-priority NMTOKEN #IMPLIED "> <!ENTITY % inline-nic " break-before-priority NMTOKEN #IMPLIED break-after-priority NMTOKEN #IMPLIED "> <!ATTLIST sequence %inherited-characteristics;> <!ATTLIST line-field %inherited-characteristics;> <!ATTLIST simple-page-sequence %inherited-characteristics;> <!ATTLIST fraction %inherited-characteristics;> <!ATTLIST fraction.fraction-bar %inherited-characteristics;> <!ATTLIST math-sequence %inherited-characteristics;> <!ATTLIST unmath %inherited-characteristics;> <!ATTLIST subscript %inherited-characteristics;> <!ATTLIST superscript %inherited-characteristics;> <!ATTLIST script %inherited-characteristics;> <!ATTLIST mark %inherited-characteristics;> <!ATTLIST fence %inherited-characteristics;> <!ATTLIST radical %inherited-characteristics;> <!ATTLIST math-operator %inherited-characteristics;> <!ATTLIST sideline %inherited-characteristics;> <!ATTLIST scroll %inherited-characteristics;> <!ATTLIST marginalia %inherited-characteristics;> <!ATTLIST multi-mode %inherited-characteristics;> <!ATTLIST table-row %inherited-characteristics;> <!ATTLIST table.before-row-border %inherited-characteristics;> <!ATTLIST table.after-row-border %inherited-characteristics;> <!ATTLIST table.before-column-border %inherited-characteristics;> <!ATTLIST table.after-column-border %inherited-characteristics;> <!ATTLIST table-cell.before-row-border %inherited-characteristics;> <!ATTLIST table-cell.after-row-border %inherited-characteristics;> <!ATTLIST table-cell.before-column-border %inherited-characteristics;> <!ATTLIST table-cell.after-column-border %inherited-characteristics;> <!ATTLIST table-column column-number NMTOKEN #REQUIRED n-columns-spanned NMTOKEN #IMPLIED width %length-spec; #IMPLIED %inherited-characteristics; > <!ATTLIST table width %length-spec; #IMPLIED minimum-width %boolean; "false" %display-nic; %inherited-characteristics; > <!-- column-number of 0 has a special meaning: it identifies a dummy cell that can be used to fill out the row if it later proves necessary to do so --> <!ATTLIST table-cell column-number NMTOKEN #REQUIRED n-columns-spanned NMTOKEN #IMPLIED n-rows-spanned NMTOKEN #IMPLIED %inherited-characteristics; > <!ATTLIST link destination CDATA #IMPLIED %inherited-characteristics; > <!ATTLIST box display %boolean; "false" %display-nic; %inline-nic; %inherited-characteristics; > <!ATTLIST score type (before|through|after|char) #IMPLIED type.length-spec %length-spec; #IMPLIED char CDATA #IMPLIED %inherited-characteristics; > <!ATTLIST leader length %length-spec; #IMPLIED %inherited-characteristics; %inline-nic; > <!ATTLIST rule orientation (horizontal|vertical|escapement|line-progression) #REQUIRED length %length-spec; #IMPLIED %display-nic; %inline-nic; %inherited-characteristics; > <!ATTLIST external-graphic display %boolean; "false" scale %enum; #IMPLIED scale-x NMTOKEN #IMPLIED scale-y NMTOKEN #IMPLIED max-width %length-spec; #IMPLIED max-height %length-spec; #IMPLIED entity-system-id CDATA #REQUIRED notation-system-id CDATA #REQUIRED escapement-direction %enum; #IMPLIED position-point-x %length-spec; #IMPLIED position-point-y %length-spec; #IMPLIED %inline-nic; %display-nic; %inherited-characteristics; > <!ATTLIST display-group coalesce-id CDATA #IMPLIED %display-nic; %inherited-characteristics; > <!ATTLIST paragraph %display-nic; %inherited-characteristics; > <!ATTLIST paragraph-break %display-nic; %inherited-characteristics; > <!ATTLIST table-part %display-nic; %inherited-characteristics; > <!ENTITY % character-c " char CDATA #IMPLIED glyph-id CDATA #IMPLIED drop-after-line-break %boolean; #IMPLIED drop-unless-before-line-break %boolean; #IMPLIED punct %boolean; #IMPLIED space %boolean; #IMPLIED input-tab %boolean; #IMPLIED input-whitespace %boolean; #IMPLIED record-end %boolean; #IMPLIED break-before-priority NMTOKEN #IMPLIED break-after-priority NMTOKEN #IMPLIED math-font-posture %enum-or-boolean; #IMPLIED math-class %enum; #IMPLIED script CDATA #IMPLIED %inherited-characteristics;"> <!ATTLIST character %character-c;> <!ATTLIST radical.radical %character-c;> <!ATTLIST grid grid-n-columns NMTOKEN #IMPLIED grid-n-rows NMTOKEN #IMPLIED %inherited-characteristics; > <!ATTLIST grid-cell column-number NMTOKEN #IMPLIED row-number NMTOKEN #IMPLIED %inherited-characteristics; >