Выбрать главу

<!ATTLIST xsclass="underline" value-of

 select %expr; #REQUIRED

 disable-output-escaping (yes|no) "no">

<!ELEMENT xsclass="underline" copy-of EMPTY>

<!ATTLIST xsclass="underline" copy-of select %expr; #REQUIRED>

<!ELEMENT xsclass="underline" number EMPTY>

<!ALLLIST xsclass="underline" number

 level (single|multtyle|any) "single"

 count %pattern; #IMPLIED

 from %pattern; #IMPLIED

 value %expr; #IMPLIED

 format %avt; '1'

 lang %avt; #IMPLIED

 letter-value %avt; #IMPLIED

 grouping-separator %avt; #IMPLIED

 grouping-size %avt; #IMPLIED>

<!ELEMENT xsclass="underline" apply-templates (xsclass="underline" sort|xsclass="underline" with-param)*>

<!ATTLIST xsclass="underline" apply-templates

 select %expr; "node()"

 mode %qname; #IMPLIED>

<!ELEMENT xsclass="underline" apply-imports EMPTY>

<!-- xsclass="underline" sort не может встречаться после любых других элементов или

     любого символа, не являющегося разделителем -->

<!ELEMENT xsclass="underline" for-each

 (#PCDATA %instructions; %result-elements; | xsclass="underline" sort)*>

<!ATTLIST xsclass="underline" for-each

 select %expr; #REQUIRED

 %space-att;>

<!ELEMENT xsclass="underline" sort EMPTY>

<!ATTLIST xsclass="underline" sort

 select %expr; "."

 lang %avt; #IMPLIED

 data-type %avt; "text"

 order %avt; "ascending"

 case-order %avt; #IMPLIED>

<!ELEMENT xsclass="underline" if %template;>

<!ATTLIST xsclass="underline" if

 test %expr; #REQUIRED

 %space-att;>

<!ELEMENT xsclass="underline" choose (xsclass="underline" when+, xsclass="underline" otherwise?)>

<!ATTLIST xsclass="underline" choose %space-att;>

<!ELEMENT xsclass="underline" when %template;>

<!ATTLIST xsclass="underline" when

 test %expr; #REQUIRED

 %space-att;>

<!ELEMENT xsclass="underline" otherwise %template;>

<!ATTLIST xsclass="underline" otherwise %space-att;>

<!ELEMENT xsclass="underline" attribute-set (xsclass="underline" attribute)*>

<!ATTLIST xsclass="underline" attribute-set

 name %qname; #REQUIRED

 use-attribute-sets %qnames; #IMPLIED>

<!ELEMENT xsclass="underline" call-template (xsclass="underline" with-param)*>

<!ATTLIST xsclass="underline" call-template name %qname; #REQUIRED>

<!ELEMENT xsclass="underline" with-param %template;>

<!ATTLIST xsclass="underline" with-param

 name %qname; #REQUIRED

 select %expr; #IMPLIED>

<!ELEMENT xsclass="underline" variable %template;>

<!ATTLIST xsclass="underline" variable

 name %qname; #REQUIRED

 select %expr; #IMPLIED>

<!ELEMENT xsclass="underline" param %template;>

<!ATTLIST xsclass="underline" param

 name %qname; #REQUIRED

 select %expr; #IMPLIED>

<!ELEMENT xsclass="underline" text (#PCDATA)>

<!ATTLIST xsclass="underline" text disable-output-escaping (yes|no) "no">

<!ELEMENT xsclass="underline" processing-instruction %char-template;>

<!ATTLIST xsclass="underline" processing-instruction

 name %avt; #REQUIRED

 %space-att;>

<!ELEMENT xsclass="underline" element %template;>

<!ATTLIST xsclass="underline" element

 name %avt; #REQUIRED

 namespace %avt; #IMPLIED

 use-attribute-sets %qnames; #IMPLIED

 %space-att;>

<!ELEMENT xsclass="underline" attribute %char-template;>

<!ATTLIST xsclass="underline" attribute

 name %avt; #REQUIRED

 namespace %avt; #IMPLIED

 %space-att;>

<!ELEMENT xsclass="underline" comment %char-template;>

<!ATTLIST xsclass="underline" comment %space-att;>

<!ELEMENT xsclass="underline" copy %template;>

<!ATTLIST xsclass="underline" copy

 %space-att;

 use-attribute-sets %qnames; #IMPLIED

<!ELEMENT xsclass="underline" message %template;>

<!ATTLIST xsclass="underline" message

 %space-att;

 terminate (yes|no) "no">

<!ELEMENT xsclass="underline" fallback %template;>

<!ATTLIST xsclass="underline" fallback %space-att;>

Приложение Б Форматирующие свойства XSL-FO

В этом приложений перечислены все форматирующие свойства XSL-FO в спецификации XSL 1.0. Подробнее о свойствах XSL-FO можно узнать по адресу www.w3.org/TR/xsl/slice7.html. Многие свойства XSL-FO унаследованы из спецификации для каскадных таблиц стилей версии 2, которую вы можете найти по адресу www.w3.org/TR/REC-CSS2.

В следующем списке приведен синтаксис, используемый в этом приложении, соответствующий спецификации XSL-FO:

• <> обозначает единицы значений (см. таблицу В.1), или свойства (например, <color>), которые уже были определены;

• | означает вариант выбора, использовать можно только один из них;

• || означает вариант выбора, можно использовать один или несколько вариантов в любом порядке;

• [] означает групповые инструкции, вычисляемые во многом так же, как и математические выражения;

• * означает, что предыдущий терм может встречаться ноль или более раз;

• + означает, что предыдущий терм может встречаться один или более раз;

• ? означает, что предыдущий терм необязателен;

• {} окружают пары чисел, задающие минимальное и максимальное число раз встречи терма (как в {1, 4});

Во многих свойствах XSL-FO задан определенный формат для присваиваемых им значений, как, например <color> или <angle>. Эти форматы и их описание перечислены в следующем списке.

• <absolute-size>. Абсолютные размеры шрифта; могут быть xx-small, x-small, small (маленький), medium (средний), large (крупный), x-large, xx-large;

• <angle>. Углы; могут измеряться в deg (градусах), grad (градах) или rad (радианах);

• <border-style>. Граница прямоугольника, может принимать значения none (нет), dotted (пунктиром), dashed (штрихами), solid (непрерывная), double (двойная), groove (канавкой), ridge (с толстой кромкой), inset (вложенная) или outset (вынесенная);

• <border-width>. Устанавливает ширину границы: может принимать значения thin (тонкая), medium (средняя), thick (толстая) или явного размера;

• <color>. Цвет; может быть задан предопределенным значением цвета или тройным цветовым значением RGB;

• <country-language>. Устанавливается в значение <language>;

• <family-name>. Название семейства шрифтов, такого как Arial, Times New Roman или Courier;

• <frequency>. Значения частоты; единицами измерения могут быть Hz (Гц) или KHz (кГц);