<schema
  xmlns='http://www.w3.org/2001/XMLSchema'
  targetNamespace='http://www.w3.org/1999/XSL/Format'
  xmlns:fo='http://www.w3.org/1999/XSL/Format'>

 <annotation>
  <documentation>
    This schema of XSL FO language was generated from
    fo.dtd
      Nikolai Grigoriev grig@renderx.com
      (c) RenderX, 1999-2002.

    by dtd2xsd.pl (c) Mary Holstege, Yuichi Koike, Dan Connolly, Bert Bos bert@w3.org
    and adopted for using in colorer library as source for HRC syntax generation
    by Cail Lomecb (cail@nm.ru)
  </documentation>
 </annotation>

  <attributeGroup name='accessibility-properties'>
   <attribute name='source-document' type='string' use='optional'/>
   <attribute name='role' type='string' use='optional'/>
  </attributeGroup>

  <attributeGroup name='relative-position-properties'>
   <attribute name='relative-position' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='auto'/>
      <enumeration value='static'/>
      <enumeration value='relative'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='position' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='static'/>
      <enumeration value='relative'/>
      <enumeration value='absolute'/>
      <enumeration value='fixed'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='top' type='string' use='optional'/>
   <attribute name='right' type='string' use='optional'/>
   <attribute name='bottom' type='string' use='optional'/>
   <attribute name='left' type='string' use='optional'/>
  </attributeGroup>

  <attributeGroup name='absolute-or-relative-position-properties'>
   <attribute name='absolute-position' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='auto'/>
      <enumeration value='absolute'/>
      <enumeration value='fixed'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attributeGroup ref='fo:relative-position-properties'/>
  </attributeGroup>

  <attributeGroup name='aural-properties'>
   <attribute name='azimuth' type='string' use='optional'/>
   <attribute name='cue' type='string' use='optional'/>
   <attribute name='cue-after' type='string' use='optional'/>
   <attribute name='cue-before' type='string' use='optional'/>
   <attribute name='elevation' type='string' use='optional'/>
   <attribute name='pause' type='string' use='optional'/>
   <attribute name='pause-after' type='string' use='optional'/>
   <attribute name='pause-before' type='string' use='optional'/>
   <attribute name='pitch' type='string' use='optional'/>
   <attribute name='pitch-range' type='string' use='optional'/>
   <attribute name='play-during' type='string' use='optional'/>
   <attribute name='richness' type='string' use='optional'/>
   <attribute name='speak' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='normal'/>
      <enumeration value='none'/>
      <enumeration value='spell-out'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='speak-header' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='once'/>
      <enumeration value='always'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='speak-numeral' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='digits'/>
      <enumeration value='continuous'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='speak-punctuation' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='code'/>
      <enumeration value='none'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='speech-rate' type='string' use='optional'/>
   <attribute name='stress' type='string' use='optional'/>
   <attribute name='voice-family' type='string' use='optional'/>
   <attribute name='volume' type='string' use='optional'/>
  </attributeGroup>

  <attributeGroup name='border-padding-background-properties'>
   <attribute name='background' type='string' use='optional'/>
   <attribute name='background-attachment' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='scroll'/>
      <enumeration value='fixed'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='background-color' type='string' use='optional'/>
   <attribute name='background-image' type='string' use='optional'/>
   <attribute name='background-position' type='string' use='optional'/>
   <attribute name='background-position-vertical' type='string' use='optional'/>
   <attribute name='background-position-horizontal' type='string' use='optional'/>
   <attribute name='background-repeat' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='repeat'/>
      <enumeration value='repeat-x'/>
      <enumeration value='repeat-y'/>
      <enumeration value='no-repeat'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='border' type='string' use='optional'/>
   <attribute name='border-after-color' type='string' use='optional'/>
   <attribute name='border-after-style' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='none'/>
      <enumeration value='hidden'/>
      <enumeration value='dotted'/>
      <enumeration value='dashed'/>
      <enumeration value='solid'/>
      <enumeration value='double'/>
      <enumeration value='groove'/>
      <enumeration value='ridge'/>
      <enumeration value='inset'/>
      <enumeration value='outset'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='border-after-width' type='string' use='optional'/>
   <attribute name='border-after-width.length' type='string' use='optional'/>
   <attribute name='border-after-width.conditionality' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='discard'/>
      <enumeration value='retain'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='border-before-color' type='string' use='optional'/>
   <attribute name='border-before-style' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='none'/>
      <enumeration value='hidden'/>
      <enumeration value='dotted'/>
      <enumeration value='dashed'/>
      <enumeration value='solid'/>
      <enumeration value='double'/>
      <enumeration value='groove'/>
      <enumeration value='ridge'/>
      <enumeration value='inset'/>
      <enumeration value='outset'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='border-before-width' type='string' use='optional'/>
   <attribute name='border-before-width.length' type='string' use='optional'/>
   <attribute name='border-before-width.conditionality' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='discard'/>
      <enumeration value='retain'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='border-bottom' type='string' use='optional'/>
   <attribute name='border-bottom-color' type='string' use='optional'/>
   <attribute name='border-bottom-style' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='none'/>
      <enumeration value='hidden'/>
      <enumeration value='dotted'/>
      <enumeration value='dashed'/>
      <enumeration value='solid'/>
      <enumeration value='double'/>
      <enumeration value='groove'/>
      <enumeration value='ridge'/>
      <enumeration value='inset'/>
      <enumeration value='outset'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='border-bottom-width' type='string' use='optional'/>
   <attribute name='border-bottom-width.length' type='string' use='optional'/>
   <attribute name='border-bottom-width.conditionality' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='discard'/>
      <enumeration value='retain'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='border-color' type='string' use='optional'/>
   <attribute name='border-end-color' type='string' use='optional'/>
   <attribute name='border-end-style' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='none'/>
      <enumeration value='hidden'/>
      <enumeration value='dotted'/>
      <enumeration value='dashed'/>
      <enumeration value='solid'/>
      <enumeration value='double'/>
      <enumeration value='groove'/>
      <enumeration value='ridge'/>
      <enumeration value='inset'/>
      <enumeration value='outset'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='border-end-width' type='string' use='optional'/>
   <attribute name='border-end-width.length' type='string' use='optional'/>
   <attribute name='border-end-width.conditionality' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='discard'/>
      <enumeration value='retain'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='border-left' type='string' use='optional'/>
   <attribute name='border-left-color' type='string' use='optional'/>
   <attribute name='border-left-style' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='none'/>
      <enumeration value='hidden'/>
      <enumeration value='dotted'/>
      <enumeration value='dashed'/>
      <enumeration value='solid'/>
      <enumeration value='double'/>
      <enumeration value='groove'/>
      <enumeration value='ridge'/>
      <enumeration value='inset'/>
      <enumeration value='outset'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='border-left-width' type='string' use='optional'/>
   <attribute name='border-left-width.length' type='string' use='optional'/>
   <attribute name='border-left-width.conditionality' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='discard'/>
      <enumeration value='retain'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='border-right' type='string' use='optional'/>
   <attribute name='border-right-color' type='string' use='optional'/>
   <attribute name='border-right-style' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='none'/>
      <enumeration value='hidden'/>
      <enumeration value='dotted'/>
      <enumeration value='dashed'/>
      <enumeration value='solid'/>
      <enumeration value='double'/>
      <enumeration value='groove'/>
      <enumeration value='ridge'/>
      <enumeration value='inset'/>
      <enumeration value='outset'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='border-right-width' type='string' use='optional'/>
   <attribute name='border-right-width.length' type='string' use='optional'/>
   <attribute name='border-right-width.conditionality' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='discard'/>
      <enumeration value='retain'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='border-start-color' type='string' use='optional'/>
   <attribute name='border-start-style' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='none'/>
      <enumeration value='hidden'/>
      <enumeration value='dotted'/>
      <enumeration value='dashed'/>
      <enumeration value='solid'/>
      <enumeration value='double'/>
      <enumeration value='groove'/>
      <enumeration value='ridge'/>
      <enumeration value='inset'/>
      <enumeration value='outset'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='border-start-width' type='string' use='optional'/>
   <attribute name='border-start-width.length' type='string' use='optional'/>
   <attribute name='border-start-width.conditionality' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='discard'/>
      <enumeration value='retain'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='border-style' type='string' use='optional'/>
   <attribute name='border-top' type='string' use='optional'/>
   <attribute name='border-top-color' type='string' use='optional'/>
   <attribute name='border-top-style' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='none'/>
      <enumeration value='hidden'/>
      <enumeration value='dotted'/>
      <enumeration value='dashed'/>
      <enumeration value='solid'/>
      <enumeration value='double'/>
      <enumeration value='groove'/>
      <enumeration value='ridge'/>
      <enumeration value='inset'/>
      <enumeration value='outset'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='border-top-width' type='string' use='optional'/>
   <attribute name='border-top-width.length' type='string' use='optional'/>
   <attribute name='border-top-width.conditionality' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='discard'/>
      <enumeration value='retain'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='border-width' type='string' use='optional'/>
   <attribute name='padding' type='string' use='optional'/>
   <attribute name='padding-after' type='string' use='optional'/>
   <attribute name='padding-after.length' type='string' use='optional'/>
   <attribute name='padding-after.conditionality' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='discard'/>
      <enumeration value='retain'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='padding-before' type='string' use='optional'/>
   <attribute name='padding-before.length' type='string' use='optional'/>
   <attribute name='padding-before.conditionality' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='discard'/>
      <enumeration value='retain'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='padding-bottom' type='string' use='optional'/>
   <attribute name='padding-bottom.length' type='string' use='optional'/>
   <attribute name='padding-bottom.conditionality' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='discard'/>
      <enumeration value='retain'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='padding-end' type='string' use='optional'/>
   <attribute name='padding-end.length' type='string' use='optional'/>
   <attribute name='padding-end.conditionality' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='discard'/>
      <enumeration value='retain'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='padding-left' type='string' use='optional'/>
   <attribute name='padding-left.length' type='string' use='optional'/>
   <attribute name='padding-left.conditionality' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='discard'/>
      <enumeration value='retain'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='padding-right' type='string' use='optional'/>
   <attribute name='padding-right.length' type='string' use='optional'/>
   <attribute name='padding-right.conditionality' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='discard'/>
      <enumeration value='retain'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='padding-start' type='string' use='optional'/>
   <attribute name='padding-start.length' type='string' use='optional'/>
   <attribute name='padding-start.conditionality' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='discard'/>
      <enumeration value='retain'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='padding-top' type='string' use='optional'/>
   <attribute name='padding-top.length' type='string' use='optional'/>
   <attribute name='padding-top.conditionality' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='discard'/>
      <enumeration value='retain'/>
     </restriction>
    </simpleType>
   </attribute>
  </attributeGroup>

  <attributeGroup name='border-precedence-properties'>
   <attribute name='border-after-precedence' type='string' use='optional'/>
   <attribute name='border-before-precedence' type='string' use='optional'/>
   <attribute name='border-end-precedence' type='string' use='optional'/>
   <attribute name='border-start-precedence' type='string' use='optional'/>
  </attributeGroup>

  <attributeGroup name='box-size-properties'>
   <attribute name='height' type='string' use='optional'/>
   <attribute name='min-height' type='string' use='optional'/>
   <attribute name='max-height' type='string' use='optional'/>
   <attribute name='width' type='string' use='optional'/>
   <attribute name='min-width' type='string' use='optional'/>
   <attribute name='max-width' type='string' use='optional'/>
   <attribute name='inline-progression-dimension' type='string' use='optional'/>
   <attribute name='inline-progression-dimension.minimum' type='string' use='optional'/>
   <attribute name='inline-progression-dimension.optimum' type='string' use='optional'/>
   <attribute name='inline-progression-dimension.maximum' type='string' use='optional'/>
   <attribute name='block-progression-dimension' type='string' use='optional'/>
   <attribute name='block-progression-dimension.minimum' type='string' use='optional'/>
   <attribute name='block-progression-dimension.optimum' type='string' use='optional'/>
   <attribute name='block-progression-dimension.maximum' type='string' use='optional'/>
  </attributeGroup>

  <attributeGroup name='area-properties'>
   <attribute name='clip' type='string' use='optional'/>
   <attribute name='overflow' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='visible'/>
      <enumeration value='hidden'/>
      <enumeration value='scroll'/>
      <enumeration value='auto'/>
      <enumeration value='error-if-overflow'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='display-align' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='auto'/>
      <enumeration value='before'/>
      <enumeration value='center'/>
      <enumeration value='after'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='reference-orientation' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='0'/>
      <enumeration value='90'/>
      <enumeration value='180'/>
      <enumeration value='270'/>
      <enumeration value='-90'/>
      <enumeration value='-180'/>
      <enumeration value='-270'/>
      <enumeration value='0deg'/>
      <enumeration value='90deg'/>
      <enumeration value='180deg'/>
      <enumeration value='270deg'/>
      <enumeration value='-90deg'/>
      <enumeration value='-180deg'/>
      <enumeration value='-270deg'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='writing-mode' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='lr-tb'/>
      <enumeration value='rl-tb'/>
      <enumeration value='tb-rl'/>
      <enumeration value='lr'/>
      <enumeration value='rl'/>
      <enumeration value='tb'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
  </attributeGroup>

  <attributeGroup name='font-properties'>
   <attribute name='font' type='string' use='optional'/>
   <attribute name='font-selection-strategy' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='auto'/>
      <enumeration value='character-by-character'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='font-family' type='string' use='optional'/>
   <attribute name='font-size' type='string' use='optional'/>
   <attribute name='font-size-adjust' type='string' use='optional'/>
   <attribute name='font-stretch' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='normal'/>
      <enumeration value='wider'/>
      <enumeration value='narrower'/>
      <enumeration value='ultra-condensed'/>
      <enumeration value='extra-condensed'/>
      <enumeration value='condensed'/>
      <enumeration value='semi-condensed'/>
      <enumeration value='semi-expanded'/>
      <enumeration value='expanded'/>
      <enumeration value='extra-expanded'/>
      <enumeration value='ultra-expanded'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='font-style' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='normal'/>
      <enumeration value='italic'/>
      <enumeration value='oblique'/>
      <enumeration value='backslant'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='font-variant' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='normal'/>
      <enumeration value='small-caps'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='font-weight' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='normal'/>
      <enumeration value='bold'/>
      <enumeration value='bolder'/>
      <enumeration value='lighter'/>
      <enumeration value='inherit'/>
      <enumeration value='100'/>
      <enumeration value='200'/>
      <enumeration value='300'/>
      <enumeration value='400'/>
      <enumeration value='500'/>
      <enumeration value='600'/>
      <enumeration value='700'/>
      <enumeration value='800'/>
      <enumeration value='900'/>
     </restriction>
    </simpleType>
   </attribute>
  </attributeGroup>

  <attributeGroup name='hyphenation-properties-inline'>
   <attribute name='country' type='string' use='optional'/>
   <attribute name='language' type='string' use='optional'/>
   <attribute name='script' type='string' use='optional'/>
   <attribute name='hyphenate' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='false'/>
      <enumeration value='true'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='hyphenation-character' type='string' use='optional'/>
   <attribute name='hyphenation-push-character-count' type='string' use='optional'/>
   <attribute name='hyphenation-remain-character-count' type='string' use='optional'/>
  </attributeGroup>

  <attributeGroup name='hyphenation-properties-block'>
   <attribute name='hyphenation-keep' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='auto'/>
      <enumeration value='column'/>
      <enumeration value='page'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='hyphenation-ladder-count' type='string' use='optional'/>
   <attributeGroup ref='fo:hyphenation-properties-inline'/>
  </attributeGroup>

  <attributeGroup name='margin-properties-CSS'>
   <attribute name='margin' type='string' use='optional'/>
   <attribute name='margin-bottom' type='string' use='optional'/>
   <attribute name='margin-left' type='string' use='optional'/>
   <attribute name='margin-right' type='string' use='optional'/>
   <attribute name='margin-top' type='string' use='optional'/>
  </attributeGroup>

  <attributeGroup name='margin-properties-block'>
   <attributeGroup ref='fo:margin-properties-CSS'/>
   <attribute name='space-after' type='string' use='optional'/>
   <attribute name='space-after.minimum' type='string' use='optional'/>
   <attribute name='space-after.optimum' type='string' use='optional'/>
   <attribute name='space-after.maximum' type='string' use='optional'/>
   <attribute name='space-after.precedence' type='string' use='optional'/>
   <attribute name='space-after.conditionality' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='retain'/>
      <enumeration value='discard'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='space-before' type='string' use='optional'/>
   <attribute name='space-before.minimum' type='string' use='optional'/>
   <attribute name='space-before.optimum' type='string' use='optional'/>
   <attribute name='space-before.maximum' type='string' use='optional'/>
   <attribute name='space-before.precedence' type='string' use='optional'/>
   <attribute name='space-before.conditionality' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='retain'/>
      <enumeration value='discard'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='start-indent' type='string' use='optional'/>
   <attribute name='end-indent' type='string' use='optional'/>
  </attributeGroup>

  <attributeGroup name='margin-properties-inline'>
   <attributeGroup ref='fo:margin-properties-block'/>
   <attribute name='space-start' type='string' use='optional'/>
   <attribute name='space-start.minimum' type='string' use='optional'/>
   <attribute name='space-start.optimum' type='string' use='optional'/>
   <attribute name='space-start.maximum' type='string' use='optional'/>
   <attribute name='space-start.precedence' type='string' use='optional'/>
   <attribute name='space-start.conditionality' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='retain'/>
      <enumeration value='discard'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='space-end' type='string' use='optional'/>
   <attribute name='space-end.minimum' type='string' use='optional'/>
   <attribute name='space-end.optimum' type='string' use='optional'/>
   <attribute name='space-end.maximum' type='string' use='optional'/>
   <attribute name='space-end.precedence' type='string' use='optional'/>
   <attribute name='space-end.conditionality' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='retain'/>
      <enumeration value='discard'/>
     </restriction>
    </simpleType>
   </attribute>
  </attributeGroup>

  <attributeGroup name='area-alignment-properties-inline'>
   <attribute name='alignment-adjust' type='string' use='optional'/>
   <attribute name='alignment-baseline' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='auto'/>
      <enumeration value='baseline'/>
      <enumeration value='before-edge'/>
      <enumeration value='text-before-edge'/>
      <enumeration value='middle'/>
      <enumeration value='central'/>
      <enumeration value='after-edge'/>
      <enumeration value='text-after-edge'/>
      <enumeration value='top'/>
      <enumeration value='text-top'/>
      <enumeration value='bottom'/>
      <enumeration value='text-bottom'/>
      <enumeration value='ideographic'/>
      <enumeration value='alphabetic'/>
      <enumeration value='hanging'/>
      <enumeration value='mathematical'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='baseline-shift' type='string' use='optional'/>
   <attribute name='dominant-baseline' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='auto'/>
      <enumeration value='use-script'/>
      <enumeration value='no-change'/>
      <enumeration value='reset-size'/>
      <enumeration value='ideographic'/>
      <enumeration value='alphabetic'/>
      <enumeration value='hanging'/>
      <enumeration value='mathematical'/>
      <enumeration value='central'/>
      <enumeration value='middle'/>
      <enumeration value='text-after-edge'/>
      <enumeration value='text-before-edge'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='vertical-align' type='string' use='optional'/>
  </attributeGroup>

  <attributeGroup name='line-height-properties'>
   <attribute name='line-height' type='string' use='optional'/>
   <attribute name='line-height.minimum' type='string' use='optional'/>
   <attribute name='line-height.optimum' type='string' use='optional'/>
   <attribute name='line-height.maximum' type='string' use='optional'/>
   <attribute name='line-height.precedence' type='string' use='optional'/>
   <attribute name='line-height.conditionality' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='retain'/>
      <enumeration value='discard'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='line-height-shift-adjustment' type='string' use='optional'/>
  </attributeGroup>

  <attributeGroup name='line-related-properties'>
   <attribute name='text-align' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='start'/>
      <enumeration value='center'/>
      <enumeration value='end'/>
      <enumeration value='justify'/>
      <enumeration value='inside'/>
      <enumeration value='outside'/>
      <enumeration value='left'/>
      <enumeration value='right'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='text-align-last' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='relative'/>
      <enumeration value='start'/>
      <enumeration value='center'/>
      <enumeration value='end'/>
      <enumeration value='justify'/>
      <enumeration value='inside'/>
      <enumeration value='outside'/>
      <enumeration value='left'/>
      <enumeration value='right'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='text-indent' type='string' use='optional'/>
   <attribute name='last-line-end-indent' type='string' use='optional'/>
   <attribute name='line-stacking-strategy' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='line-height'/>
      <enumeration value='font-height'/>
      <enumeration value='max-height'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='linefeed-treatment' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='ignore'/>
      <enumeration value='preserve'/>
      <enumeration value='treat-as-space'/>
      <enumeration value='treat-as-zero-width-space'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='white-space' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='normal'/>
      <enumeration value='pre'/>
      <enumeration value='nowrap'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='white-space-treatment' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='ignore'/>
      <enumeration value='preserve'/>
      <enumeration value='ignore-if-before-linefeed'/>
      <enumeration value='ignore-if-after-linefeed'/>
      <enumeration value='ignore-if-surrounding-linefeed'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='white-space-collapse' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='false'/>
      <enumeration value='true'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='wrap-option' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='no-wrap'/>
      <enumeration value='wrap'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='unicode-bidi' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='normal'/>
      <enumeration value='embed'/>
      <enumeration value='bidi-override'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='direction' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='ltr'/>
      <enumeration value='rtl'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
  </attributeGroup>

  <attributeGroup name='character-properties'>
   <attribute name='letter-spacing' type='string' use='optional'/>
   <attribute name='letter-spacing.minimum' type='string' use='optional'/>
   <attribute name='letter-spacing.optimum' type='string' use='optional'/>
   <attribute name='letter-spacing.maximum' type='string' use='optional'/>
   <attribute name='letter-spacing.precedence' type='string' use='optional'/>
   <attribute name='letter-spacing.conditionality' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='retain'/>
      <enumeration value='discard'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='word-spacing' type='string' use='optional'/>
   <attribute name='word-spacing.minimum' type='string' use='optional'/>
   <attribute name='word-spacing.optimum' type='string' use='optional'/>
   <attribute name='word-spacing.maximum' type='string' use='optional'/>
   <attribute name='word-spacing.precedence' type='string' use='optional'/>
   <attribute name='word-spacing.conditionality' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='retain'/>
      <enumeration value='discard'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='treat-as-word-space' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='auto'/>
      <enumeration value='true'/>
      <enumeration value='false'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='text-decoration' type='NMTOKENS' use='optional'/>
   <attribute name='score-spaces' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='true'/>
      <enumeration value='false'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='text-shadow' type='string' use='optional'/>
   <attribute name='text-transform' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='capitalize'/>
      <enumeration value='uppercase'/>
      <enumeration value='lowercase'/>
      <enumeration value='none'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='suppress-at-line-break' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='auto'/>
      <enumeration value='suppress'/>
      <enumeration value='retain'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='text-altitude' type='string' use='optional'/>
   <attribute name='text-depth' type='string' use='optional'/>
   <attribute name='glyph-orientation-horizontal' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='0'/>
      <enumeration value='90'/>
      <enumeration value='180'/>
      <enumeration value='270'/>
      <enumeration value='-90'/>
      <enumeration value='-180'/>
      <enumeration value='-270'/>
      <enumeration value='0deg'/>
      <enumeration value='90deg'/>
      <enumeration value='180deg'/>
      <enumeration value='270deg'/>
      <enumeration value='-90deg'/>
      <enumeration value='-180deg'/>
      <enumeration value='-270deg'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='glyph-orientation-vertical' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='0'/>
      <enumeration value='90'/>
      <enumeration value='180'/>
      <enumeration value='270'/>
      <enumeration value='-90'/>
      <enumeration value='-180'/>
      <enumeration value='-270'/>
      <enumeration value='0deg'/>
      <enumeration value='90deg'/>
      <enumeration value='180deg'/>
      <enumeration value='270deg'/>
      <enumeration value='-90deg'/>
      <enumeration value='-180deg'/>
      <enumeration value='-270deg'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attributeGroup ref='fo:font-properties'/>
   <attributeGroup ref='fo:line-height-properties'/>
  </attributeGroup>

  <attributeGroup name='keeps-and-breaks-properties-atomic'>
   <attribute name='break-after' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='auto'/>
      <enumeration value='column'/>
      <enumeration value='page'/>
      <enumeration value='even-page'/>
      <enumeration value='odd-page'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='break-before' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='auto'/>
      <enumeration value='column'/>
      <enumeration value='page'/>
      <enumeration value='even-page'/>
      <enumeration value='odd-page'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='keep-with-next' type='string' use='optional'/>
   <attribute name='keep-with-next.within-line' type='string' use='optional'/>
   <attribute name='keep-with-next.within-column' type='string' use='optional'/>
   <attribute name='keep-with-next.within-page' type='string' use='optional'/>
   <attribute name='keep-with-previous' type='string' use='optional'/>
   <attribute name='keep-with-previous.within-line' type='string' use='optional'/>
   <attribute name='keep-with-previous.within-column' type='string' use='optional'/>
   <attribute name='keep-with-previous.within-page' type='string' use='optional'/>
   <attribute name='page-break-after' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='auto'/>
      <enumeration value='always'/>
      <enumeration value='avoid'/>
      <enumeration value='left'/>
      <enumeration value='right'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='page-break-before' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='auto'/>
      <enumeration value='always'/>
      <enumeration value='avoid'/>
      <enumeration value='left'/>
      <enumeration value='right'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
  </attributeGroup>

  <attributeGroup name='keeps-and-breaks-properties-inline'>
   <attributeGroup ref='fo:keeps-and-breaks-properties-atomic'/>
   <attribute name='keep-together' type='string' use='optional'/>
   <attribute name='keep-together.within-line' type='string' use='optional'/>
   <attribute name='keep-together.within-column' type='string' use='optional'/>
   <attribute name='keep-together.within-page' type='string' use='optional'/>
   <attribute name='page-break-inside' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='avoid'/>
      <enumeration value='auto'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
  </attributeGroup>

  <attributeGroup name='keeps-and-breaks-properties-block'>
   <attributeGroup ref='fo:keeps-and-breaks-properties-inline'/>
   <attribute name='orphans' type='string' use='optional'/>
   <attribute name='widows' type='string' use='optional'/>
  </attributeGroup>

  <attributeGroup name='leader-properties'>
   <attribute name='leader-alignment' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='none'/>
      <enumeration value='reference-area'/>
      <enumeration value='page'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='leader-pattern' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='space'/>
      <enumeration value='rule'/>
      <enumeration value='dots'/>
      <enumeration value='use-content'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='leader-pattern-width' type='string' use='optional'/>
   <attribute name='leader-length' type='string' use='optional'/>
   <attribute name='leader-length.minimum' type='string' use='optional'/>
   <attribute name='leader-length.optimum' type='string' use='optional'/>
   <attribute name='leader-length.maximum' type='string' use='optional'/>
   <attribute name='rule-style' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='none'/>
      <enumeration value='dotted'/>
      <enumeration value='dashed'/>
      <enumeration value='solid'/>
      <enumeration value='double'/>
      <enumeration value='groove'/>
      <enumeration value='ridge'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='rule-thickness' type='string' use='optional'/>
  </attributeGroup>

  <attributeGroup name='table-properties'>
   <attribute name='border-collapse' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='collapse'/>
      <enumeration value='collapse-with-precedence'/>
      <enumeration value='separate'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='border-spacing' type='string' use='optional'/>
   <attribute name='border-separation' type='string' use='optional'/>
   <attribute name='border-separation.inline-progression-direction' type='string' use='optional'/>
   <attribute name='border-separation.block-progression-direction' type='string' use='optional'/>
   <attribute name='caption-side' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='before'/>
      <enumeration value='after'/>
      <enumeration value='start'/>
      <enumeration value='end'/>
      <enumeration value='top'/>
      <enumeration value='bottom'/>
      <enumeration value='left'/>
      <enumeration value='right'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='empty-cells' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='show'/>
      <enumeration value='hide'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='table-layout' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='auto'/>
      <enumeration value='fixed'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='table-omit-header-at-break' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='true'/>
      <enumeration value='false'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='table-omit-footer-at-break' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='true'/>
      <enumeration value='false'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
  </attributeGroup>

  <attributeGroup name='list-properties'>
   <attribute name='provisional-distance-between-starts' type='string' use='optional'/>
   <attribute name='provisional-label-separation' type='string' use='optional'/>
  </attributeGroup>

  <attributeGroup name='float-properties'>
   <attribute name='float' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='before'/>
      <enumeration value='start'/>
      <enumeration value='end'/>
      <enumeration value='left'/>
      <enumeration value='right'/>
      <enumeration value='none'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='clear' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='start'/>
      <enumeration value='end'/>
      <enumeration value='left'/>
      <enumeration value='right'/>
      <enumeration value='both'/>
      <enumeration value='none'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='intrusion-displace' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='auto'/>
      <enumeration value='none'/>
      <enumeration value='line'/>
      <enumeration value='indent'/>
      <enumeration value='block'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
  </attributeGroup>

  <attributeGroup name='visibility-properties'>
   <attribute name='visibility' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='visible'/>
      <enumeration value='hidden'/>
      <enumeration value='collapse'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='z-index' type='string' use='optional'/>
  </attributeGroup>

  <attributeGroup name='inheritable-properties'>
   <attribute name='color' type='string' use='optional'/>
   <attribute name='relative-align' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='before'/>
      <enumeration value='baseline'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='span' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='none'/>
      <enumeration value='all'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attributeGroup ref='fo:accessibility-properties'/>
   <attributeGroup ref='fo:absolute-or-relative-position-properties'/>
   <attributeGroup ref='fo:border-padding-background-properties'/>
   <attributeGroup ref='fo:border-precedence-properties'/>
   <attributeGroup ref='fo:aural-properties'/>
   <attributeGroup ref='fo:box-size-properties'/>
   <attributeGroup ref='fo:margin-properties-inline'/>
   <attributeGroup ref='fo:area-properties'/>
   <attributeGroup ref='fo:area-alignment-properties-inline'/>
   <attributeGroup ref='fo:character-properties'/>
   <attributeGroup ref='fo:table-properties'/>
   <attributeGroup ref='fo:list-properties'/>
   <attributeGroup ref='fo:float-properties'/>
   <attributeGroup ref='fo:line-related-properties'/>
   <attributeGroup ref='fo:leader-properties'/>
   <attributeGroup ref='fo:keeps-and-breaks-properties-block'/>
   <attributeGroup ref='fo:hyphenation-properties-block'/>
   <attributeGroup ref='fo:visibility-properties'/>
  </attributeGroup>

  <attributeGroup name='block-properties'>
   <attribute name='id' type='string' use='optional'/>
   <attributeGroup ref='fo:inheritable-properties'/>
  </attributeGroup>

  <attributeGroup name='inline-properties'>
   <attribute name='id' type='string' use='optional'/>
   <attributeGroup ref='fo:inheritable-properties'/>
  </attributeGroup>

  <attributeGroup name='empty-inline-properties'>
   <attribute name='id' type='string' use='optional'/>
   <attribute name='color' type='string' use='optional'/>
   <attributeGroup ref='fo:accessibility-properties'/>
   <attributeGroup ref='fo:aural-properties'/>
   <attributeGroup ref='fo:relative-position-properties'/>
   <attributeGroup ref='fo:area-alignment-properties-inline'/>
   <attributeGroup ref='fo:character-properties'/>
   <attributeGroup ref='fo:border-padding-background-properties'/>
   <attributeGroup ref='fo:hyphenation-properties-inline'/>
   <attributeGroup ref='fo:visibility-properties'/>
  </attributeGroup>

  <attributeGroup name='graphic-properties'>
   <attribute name='id' type='string' use='optional'/>
   <attribute name='content-type' type='string' use='optional'/>
   <attributeGroup ref='fo:accessibility-properties'/>
   <attributeGroup ref='fo:relative-position-properties'/>
   <attributeGroup ref='fo:aural-properties'/>
   <attributeGroup ref='fo:border-padding-background-properties'/>
   <attributeGroup ref='fo:margin-properties-inline'/>
   <attributeGroup ref='fo:area-alignment-properties-inline'/>
   <attributeGroup ref='fo:box-size-properties'/>
   <attributeGroup ref='fo:font-properties'/>
   <attributeGroup ref='fo:line-height-properties'/>
   <attributeGroup ref='fo:keeps-and-breaks-properties-atomic'/>
   <attribute name='content-height' type='string' use='optional'/>
   <attribute name='content-width' type='string' use='optional'/>
   <attribute name='display-align' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='auto'/>
      <enumeration value='before'/>
      <enumeration value='center'/>
      <enumeration value='after'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='overflow' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='visible'/>
      <enumeration value='hidden'/>
      <enumeration value='scroll'/>
      <enumeration value='auto'/>
      <enumeration value='error-if-overflow'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='scaling' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='uniform'/>
      <enumeration value='non-uniform'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='scaling-method' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='auto'/>
      <enumeration value='integer-pixels'/>
      <enumeration value='resample-any-method'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='text-align' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='start'/>
      <enumeration value='center'/>
      <enumeration value='end'/>
      <enumeration value='justify'/>
      <enumeration value='inside'/>
      <enumeration value='outside'/>
      <enumeration value='left'/>
      <enumeration value='right'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
  </attributeGroup>

  <group name='basic-inlines'>
<!-- fo:bidi-override  | fo:character  | fo:external-graphic  | fo:instream-foreign-object   | fo:inline  | fo:inline-container  | fo:leader  | fo:page-number  | fo:page-number-citation  | fo:basic-link  | fo:multi-toggle  | rx:pinpoint  | rx:page-index -->
   <choice>
    <element ref='fo:bidi-override'/>
    <element ref='fo:character'/>
    <element ref='fo:external-graphic'/>
    <element ref='fo:instream-foreign-object'/>
    <element ref='fo:inline'/>
    <element ref='fo:inline-container'/>
    <element ref='fo:leader'/>
    <element ref='fo:page-number'/>
    <element ref='fo:page-number-citation'/>
    <element ref='fo:basic-link'/>
    <element ref='fo:multi-toggle'/>
   </choice>
  </group>

  <group name='basic-blocks'>
<!-- fo:block  | fo:block-container  | fo:table-and-caption  | fo:table  | fo:list-block -->
   <choice>
    <element ref='fo:block'/>
    <element ref='fo:block-container'/>
    <element ref='fo:table-and-caption'/>
    <element ref='fo:table'/>
    <element ref='fo:list-block'/>
   </choice>
  </group>

  <group name='out-of-lines'>
<!-- fo:footnote  | fo:float -->
   <choice>
    <element ref='fo:footnote'/>
    <element ref='fo:float'/>
   </choice>
  </group>

  <group name='wrappers'>
<!-- fo:multi-switch  | fo:multi-properties  | fo:wrapper  | fo:marker  | fo:retrieve-marker -->
   <choice>
    <element ref='fo:multi-switch'/>
    <element ref='fo:multi-properties'/>
    <element ref='fo:wrapper'/>
    <element ref='fo:marker'/>
    <element ref='fo:retrieve-marker'/>
   </choice>
  </group>

  <group name='inlines'>
<!-- #PCDATA  | #MODELGROUPREF basic-inlines  | #MODELGROUPREF out-of-lines  | #MODELGROUPREF wrappers -->
   <choice>
    <group ref='fo:basic-inlines'/>
    <group ref='fo:out-of-lines'/>
    <group ref='fo:wrappers'/>
   </choice>
  </group>

  <group name='blocks'>
<!-- #MODELGROUPREF basic-blocks  | #MODELGROUPREF out-of-lines  | #MODELGROUPREF wrappers -->
   <choice>
    <group ref='fo:basic-blocks'/>
    <group ref='fo:out-of-lines'/>
    <group ref='fo:wrappers'/>
   </choice>
  </group>

  <group name='mixed-level'>
<!-- #PCDATA  | #MODELGROUPREF basic-inlines  | #MODELGROUPREF basic-blocks  | #MODELGROUPREF out-of-lines  | #MODELGROUPREF wrappers -->
   <choice>
    <group ref='fo:basic-inlines'/>
    <group ref='fo:basic-blocks'/>
    <group ref='fo:out-of-lines'/>
    <group ref='fo:wrappers'/>
   </choice>
  </group>

  <group name='row-group'>
<!-- fo:table-row+ | fo:table-cell+  -->
   <choice>
    <element ref='fo:table-row' maxOccurs='unbounded'/>
    <element ref='fo:table-cell' maxOccurs='unbounded'/>
   </choice>
  </group>

 <element name='root'>
  <complexType>
   <sequence>
    <element ref='fo:layout-master-set'/>
    <element ref='fo:declarations' minOccurs='0' maxOccurs='1'/>
    <element ref='fo:page-sequence' maxOccurs='unbounded'/>
   </sequence>
   <attribute name='media-usage' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='auto'/>
      <enumeration value='paginate'/>
      <enumeration value='bounded-in-one-dimension'/>
      <enumeration value='unbounded'/>
     </restriction>
    </simpleType>
   </attribute>
   <attributeGroup ref='fo:inheritable-properties'/>
  </complexType>
 </element>

 <element name='meta-info'>
  <complexType>
   <sequence>
   </sequence>
  </complexType>
 </element>

 <element name='meta-field'>
  <complexType>
   <attribute name='name' type='string' use='required'/>
   <attribute name='value' type='string' use='required'/>
  </complexType>
 </element>

 <element name='page-device'>
  <complexType>
   <attribute name='input-tray' type='string' use='optional'/>
   <attribute name='output-tray' type='string' use='optional'/>
   <attribute name='manual-feed' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='true'/>
      <enumeration value='false'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='duplex' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='true'/>
      <enumeration value='false'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='mirror-print' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='true'/>
      <enumeration value='false'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='negative-print' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='true'/>
      <enumeration value='false'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='collate' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='true'/>
      <enumeration value='false'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='number-copies' type='string' use='optional'/>
  </complexType>
 </element>

 <element name='declarations'>
  <complexType>
   <sequence>
    <element ref='fo:color-profile' maxOccurs='unbounded'/>
   </sequence>
  </complexType>
 </element>

 <element name='color-profile'>
  <complexType>
   <attribute name='src' type='string' use='required'/>
   <attribute name='color-profile-name' type='string' use='required'/>
   <attribute name='rendering-intent' type='string' use='optional'/>
  </complexType>
 </element>

 <element name='outline'>
  <complexType>
   <sequence>
   </sequence>
  </complexType>
 </element>

 <element name='bookmark'>
  <complexType>
   <sequence>
   </sequence>
   <attribute name='internal-destination' type='string' use='optional'/>
   <attribute name='external-destination' type='string' use='optional'/>
   <attribute name='collapse-subtree' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='true'/>
      <enumeration value='false'/>
     </restriction>
    </simpleType>
   </attribute>
  </complexType>
 </element>

 <element name='bookmark-label'>
  <complexType mixed='true'>
  </complexType>
 </element>

 <element name='layout-master-set'>
  <complexType>
   <sequence>
    <element ref='fo:page-sequence-master' minOccurs='0' maxOccurs='unbounded'/>
    <element ref='fo:simple-page-master'/>
    <choice minOccurs='0' maxOccurs='unbounded'>
     <element ref='fo:simple-page-master'/>
     <element ref='fo:page-sequence-master'/>
    </choice>
   </sequence>
  </complexType>
 </element>

 <element name='page-sequence-master'>
  <complexType>
   <choice maxOccurs='unbounded'>
    <element ref='fo:single-page-master-reference'/>
    <element ref='fo:repeatable-page-master-reference'/>
    <element ref='fo:repeatable-page-master-alternatives'/>
   </choice>
   <attribute name='master-name' type='string' use='required'/>
  </complexType>
 </element>

 <element name='single-page-master-reference'>
  <complexType>
   <attribute name='master-reference' type='string' use='required'/>
  </complexType>
 </element>

 <element name='repeatable-page-master-reference'>
  <complexType>
   <attribute name='master-reference' type='string' use='required'/>
   <attribute name='maximum-repeats' type='string' use='optional'/>
  </complexType>
 </element>

 <element name='repeatable-page-master-alternatives'>
  <complexType>
   <sequence>
    <element ref='fo:conditional-page-master-reference' maxOccurs='unbounded'/>
   </sequence>
   <attribute name='maximum-repeats' type='string' use='optional'/>
  </complexType>
 </element>

 <element name='conditional-page-master-reference'>
  <complexType>
   <attribute name='master-reference' type='string' use='required'/>
   <attribute name='page-position' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='first'/>
      <enumeration value='last'/>
      <enumeration value='rest'/>
      <enumeration value='any'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='odd-or-even' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='odd'/>
      <enumeration value='even'/>
      <enumeration value='any'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='blank-or-not-blank' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='blank'/>
      <enumeration value='not-blank'/>
      <enumeration value='any'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
  </complexType>
 </element>

 <element name='simple-page-master'>
  <complexType>
   <sequence>
    <element ref='fo:region-body'/>
    <element ref='fo:region-before' minOccurs='0' maxOccurs='1'/>
    <element ref='fo:region-after' minOccurs='0' maxOccurs='1'/>
    <element ref='fo:region-start' minOccurs='0' maxOccurs='1'/>
    <element ref='fo:region-end' minOccurs='0' maxOccurs='1'/>
   </sequence>
   <attributeGroup ref='fo:margin-properties-CSS'/>
   <attribute name='master-name' type='string' use='required'/>
   <attribute name='page-height' type='string' use='optional'/>
   <attribute name='page-width' type='string' use='optional'/>
   <attribute name='size' type='string' use='optional'/>
   <attribute name='reference-orientation' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='0'/>
      <enumeration value='90'/>
      <enumeration value='180'/>
      <enumeration value='270'/>
      <enumeration value='-90'/>
      <enumeration value='-180'/>
      <enumeration value='-270'/>
      <enumeration value='0deg'/>
      <enumeration value='90deg'/>
      <enumeration value='180deg'/>
      <enumeration value='270deg'/>
      <enumeration value='-90deg'/>
      <enumeration value='-180deg'/>
      <enumeration value='-270deg'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='writing-mode' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='lr-tb'/>
      <enumeration value='rl-tb'/>
      <enumeration value='tb-rl'/>
      <enumeration value='lr'/>
      <enumeration value='rl'/>
      <enumeration value='tb'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
  </complexType>
 </element>

 <element name='region-body'>
  <complexType>
   <attributeGroup ref='fo:border-padding-background-properties'/>
   <attributeGroup ref='fo:area-properties'/>
   <attribute name='region-name' type='string' use='optional'/>
   <attributeGroup ref='fo:margin-properties-CSS'/>
   <attribute name='column-count' type='string' use='optional'/>
   <attribute name='column-gap' type='string' use='optional'/>
  </complexType>
 </element>

 <element name='region-before'>
  <complexType>
   <attributeGroup ref='fo:border-padding-background-properties'/>
   <attributeGroup ref='fo:area-properties'/>
   <attribute name='region-name' type='string' use='optional'/>
   <attribute name='extent' type='string' use='required'/>
   <attribute name='precedence' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='true'/>
      <enumeration value='false'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
  </complexType>
 </element>

 <element name='region-after'>
  <complexType>
   <attributeGroup ref='fo:border-padding-background-properties'/>
   <attributeGroup ref='fo:area-properties'/>
   <attribute name='region-name' type='string' use='optional'/>
   <attribute name='extent' type='string' use='required'/>
   <attribute name='precedence' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='true'/>
      <enumeration value='false'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
  </complexType>
 </element>

 <element name='region-start'>
  <complexType>
   <attributeGroup ref='fo:border-padding-background-properties'/>
   <attributeGroup ref='fo:area-properties'/>
   <attribute name='region-name' type='string' use='optional'/>
   <attribute name='extent' type='string' use='required'/>
   <attribute name='precedence' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='true'/>
      <enumeration value='false'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
  </complexType>
 </element>

 <element name='region-end'>
  <complexType>
   <attributeGroup ref='fo:border-padding-background-properties'/>
   <attributeGroup ref='fo:area-properties'/>
   <attribute name='region-name' type='string' use='optional'/>
   <attribute name='extent' type='string' use='required'/>
   <attribute name='precedence' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='true'/>
      <enumeration value='false'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
  </complexType>
 </element>

 <element name='page-sequence'>
  <complexType>
   <sequence>
    <element ref='fo:title' minOccurs='0' maxOccurs='1'/>
    <element ref='fo:static-content' minOccurs='0' maxOccurs='unbounded'/>
    <element ref='fo:flow'/>
   </sequence>
   <attribute name='id' type='string' use='optional'/>
   <attribute name='master-reference' type='string' use='required'/>
   <attribute name='initial-page-number' type='string' use='optional'/>
   <attribute name='force-page-count' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='auto'/>
      <enumeration value='even'/>
      <enumeration value='odd'/>
      <enumeration value='end-on-even'/>
      <enumeration value='end-on-odd'/>
      <enumeration value='no-force'/>
      <enumeration value='inherit'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='format' type='string' use='optional'/>
   <attribute name='letter-value' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='auto'/>
      <enumeration value='alphabetic'/>
      <enumeration value='traditional'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='grouping-separator' type='string' use='optional'/>
   <attribute name='grouping-size' type='string' use='optional'/>
   <attributeGroup ref='fo:inheritable-properties'/>
  </complexType>
 </element>

 <element name='title'>
  <complexType mixed='true'>
   <choice minOccurs='0' maxOccurs='unbounded'>
    <group ref='fo:basic-inlines'/>
    <group ref='fo:wrappers'/>
   </choice>
   <attributeGroup ref='fo:inheritable-properties'/>
  </complexType>
 </element>

 <element name='static-content'>
  <complexType>
   <sequence maxOccurs='unbounded'>
    <group ref='fo:blocks'/>
   </sequence>
   <attribute name='id' type='string' use='optional'/>
   <attribute name='flow-name' type='string' use='required'/>
   <attributeGroup ref='fo:inheritable-properties'/>
  </complexType>
 </element>

 <element name='flow'>
  <complexType>
   <choice maxOccurs='unbounded'>
    <group ref='fo:blocks'/>
   </choice>
   <attribute name='id' type='string' use='optional'/>
   <attribute name='flow-name' type='string' use='required'/>
   <attributeGroup ref='fo:inheritable-properties'/>
  </complexType>
 </element>

 <element name='flow-section'>
  <complexType>
   <sequence maxOccurs='unbounded'>
    <group ref='fo:blocks'/>
   </sequence>
   <attribute name='column-count' type='string' use='optional'/>
   <attribute name='column-gap' type='string' use='optional'/>
   <attributeGroup ref='fo:block-properties'/>
  </complexType>
 </element>

 <element name='block'>
  <complexType mixed='true'>
   <choice minOccurs='0' maxOccurs='unbounded'>
    <element ref='fo:initial-property-set'/>
    <group ref='fo:basic-inlines'/>
    <group ref='fo:basic-blocks'/>
    <group ref='fo:out-of-lines'/>
    <group ref='fo:wrappers'/>
   </choice>
   <attributeGroup ref='fo:block-properties'/>
  </complexType>
 </element>

 <element name='block-container'>
  <complexType>
   <sequence maxOccurs='unbounded'>
    <group ref='fo:blocks'/>
   </sequence>
   <attributeGroup ref='fo:block-properties'/>
  </complexType>
 </element>

 <element name='bidi-override'>
  <complexType mixed='true'>
   <sequence minOccurs='0' maxOccurs='unbounded'>
    <group ref='fo:inlines'/>
   </sequence>
   <attributeGroup ref='fo:inline-properties'/>
  </complexType>
 </element>

 <element name='character'>
  <complexType>
   <attribute name='character' type='string' use='required'/>
   <attributeGroup ref='fo:empty-inline-properties'/>
  </complexType>
 </element>

 <element name='initial-property-set'>
  <complexType>
   <attributeGroup ref='fo:empty-inline-properties'/>
  </complexType>
 </element>

 <element name='external-graphic'>
  <complexType>
   <attributeGroup ref='fo:graphic-properties'/>
   <attribute name='src' type='string' use='optional'/>
  </complexType>
 </element>

 <element name='instream-foreign-object'>
  <complexType>
   <sequence>
   <any namespace='http://www.w3.org/1999/XSL/Format'/>
   </sequence>
   <attributeGroup ref='fo:graphic-properties'/>
  </complexType>
 </element>

 <element name='pinpoint'>
  <complexType>
   <attribute name='value' type='string' use='required'/>
   <attributeGroup ref='fo:accessibility-properties'/>
   <attributeGroup ref='fo:relative-position-properties'/>
   <attributeGroup ref='fo:area-alignment-properties-inline'/>
   <attributeGroup ref='fo:keeps-and-breaks-properties-atomic'/>
  </complexType>
 </element>

 <element name='inline'>
  <complexType mixed='true'>
   <sequence minOccurs='0' maxOccurs='unbounded'>
    <group ref='fo:mixed-level'/>
   </sequence>
   <attributeGroup ref='fo:inline-properties'/>
  </complexType>
 </element>

 <element name='inline-container'>
  <complexType>
   <sequence minOccurs='0' maxOccurs='unbounded'>
    <group ref='fo:blocks'/>
   </sequence>
   <attributeGroup ref='fo:inline-properties'/>
  </complexType>
 </element>

 <element name='leader'>
  <complexType mixed='true'>
   <sequence minOccurs='0' maxOccurs='unbounded'>
    <group ref='fo:inlines'/>
   </sequence>
   <attributeGroup ref='fo:inline-properties'/>
  </complexType>
 </element>

 <element name='page-number'>
  <complexType>
   <attributeGroup ref='fo:empty-inline-properties'/>
  </complexType>
 </element>

 <element name='page-number-citation'>
  <complexType>
   <attributeGroup ref='fo:empty-inline-properties'/>
   <attribute name='ref-id' type='string' use='required'/>
  </complexType>
 </element>

 <element name='page-index'>
  <complexType>
   <attributeGroup ref='fo:empty-inline-properties'/>
   <attribute name='ref-key' type='string' use='required'/>
   <attribute name='list-separator' type='string' use='optional'/>
   <attribute name='range-separator' type='string' use='optional'/>
   <attribute name='merge-subsequent-page-numbers' type='string' use='optional'/>
  </complexType>
 </element>

 <element name='table-and-caption'>
  <complexType>
   <sequence>
    <element ref='fo:table-caption' minOccurs='0' maxOccurs='1'/>
    <element ref='fo:table'/>
   </sequence>
   <attributeGroup ref='fo:block-properties'/>
  </complexType>
 </element>

 <element name='table-caption'>
  <complexType>
   <sequence maxOccurs='unbounded'>
    <group ref='fo:blocks'/>
   </sequence>
   <attributeGroup ref='fo:block-properties'/>
  </complexType>
 </element>

 <element name='table'>
  <complexType>
   <sequence>
    <element ref='fo:table-column' minOccurs='0' maxOccurs='unbounded'/>
    <element ref='fo:table-header' minOccurs='0' maxOccurs='1'/>
    <element ref='fo:table-footer' minOccurs='0' maxOccurs='1'/>
    <element ref='fo:table-body' maxOccurs='unbounded'/>
   </sequence>
   <attributeGroup ref='fo:block-properties'/>
  </complexType>
 </element>

 <element name='table-column'>
  <complexType>
   <attribute name='column-number' type='string' use='optional'/>
   <attribute name='column-width' type='string' use='optional'/>
   <attribute name='number-columns-repeated' type='string' use='optional'/>
   <attribute name='number-columns-spanned' type='string' use='optional'/>
   <attributeGroup ref='fo:inheritable-properties'/>
  </complexType>
 </element>

 <element name='table-header'>
  <complexType>
   <sequence>
    <group ref='fo:row-group'/>
   </sequence>
   <attribute name='id' type='string' use='optional'/>
   <attributeGroup ref='fo:inheritable-properties'/>
  </complexType>
 </element>

 <element name='table-footer'>
  <complexType>
   <sequence>
    <group ref='fo:row-group'/>
   </sequence>
   <attribute name='id' type='string' use='optional'/>
   <attributeGroup ref='fo:inheritable-properties'/>
  </complexType>
 </element>

 <element name='table-body'>
  <complexType>
   <sequence>
    <group ref='fo:row-group'/>
   </sequence>
   <attribute name='id' type='string' use='optional'/>
   <attributeGroup ref='fo:inheritable-properties'/>
  </complexType>
 </element>

 <element name='table-row'>
  <complexType>
   <sequence>
    <element ref='fo:table-cell' maxOccurs='unbounded'/>
   </sequence>
   <attribute name='id' type='string' use='optional'/>
   <attributeGroup ref='fo:inheritable-properties'/>
  </complexType>
 </element>

 <element name='table-cell'>
  <complexType>
   <sequence maxOccurs='unbounded'>
    <group ref='fo:blocks'/>
   </sequence>
   <attributeGroup ref='fo:block-properties'/>
   <attribute name='column-number' type='string' use='optional'/>
   <attribute name='ends-row' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='true'/>
      <enumeration value='false'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='number-columns-spanned' type='string' use='optional'/>
   <attribute name='number-rows-spanned' type='string' use='optional'/>
   <attribute name='starts-row' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='true'/>
      <enumeration value='false'/>
     </restriction>
    </simpleType>
   </attribute>
  </complexType>
 </element>

 <element name='list-block'>
  <complexType>
   <sequence>
    <element ref='fo:list-item' maxOccurs='unbounded'/>
   </sequence>
   <attributeGroup ref='fo:block-properties'/>
  </complexType>
 </element>

 <element name='list-item'>
  <complexType>
   <sequence>
    <element ref='fo:list-item-label'/>
    <element ref='fo:list-item-body'/>
   </sequence>
   <attributeGroup ref='fo:block-properties'/>
  </complexType>
 </element>

 <element name='list-item-label'>
  <complexType>
   <sequence maxOccurs='unbounded'>
    <group ref='fo:blocks'/>
   </sequence>
   <attributeGroup ref='fo:block-properties'/>
  </complexType>
 </element>

 <element name='list-item-body'>
  <complexType>
   <sequence maxOccurs='unbounded'>
    <group ref='fo:blocks'/>
   </sequence>
   <attributeGroup ref='fo:block-properties'/>
  </complexType>
 </element>

 <element name='float'>
  <complexType>
   <sequence maxOccurs='unbounded'>
    <group ref='fo:blocks'/>
   </sequence>
   <attributeGroup ref='fo:block-properties'/>
  </complexType>
 </element>

 <element name='footnote'>
  <complexType>
   <sequence>
    <element ref='fo:inline'/>
    <element ref='fo:footnote-body'/>
   </sequence>
   <attributeGroup ref='fo:block-properties'/>
  </complexType>
 </element>

 <element name='footnote-body'>
  <complexType>
   <sequence maxOccurs='unbounded'>
    <group ref='fo:blocks'/>
   </sequence>
   <attributeGroup ref='fo:block-properties'/>
  </complexType>
 </element>

 <element name='basic-link'>
  <complexType mixed='true'>
   <sequence minOccurs='0' maxOccurs='unbounded'>
    <group ref='fo:mixed-level'/>
   </sequence>
   <attributeGroup ref='fo:inline-properties'/>
   <attribute name='external-destination' type='string' use='optional'/>
   <attribute name='internal-destination' type='string' use='optional'/>
   <attribute name='indicate-destination' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='true'/>
      <enumeration value='false'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='show-destination' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='replace'/>
      <enumeration value='new'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='destination-placement-offset' type='string' use='optional'/>
   <attribute name='target-processing-context' type='string' use='optional'/>
   <attribute name='target-presentation-context' type='string' use='optional'/>
   <attribute name='target-stylesheet' type='string' use='optional'/>
  </complexType>
 </element>

 <element name='wrapper'>
  <complexType mixed='true'>
   <sequence minOccurs='0' maxOccurs='unbounded'>
    <group ref='fo:mixed-level'/>
   </sequence>
   <attribute name='id' type='string' use='optional'/>
   <attributeGroup ref='fo:inheritable-properties'/>
  </complexType>
 </element>

 <element name='marker'>
  <complexType mixed='true'>
   <sequence minOccurs='0' maxOccurs='unbounded'>
    <group ref='fo:mixed-level'/>
   </sequence>
   <attribute name='marker-class-name' type='string' use='optional'/>
  </complexType>
 </element>

 <element name='retrieve-marker'>
  <complexType>
   <attribute name='retrieve-class-name' type='string' use='optional'/>
   <attribute name='retrieve-position' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='first-starting-within-page'/>
      <enumeration value='first-including-carryover'/>
      <enumeration value='last-starting-within-page'/>
      <enumeration value='last-ending-within-page'/>
     </restriction>
    </simpleType>
   </attribute>
   <attribute name='retrieve-boundary' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='page'/>
      <enumeration value='page-sequence'/>
      <enumeration value='document'/>
     </restriction>
    </simpleType>
   </attribute>
  </complexType>
 </element>

 <element name='multi-switch'>
  <complexType>
   <sequence maxOccurs='unbounded'>
    <element ref='fo:multi-case'/>
   </sequence>
   <attributeGroup ref='fo:inheritable-properties'/>
   <attribute name='id' type='string' use='optional'/>
   <attribute name='auto-restore' use='optional'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='true'/>
      <enumeration value='false'/>
     </restriction>
    </simpleType>
   </attribute>
  </complexType>
 </element>

 <element name='multi-case'>
  <complexType mixed='true'>
   <sequence minOccurs='0' maxOccurs='unbounded'>
    <group ref='fo:mixed-level'/>
   </sequence>
   <attributeGroup ref='fo:inheritable-properties'/>
   <attribute name='id' type='string' use='optional'/>
   <attribute name='starting-state' type='string' use='optional'/>
   <attribute name='case-name' type='string' use='optional'/>
   <attribute name='case-title' type='string' use='optional'/>
  </complexType>
 </element>

 <element name='multi-toggle'>
  <complexType mixed='true'>
   <sequence minOccurs='0' maxOccurs='unbounded'>
    <group ref='fo:inlines'/>
   </sequence>
   <attributeGroup ref='fo:inheritable-properties'/>
   <attribute name='id' type='string' use='optional'/>
   <attribute name='switch-to' type='string' use='optional'/>
  </complexType>
 </element>

 <element name='multi-properties'>
  <complexType>
   <sequence>
    <element ref='fo:multi-property-set' maxOccurs='unbounded'/>
    <element ref='fo:wrapper'/>
   </sequence>
   <attributeGroup ref='fo:block-properties'/>
  </complexType>
 </element>

 <element name='multi-property-set'>
  <complexType>
   <attributeGroup ref='fo:block-properties'/>
   <attribute name='active-state' use='required'>
    <simpleType>
     <restriction base='string'>
      <enumeration value='link'/>
      <enumeration value='visited'/>
      <enumeration value='active'/>
      <enumeration value='hover'/>
      <enumeration value='focus'/>
     </restriction>
    </simpleType>
   </attribute>
  </complexType>
 </element>
</schema>
