Definitive XSL-FO

6.2.1 Table and cell borders

Table and cell borders can be visible or invisible.

  • Border sides are named by writing directions.

  • Visible borders can have a specified thickness , pattern, or color .

    • They can be specified for the table, table row, or table cell perimeters .

    • The formatter can have any default value for thickness if not specified by the property.

  • Some border- related properties are not inherited unless explicitly specified as " inherit ".

Co-incident cell and table borders can be arbitrated or separated.

  • Use the border-collapse property to specify one of these behaviors.

  • " collapse " (initial value) specifies the arbitration of properties based on relative values.

    • The formatter arbitrates border-width , border-style , and border-color .

      • This is summarized later in Section 9.5.

  • " collapse-with-precedence " limits arbitration to only a numeric precedence value ( implied or specified).

  • " separate " will separate borders of adjacent cells and cells adjacent to table borders.

    • The amount of separation is specified by the border-separation property.

  • Border properties are allowed on table-row only when using collapsed borders.

Precedence guides the arbitration between two conflicting border specifications.

  • Each table construct has a different initial value for border precedence;

    • 5 table ,

    • 4 table-cell ,

    • 3 table-row ,

    • 2 table-body ,

    • 1 table-header ,

    • table-footer .

  • A numeric value can be explicitly specified using border-*-precedence .

  • A value of " force " overrides all numeric values.

Empty cells can be treated specially.

  • By default, an empty cell will have its border properties respected.

  • By using empty-cells with the value of " hide " on table-cell , you can hide the border of a cell that has no content, as is typically done for HTML tables in browsers.

    • The initial value is " show " to render separated borders for empty cells.

  • If all cells of a row are hidden, the row disappears entirely.

6.2.2 Spanning cells

Cells can occupy more than one column or row.

  • It is useful in headers and stubs for "span heads" across multiple columns or rows.

  • It is useful in body content to display a single value for multiple rows or columns.

  • Spanned cells are specified using an integer count greater than or equal to 1;

    • floating values are rounded;

    • numbers less than 1 are interpreted as 1;

    • a value calculated as 1 does not do any spanning.

Cell spanning progresses towards the end and after edges, starting with the current cell

  • in the column-progression direction for column spanning

    • using number-columns-spanned ,

  • in the row-progression direction for row spanning

    • using number-rows-spanned .

Spanning rows takes away from subsequent rows' unnumbered columns.

  • The cell does not exist that would be in a row except for the cell above whose spanning value affects the row.

  • An unnumbered cell will "skip" over spanned cells from preceding rows.

  • A numbered cell will override the spanning cells from preceding rows.

6.2.3 Table and cell alignment

Two ways to position a table in the inline-progression direction within its parent area are

  • start-indent on given table ,

  • text-align on parent table-and-caption ;

    • the table-caption is optional, thus not obliging an aligned table to have a caption.

Inheritable property values will be inherited by the table cells, usually producing undesirable results.

  • You could specify resetting values for properties on table-body , table-header , or other suitable ancestral location to be inheritable by descendant cells.

The content of cells can be aligned through inherited properties.

  • Cell vertical alignment is specified by the display-align property;

    • its default value is " auto ".

  • Cell row alignment is specified by the relative-align property;

    • its default value is " before ".

    • You may want to use " baseline " if fonts of different sizes are used.

    • This only applies if display-align is " auto ".

  • Cell column alignment is specified by the individual blocks' text-align properties.

    • This is the only significant use of a string argument for text-align .

      • For example, you can use the decimal separator character as the string to align a column of cells with financial information vertically.

      • A string argument in the property used in any other context is interpreted as the value " start ".

    • It need not be specified in the cell object (though it could be specified to be inherited by blocks).

6.2.4 The table-and-caption object

Purpose

  • This is the parent object of a captioned collection of tabular content.

Content

  • ( 6.7.2 ) ( table-caption?, table ),

  • child objects (listed alphabetically ):

    • table-caption ( 6.7.5 ; 172),

    • table ( 6.7.3 ; 173),

  • any number of marker children at the beginning.

Property sets

  • Common accessibility properties ( 7.4 ; 326),

  • common aural properties ( 7.6 ; 327),

  • common border, padding, and background properties ( 7.7 ; 328),

  • common margin properties block ( 7.10 ; 332),

  • common relative position properties ( 7.12 ; 333).

Other optional properties

  • break-after ( 7.19.1 ; 366),

  • break-before ( 7.19.2 ; 367),

  • caption-side ( 7.26.7 ; 367),

  • id ( 7.28.2 ; 384),

  • intrusion- displace ( 7.18.3 ; 385),

  • keep-together ( 7.19.3 ; 386),

  • keep-with- next ( 7.19.4 ; 386),

  • keep-with-previous ( 7.19.5 ; 387),

  • text-align ( 7.15.9 ; 421).

Shorthands influencing the above properties

  • page-break-after ( 7.29.16 ; 401),

  • page-break-before ( 7.29.17 ; 401),

  • page-break-inside ( 7.29.18 ; 402).

Property of interest

  • text-align is used to align the table.

    • This is the only non-mathematical way of aligning a table within its parent area.

An example is shown in Figure 6-5.

Figure 6-5. Table constructs

Note in the example:

  • the table has adjacent body segments whose boundaries cannot be distinguished;

  • all the cells in the column with the "c" heading are bold;

  • the caption follows after the table.

An excerpt from Figure 6-5 is shown in Example 6-1.

Example 6-1 The use of table-and-caption object in Figure 6-5

Line 01 <table-and-caption caption-side="after"> 02 <table-caption> 03 <block text-align="center">This is a test of a table</block> 04 </table-caption> 05 <table border="solid" border-collapse="collapse"> 06 ... 07 <table-header> 08 ... 09 </table-header> 10 <table-body> 11 ... 12 </table-body> 13 <table-body text-align="center"> 14 ... 15 </table-body> 16 </table> 17 </table-and-caption>

6.2.5 The table-caption object

Purpose

  • This is the caption of a captioned collection of tabular content.

Content

  • ( 6.7.5 ) ( %block;)+,

  • child object:

    • %block; ( 6.2 ; 69),

  • referring object:

    • table-and-caption ( 6.7.2 ; 170),

  • any number of marker children at the beginning.

Property sets

  • Common accessibility properties ( 7.4 ; 326),

  • common aural properties ( 7.6 ; 327),

  • common border, padding, and background properties ( 7.7 ; 328),

  • common relative position properties ( 7.12 ; 333).

Other optional properties

  • block-progression-dimension ( 7.14.1 ; 352),

  • height ( 7.14.4 ; 382),

  • id ( 7.28.2 ; 384),

  • inline-progression-dimension ( 7.14.5 ; 385),

  • intrusion-displace ( 7.18.3 ; 385),

  • keep-together ( 7.19.3 ; 386),

  • width ( 7.14.12 ; 428).

Shorthand influencing the above properties

  • page-break-inside ( 7.29.18 ; 402).

Properties of interest

  • caption-side indicates where the caption is relative to the table.

Properties of descendent blocks within the caption block

  • text-align is used to align the caption content.

  • The typical CSS use of vertical-align does not apply.

An excerpt from Figure 6-5 is shown in Example 6-2.

6.2.6 The table object

Purpose

  • This is the parent object of an uncaptioned collection of tabular content.

Content

  • ( 6.7.3 ) ( table-column*, table-header ?, table-footer ?, table-body +),

  • child objects (listed alphabetically):

    • table-body ( 6.7.8 ; 180),

    • table-column ( 6.7.4 ; 176),

    • table-footer ( 6.7.7 ; 178),

    • table-header ( 6.7.6 ; 177),

  • referring object:

    • table-and-caption ( 6.7.2 ; 170),

  • any number of marker children at the beginning.

Example 6-2 The use of table-caption object in Figure 6-5

Line 01 <table-and-caption caption-side="after"> 02 <table-caption> 03 <block text-align="center">This is a test of a table</block> 04 </table-caption> 05 <table border="solid" border-collapse="collapse"> 06 ... 07 <table-header> 08 ... 09 </table-header> 10 <table-body> 11 ... 12 </table-body> 13 <table-body text-align="center"> 14 ... 15 </table-body> 16 </table> 17 </table-and-caption>

Property sets

  • Common accessibility properties ( 7.4 ; 326),

  • common aural properties ( 7.6 ; 327),

  • common border, padding, and background properties ( 7.7 ; 328),

  • common margin properties block ( 7.10 ; 332),

  • common relative position properties ( 7.12 ; 333).

Other optional properties

  • block-progression-dimension ( 7.14.1 ; 352),

  • border-after-precedence ( 7.26.1 ; 353),

  • border-before-precedence ( 7.26.2 ; 354),

  • border-collapse ( 7.26.3 ; 357),

  • border-end-precedence ( 7.26.4 ; 358),

  • border-separation ( 7.26.5 ; 362),

  • border-start-precedence ( 7.26.6 ; 363),

  • break-after ( 7.19.1 ; 366),

  • break-before ( 7.19.2 ; 367),

  • height ( 7.14.4 ; 382),

  • id ( 7.28.2 ; 384),

  • inline-progression-dimension ( 7.14.5 ; 385),

  • intrusion-displace ( 7.18.3 ; 385),

  • keep-together ( 7.19.3 ; 386),

  • keep-with-next ( 7.19.4 ; 386),

  • keep-with-previous ( 7.19.5 ; 387),

  • table-layout ( 7.26.16 ; 419),

  • table-omit-footer-at-break ( 7.26.17 ; 419),

  • table-omit-header-at-break ( 7.26.18 ; 419),

  • width ( 7.14.12 ; 428),

  • writing-mode ( 7.27.7 ; 429).

Shorthands influencing the above properties

  • border-spacing ( 7.29.9 ; 362),

  • page-break-after ( 7.29.16 ; 401),

  • page-break-before ( 7.29.17 ; 401),

  • page-break-inside ( 7.29.18 ; 402).

An excerpt from Figure 6-5 is shown in Example 6-3.

Example 6-3 The use of table object in Figure 6-5

Line 01 <table-and-caption caption-side="after"> 02 <table-caption> 03 <block text-align="center">This is a test of a table</block> 04 </table-caption> 05 <table border="solid" border-collapse="collapse"> 06 ... 07 <table-header> 08 ... 09 </table-header> 10 <table-body> 11 ... 12 </table-body> 13 <table-body text-align="center"> 14 ... 15 </table-body> 16 </table> 17 </table-and-caption>

6.2.7 The table-column object

Purpose

  • This is the specification of common columnar properties.

Content

  • ( 6.7.4 ) EMPTY ,

  • referring object:

    • table ( 6.7.3 ; 173).

Property sets

  • Common border, padding, and background properties ( 7.7 ; 328).

Other optional properties

  • border-after-precedence ( 7.26.1 ; 353),

  • border-before-precedence ( 7.26.2 ; 354),

  • border-end-precedence ( 7.26.4 ; 358),

  • border-start-precedence ( 7.26.6 ; 363),

  • column-number ( 7.26.8 ; 370),

  • column-width ( 7.26.9 ; 370),

  • number-columns-repeated ( 7.26.12 ; 396),

  • number-columns-spanned ( 7.26.13 ; 396),

  • visibility ( 7.28.8 ; 425).

Property of interest

  • column-width="proportional-column-width( number-of-units )" :

    • is calculated as a unit proportion of calculated table width less all specified column widths.

  • Inheritable properties specified here are not automatically inherited by cells of the column.

    • The cells are not descendants of this object in the formatting object tree during refinement.

    • Cells must use the from-table-column() function to find out the table column properties.

An excerpt from Figure 6-5 is shown in Example 6-4.

Example 6-4 The use of table-column object in Figure 6-5

Line 01 <table-and-caption caption-side="after"> 02 <table-caption> 03 <block text-align="center">This is a test of a table</block> 04 </table-caption> 05 06 <table border="solid" border-collapse="collapse"> 07 <table-column column-width="proportional-column-width(2)"/> 08 <table-column column-width="proportional-column-width(1)"/> 09 <table-column column-width="proportional-column-width(1)"/> 10 <table-column column-width="proportional-column-width(1)" 11 font-weight="bold"/> 12 <table-column column-width="proportional-column-width(1)"/> 13 14 <table-header> 15 ... 16 </table-header> 17 <table-body> 18 ... 19 </table-body> 20 <table-body text-align="center"> 21 ... 22 <table-cell font-weight="from-table-column(font-weight)"> 23 <block>cell-06</block></table-cell> 24 25 <table-cell font-weight="from-table-column(font-weight)"> 26 <block>cell-07</block></table-cell> 27 <table-cell font-weight="from-table-column(font-weight)" 28 ends-row="true"> 29 <block>cell-08</block></table-cell> 30 ... 31 </table-body> 32 </table> 33 </table-and-caption>

6.2.8 The table-header object

Purpose

  • This object contains rows of tabular content that are repeated at the before edge of every break in body content.

  • You must choose one row grouping strategy for the entire header.

Content

  • ( 6.7.6 ) ( table-row+ table-cell +),

  • child objects (listed alphabetically):

    • table-cell ( 6.7.10 ; 184),

    • table-row ( 6.7.9 ; 182),

  • referring object:

    • table ( 6.7.3 ; 173),

  • any number of marker children at the beginning.

Property sets

  • Common accessibility properties ( 7.4 ; 326),

  • common aural properties ( 7.6 ; 327),

  • common border, padding, and background properties ( 7.7 ; 328),

  • common relative position properties ( 7.12 ; 333).

Other optional properties

  • border-after-precedence ( 7.26.1 ; 353),

  • border-before-precedence ( 7.26.2 ; 354),

  • border-end-precedence ( 7.26.4 ; 358),

  • border-start-precedence ( 7.26.6 ; 363),

  • id ( 7.28.2 ; 384),

  • visibility ( 7.28.8 ; 425).

An excerpt from Figure 6-5 is shown in Example 6-5.

6.2.9 The table-footer object

Purpose

  • This object contains rows of tabular content that are repeated at the after edge of every break in body content.

  • You must choose one row grouping strategy for the entire footer.

Content

  • ( 6.7.7 ) ( table-row+ table-cell +),

  • child objects (listed alphabetically):

    • table-cell ( 6.7.10 ; 184),

    • table-row ( 6.7.9 ; 182),

  • referring object:

    • table ( 6.7.3 ; 173),

  • any number of marker children at the beginning.

Example 6-5 The use of table-header object in Figure 6-5

Line 01 <table-and-caption caption-side="after"> 02 <table-caption> 03 <block text-align="center">This is a test of a table</block> 04 </table-caption> 05 <table border="solid" border-collapse="collapse"> 06 ... 07 <table-header> 08 <table-row> 09 ... 10 </table-row> 11 <table-row> 12 ... 13 </table-row> 14 </table-header> 15 <table-body> 16 <table-row text-align="center"> 17 ... 18 <table-row text-align="center"> 19 ... 20 </table-body> 21 <table-body text-align="center"> 22 <table-cell font-weight="from-table-column(font-weight)"> 23 <block>cell-01</block></table-cell> 24 ... 25 <table-cell font-weight="from-table-column(font-weight)"> 26 <block>cell-14</block></table-cell> 27 </table-body> 28 </table> 29 </table-and-caption>

Property sets

  • Common accessibility properties ( 7.4 ; 326),

  • common aural properties ( 7.6 ; 327),

  • common border, padding, and background properties ( 7.7 ; 328),

  • common relative position properties ( 7.12 ; 333).

Other optional properties

  • border-after-precedence ( 7.26.1 ; 353),

  • border-before-precedence ( 7.26.2 ; 354),

  • border-end-precedence ( 7.26.4 ; 358),

  • border-start-precedence ( 7.26.6 ; 363),

  • id ( 7.28.2 ; 384),

  • visibility ( 7.28.8 ; 425).

6.2.10 The table-body object

Purpose

  • This object contains the rows of tabular content that are flowed as the body content.

  • You must choose one row grouping strategy for each set of body rows.

    • Different sets of body rows may use different strategies.

    • The boundaries between sets of body rows are seamless.

Content

  • ( 6.7.8 ) ( table-row+ table-cell +),

  • child objects (listed alphabetically):

    • table-cell ( 6.7.10 ; 184),

    • table-row ( 6.7.9 ; 182),

  • referring object:

    • table ( 6.7.3 ; 173),

  • any number of marker children at the beginning.

Property sets

  • Common accessibility properties ( 7.4 ; 326),

  • common aural properties ( 7.6 ; 327),

  • common border, padding, and background properties ( 7.7 ; 328),

  • common relative position properties ( 7.12 ; 333).

Other optional properties

  • border-after-precedence ( 7.26.1 ; 353),

  • border-before-precedence ( 7.26.2 ; 354),

  • border-end-precedence ( 7.26.4 ; 358),

  • border-start-precedence ( 7.26.6 ; 363),

  • id ( 7.28.2 ; 384),

  • visibility ( 7.28.8 ; 425).

An excerpt from Figure 6-5 is shown in Example 6-6.

Example 6-6 The use of table-body object in Figure 6-5

Line 01 <table border="solid" border-collapse="collapse"> 02 ... 03 <table-header> 04 ... 05 </table-header> 06 <table-body> 07 <table-row text-align="center"> 08 ... 09 </table-row> 10 <table-row text-align="center"> 11 <table-cell font-weight="from-table-column(font-weight)"> 12 <block>2-a</block></table-cell> 13 </table-row> 14 <table-row text-align="center"> 15 <table-cell font-weight="from-table-column(font-weight)"> 16 <block>3-a</block></table-cell> 17 </table-row> 18 </table-body> 19 <table-body text-align="center"> 20 <table-cell font-weight="from-table-column(font-weight)"> 21 <block>cell-01</block></table-cell> 22 ... 23 <table-cell font-weight="from-table-column(font-weight)" 24 starts-row="true"> 25 <block>cell-04</block></table-cell> 26 ... 27 <table-cell font-weight="from-table-column(font-weight)" 28 ends-row="true"> 29 <block>cell-08</block></table-cell> 30 ... 31 <table-cell font-weight="from-table-column(font-weight)" 32 starts-row="true"> 33 <block>cell-11</block></table-cell> 34 <table-cell font-weight="from-table-column(font-weight)"> 35 <block>cell-12</block></table-cell> 36 </table-body> 37 </table>

Note in the example:

  • the first set of body rows is using the row-based row grouping strategy;

  • the second set of body rows is using the cell-based row grouping strategy.

6.2.11 The table-row object

Purpose

  • This is a row of tabular content.

Content

  • ( 6.7.9 ) ( table-cell+),

  • child object:

    • table-cell ( 6.7.10 ; 184),

  • referring objects:

    • table-header ( 6.7.6 ; 177),

    • table-footer ( 6.7.7 ; 178),

    • table-body ( 6.7.8 ; 180).

Property sets

  • Common accessibility properties ( 7.4 ; 326),

  • common aural properties ( 7.6 ; 327),

  • common border, padding, and background properties ( 7.7 ; 328),

  • common relative position properties ( 7.12 ; 333).

Other optional properties

  • block-progression-dimension ( 7.14.1 ; 352),

  • border-after-precedence ( 7.26.1 ; 353),

  • border-before-precedence ( 7.26.2 ; 354),

  • border-end-precedence ( 7.26.4 ; 358),

  • border-start-precedence ( 7.26.6 ; 363),

  • break-after ( 7.19.1 ; 366),

  • break-before ( 7.19.2 ; 367),

  • height ( 7.14.4 ; 382),

  • id ( 7.28.2 ; 384),

  • keep-together ( 7.19.3 ; 386),

  • keep-with-next ( 7.19.4 ; 386),

  • keep-with-previous ( 7.19.5 ; 387),

  • visibility ( 7.28.8 ; 425).

Shorthands influencing the above properties

  • page-break-after ( 7.29.16 ; 401),

  • page-break-before ( 7.29.17 ; 401),

  • page-break-inside ( 7.29.18 ; 402).

An excerpt from Figure 6-5 is shown in Example 6-7.

Example 6-7 The use of table-row object in Figure 6-5

Line 01 <table-and-caption caption-side="after"> 02 <table-caption> 03 <block text-align="center">This is a test of a table</block> 04 </table-caption> 05 <table border="solid" border-collapse="collapse"> 06 ... 07 <table-header> 08 <table-row> 09 <table-cell number-rows-spanned="2"> 10 ... 11 </table-row> 12 <table-row> 13 <table-cell border-before- 14 border-after-> 15 ... 16 </table-row> 17 </table-header> 18 <table-body> 19 <table-row text-align="center"> 20 ... 21 </table-row> 22 23 <table-row text-align="center"> 24 <table-cell font-weight="from-table-column(font-weight)"> 25 <block>2-a</block></table-cell> 26 </table-row> 27 <table-row text-align="center"> 28 <table-cell font-weight="from-table-column(font-weight)"> 29 <block>3-a</block></table-cell> 30 </table-row> 31 </table-body> 32 <table-body text-align="center"> 33 <table-cell font-weight="from-table-column(font-weight)"> 34 <block>cell-01</block></table-cell> 35 ... 36 <table-cell font-weight="from-table-column(font-weight)"> 37 <block>cell-14</block></table-cell> 38 </table-body> 39 </table> 40 </table-and-caption>

6.2.12 The table-cell object

Purpose

  • This is a column of a row of tabular content.

Content

  • ( 6.7.10 ) ( %block;)+,

  • child object:

    • %block; ( 6.2 ; 69),

  • referring objects:

    • table-header ( 6.7.6 ; 177),

    • table-footer ( 6.7.7 ; 178),

    • table-body ( 6.7.8 ; 180),

    • table-row ( 6.7.9 ; 182),

  • any number of marker children at the beginning.

Property sets

  • Common accessibility properties ( 7.4 ; 326),

  • common aural properties ( 7.6 ; 327),

  • common border, padding, and background properties ( 7.7 ; 328),

  • common relative position properties ( 7.12 ; 333).

Other optional properties

  • block-progression-dimension ( 7.14.1 ; 352),

  • border-after-precedence ( 7.26.1 ; 353),

  • border-before-precedence ( 7.26.2 ; 354),

  • border-end-precedence ( 7.26.4 ; 358),

  • border-start-precedence ( 7.26.6 ; 363),

  • column-number ( 7.26.8 ; 370),

  • display-align ( 7.13.4 ; 373),

  • empty-cells ( 7.26.10 ; 374),

  • ends-row ( 7.26.11 ; 375),

  • height ( 7.14.4 ; 382),

  • id ( 7.28.2 ; 384),

  • inline-progression-dimension ( 7.14.5 ; 385),

  • number-columns-spanned ( 7.26.13 ; 396),

  • number-rows-spanned ( 7.26.14 ; 396),

  • relative-align ( 7.13.6 ; 408),

  • starts-row ( 7.26.15 ; 418),

  • width ( 7.14.12 ; 428).

Example 6-8 The use of table-cell object in Figure 6-5

Line 01 <table-and-caption caption-side="after"> 02 ... 03 <table-header> 04 <table-row> 05 <table-cell font-weight="from-table-column(font-weight)" 06 number-rows-spanned="2"> 07 <block/> 08 </table-cell> 09 <table-cell font-weight="from-table-column(font-weight)" 10 number-rows-spanned="2" border="solid" 11 display-align="center"> 12 <block text-align="center">a</block> 13 </table-cell> 14 <table-cell font-weight="from-table-column(font-weight)" 15 number-columns-spanned="3"> 16 <block text-align="center">b/c/d</block> 17 </table-cell> 18 </table-row> 19 ... 20 </table-header> 21 <table-body> 22 <table-row text-align="center"> 23 <table-cell font-weight="from-table-column(font-weight)" 24 number-rows-spanned="3" border="dashed" 25 display-align="center"> 26 <block>Row values here</block> 27 </table-cell> 28 <table-cell font-weight="from-table-column(font-weight)"> 29 <block>1-a</block> </table-cell> 30 <table-cell font-weight="from-table-column(font-weight)"> 31 <block>1-b</block> </table-cell> 32 </table-row> 33 <table-row text-align="center"> 34 <table-cell font-weight="from-table-column(font-weight)"> 35 <block>2-a</block> </table-cell> 36 </table-row> 37 <table-row text-align="center"> 38 <table-cell font-weight="from-table-column(font-weight)"> 39 <block>3-a</block> </table-cell> 40 </table-row> 41 </table-body>

Excerpts from Figure 6-5 in Examples Example 6-8 and Example 6-9 show, respectively, the use of the row-based and cell-based row grouping strategies.

Example 6-9 The use of table-cell object in Figure 6-5

Line 01 <table-and-caption caption-side="after"> 02 ... 03 <table-body text-align="center"> 04 <table-cell font-weight="from-table-column(font-weight)"> 05 <block>cell-01</block> </table-cell> 06 <table-cell font-weight="from-table-column(font-weight)"> 07 <block>cell-02</block> </table-cell> 08 <table-cell font-weight="from-table-column(font-weight)"> 09 <block>cell-03</block> </table-cell> 10 <table-cell font-weight="from-table-column(font-weight)" 11 starts-row="true"> 12 <block>cell-04</block> </table-cell> 13 <table-cell font-weight="from-table-column(font-weight)"> 14 <block>cell-05</block> </table-cell> 15 <table-cell font-weight="from-table-column(font-weight)"> 16 <block>cell-06</block> </table-cell> 17 <table-cell font-weight="from-table-column(font-weight)"> 18 <block>cell-07</block> </table-cell> 19 <table-cell font-weight="from-table-column(font-weight)" 20 ends-row="true"> 21 <block>cell-08</block> </table-cell> 22 <table-cell font-weight="from-table-column(font-weight)"> 23 <block>cell-09</block> </table-cell> 24 <table-cell font-weight="from-table-column(font-weight)"> 25 <block>cell-10</block> </table-cell> 26 <table-cell font-weight="from-table-column(font-weight)" 27 starts-row="true"> 28 <block>cell-11</block> </table-cell> 29 <table-cell font-weight="from-table-column(font-weight)"> 30 <block>cell-12</block> </table-cell> 31 <table-cell font-weight="from-table-column(font-weight)"> 32 <block>cell-13</block> </table-cell> 33 <table-cell font-weight="from-table-column(font-weight)"> 34 <block>cell-14</block> </table-cell> 35 </table-body> 36 </table> 37 </table-and-caption>

Категории