blob: ed2ce425bda6e5e22bc99d27dc81464e3cf14fb8 [file] [log] [blame]
# =========================================================
#
# (c) 2004, RenderX
#
# Author: Alexander Peshkov <peshkov@renderx.com>
#
# Permission is granted to use this document, copy and
# modify free of charge, provided that every derived work
# bear a reference to the present document.
#
# This document contains a computer program written in
# XSL Transformations Language. It is published with no
# warranty of any kind about its usability, as a mere
# example of XSL technology. RenderX shall not be
# considered liable for any damage or loss of data caused
# by use of this program.
#
# =========================================================
namespace local = ""
default namespace fo = "http://www.w3.org/1999/XSL/Format"
namespace rx = "http://www.renderx.com/XSL/Extensions"
include "datatype.rnc"
# ===============================================================
# Common properties content models used by several attributes
# ===============================================================
border-style.attr-content =
"none"
| "hidden"
| "dotted"
| "dashed"
| "solid"
| "double"
| "groove"
| "ridge"
| "inset"
| "outset"
| "inherit"
orientation.attr-content =
"0"
| "90"
| "180"
| "270"
| "-90"
| "-180"
| "-270"
| "0deg"
| "90deg"
| "180deg"
| "270deg"
| "-90deg"
| "-180deg"
| "-270deg"
| "inherit"
keep.attr-content = "auto" | "always" | integer.datatype
# ===============================================================
# Definitions of all the attributes (properties) used in XSL FO
# includeing those from RX extensions
# (definitions of attributes bearing 'rx' namespace named as rx-...,
# but sorted according to the actual attribute name)
# ===============================================================
absolute-position.attr = attribute absolute-position {
"absolute" | "fixed"
}
#MEMO: We forced to separate this property from actual 'absolute-position'
container-position.attr = attribute absolute-position {
"auto" | "inherit" | expr.datatype
}
active-state.attr = attribute active-state {
"link" | "visited" | "active" | "hover" | "focus" | expr.datatype
}
alignment-adjust.attr = attribute alignment-adjust { text | expr.datatype }
alignment-baseline.attr = attribute alignment-baseline {
"auto"
| "baseline"
| "before-edge"
| "text-before-edge"
| "middle"
| "central"
| "after-edge"
| "text-after-edge"
| "top"
| "text-top"
| "bottom"
| "text-bottom"
| "ideographic"
| "alphabetic"
| "hanging"
| "mathematical"
| "inherit"
| expr.datatype
}
auto-restore.attr = attribute auto-restore { "true" | "false" | expr.datatype }
azimuth.attr = attribute azimuth { text | expr.datatype }
background.attr = attribute background { text | expr.datatype }
background-attachment.attr = attribute background-attachment { "scroll" | "fixed" | "inherit" | expr.datatype }
background-color.attr = attribute background-color { text | expr.datatype }
background-image.attr = attribute background-image { text | expr.datatype }
background-position.attr = attribute background-position { text | expr.datatype }
background-position-horizontal.attr = attribute background-position-horizontal { text | expr.datatype }
background-position-vertical.attr = attribute background-position-vertical { text | expr.datatype }
background-repeat.attr = attribute background-repeat {
"repeat" | "repeat-x" | "repeat-y" | "no-repeat" | "inherit" | expr.datatype
}
#RenderX extension attributes
rx-background-content-type.attr = attribute rx:background-content-type { text | expr.datatype }
rx-background-content-height.attr = attribute rx:background-content-height { text | expr.datatype }
rx-background-content-width.attr = attribute rx:background-content-width { text | expr.datatype }
rx-background-scaling.attr = attribute rx:background-scaling { "uniform" | "non-uniform" | expr.datatype }
baseline-shift.attr = attribute baseline-shift { text | expr.datatype }
blank-or-not-blank.attr = attribute blank-or-not-blank {
"blank" | "not-blank" | "any" | "inherit" | expr.datatype
}
block-progression-dimension.attr = attribute block-progression-dimension { text | expr.datatype }
block-progression-dimension.maximum.attr = attribute block-progression-dimension.maximum { text | expr.datatype }
block-progression-dimension.minimum.attr = attribute block-progression-dimension.minimum { text | expr.datatype }
block-progression-dimension.optimum.attr = attribute block-progression-dimension.optimum { text | expr.datatype }
border.attr = attribute border { text | expr.datatype }
border-after-color.attr = attribute border-after-color { text | expr.datatype }
border-after-precedence.attr = attribute border-after-precedence { text | expr.datatype }
border-after-style.attr = attribute border-after-style { border-style.attr-content | expr.datatype }
border-after-width.attr = attribute border-after-width { text | expr.datatype }
border-after-width.conditionality.attr = attribute border-after-width.conditionality { "discard" | "retain" | expr.datatype }
border-after-width.length.attr = attribute border-after-width.length { text | expr.datatype }
border-before-color.attr = attribute border-before-color { text | expr.datatype }
border-before-precedence.attr = attribute border-before-precedence { text | expr.datatype }
border-before-style.attr = attribute border-before-style { border-style.attr-content | expr.datatype }
border-before-width.attr = attribute border-before-width { text | expr.datatype }
border-before-width.conditionality.attr = attribute border-before-width.conditionality {
"discard" | "retain" | expr.datatype
}
border-before-width.length.attr = attribute border-before-width.length { text | expr.datatype }
border-bottom.attr = attribute border-bottom { text | expr.datatype }
border-bottom-color.attr = attribute border-bottom-color { text | expr.datatype }
border-bottom-style.attr = attribute border-bottom-style { border-style.attr-content | expr.datatype }
border-bottom-width.attr = attribute border-bottom-width { text | expr.datatype }
border-bottom-width.conditionality.attr = attribute border-bottom-width.conditionality {
"discard" | "retain" | expr.datatype
}
border-bottom-width.length.attr = attribute border-bottom-width.length { text | expr.datatype }
border-collapse.attr = attribute border-collapse {
"collapse" | "collapse-with-precedence" | "separate" | "inherit" | expr.datatype
}
border-color.attr = attribute border-color { text | expr.datatype }
border-end-color.attr = attribute border-end-color { text | expr.datatype }
border-end-precedence.attr = attribute border-end-precedence { text | expr.datatype }
border-end-style.attr = attribute border-end-style { border-style.attr-content | expr.datatype }
border-end-width.attr = attribute border-end-width { text | expr.datatype }
border-end-width.conditionality.attr = attribute border-end-width.conditionality { "discard" | "retain" | expr.datatype }
border-end-width.length.attr = attribute border-end-width.length { text | expr.datatype }
border-left.attr = attribute border-left { text | expr.datatype }
border-left-color.attr = attribute border-left-color { text | expr.datatype }
border-left-style.attr = attribute border-left-style { border-style.attr-content | expr.datatype }
border-left-width.attr = attribute border-left-width { text | expr.datatype }
border-left-width.conditionality.attr = attribute border-left-width.conditionality { "discard" | "retain" | expr.datatype }
border-left-width.length.attr = attribute border-left-width.length { text | expr.datatype }
border-right.attr = attribute border-right { text | expr.datatype }
border-right-color.attr = attribute border-right-color { text | expr.datatype }
border-right-style.attr = attribute border-right-style { border-style.attr-content | expr.datatype }
border-right-width.attr = attribute border-right-width { text | expr.datatype }
border-right-width.conditionality.attr = attribute border-right-width.conditionality { "discard" | "retain" | expr.datatype }
border-right-width.length.attr = attribute border-right-width.length { text | expr.datatype }
border-separation.attr = attribute border-separation { text | expr.datatype }
border-separation.block-progression-direction.attr = attribute border-separation.block-progression-direction { text | expr.datatype }
border-separation.inline-progression-direction.attr = attribute border-separation.inline-progression-direction { text | expr.datatype }
border-spacing.attr = attribute border-spacing { text | expr.datatype }
border-start-color.attr = attribute border-start-color { text | expr.datatype }
border-start-precedence.attr = attribute border-start-precedence { text | expr.datatype }
border-start-style.attr = attribute border-start-style { border-style.attr-content | expr.datatype }
border-start-width.attr = attribute border-start-width { text | expr.datatype }
border-start-width.conditionality.attr = attribute border-start-width.conditionality { "discard" | "retain" | expr.datatype }
border-start-width.length.attr = attribute border-start-width.length { text | expr.datatype }
border-style.attr = attribute border-style { text | expr.datatype }
border-top.attr = attribute border-top { text | expr.datatype }
border-top-color.attr = attribute border-top-color { text | expr.datatype }
border-top-style.attr = attribute border-top-style { border-style.attr-content | expr.datatype }
border-top-width.attr = attribute border-top-width { text | expr.datatype }
border-top-width.conditionality.attr = attribute border-top-width.conditionality { "discard" | "retain" | expr.datatype }
border-top-width.length.attr = attribute border-top-width.length { text | expr.datatype }
border-width.attr = attribute border-width { text | expr.datatype }
bottom.attr = attribute bottom { text | expr.datatype }
break-after.attr = attribute break-after {
"auto" | "column" | "page" | "even-page" | "odd-page" | "inherit" | expr.datatype
}
break-before.attr = attribute break-before {
"auto" | "column" | "page" | "even-page" | "odd-page" | "inherit" | expr.datatype
}
caption-side.attr = attribute caption-side {
"before"
| "after"
| "start"
| "end"
| "top"
| "bottom"
| "left"
| "right"
| "inherit"
| expr.datatype
}
case-name.attr = attribute case-name { text | expr.datatype }
case-title.attr = attribute case-title { text | expr.datatype }
character.attr = attribute character { text }
clear.attr = attribute clear {
"start" | "end" | "left" | "right" | "both" | "none" | "inherit" | expr.datatype
}
clip.attr = attribute clip { shape.datatype | "auto" | "inherit" | expr.datatype }
collapse-subtree.attr = attribute collapse-subtree { "true" | "false" | expr.datatype }
color.attr = attribute color { text | expr.datatype }
color-profile-name.attr = attribute color-profile-name { text }
column-count.attr = attribute column-count { text | expr.datatype }
column-gap.attr = attribute column-gap { text | expr.datatype }
column-number.attr = attribute column-number { text | expr.datatype }
column-width.attr = attribute column-width { text | expr.datatype }
content-height.attr = attribute content-height { text | expr.datatype }
content-type.attr = attribute content-type { text | expr.datatype }
content-width.attr = attribute content-width { text | expr.datatype }
country.attr = attribute country { text | expr.datatype }
cue.attr = attribute cue { text | expr.datatype }
cue-after.attr = attribute cue-after { text | expr.datatype }
cue-before.attr = attribute cue-before { text | expr.datatype }
destination-placement-offset.attr = attribute destination-placement-offset { text | expr.datatype }
direction.attr = attribute direction { "ltr" | "rtl" | "inherit" | expr.datatype }
display-align.attr = attribute display-align {
"auto" | "before" | "center" | "after" | "inherit" | expr.datatype
}
dominant-baseline.attr = attribute dominant-baseline {
"auto"
| "use-script"
| "no-change"
| "reset-size"
| "ideographic"
| "alphabetic"
| "hanging"
| "mathematical"
| "central"
| "middle"
| "text-after-edge"
| "text-before-edge"
| "inherit"
| expr.datatype
}
elevation.attr = attribute elevation { text | expr.datatype }
empty-cells.attr = attribute empty-cells { "show" | "hide" | "inherit" | expr.datatype }
end-indent.attr = attribute end-indent { text | expr.datatype }
ends-row.attr = attribute ends-row { "true" | "false" | expr.datatype }
extent.attr = attribute extent { text | expr.datatype }
external-destination.attr = attribute external-destination { text | expr.datatype }
#MEMO: We have separated this property into the two (for side and before floats)
#MEMO: Float values "inside" and "outside" are RenderX extensions.
before-float.attr = attribute float {
"before"
}
side-float.attr = attribute float {
"start" | "end" | "left" | "right" | "none" | "inside" | "outside" | "inherit" | expr.datatype
}
flow-name.attr = attribute flow-name { text }
font.attr = attribute font { text | expr.datatype }
font-family.attr = attribute font-family { text | expr.datatype }
font-selection-strategy.attr = attribute font-selection-strategy {
"auto" | "character-by-character" | "inherit" | expr.datatype
}
font-size.attr = attribute font-size { text | expr.datatype }
font-size-adjust.attr = attribute font-size-adjust { text | expr.datatype }
font-stretch.attr = attribute font-stretch {
"normal"
| "wider"
| "narrower"
| "ultra-condensed"
| "extra-condensed"
| "condensed"
| "semi-condensed"
| "semi-expanded"
| "expanded"
| "extra-expanded"
| "ultra-expanded"
| "inherit"
| expr.datatype
}
font-style.attr = attribute font-style {
"normal" | "italic" | "oblique" | "backslant" | "inherit" | expr.datatype
}
font-variant.attr = attribute font-variant { "normal" | "small-caps" | "inherit" | expr.datatype }
font-weight.attr = attribute font-weight {
"normal"
| "bold"
| "bolder"
| "lighter"
| "inherit"
| "100"
| "200"
| "300"
| "400"
| "500"
| "600"
| "700"
| "800"
| "900"
| expr.datatype
}
force-page-count.attr = attribute force-page-count {
"auto"
| "even"
| "odd"
| "end-on-even"
| "end-on-odd"
| "no-force"
| "inherit"
| expr.datatype
}
format.attr = attribute format { text }
glyph-orientation-horizontal.attr = attribute glyph-orientation-horizontal { orientation.attr-content | expr.datatype }
glyph-orientation-vertical.attr = attribute glyph-orientation-vertical { orientation.attr-content | expr.datatype }
grouping-separator.attr = attribute grouping-separator { text }
grouping-size.attr = attribute grouping-size { text | expr.datatype }
height.attr = attribute height { text | expr.datatype }
hyphenate.attr = attribute hyphenate { "false" | "true" | "inherit" | expr.datatype }
hyphenation-character.attr = attribute hyphenation-character { text }
hyphenation-keep.attr = attribute hyphenation-keep {
"auto" | "column" | "page" | "inherit" | expr.datatype
}
hyphenation-ladder-count.attr = attribute hyphenation-ladder-count { text | expr.datatype }
hyphenation-push-character-count.attr = attribute hyphenation-push-character-count { text | expr.datatype }
hyphenation-remain-character-count.attr = attribute hyphenation-remain-character-count { text | expr.datatype }
id.attr = attribute id { text }
indicate-destination.attr = attribute indicate-destination { "true" | "false" | expr.datatype }
initial-page-number.attr = attribute initial-page-number { text | expr.datatype }
inline-progression-dimension.attr = attribute inline-progression-dimension { text | expr.datatype }
inline-progression-dimension.maximum.attr = attribute inline-progression-dimension.maximum { text | expr.datatype }
inline-progression-dimension.minimum.attr = attribute inline-progression-dimension.minimum { text | expr.datatype }
inline-progression-dimension.optimum.attr = attribute inline-progression-dimension.optimum { text | expr.datatype }
internal-destination.attr = attribute internal-destination { text }
intrusion-displace.attr = attribute intrusion-displace {
"auto" | "none" | "line" | "indent" | "block" | "inherit" | expr.datatype
}
keep-together.attr = attribute keep-together { keep.attr-content | expr.datatype }
keep-together.within-column.attr = attribute keep-together.within-column { keep.attr-content | expr.datatype }
keep-together.within-line.attr = attribute keep-together.within-line { keep.attr-content | expr.datatype }
keep-together.within-page.attr = attribute keep-together.within-page { keep.attr-content | expr.datatype }
keep-with-next.attr = attribute keep-with-next { keep.attr-content | expr.datatype }
keep-with-next.within-column.attr = attribute keep-with-next.within-column { keep.attr-content | expr.datatype }
keep-with-next.within-line.attr = attribute keep-with-next.within-line { keep.attr-content | expr.datatype }
keep-with-next.within-page.attr = attribute keep-with-next.within-page { keep.attr-content | expr.datatype }
keep-with-previous.attr = attribute keep-with-previous { keep.attr-content | expr.datatype }
keep-with-previous.within-column.attr = attribute keep-with-previous.within-column { keep.attr-content | expr.datatype }
keep-with-previous.within-line.attr = attribute keep-with-previous.within-line { keep.attr-content | expr.datatype }
keep-with-previous.within-page.attr = attribute keep-with-previous.within-page { keep.attr-content | expr.datatype }
#RenderX extension attribute
rx-key.attr = attribute rx:key { text }
language.attr = attribute language { text | expr.datatype }
last-line-end-indent.attr = attribute last-line-end-indent { text | expr.datatype }
leader-alignment.attr = attribute leader-alignment {
"none" | "reference-area" | "page" | "inherit" | expr.datatype
}
leader-length.attr = attribute leader-length { text | expr.datatype }
leader-length.maximum.attr = attribute leader-length.maximum { text | expr.datatype }
leader-length.minimum.attr = attribute leader-length.minimum { text | expr.datatype }
leader-length.optimum.attr = attribute leader-length.optimum { text | expr.datatype }
leader-pattern.attr = attribute leader-pattern {
"space" | "rule" | "dots" | "use-content" | "inherit" | expr.datatype
}
leader-pattern-width.attr = attribute leader-pattern-width { text | expr.datatype }
left.attr = attribute left { text | expr.datatype }
letter-spacing.attr = attribute letter-spacing { text | expr.datatype }
letter-spacing.conditionality.attr = attribute letter-spacing.conditionality { "retain" | "discard" | expr.datatype }
letter-spacing.maximum.attr = attribute letter-spacing.maximum { text | expr.datatype }
letter-spacing.minimum.attr = attribute letter-spacing.minimum { text | expr.datatype }
letter-spacing.optimum.attr = attribute letter-spacing.optimum { text | expr.datatype }
letter-spacing.precedence.attr = attribute letter-spacing.precedence { text | expr.datatype }
letter-value.attr = attribute letter-value { "auto" | "alphabetic" | "traditional" | expr.datatype }
line-height.attr = attribute line-height { text | expr.datatype }
line-height-shift-adjustment.attr = attribute line-height-shift-adjustment { text | expr.datatype }
line-height.conditionality.attr = attribute line-height.conditionality { "retain" | "discard" | expr.datatype }
line-height.maximum.attr = attribute line-height.maximum { text | expr.datatype }
line-height.minimum.attr = attribute line-height.minimum { text | expr.datatype }
line-height.optimum.attr = attribute line-height.optimum { text | expr.datatype }
line-height.precedence.attr = attribute line-height.precedence { text | expr.datatype }
line-stacking-strategy.attr = attribute line-stacking-strategy {
"line-height" | "font-height" | "max-height" | "inherit" | expr.datatype
}
linefeed-treatment.attr = attribute linefeed-treatment {
"ignore"
| "preserve"
| "treat-as-space"
| "treat-as-zero-width-space"
| "inherit"
| expr.datatype
}
link-back.attr = attribute link-back { text | expr.datatype }
list-separator.attr = attribute list-separator { text }
margin.attr = attribute margin { text | expr.datatype }
margin-bottom.attr = attribute margin-bottom { text | expr.datatype }
margin-left.attr = attribute margin-left { text | expr.datatype }
margin-right.attr = attribute margin-right { text | expr.datatype }
margin-top.attr = attribute margin-top { text | expr.datatype }
marker-class-name.attr = attribute marker-class-name { text }
master-name.attr = attribute master-name { text }
master-reference.attr = attribute master-reference { text }
max-height.attr = attribute max-height { text | expr.datatype }
max-width.attr = attribute max-width { text | expr.datatype }
maximum-repeats.attr = attribute maximum-repeats { text | expr.datatype }
media-usage.attr = attribute media-usage {
"auto" | "paginate" | "bounded-in-one-dimension" | "unbounded" | expr.datatype
}
merge-subsequent-page-numbers.attr = attribute merge-subsequent-page-numbers { text | expr.datatype }
min-height.attr = attribute min-height { text | expr.datatype }
min-width.attr = attribute min-width { text | expr.datatype }
#NOTE: It's RenderX extension attribute (belongs to rx:meta-field). It enumerates values currently available in XEP
name.attr = attribute name {
"author" | "title" | "subject" | "keywords" | expr.datatype
}
number-columns-repeated.attr = attribute number-columns-repeated { text | expr.datatype }
number-columns-spanned.attr = attribute number-columns-spanned { text | expr.datatype }
number-rows-spanned.attr = attribute number-rows-spanned { text | expr.datatype }
odd-or-even.attr = attribute odd-or-even { "odd" | "even" | "any" | "inherit" | expr.datatype }
rx-table-omit-initial-header.attr = attribute rx:table-omit-initial-header { "true" | "false" | expr.datatype }
orphans.attr = attribute orphans { text | expr.datatype }
overflow.attr = attribute overflow {
"visible"
| "hidden"
| "scroll"
| "auto"
| "error-if-overflow"
| "inherit" | expr.datatype
}
padding.attr = attribute padding { text | expr.datatype }
padding-after.attr = attribute padding-after { text | expr.datatype }
padding-after.conditionality.attr = attribute padding-after.conditionality { "discard" | "retain" | expr.datatype }
padding-after.length.attr = attribute padding-after.length { text | expr.datatype }
padding-before.attr = attribute padding-before { text | expr.datatype }
padding-before.conditionality.attr = attribute padding-before.conditionality { "discard" | "retain" | expr.datatype }
padding-before.length.attr = attribute padding-before.length { text | expr.datatype }
padding-bottom.attr = attribute padding-bottom { text | expr.datatype }
padding-bottom.conditionality.attr = attribute padding-bottom.conditionality { "discard" | "retain" | expr.datatype }
padding-bottom.length.attr = attribute padding-bottom.length { text | expr.datatype }
padding-end.attr = attribute padding-end { text | expr.datatype }
padding-end.conditionality.attr = attribute padding-end.conditionality { "discard" | "retain" | expr.datatype }
padding-end.length.attr = attribute padding-end.length { text | expr.datatype }
padding-left.attr = attribute padding-left { text | expr.datatype }
padding-left.conditionality.attr = attribute padding-left.conditionality { "discard" | "retain" | expr.datatype }
padding-left.length.attr = attribute padding-left.length { text | expr.datatype }
padding-right.attr = attribute padding-right { text | expr.datatype }
padding-right.conditionality.attr = attribute padding-right.conditionality { "discard" | "retain" | expr.datatype }
padding-right.length.attr = attribute padding-right.length { text | expr.datatype }
padding-start.attr = attribute padding-start { text | expr.datatype }
padding-start.conditionality.attr = attribute padding-start.conditionality { "discard" | "retain" | expr.datatype }
padding-start.length.attr = attribute padding-start.length { text | expr.datatype }
padding-top.attr = attribute padding-top { text | expr.datatype }
padding-top.conditionality.attr = attribute padding-top.conditionality { "discard" | "retain" | expr.datatype }
padding-top.length.attr = attribute padding-top.length { text | expr.datatype }
page-break-after.attr = attribute page-break-after {
"auto" | "always" | "avoid" | "left" | "right" | "inherit" | expr.datatype
}
page-break-before.attr = attribute page-break-before {
"auto" | "always" | "avoid" | "left" | "right" | "inherit" | expr.datatype
}
page-break-inside.attr = attribute page-break-inside { "avoid" | "auto" | "inherit" | expr.datatype }
page-height.attr = attribute page-height { text | expr.datatype }
page-position.attr = attribute page-position {
"first" | "last" | "rest" | "any" | "inherit" | expr.datatype
}
page-width.attr = attribute page-width { text | expr.datatype }
pause.attr = attribute pause { text | expr.datatype }
pause-after.attr = attribute pause-after { text | expr.datatype }
pause-before.attr = attribute pause-before { text | expr.datatype }
pitch.attr = attribute pitch { text | expr.datatype }
pitch-range.attr = attribute pitch-range { text | expr.datatype }
play-during.attr = attribute play-during { text | expr.datatype }
#MEMO: We forced to devide this shorthand since we have separate absolute-container element
absolute-position-shorthand.attr = attribute position {
"absolute" | "fixed"
}
relative-position-shorthand.attr = attribute position {
"static" | "relative" | "inherit" | expr.datatype
}
precedence.attr = attribute precedence { "true" | "false" | "inherit" | expr.datatype }
provisional-distance-between-starts.attr = attribute provisional-distance-between-starts { text | expr.datatype }
provisional-label-separation.attr = attribute provisional-label-separation { text | expr.datatype }
range-separator.attr = attribute range-separator { text }
ref-id.attr = attribute ref-id { text }
ref-key.attr = attribute ref-key { text }
reference-orientation.attr = attribute reference-orientation { orientation.attr-content | expr.datatype }
region-name.attr = attribute region-name { text }
relative-align.attr = attribute relative-align { "before" | "baseline" | "inherit" | expr.datatype }
relative-position.attr = attribute relative-position {
"auto" | "static" | "relative" | "inherit" | expr.datatype
}
rendering-intent.attr = attribute rendering-intent {
"auto" | "perceptual" | "relative-colorimetric" | "saturation" | "absolute-colorimetric" | "inherit" | expr.datatype
}?
retrieve-boundary.attr = attribute retrieve-boundary { "page" | "page-sequence" | "document" | expr.datatype }
retrieve-class-name.attr = attribute retrieve-class-name { text }
retrieve-position.attr = attribute retrieve-position {
"first-starting-within-page"
| "first-including-carryover"
| "last-starting-within-page"
| "last-ending-within-page"
| expr.datatype
}
richness.attr = attribute richness { text | expr.datatype }
right.attr = attribute right { text | expr.datatype }
role.attr = attribute role { text }
rule-style.attr = attribute rule-style {
"none"
| "dotted"
| "dashed"
| "solid"
| "double"
| "groove"
| "ridge"
| "inherit"
| expr.datatype
}
rule-thickness.attr = attribute rule-thickness { text | expr.datatype }
scaling.attr = attribute scaling { "uniform" | "non-uniform" | "inherit" | expr.datatype }
scaling-method.attr = attribute scaling-method {
"auto" | "integer-pixels" | "resample-any-method" | "inherit" | expr.datatype
}
score-spaces.attr = attribute score-spaces { "true" | "false" | "inherit" | expr.datatype }
script.attr = attribute script { text | expr.datatype }
show-destination.attr = attribute show-destination { "replace" | "new" | expr.datatype }
size.attr = attribute size { text | expr.datatype }
source-document.attr = attribute source-document { text }
space-after.attr = attribute space-after { text | expr.datatype }
space-after.conditionality.attr = attribute space-after.conditionality { "retain" | "discard" | expr.datatype }
space-after.maximum.attr = attribute space-after.maximum { text | expr.datatype }
space-after.minimum.attr = attribute space-after.minimum { text | expr.datatype }
space-after.optimum.attr = attribute space-after.optimum { text | expr.datatype }
space-after.precedence.attr = attribute space-after.precedence { text | expr.datatype }
space-before.attr = attribute space-before { text | expr.datatype }
space-before.conditionality.attr = attribute space-before.conditionality { "retain" | "discard" | expr.datatype }
space-before.maximum.attr = attribute space-before.maximum { text | expr.datatype }
space-before.minimum.attr = attribute space-before.minimum { text | expr.datatype }
space-before.optimum.attr = attribute space-before.optimum { text | expr.datatype }
space-before.precedence.attr = attribute space-before.precedence { text | expr.datatype }
space-end.attr = attribute space-end { text | expr.datatype }
space-end.conditionality.attr = attribute space-end.conditionality { "retain" | "discard" | expr.datatype }
space-end.maximum.attr = attribute space-end.maximum { text | expr.datatype }
space-end.minimum.attr = attribute space-end.minimum { text | expr.datatype }
space-end.optimum.attr = attribute space-end.optimum { text | expr.datatype }
space-end.precedence.attr = attribute space-end.precedence { text | expr.datatype }
space-start.attr = attribute space-start { text | expr.datatype }
space-start.conditionality.attr = attribute space-start.conditionality { "retain" | "discard" | expr.datatype }
space-start.maximum.attr = attribute space-start.maximum { text | expr.datatype }
space-start.minimum.attr = attribute space-start.minimum { text | expr.datatype }
space-start.optimum.attr = attribute space-start.optimum { text | expr.datatype }
space-start.precedence.attr = attribute space-start.precedence { text | expr.datatype }
span.attr = attribute span { "none" | "all" | "inherit" | expr.datatype }
speak.attr = attribute speak { "normal" | "none" | "spell-out" | "inherit" | expr.datatype }
speak-header.attr = attribute speak-header { "once" | "always" | "inherit" | expr.datatype }
speak-numeral.attr = attribute speak-numeral { "digits" | "continuous" | "inherit" | expr.datatype }
speak-punctuation.attr = attribute speak-punctuation { "code" | "none" | "inherit" | expr.datatype }
speech-rate.attr = attribute speech-rate { text | expr.datatype }
src.attr = attribute src { text | expr.datatype }
start-indent.attr = attribute start-indent { text | expr.datatype }
starting-state.attr = attribute starting-state { text | expr.datatype }
starts-row.attr = attribute starts-row { "true" | "false" | expr.datatype }
stress.attr = attribute stress { text | expr.datatype }
suppress-at-line-break.attr = attribute suppress-at-line-break {
"auto" | "suppress" | "retain" | "inherit" | expr.datatype
}
switch-to.attr = attribute switch-to { text | expr.datatype }
table-layout.attr = attribute table-layout { "auto" | "fixed" | "inherit" | expr.datatype }
table-omit-footer-at-break.attr = attribute table-omit-footer-at-break { "true" | "false" | "inherit" | expr.datatype }
table-omit-header-at-break.attr = attribute table-omit-header-at-break {
"true" | "false" | "inherit" | expr.datatype
}
target-presentation-context.attr = attribute target-presentation-context { text }
target-processing-context.attr = attribute target-processing-context { text }
target-stylesheet.attr = attribute target-stylesheet { text }
#MEMO: <string> values are temporarily excluded from text-align and text-align-last
text-align.attr = attribute text-align {
"start"
| "center"
| "end"
| "justify"
| "inside"
| "outside"
| "left"
| "right"
| "inherit"
| expr.datatype
}
text-align-last.attr = attribute text-align-last {
"relative"
| "start"
| "center"
| "end"
| "justify"
| "inside"
| "outside"
| "left"
| "right"
| "inherit"
| expr.datatype
}
text-altitude.attr = attribute text-altitude { text | expr.datatype }
text-decoration.attr = attribute text-decoration { xsd:NMTOKENS | expr.datatype }
text-depth.attr = attribute text-depth { text | expr.datatype }
text-indent.attr = attribute text-indent { text | expr.datatype }
text-shadow.attr = attribute text-shadow { text | expr.datatype }
text-transform.attr = attribute text-transform {
"capitalize" | "uppercase" | "lowercase" | "none" | "inherit" | expr.datatype
}
top.attr = attribute top { text | expr.datatype }
treat-as-word-space.attr = attribute treat-as-word-space {
"auto" | "true" | "false" | "inherit" | expr.datatype
}
unicode-bidi.attr = attribute unicode-bidi {
"normal" | "embed" | "bidi-override" | "inherit" | expr.datatype
}
value.attr = attribute value { text }
vertical-align.attr = attribute vertical-align { text | expr.datatype }
visibility.attr = attribute visibility {
"visible" | "hidden" | "collapse" | "inherit" | expr.datatype
}
voice-family.attr = attribute voice-family { text | expr.datatype }
volume.attr = attribute volume { text | expr.datatype }
white-space.attr = attribute white-space { "normal" | "pre" | "nowrap" | "inherit" | expr.datatype }
white-space-collapse.attr = attribute white-space-collapse { "false" | "true" | "inherit" | expr.datatype }
white-space-treatment.attr = attribute white-space-treatment {
"ignore"
| "preserve"
| "ignore-if-before-linefeed"
| "ignore-if-after-linefeed"
| "ignore-if-surrounding-linefeed"
| "inherit"
| expr.datatype
}
widows.attr = attribute widows { text | expr.datatype }
width.attr = attribute width { text | expr.datatype }
word-spacing.attr = attribute word-spacing { text | expr.datatype }
word-spacing.conditionality.attr = attribute word-spacing.conditionality { "retain" | "discard" | expr.datatype }
word-spacing.maximum.attr = attribute word-spacing.maximum { text | expr.datatype }
word-spacing.minimum.attr = attribute word-spacing.minimum { text | expr.datatype }
word-spacing.optimum.attr = attribute word-spacing.optimum { text | expr.datatype }
word-spacing.precedence.attr = attribute word-spacing.precedence { text | expr.datatype }
wrap-option.attr = attribute wrap-option { "no-wrap" | "wrap" | "inherit" | expr.datatype }
writing-mode.attr = attribute writing-mode {
"lr-tb" | "rl-tb" | "tb-rl" | "lr" | "rl" | "tb" | "inherit" | expr.datatype
}
z-index.attr = attribute z-index { text | expr.datatype }