Chapter 11 of the IREn User Guide
XSL-FO Conformance
A.1. XSL-FO Support
This appendix describes the implementation of XSL Formatting Objects in IREn — an XSL Engine for PDF developed by RenderX, Inc, version 4.31.529. It lists all supported formatting objects and their properties, provides information about fallbacks for unsupported objects and discusses details of interpretation of XSL specifications adopted in the engine.
Note: IREn implements Extensible Stylesheet Language version 1.0 as specified in the XSL 1.0 Recommendation of October 15, 2001.
See also Appendix B.
A.1.1. Formatting Objects Supported by IREn
§
Object Name
Supported
6.4.2
<fo:root>
Yes
6.4.3
<fo:declarations>
No
6.4.4
<fo:color-profile>
No
6.4.5
<fo:page-sequence>
Yes
6.4.6
<fo:layout-master-set>
Yes
6.4.7
<fo:page-sequence-master>
Yes
6.4.8
<fo:single-page-master-reference>
Yes
6.4.9
<fo:repeatable-page-master-reference>
Yes
6.4.10
<fo:repeatable-page-master-alternatives>
Yes
6.4.11
<fo:conditional-page-master-reference>
Yes
6.4.12
<fo:simple-page-master>
Yes
6.4.13
<fo:region-body>
Yes
6.4.14
<fo:region-before>
Yes
6.4.15
<fo:region-after>
Yes
6.4.16
<fo:region-start>
Yes
6.4.17
<fo:region-end>
Yes
6.4.18
<fo:flow>
Yes
6.4.19
<fo:static-content>
Yes
6.4.20
<fo:title>
No
6.5.2
<fo:block>
Yes
6.5.3
<fo:block-container>
Yes
6.6.2
<fo:bidi-override>
Yes
6.6.3
<fo:character>
Yes
6.6.4
<fo:initial-property-set>
Yes
6.6.5
<fo:external-graphic>
Yes
6.6.6
<fo:instream-foreign-object>
Yes[a]
6.6.7
<fo:inline>
Yes
6.6.8
<fo:inline-container>
No[b]
6.6.9
<fo:leader>
Yes[c]
6.6.10
<fo:page-number>
Yes
6.6.11
<fo:page-number-citation>
Yes
6.7.2
<fo:table-and-caption>
Yes
6.7.3
<fo:table>
Yes
6.7.4
<fo:table-column>
Yes
6.7.5
<fo:table-caption>
Yes
6.7.6
<fo:table-header>
Yes
6.7.7
<fo:table-footer>
Yes
6.7.8
<fo:table-body>
Yes
6.7.9
<fo:table-row>
Yes
6.7.10
<fo:table-cell>
Yes
6.8.2
<fo:list-block>
Yes
6.8.3
<fo:list-item>
Yes
6.8.4
<fo:list-item-body>
Yes
6.8.5
<fo:list-item-label>
Yes
6.9.2
<fo:basic-link>
Yes
6.9.3
<fo:multi-switch>
-
6.9.4
<fo:multi-case>
-
6.9.5
<fo:multi-toggle>
-
6.9.6
<fo:multi-properties>
-
6.9.7
<fo:multi-property-set>
-
6.10.2
<fo:float>
Yes[d]
6.10.3
<fo:footnote>
Yes
6.10.4
<fo:footnote-body>
Yes
6.11.2
<fo:wrapper>
Yes
6.11.3
<fo:marker>
Yes[e]
6.11.4
<fo:retrieve-marker>
Yes
[a] <fo:instream-foreign-object> can host SVG graphics.
[b] All content is placed inline.
[c] In this version, only plain text can be put inside leaders with leader-pattern="use-content".
[d] Top-floats (float="before") area is drawn on top of the following page.
[e] In the current version, markers cannot be specified as children of <fo:wrapper>.
A.1.2. Formatting Properties Supported by IREn
§
Property Name
Implemented
7.4.1
source-document
No
7.4.2
role
No
7.5.1
absolute-position
Yes[a]
7.5.2
top
Yes
7.5.3
right
Yes
7.5.4
bottom
Yes
7.5.5
left
Yes
7.6.1
azimuth
-
7.6.2
cue-after
-
7.6.3
cue-before
-
7.6.4
elevation
-
7.6.5
pause-after
-
7.6.6
pause-before
-
7.6.7
pitch
-
7.6.8
pitch-range
-
7.6.9
play-during
-
7.6.10
richness
-
7.6.11
speak
-
7.6.12
speak-header
-
7.6.13
speak-numeral
-
7.6.14
speak-punctuation
-
7.6.15
speech-rate
-
7.6.16
stress
-
7.6.17
voice-family
-
7.6.18
volume
-
7.7.1
background-attachment
Yes
7.7.2
background-color
Yes
7.7.3
background-image
Yes
7.7.4
background-repeat
Yes
7.7.5
background-position-horizontal
Yes[b]
7.7.6
background-position-vertical
Yes[b]
7.7.7
border-before-color
Yes
7.7.8
border-before-style
Yes
7.7.9
border-before-width
Yes
7.7.10
border-after-color
Yes
7.7.11
border-after-style
Yes
7.7.12
border-after-width
Yes
7.7.13
border-start-color
Yes
7.7.14
border-start-style
Yes
7.7.15
border-start-width
Yes
7.7.16
border-end-color
Yes
7.7.17
border-end-style
Yes
7.7.18
border-end-width
Yes
7.7.19
border-top-color
Yes
7.7.20
border-top-style
Yes
7.7.21
border-top-width
Yes
7.7.22
border-bottom-color
Yes
7.7.23
border-bottom-style
Yes
7.7.24
border-bottom-width
Yes
7.7.25
border-left-color
Yes
7.7.26
border-left-style
Yes
7.7.27
border-left-width
Yes
7.7.28
border-right-color
Yes
7.7.29
border-right-style
Yes
7.7.30
border-right-width
Yes
7.7.31
padding-before
Yes
7.7.32
padding-after
Yes
7.7.33
padding-start
Yes
7.7.34
padding-end
Yes
7.7.35
padding-top
Yes
7.7.36
padding-bottom
Yes
7.7.37
padding-left
Yes
7.7.38
padding-right
Yes
7.8.2
font-family
Yes
7.8.3
font-selection-strategy
Yes
7.8.4
font-size
Yes
7.8.5
font-stretch
Yes
7.8.6
font-size-adjust
Yes
7.8.7
font-style
Yes
7.8.8
font-variant
No
7.8.9
font-weight
Yes
7.9.1
country
No
7.9.2
language
Yes
7.9.3
script
No
7.9.4
hyphenate
Yes
7.9.5
hyphenation-character
Yes
7.9.6
hyphenation-push-character-count
Yes
7.9.7
hyphenation-remain-character-count
Yes
7.10.1
margin-top
Yes
7.10.2
margin-bottom
Yes
7.10.3
margin-left
Yes
7.10.4
margin-right
Yes
7.10.5
space-before
Yes
7.10.6
space-after
Yes[c]
7.10.7
start-indent
Yes
7.10.8
end-indent
Yes
7.11.1
space-end
Yes
7.11.2
space-start
Yes
7.12.1
relative-position
No
7.13.1
alignment-adjust
Yes
7.13.2
alignment-baseline
Yes
7.13.3
baseline-shift
Yes
7.13.4
display-align
Yes
7.13.5
dominant-baseline
Yes
7.13.6
relative-align
Yes[d]
7.14.1
block-progression-dimension
Yes
7.14.2
content-height
Yes[e]
7.14.3
content-width
Yes[e]
7.14.4
height
Yes
7.14.5
inline-progression-dimension
Yes
7.14.6
max-height
No[f]
7.14.7
max-width
No[g]
7.14.8
min-height
No[h]
7.14.9
min-width
No[i]
7.14.10
scaling
Yes
7.14.11
scaling-method
No
7.14.12
width
Yes
7.15.1
hyphenation-keep
No
7.15.2
hyphenation-ladder-count
No
7.15.3
last-line-end-indent
Yes
7.15.4
line-height
Yes
7.15.5
line-height-shift-adjustment
Yes
7.15.6
line-stacking-strategy
Yes
7.15.7
linefeed-treatment
Yes[j]
7.15.8
white-space-treatment
Yes
7.15.9
text-align
Yes[k]
7.15.10
text-align-last
Yes
7.15.11
text-indent
Yes
7.15.12
white-space-collapse
Yes[l]
7.15.13
wrap-option
Yes
7.16.1
character
Yes
7.16.2
letter-spacing
Yes
7.16.3
suppress-at-line-break
No
7.16.4
text-decoration
Yes
7.16.5
text-shadow
Yes[m]
7.16.6
text-transform
Yes[n]
7.16.7
treat-as-word-space
No
7.16.8
word-spacing
Yes
7.17.1
color
Yes
7.17.2
color-profile-name
No
7.17.3
rendering-intent
No
7.18.1
clear
Yes
7.18.2
float
Yes[o]
7.18.3
intrusion-displace
Yes[p]
7.19.1
break-after
Yes
7.19.2
break-before
Yes
7.19.3
keep-together
Yes[q]
7.19.4
keep-with-next
Yes[q]
7.19.5
keep-with-previous
Yes[q]
7.19.6
orphans
Yes
7.19.7
widows
Yes
7.20.1
clip
No
7.20.2
overflow
Yes[r]
7.20.3
reference-orientation
Yes
7.20.4
span
Yes
7.21.1
leader-alignment
No
7.21.2
leader-pattern
Yes
7.21.3
leader-pattern-width
Yes
7.21.4
leader-length
Yes
7.21.5
rule-style
Yes
7.21.6
rule-thickness
Yes
7.22.1
active-state
-
7.22.2
auto-restore
-
7.22.3
case-name
-
7.22.4
case-title
-
7.22.5
destination-placement-offset
No
7.22.6
external-destination
Yes[s]
7.22.7
indicate-destination
No
7.22.8
internal-destination
Yes
7.22.9
show-destination
Yes[t]
7.22.10
starting-state
-
7.22.11
switch-to
-
7.22.12
target-presentation-context
-
7.22.13
target-processing-context
-
7.22.14
target-stylesheet
-
7.23.1
marker-class-name
Yes
7.23.2
retrieve-class-name
Yes
7.23.3
retrieve-position
Yes
7.23.4
retrieve-boundary
Yes
7.24.1
format
Yes
7.24.2
grouping-separator
No
7.24.3
grouping-size
No
7.24.4
letter-value
No
7.25.1
blank-or-not-blank
Yes
7.25.2
column-count
Yes
7.25.3
column-gap
Yes
7.25.4
extent
Yes
7.25.5
flow-name
Yes
7.25.6
force-page-count
Yes[u]
7.25.7
initial-page-number
Yes
7.25.8
master-name
Yes
7.25.9
master-reference
Yes
7.25.10
maximum-repeats
Yes
7.25.11
media-usage
No
7.25.12
odd-or-even
Yes
7.25.13
page-height
Yes
7.25.14
page-position
Yes
7.25.15
page-width
Yes
7.25.16
precedence
Yes
7.25.17
region-name
Yes
7.26.1
border-after-precedence
Yes
7.26.2
border-before-precedence
Yes
7.26.3
border-collapse
Yes
7.26.4
border-end-precedence
Yes
7.26.5
border-separation
Yes
7.26.6
border-start-precedence
Yes
7.26.7
caption-side
Yes[v]
7.26.8
column-number
Yes
7.26.9
column-width
Yes
7.26.10
empty-cells
No[w]
7.26.11
ends-row
Yes
7.26.12
number-columns-repeated
Yes
7.26.13
number-columns-spanned
Yes
7.26.14
number-rows-spanned
Yes
7.26.15
starts-row
Yes
7.26.16
table-layout
Yes
7.26.17
table-omit-footer-at-break
Yes
7.26.18
table-omit-header-at-break
Yes
7.27.1
direction
Yes
7.27.2
glyph-orientation-horizontal
No
7.27.3
glyph-orientation-vertical
No
7.27.4
text-altitude
Yes
7.27.5
text-depth
Yes
7.27.6
unicode-bidi
Yes[x]
7.27.7
writing-mode
Yes[y]
7.28.1
content-type
Yes
7.28.2
id
Yes
7.28.3
provisional-label-separation
Yes
7.28.4
provisional-distance-between-starts
Yes
7.28.5
ref-id
Yes
7.28.6
score-spaces
No
7.28.7
src
Yes[z]
7.28.8
visibility
No
7.28.9
z-index
Yes[aa]
7.29.1
background
Yes
7.29.2
background-position
Yes
7.29.3
border
Yes
7.29.4
border-bottom
Yes
7.29.5
border-color
Yes
7.29.6
border-left
Yes
7.29.7
border-right
Yes
7.29.8
border-style
Yes
7.29.9
border-spacing
Yes
7.29.10
border-top
Yes
7.29.11
border-width
Yes
7.29.12
cue
-
7.29.13
font
Yes
7.29.14
margin
Yes
7.29.15
padding
Yes
7.29.16
page-break-after
Yes
7.29.17
page-break-before
Yes
7.29.18
page-break-inside
Yes
7.29.19
pause
-
7.29.20
position
Yes
7.29.21
size
Yes
7.29.22
vertical-align
Yes
7.29.23
white-space
Yes
7.29.24
xml:lang
No
[a] absolute-position="fixed" works on <fo:block-container> only.
[b] When the background image is repeated along an axis, its offset on this axis is ignored.
[c] space-after.conditionality="discard" is not implemented, fallback value is "retain".
[d] Supported on <fo:list-item>. On <fo:table-cell> elements, falls back to relative-align="before".
[e] The values "scale-up-to-fit" and "scale-down-to-fit" introduced in XSL 1.1, as well as the attributes allowed-width-scale and allowed-height-scale, are supported
Starting from version 4.19.
[f] Maps to height.
[g] Maps to width.
[h] Maps to height.
[i] Maps to width.
[j] Value "treat-as-zero-width-space" for linefeed-treatment is not implemented. This property does not work on inlines.
[k] <string> values for text-align are not implemented. text-align on <fo:table-and-caption> is not implemented.
[l] This property does not work on inlines.
[m] Blurred shadows are not supported; blur radius is ignored.
[n] To transform a Unicode character to uppercase/lowercase, IREn uses methods provided by the runtime (Java or .NET). In order for this property to work as expected, you should use correct Unicode values for glyphs in your fonts, and set up local information in your environment properly.
[o] Two additional values, "inside" and "outside", are supported. Their meaning is the same as in text-align property.
[p] "indent" value is not implemented.
[q] .within-page component is unsupported; it is mapped to .within-column. Only "auto" and "always" values are recognized properly: numeric values are treated as "always". In tables, keep-with-previous/keep-with-next traits ignore table headers and footers: e.g. keep-with-previous condition specified on a row will keep it with the previous one regardless of the intervening header. If specified on the first row of the first <fo:table-body> in a table, keep-with-previous will attach the whole table to the preceding block-level element.
[r] Supported on side floats and absolutely positioned and rotated block-containers with fixed dimensions. When "error-if-overflow" is specified, a warning is issued on overflow, and the element is discarded in the same way as for "hidden" value.
[s] In PDF and PostScript generators, URLs starting with explicit "file:" protocol specification are rendered as PDF-to-PDF links ("remote go-to actions"). All other links are treated as Internet URIs, and open in a browser.
[t] show-destination is honored for creation of links between PDF documents ("remote go-to actions") in PDF and PostScript generators. In other cases, the attribute is not applicable.
[u] Value domain "xN" where x is a literal "x" and N is and integer greater than 1 is a RenderX extension. An <fo:page-sequence> with such value of force-page-count generates a number of pages that is a multiple of N. Blank pages are padded to satisfy this requirement.
[v] Only "before" and "after" values are implemented: caption-side="start" falls back to "before," and caption-side="end" falls back to "after."
[w] In the current implementation, all cells present in the source document are shown regardless of whether their content is empty; cells not presented in the source aren't visible at all.
[x] Bidi implementation differs from Unicode Bidi algorithm: any markup element opens a new level of embedding. Consequently, unicode-bidi="normal" is not supported (treated as "embed"); see detailed discussion below.
[y] Only "lr-tb" and "rl-tb" values are supported. All other values are treated as "lr-tb."
[z] In addition to protocols provided by the runtime (Java or .NET), IREn supports data: URI scheme (RFC 2397).
[aa] z-index property is supported for block-containers with absolute-position="fixed".
A.1.3. Notes on Formatting Objects Implementation
-
<fo:block>According to the specification, an empty block that has a non-null padding and/or border should be visible. IREn suppresses all blocks that have no visible contents regardless of their border or padding attributes. -
<fo:bidi-override>In the current implementation of bidi algorithm, any markup element opens a new level of embedding. Consequently,unicode-bidi="normal"is not supported:<fo:bidi-override>behaves as ifunicode-bidi="embed"were specified. -
<fo:inline-container>Unsupported; contents are placed inline. -
<fo:multi-switch>,<fo:multi-case>,<fo:multi-toggle>,<fo:multi-properties>,<fo:multi-property-set>Unsupported; contents are ignored. These elements deal with interactivity. Since PDF and PostScript are intrinsically static formats, none of them are applicable. -
<fo:float>The before-float appears at the top of the next page. -
<fo:table-caption>Only"before"and"after"captions are implemented. Side captions are treated as follows:caption-side="start"falls back to"before", andcaption-side="end"falls back to"after." -
<fo:table-footer>Table footer repetition is not implemented. The element is drawn once at the end of table. -
<fo:table-column>In the collapsed border model, only border-start and border-end are supported on<fo:table-column>elements. -
<fo:table-row>In the collapsed border model, only border-before and border-after are supported on<fo:table-row>elements. -
<fo:table-cell>If a cell spans multiple rows in a table with a collapsed border model, its border-after is taken from the row where the cell begins. -
<fo:leader>In this version, leaders withleader-pattern="use-content"can only contain plain text inside; all formatting is lost. -
<fo:marker>This version cannot process markers specified as children of an<fo:wrapper>.
A.1.4. Supported Expressions
IREn implements a subset of XSL algebraic expressions. The following operators and functions are recognized:
-
Arithmetical operators:
+,-,*,div,mod -
floor() -
ceiling() -
round() -
abs() -
max() -
min() -
rgb() -
rgb-icc()(supported partially — see notes below) -
from-nearest-specified-value() -
from-parent() -
from-table-column() -
inherited-property-value() -
proportional-column-width() -
body-start()(standalone use only, cannot be an operand in expressions) -
label-end()(standalone use only, cannot be an operand in expressions)
Function rgb-icc() recognizes four predefined color profile names: #Grayscale, #CMYK, #SpotColor, and #Registration (see details below). For any other value of the fourth parameter, the function returns the fallback RGB color. ICC profiles are not supported.
Support for expressions is subject to the following limitations:
-
For compound expressions, the result of evaluation of all intermediate subexpressions must be a valid XSL type. For example, expression
(2in * 2in) div 1inis not supported because its first subexpression yields dimensionality of square inches, which is not a valid XSL unit; while2in * (2in div 1in)works. -
Expressions that require knowledge of layout to evaluate (e.g. Block widths expressed in percentages) can only be used as standalone expressions, not parts of a bigger expression, and cannot be referenced by property-value functions. The same limitation applies to
body-start()andlabel-end()functions. -
Property value functions (
from-nearest-specified-value(),from-parent(),from-table-column(),inherited-property-value()) cannot be used in shorthands, and cannot take shorthand property names as their arguments. -
Property value functions that take
start-indent/end-indentas arguments may not work correctly if the block with indents is placed into another block that has CSS-stylemargin-*attributes. For safety, use either expressions with indents, or CSS margins; mixing these two coding styles in the same stylesheet may yield unpredictable results.
A.1.5. Color Specifiers
IREn can produce PDF and PostScript output using the following color types:
-
Grayscale. The following specifiers produce grayscale color output:
-
Predefined HTML and SVG names that correspond to RGB values with
R=G=B:white,black,silver,gray,grey,lightgray,lightgrey,darkgray,darkgrey,dimgray,dimgrey,whitesmoke,gainsboro. -
HTML-style RGB values with
R=G=B:#555,#9D9D9D, etc. -
rgb-icc()function with built-in#Grayscalepseudo profile. Gray tone intensity is specified as a real value in the range0.0–1.0, the 5th argument to the function. Example:rgb-icc (128, 128, 128, #Grayscale, 0.5)
-
-
RGB. The following specifiers produce RGB color output:
-
HTML and SVG predefined names, and RGB specifiers that are not mentioned above.
-
rgb()function. Values of color components are specified as real values in the range0.0–255.0. Example:rgb (127.5, 39.86, 255)
-
-
CMYK. The following specifier produce CMYK color output:
-
rgb-icc()function with built-in#CMYKpseudo profile. Ink values are specified as real values in the range0.0–1.0, arguments from 5th to 8th; order of inks iscyan–magenta–yellow–black. Example:rgb-icc (255, 255, 0, #CMYK, 0, 0, 1, 0)
-
-
Spot colors. The following specifiers produce spot color output:
-
rgb-icc()function with built-in#SpotColorpseudo profile. The 5th argument is the colorant name, specified as a string; use quotes if the name contains spaces. The 6th argument is the tint value, specified as a real number in the range0.0–1.0. These mandatory attributes may be followed by an optional specification of the alternate color for the colorant, in either CMYK or grayscale color space: 7th argument is the color space name (either#CMYKor#Grayscale), and the rest are component intensities (1 for grayscale, 4 for CMYK).Note: The alternate color specifies an equivalent representation for the full colorant intensity. Occurrences of the same spot color with different tints should have the same alternate color specifier.
If the alternate color is not specified, IREn looks it up in SpotColor matching table (path to the table is defined by the
<SPOT_COLOR_TRANSLATION_TABLE>option); if no matches found, black color in grayscale color space is used.Examples:
rgb-icc(255,255,0, #SpotColor,'PANTONE Orange 021 C',0.33) rgb-icc(255,255,0, #SpotColor,'PANTONE 169 M',0.5, #CMYK,0,0.2,0.2,0) rgb-icc(255,255,0, #SpotColor,MyColor,0.33, #Grayscale,0.5)
-
-
Registration color. The following specifier produces registration (all-colorants) color output:
-
rgb-icc()function with built-in#Registrationpseudo profile. Tint intensity is specified as a real value in the range0.0–1.0, the 5th argument to the function. Example:rgb-icc (128, 128, 128, #Registration, 0.5)
-
A.2. XSL 1.1 Support
XSL 1.1 Recommendation introduced a number of new features compared to XSL 1.0. Some of these new features closely match existing RenderX extensions. Before version 4.19, IREn included an XSLT stylesheet to convert XSL 1.1 elements and attributes to XSL 1.0 with RenderX extensions.
Starting from version 4.19 and later this conversion is perfomed in Java code for higher perfomance and lower memory requirements.
The new features of XSL 1.1 that are supported by converting to RenderX extensions are the following:
Since there is no correspondence in RenderX extensions for some elements and attributes from XSL 1.1, they are ignored by IREn core. Following is a list of unsupported XSL 1.1 elements and attributes:
-
<fo:page-sequence-wrapper> -
<fo:flow-map> -
<fo:flow-assignment> -
<fo:flow-source-list> -
<fo:flow-target-list> -
<fo:flow-name-specifier> -
<fo:region-name-specifier> -
<fo:index-page-number-prefix> -
<fo:index-page-number-suffix> -
@index-class -
@merge-ranges-across-index-key-references -
@merge-pages-across-index-key-references -
<fo:scaling-value-citation>
A.2.1. Document Outline (Bookmarks)
| § | XSL 1.1 Object/Property Name | RenderX Extensions Object/Property Name |
|---|---|---|
| 6.11.1 | <fo:bookmark-tree> | <rx:outline> |
| 6.11.2 | <fo:bookmark> | <rx:bookmark> |
| 6.11.3 | <fo:bookmark-title> | <rx:bookmark-label> |
| 7.23.6 | external-destination | external-destination |
| 7.23.8 | internal-destination | internal-destination |
| 7.23.10 | starting-state | collapse-subtree |
| 7.18.1 | color | color |
| 7.9.7 | font-style | font-style |
| 7.9.9 | font-weight | font-weight |
Note: The appearance of bookmark label (
color,font-styleandfont-weightattributes) is only supported in the PDF generatorStarting from version 4.19, and only if the
PDF_VERSIONoption is set to 1.4 or higher.
A.2.2. Indexes
| § | XSL 1.1 Object/Property Name | RenderX Extensions Object/Property Name |
|---|---|---|
| 6.10.2 | <fo:index-page-number-prefix> | No correspondence, ignored |
| 6.10.3 | <fo:index-page-number-suffix> | No correspondence, ignored |
| 6.10.4 | <fo:index-range-begin> | <rx:begin-index-range> |
| 6.10.5 | <fo:index-range-end> | <rx:end-index-range> |
| 6.10.6 | <fo:index-key-reference> | <rx:index-item> |
| 6.10.7 | <fo:index-page-citation-list> | <rx:page-index> |
| 6.10.8 | <fo:index-page-citation-list-separator> | list-separator |
| 6.10.9 | <fo:index-page-citation-range-separator> | range-separator |
| 7.24.1 | index-class | No correspondence, ignored |
| 7.24.2 | index-key | rx:key |
| 7.24.3 | page-number-treatment | link-back |
| 7.24.4 | merge-ranges-across-index-key-references | No correspondence, ignored |
| 7.24.5 | merge-sequential-page-numbers | merge-subsequent-page-numbers |
| 7.24.6 | merge-pages-across-index-key-references | No correspondence, ignored |
| 7.24.7 | ref-index-key | <rx:index-item>/ref-key |
| 7.30.8 | id | id |
| 7.30.13 | ref-id | ref-id |
A.2.3. Last Page Number Reference
| § | XSL 1.1 Object Name | RenderX Extensions Object Name |
|---|---|---|
| 6.6.12 | <fo:page-number-citation-last> | <rx:page-number-citation-last> |
The only required attribute, ref-id, specifies the id of the element whose last page number is retrieved.
A.2.4. Change Bars
| § | XSL 1.1 Object Name | RenderX Extensions Object Name |
|---|---|---|
| 6.13.2 | <fo:change-bar-begin> | <rx:change-bar-begin> |
| 6.13.3 | <fo:change-bar-end> | <rx:change-bar-end> |
All properties of <fo:change-bar-begin> and <fo:change-bar-end> map to themselves.
A.2.5. Folio Prefix and Suffix
| § | XSL 1.1 Object Name | XSL 1.0 Object Name |
|---|---|---|
| 6.6.13 | <fo:folio-prefix> | <the content> |
| 6.6.14 | <fo:folio-suffix> | <the content> |
The content of <fo:folio-prefix> (<fo:folio-suffix>) is added inline before (after) all occurrences of <fo:page-number>, <fo:page-number-citation>, and <fo:page-number-citation-last> referring to elements in the respective <fo:page-sequence>. In case of <fo:page-number> it is always the current page sequence.
Note:
Starting from version 4.19, support for
<fo:folio-prefix>and<fo:folio-suffix>on<fo:page-number>is always on.However, the respective support for these features on
<fo:page-number-citation>and<fo:page-number-citation-last>, implemented in Java, requires a second pass, which takes some additional time and memory due to existence of forward references.Starting from version 4.19 the availability of this feature on these referential elements is controlled by the
ENABLE_FOLIOcore option, which is disabled by default.