metanorma-bipm 2.2.10 → 2.2.12

Sign up to get free protection for your applications and to get access to all the features.
@@ -2736,6 +2736,10 @@
2736
2736
  </xsl:attribute-set> <!-- formula-stem-number-style -->
2737
2737
  <!-- End Formula's styles -->
2738
2738
 
2739
+ <xsl:template name="refine_formula-stem-number-style">
2740
+
2741
+ </xsl:template>
2742
+
2739
2743
  <xsl:attribute-set name="image-style">
2740
2744
  <xsl:attribute name="text-align">center</xsl:attribute>
2741
2745
 
@@ -3232,13 +3236,13 @@
3232
3236
 
3233
3237
  <xsl:template name="processPrefaceSectionsDefault_Contents">
3234
3238
  <xsl:variable name="nodes_preface_">
3235
- <xsl:for-each select="/*/*[local-name()='preface']/*[not(local-name() = 'note' or local-name() = 'admonition')]">
3239
+ <xsl:for-each select="/*/*[local-name()='preface']/*[not(local-name() = 'note' or local-name() = 'admonition' or @type = 'toc')]">
3236
3240
  <node id="{@id}"/>
3237
3241
  </xsl:for-each>
3238
3242
  </xsl:variable>
3239
3243
  <xsl:variable name="nodes_preface" select="xalan:nodeset($nodes_preface_)"/>
3240
3244
 
3241
- <xsl:for-each select="/*/*[local-name()='preface']/*[not(local-name() = 'note' or local-name() = 'admonition')]">
3245
+ <xsl:for-each select="/*/*[local-name()='preface']/*[not(local-name() = 'note' or local-name() = 'admonition' or @type = 'toc')]">
3242
3246
  <xsl:sort select="@displayorder" data-type="number"/>
3243
3247
 
3244
3248
  <!-- process Section's title -->
@@ -3272,12 +3276,12 @@
3272
3276
  <xsl:apply-templates select="." mode="contents"/>
3273
3277
  </xsl:for-each>
3274
3278
 
3275
- <xsl:for-each select="/*/*[local-name()='annex']">
3279
+ <!-- <xsl:for-each select="/*/*[local-name()='annex']">
3276
3280
  <xsl:sort select="@displayorder" data-type="number"/>
3277
3281
  <xsl:apply-templates select="." mode="contents"/>
3278
- </xsl:for-each>
3282
+ </xsl:for-each> -->
3279
3283
 
3280
- <xsl:for-each select="/*/*[local-name()='bibliography']/*[not(@normative='true') and not(*[local-name()='references'][@normative='true'])][count(.//*[local-name() = 'bibitem'][not(@hidden) = 'true']) &gt; 0] | /*/*[local-name()='bibliography']/*[local-name()='clause'][*[local-name()='references'][not(@normative='true')]][count(.//*[local-name() = 'bibitem'][not(@hidden) = 'true']) &gt; 0]">
3284
+ <xsl:for-each select="/*/*[local-name()='annex'] | /*/*[local-name()='bibliography']/*[not(@normative='true') and not(*[local-name()='references'][@normative='true'])][count(.//*[local-name() = 'bibitem'][not(@hidden) = 'true']) &gt; 0] | /*/*[local-name()='bibliography']/*[local-name()='clause'][*[local-name()='references'][not(@normative='true')]][count(.//*[local-name() = 'bibitem'][not(@hidden) = 'true']) &gt; 0]">
3281
3285
  <xsl:sort select="@displayorder" data-type="number"/>
3282
3286
  <xsl:apply-templates select="." mode="contents"/>
3283
3287
  </xsl:for-each>
@@ -3639,7 +3643,7 @@
3639
3643
  </xsl:attribute>
3640
3644
  </xsl:for-each>
3641
3645
 
3642
- <xsl:variable name="isNoteOrFnExist" select="./*[local-name()='note'] or .//*[local-name()='fn'][local-name(..) != 'name'] or ./*[local-name()='source']"/>
3646
+ <xsl:variable name="isNoteOrFnExist" select="./*[local-name()='note'] or ./*[local-name()='example'] or .//*[local-name()='fn'][local-name(..) != 'name'] or ./*[local-name()='source']"/>
3643
3647
  <xsl:if test="$isNoteOrFnExist = 'true'">
3644
3648
  <xsl:attribute name="border-bottom">0pt solid black</xsl:attribute> <!-- set 0pt border, because there is a separete table below for footer -->
3645
3649
  </xsl:if>
@@ -3683,7 +3687,7 @@
3683
3687
  <xsl:apply-templates select="*[local-name()='thead']" mode="process_tbody"/>
3684
3688
  </xsl:when>
3685
3689
  <xsl:otherwise>
3686
- <xsl:apply-templates select="node()[not(local-name() = 'name') and not(local-name() = 'note') and not(local-name() = 'dl') and not(local-name() = 'source') and not(local-name() = 'p') and not(local-name() = 'thead') and not(local-name() = 'tfoot')]"/> <!-- process all table' elements, except name, header, footer, note, source and dl which render separaterely -->
3690
+ <xsl:apply-templates select="node()[not(local-name() = 'name') and not(local-name() = 'note') and not(local-name() = 'example') and not(local-name() = 'dl') and not(local-name() = 'source') and not(local-name() = 'p') and not(local-name() = 'thead') and not(local-name() = 'tfoot')]"/> <!-- process all table' elements, except name, header, footer, note, source and dl which render separaterely -->
3687
3691
  </xsl:otherwise>
3688
3692
  </xsl:choose>
3689
3693
 
@@ -3728,7 +3732,7 @@
3728
3732
  <fo:table-row>
3729
3733
  <fo:table-cell column-number="2">
3730
3734
  <xsl:copy-of select="$table-preamble"/>
3731
- <fo:block>
3735
+ <fo:block role="SKIP">
3732
3736
  <xsl:call-template name="setTrackChangesStyles">
3733
3737
  <xsl:with-param name="isAdded" select="$isAdded"/>
3734
3738
  <xsl:with-param name="isDeleted" select="$isDeleted"/>
@@ -3771,7 +3775,7 @@
3771
3775
  <xsl:param name="continued"/>
3772
3776
  <xsl:if test="normalize-space() != ''">
3773
3777
 
3774
- <fo:block xsl:use-attribute-sets="table-name-style">
3778
+ <fo:block xsl:use-attribute-sets="table-name-style" role="SKIP">
3775
3779
 
3776
3780
  <xsl:call-template name="refine_table-name-style">
3777
3781
  <xsl:with-param name="continued" select="$continued"/>
@@ -4162,8 +4166,8 @@
4162
4166
  <xsl:template name="table-header-title">
4163
4167
  <xsl:param name="cols-count"/>
4164
4168
  <!-- row for title -->
4165
- <fo:table-row>
4166
- <fo:table-cell number-columns-spanned="{$cols-count}" border-left="1.5pt solid white" border-right="1.5pt solid white" border-top="1.5pt solid white" border-bottom="1.5pt solid black">
4169
+ <fo:table-row role="SKIP">
4170
+ <fo:table-cell number-columns-spanned="{$cols-count}" border-left="1.5pt solid white" border-right="1.5pt solid white" border-top="1.5pt solid white" border-bottom="1.5pt solid black" role="SKIP">
4167
4171
 
4168
4172
  <xsl:call-template name="refine_table-header-title-style"/>
4169
4173
 
@@ -4172,14 +4176,14 @@
4172
4176
  </xsl:apply-templates>
4173
4177
 
4174
4178
  <xsl:if test="not(ancestor::*[local-name()='table']/*[local-name()='name'])"> <!-- to prevent empty fo:table-cell in case of missing table's name -->
4175
- <fo:block/>
4179
+ <fo:block role="SKIP"/>
4176
4180
  </xsl:if>
4177
4181
 
4178
4182
  <xsl:for-each select="ancestor::*[local-name()='table'][1]">
4179
4183
  <xsl:call-template name="table_name_fn_display"/>
4180
4184
  </xsl:for-each>
4181
4185
 
4182
- <fo:block text-align="right" font-style="italic">
4186
+ <fo:block text-align="right" font-style="italic" role="SKIP">
4183
4187
  <xsl:text> </xsl:text>
4184
4188
  <fo:retrieve-table-marker retrieve-class-name="table_continued"/>
4185
4189
  </fo:block>
@@ -4216,7 +4220,7 @@
4216
4220
  <xsl:param name="colwidths"/>
4217
4221
  <xsl:param name="colgroup"/>
4218
4222
 
4219
- <xsl:variable name="isNoteOrFnExist" select="../*[local-name()='note'] or ../*[local-name()='dl'] or ..//*[local-name()='fn'][local-name(..) != 'name'] or ../*[local-name()='source'] or ../*[local-name()='p']"/>
4223
+ <xsl:variable name="isNoteOrFnExist" select="../*[local-name()='note'] or ../*[local-name()='example'] or ../*[local-name()='dl'] or ..//*[local-name()='fn'][local-name(..) != 'name'] or ../*[local-name()='source'] or ../*[local-name()='p']"/>
4220
4224
 
4221
4225
  <xsl:variable name="isNoteOrFnExistShowAfterTable">
4222
4226
 
@@ -4289,6 +4293,7 @@
4289
4293
  <xsl:apply-templates select="../*[local-name()='p']"/>
4290
4294
  <xsl:apply-templates select="../*[local-name()='dl']"/>
4291
4295
  <xsl:apply-templates select="../*[local-name()='note']"/>
4296
+ <xsl:apply-templates select="../*[local-name()='example']"/>
4292
4297
  <xsl:apply-templates select="../*[local-name()='source']"/>
4293
4298
 
4294
4299
  <xsl:variable name="isDisplayRowSeparator">
@@ -4297,7 +4302,7 @@
4297
4302
 
4298
4303
  <!-- horizontal row separator -->
4299
4304
  <xsl:if test="normalize-space($isDisplayRowSeparator) = 'true'">
4300
- <xsl:if test="../*[local-name()='note'] and normalize-space($table_fn_block) != ''">
4305
+ <xsl:if test="(../*[local-name()='note'] or ../*[local-name()='example']) and normalize-space($table_fn_block) != ''">
4301
4306
  <fo:block-container border-top="0.5pt solid black" padding-left="1mm" padding-right="1mm">
4302
4307
 
4303
4308
  <xsl:call-template name="setBordersTableArray"/>
@@ -4377,21 +4382,21 @@
4377
4382
  <xsl:variable name="title_start" select="ancestor::*[local-name()='table'][1]/*[local-name()='name']/node()[1][self::text()]"/>
4378
4383
  <xsl:variable name="table_number" select="substring-before($title_start, '—')"/>
4379
4384
 
4380
- <fo:table-row height="0" keep-with-next.within-page="always">
4381
- <fo:table-cell>
4385
+ <fo:table-row height="0" keep-with-next.within-page="always" role="SKIP">
4386
+ <fo:table-cell role="SKIP">
4382
4387
 
4383
4388
  <fo:marker marker-class-name="table_continued"/>
4384
4389
 
4385
- <fo:block/>
4390
+ <fo:block role="SKIP"/>
4386
4391
  </fo:table-cell>
4387
4392
  </fo:table-row>
4388
- <fo:table-row height="0" keep-with-next.within-page="always">
4389
- <fo:table-cell>
4393
+ <fo:table-row height="0" keep-with-next.within-page="always" role="SKIP">
4394
+ <fo:table-cell role="SKIP">
4390
4395
 
4391
4396
  <fo:marker marker-class-name="table_continued">
4392
4397
  <xsl:value-of select="$title_continued"/>
4393
4398
  </fo:marker>
4394
- <fo:block/>
4399
+ <fo:block role="SKIP"/>
4395
4400
  </fo:table-cell>
4396
4401
  </fo:table-row>
4397
4402
 
@@ -4532,7 +4537,7 @@
4532
4537
 
4533
4538
  <xsl:call-template name="refine_table-header-cell-style"/>
4534
4539
 
4535
- <fo:block>
4540
+ <fo:block role="SKIP">
4536
4541
  <xsl:apply-templates/>
4537
4542
  </fo:block>
4538
4543
  </fo:table-cell>
@@ -4585,7 +4590,7 @@
4585
4590
  <xsl:attribute name="text-align">left</xsl:attribute>
4586
4591
  </xsl:if>
4587
4592
 
4588
- <fo:block>
4593
+ <fo:block role="SKIP">
4589
4594
 
4590
4595
  <xsl:if test="$isGenerateTableIF = 'true'">
4591
4596
  <xsl:attribute name="id"><xsl:value-of select="@id"/></xsl:attribute>
@@ -4599,13 +4604,13 @@
4599
4604
  </fo:table-cell>
4600
4605
  </xsl:template> <!-- td -->
4601
4606
 
4602
- <xsl:template match="*[local-name()='table']/*[local-name()='note']" priority="2">
4607
+ <xsl:template match="*[local-name()='table']/*[local-name()='note' or local-name() = 'example']" priority="2">
4603
4608
 
4604
4609
  <fo:block xsl:use-attribute-sets="table-note-style">
4605
4610
 
4606
4611
  <xsl:call-template name="refine_table-note-style"/>
4607
4612
 
4608
- <!-- Table's note name (NOTE, for example) -->
4613
+ <!-- Table's note/example name (NOTE, for example) -->
4609
4614
  <fo:inline xsl:use-attribute-sets="table-note-name-style">
4610
4615
 
4611
4616
  <xsl:call-template name="refine_table-note-name-style"/>
@@ -4619,7 +4624,7 @@
4619
4624
 
4620
4625
  </xsl:template> <!-- table/note -->
4621
4626
 
4622
- <xsl:template match="*[local-name()='table']/*[local-name()='note']/*[local-name()='p']" priority="2">
4627
+ <xsl:template match="*[local-name()='table']/*[local-name()='note' or local-name()='example']/*[local-name()='p']" priority="2">
4623
4628
  <xsl:apply-templates/>
4624
4629
  </xsl:template>
4625
4630
 
@@ -5462,7 +5467,7 @@
5462
5467
  -->
5463
5468
  <fo:table-row>
5464
5469
  <fo:table-cell number-columns-spanned="2">
5465
- <fo:block>
5470
+ <fo:block role="SKIP">
5466
5471
  <xsl:call-template name="note"/>
5467
5472
  </fo:block>
5468
5473
  </fo:table-cell>
@@ -5527,7 +5532,7 @@
5527
5532
 
5528
5533
  <xsl:call-template name="refine_dt-cell-style"/>
5529
5534
 
5530
- <fo:block xsl:use-attribute-sets="dt-block-style">
5535
+ <fo:block xsl:use-attribute-sets="dt-block-style" role="SKIP">
5531
5536
  <xsl:copy-of select="@id"/>
5532
5537
 
5533
5538
  <xsl:if test="normalize-space($key_iso) = 'true'">
@@ -5557,7 +5562,7 @@
5557
5562
 
5558
5563
  <xsl:call-template name="refine_dd-cell-style"/>
5559
5564
 
5560
- <fo:block>
5565
+ <fo:block role="SKIP">
5561
5566
 
5562
5567
  <xsl:if test="$isGenerateTableIF = 'true'">
5563
5568
  <xsl:attribute name="id"><xsl:value-of select="@id"/></xsl:attribute>
@@ -5699,10 +5704,15 @@
5699
5704
  <!-- ========================= -->
5700
5705
  <xsl:template match="*[local-name()='em']">
5701
5706
  <fo:inline font-style="italic">
5707
+ <xsl:call-template name="refine_italic_style"/>
5702
5708
  <xsl:apply-templates/>
5703
5709
  </fo:inline>
5704
5710
  </xsl:template>
5705
5711
 
5712
+ <xsl:template name="refine_italic_style">
5713
+
5714
+ </xsl:template>
5715
+
5706
5716
  <xsl:template match="*[local-name()='strong'] | *[local-name()='b']">
5707
5717
  <xsl:param name="split_keep-within-line"/>
5708
5718
  <fo:inline font-weight="bold">
@@ -5928,11 +5938,41 @@
5928
5938
 
5929
5939
  <xsl:template match="text()[ancestor::*[local-name()='smallcap']]">
5930
5940
  <xsl:variable name="text" select="normalize-space(.)"/>
5931
- <fo:inline font-size="75%">
5941
+ <fo:inline font-size="75%" role="SKIP">
5932
5942
  <xsl:if test="string-length($text) &gt; 0">
5933
- <xsl:call-template name="recursiveSmallCaps">
5934
- <xsl:with-param name="text" select="$text"/>
5935
- </xsl:call-template>
5943
+ <xsl:variable name="smallCapsText">
5944
+ <xsl:call-template name="recursiveSmallCaps">
5945
+ <xsl:with-param name="text" select="$text"/>
5946
+ </xsl:call-template>
5947
+ </xsl:variable>
5948
+ <!-- merge neighboring fo:inline -->
5949
+ <xsl:for-each select="xalan:nodeset($smallCapsText)/node()">
5950
+ <xsl:choose>
5951
+ <xsl:when test="self::fo:inline and preceding-sibling::node()[1][self::fo:inline]"><!-- <xsl:copy-of select="."/> --></xsl:when>
5952
+ <xsl:when test="self::fo:inline and @font-size">
5953
+ <xsl:variable name="curr_pos" select="count(preceding-sibling::node()) + 1"/>
5954
+ <!-- <curr_pos><xsl:value-of select="$curr_pos"/></curr_pos> -->
5955
+ <xsl:variable name="next_text_" select="count(following-sibling::node()[not(local-name() = 'inline')][1]/preceding-sibling::node())"/>
5956
+ <xsl:variable name="next_text">
5957
+ <xsl:choose>
5958
+ <xsl:when test="$next_text_ = 0">99999999</xsl:when>
5959
+ <xsl:otherwise><xsl:value-of select="$next_text_ + 1"/></xsl:otherwise>
5960
+ </xsl:choose>
5961
+ </xsl:variable>
5962
+ <!-- <next_text><xsl:value-of select="$next_text"/></next_text> -->
5963
+ <fo:inline>
5964
+ <xsl:copy-of select="@*"/>
5965
+ <xsl:copy-of select="./node()"/>
5966
+ <xsl:for-each select="following-sibling::node()[position() &lt; $next_text - $curr_pos]"> <!-- [self::fo:inline] -->
5967
+ <xsl:copy-of select="./node()"/>
5968
+ </xsl:for-each>
5969
+ </fo:inline>
5970
+ </xsl:when>
5971
+ <xsl:otherwise>
5972
+ <xsl:copy-of select="."/>
5973
+ </xsl:otherwise>
5974
+ </xsl:choose>
5975
+ </xsl:for-each>
5936
5976
  </xsl:if>
5937
5977
  </fo:inline>
5938
5978
  </xsl:template>
@@ -5944,7 +5984,7 @@
5944
5984
  <xsl:variable name="upperCase" select="java:toUpperCase(java:java.lang.String.new($char))"/>
5945
5985
  <xsl:choose>
5946
5986
  <xsl:when test="$char=$upperCase">
5947
- <fo:inline font-size="{100 div 0.75}%">
5987
+ <fo:inline font-size="{100 div 0.75}%" role="SKIP">
5948
5988
  <xsl:value-of select="$upperCase"/>
5949
5989
  </fo:inline>
5950
5990
  </xsl:when>
@@ -6106,6 +6146,10 @@
6106
6146
 
6107
6147
  <xsl:when test="not(contains($text, $separator))">
6108
6148
  <word>
6149
+ <xsl:if test="ancestor::*[local-name() = 'p'][@from_dl = 'true']">
6150
+ <xsl:text>
6151
+  </xsl:text> <!-- to add distance between dt and dd -->
6152
+ </xsl:if>
6109
6153
  <xsl:call-template name="enclose_text_in_tags">
6110
6154
  <xsl:with-param name="text" select="normalize-space($text)"/>
6111
6155
  <xsl:with-param name="tags" select="$tags"/>
@@ -6114,6 +6158,10 @@
6114
6158
  </xsl:when>
6115
6159
  <xsl:otherwise>
6116
6160
  <word>
6161
+ <xsl:if test="ancestor::*[local-name() = 'p'][@from_dl = 'true']">
6162
+ <xsl:text>
6163
+  </xsl:text> <!-- to add distance between dt and dd -->
6164
+ </xsl:if>
6117
6165
  <xsl:call-template name="enclose_text_in_tags">
6118
6166
  <xsl:with-param name="text" select="normalize-space(substring-before($text, $separator))"/>
6119
6167
  <xsl:with-param name="tags" select="$tags"/>
@@ -6188,7 +6236,10 @@
6188
6236
  </xsl:choose>
6189
6237
  </xsl:variable>
6190
6238
 
6191
- <xsl:value-of select="$text9"/>
6239
+ <!-- replace sequence #x200B and space TO space -->
6240
+ <xsl:variable name="text10" select="java:replaceAll(java:java.lang.String.new($text9), '\u200b ', ' ')"/>
6241
+
6242
+ <xsl:value-of select="$text10"/>
6192
6243
  </xsl:template>
6193
6244
 
6194
6245
  <xsl:template name="add-zero-spaces-link-java">
@@ -6294,6 +6345,10 @@
6294
6345
  <xsl:template name="getSimpleTable">
6295
6346
  <xsl:param name="id"/>
6296
6347
 
6348
+ <!-- <test0>
6349
+ <xsl:copy-of select="."/>
6350
+ </test0> -->
6351
+
6297
6352
  <xsl:variable name="simple-table">
6298
6353
 
6299
6354
  <!-- Step 0. replace <br/> to <p>...</p> -->
@@ -7284,7 +7339,7 @@
7284
7339
  <xsl:call-template name="insert_basic_link">
7285
7340
  <xsl:with-param name="element">
7286
7341
  <fo:basic-link internal-destination="{@target}" fox:alt-text="{@target}" xsl:use-attribute-sets="xref-style">
7287
- <xsl:if test="string-length(normalize-space()) &lt; 30 and not(contains(normalize-space(), 'http://')) and not(contains(normalize-space(), 'https://'))">
7342
+ <xsl:if test="string-length(normalize-space()) &lt; 30 and not(contains(normalize-space(), 'http://')) and not(contains(normalize-space(), 'https://')) and not(ancestor::*[local-name() = 'table' or local-name() = 'dl'])">
7288
7343
  <xsl:attribute name="keep-together.within-line">always</xsl:attribute>
7289
7344
  </xsl:if>
7290
7345
  <xsl:if test="parent::*[local-name() = 'add']">
@@ -7346,7 +7401,7 @@
7346
7401
  <fo:table-body>
7347
7402
  <fo:table-row>
7348
7403
  <fo:table-cell display-align="center">
7349
- <fo:block xsl:use-attribute-sets="formula-stem-block-style">
7404
+ <fo:block xsl:use-attribute-sets="formula-stem-block-style" role="SKIP">
7350
7405
 
7351
7406
  <xsl:call-template name="refine_formula-stem-block-style"/>
7352
7407
 
@@ -7354,7 +7409,10 @@
7354
7409
  </fo:block>
7355
7410
  </fo:table-cell>
7356
7411
  <fo:table-cell display-align="center">
7357
- <fo:block xsl:use-attribute-sets="formula-stem-number-style">
7412
+ <fo:block xsl:use-attribute-sets="formula-stem-number-style" role="SKIP">
7413
+
7414
+ <xsl:call-template name="refine_formula-stem-number-style"/>
7415
+
7358
7416
  <xsl:apply-templates select="../*[local-name() = 'name']"/>
7359
7417
  </fo:block>
7360
7418
  </fo:table-cell>
@@ -8865,7 +8923,7 @@
8865
8923
  <!-- second td with sourcecode -->
8866
8924
  <xsl:template match="*[local-name() = 'sourcecode'][@linenums = 'true']/*[local-name()='table']//*[local-name()='tr']/*[local-name()='td'][preceding-sibling::*]" priority="2"> <!-- *[local-name()='table'][@type = 'sourcecode'] -->
8867
8925
  <fo:table-cell>
8868
- <fo:block>
8926
+ <fo:block role="SKIP">
8869
8927
  <xsl:apply-templates/>
8870
8928
  </fo:block>
8871
8929
  </fo:table-cell>
@@ -9352,7 +9410,7 @@
9352
9410
 
9353
9411
  <xsl:call-template name="setTableCellAttributes"/>
9354
9412
 
9355
- <fo:block>
9413
+ <fo:block role="SKIP">
9356
9414
  <xsl:apply-templates/>
9357
9415
  </fo:block>
9358
9416
  </fo:table-cell>
@@ -9374,7 +9432,7 @@
9374
9432
 
9375
9433
  <xsl:call-template name="setTableCellAttributes"/>
9376
9434
 
9377
- <fo:block>
9435
+ <fo:block role="SKIP">
9378
9436
  <xsl:apply-templates/>
9379
9437
  </fo:block>
9380
9438
  </fo:table-cell>
@@ -9569,6 +9627,12 @@
9569
9627
 
9570
9628
  </xsl:template>
9571
9629
 
9630
+ <xsl:template match="*[local-name() = 'table']/*[local-name() = 'example']/*[local-name() = 'name']">
9631
+ <fo:inline xsl:use-attribute-sets="example-name-style">
9632
+ <xsl:apply-templates/>
9633
+ </fo:inline>
9634
+ </xsl:template>
9635
+
9572
9636
  <xsl:template match="*[local-name() = 'example']/*[local-name() = 'p']">
9573
9637
  <xsl:param name="fo_element">block</xsl:param>
9574
9638
 
@@ -10153,6 +10217,50 @@
10153
10217
  <xsl:otherwise><xsl:call-template name="setULLabel"/></xsl:otherwise>
10154
10218
  </xsl:choose>
10155
10219
  </xsl:when>
10220
+ <xsl:when test="local-name(..) = 'ol' and @label"> <!-- for ordered lists 'ol', and if there is @label, for instance label="1.1.2" -->
10221
+
10222
+ <xsl:variable name="label">
10223
+
10224
+ <xsl:variable name="type" select="../@type"/>
10225
+
10226
+ <xsl:variable name="style_prefix_">
10227
+ <xsl:if test="$type = 'roman'">
10228
+ <!-- Example: (i) -->
10229
+ </xsl:if>
10230
+ </xsl:variable>
10231
+ <xsl:variable name="style_prefix" select="normalize-space($style_prefix_)"/>
10232
+
10233
+ <xsl:variable name="style_suffix_">
10234
+ <xsl:choose>
10235
+ <xsl:when test="$type = 'arabic'">
10236
+ .
10237
+ </xsl:when>
10238
+ <xsl:when test="$type = 'alphabet' or $type = 'alphabetic'">
10239
+ )
10240
+ </xsl:when>
10241
+ <xsl:when test="$type = 'alphabet_upper' or $type = 'alphabetic_upper'">
10242
+ .
10243
+ </xsl:when>
10244
+ <xsl:when test="$type = 'roman'">
10245
+ )
10246
+ </xsl:when>
10247
+ <xsl:when test="$type = 'roman_upper'">.</xsl:when> <!-- Example: I. -->
10248
+ </xsl:choose>
10249
+ </xsl:variable>
10250
+ <xsl:variable name="style_suffix" select="normalize-space($style_suffix_)"/>
10251
+
10252
+ <xsl:if test="$style_prefix != '' and not(starts-with(@label, $style_prefix))">
10253
+ <xsl:value-of select="$style_prefix"/>
10254
+ </xsl:if>
10255
+ <xsl:value-of select="@label"/>
10256
+ <xsl:if test="not(java:endsWith(java:java.lang.String.new(@label),$style_suffix))">
10257
+ <xsl:value-of select="$style_suffix"/>
10258
+ </xsl:if>
10259
+ </xsl:variable>
10260
+
10261
+ <xsl:value-of select="normalize-space($label)"/>
10262
+
10263
+ </xsl:when>
10156
10264
  <xsl:otherwise> <!-- for ordered lists 'ol' -->
10157
10265
 
10158
10266
  <!-- Example: for BSI <?list-start 2?> -->
@@ -10210,10 +10318,10 @@
10210
10318
  <xsl:when test="$type = 'arabic'">
10211
10319
  1.
10212
10320
  </xsl:when>
10213
- <xsl:when test="$type = 'alphabet'">
10321
+ <xsl:when test="$type = 'alphabet' or $type = 'alphabetic'">
10214
10322
  a)
10215
10323
  </xsl:when>
10216
- <xsl:when test="$type = 'alphabet_upper'">
10324
+ <xsl:when test="$type = 'alphabet_upper' or $type = 'alphabetic_upper'">
10217
10325
  A.
10218
10326
  </xsl:when>
10219
10327
  <xsl:when test="$type = 'roman'">
@@ -10344,7 +10452,7 @@
10344
10452
  <xsl:call-template name="refine_list-item-style"/>
10345
10453
 
10346
10454
  <fo:list-item-label end-indent="label-end()">
10347
- <fo:block xsl:use-attribute-sets="list-item-label-style">
10455
+ <fo:block xsl:use-attribute-sets="list-item-label-style" role="SKIP">
10348
10456
 
10349
10457
  <xsl:call-template name="refine_list-item-label-style"/>
10350
10458
 
@@ -10353,12 +10461,12 @@
10353
10461
  <xsl:call-template name="append_add-style"/>
10354
10462
  </xsl:if>
10355
10463
 
10356
- <xsl:call-template name="getListItemFormat"/>
10464
+ <xsl:call-template name="getListItemFormat"/>
10357
10465
 
10358
10466
  </fo:block>
10359
10467
  </fo:list-item-label>
10360
10468
  <fo:list-item-body start-indent="body-start()" xsl:use-attribute-sets="list-item-body-style">
10361
- <fo:block>
10469
+ <fo:block role="SKIP">
10362
10470
 
10363
10471
  <xsl:call-template name="refine_list-item-body-style"/>
10364
10472
 
@@ -10637,10 +10745,10 @@
10637
10745
  <fo:table-body>
10638
10746
  <fo:table-row text-align="center" font-weight="bold" background-color="black" color="white">
10639
10747
 
10640
- <fo:table-cell border="1pt solid black"><fo:block>Date</fo:block></fo:table-cell>
10641
- <fo:table-cell border="1pt solid black"><fo:block>Type</fo:block></fo:table-cell>
10642
- <fo:table-cell border="1pt solid black"><fo:block>Change</fo:block></fo:table-cell>
10643
- <fo:table-cell border="1pt solid black"><fo:block>Pages</fo:block></fo:table-cell>
10748
+ <fo:table-cell border="1pt solid black"><fo:block role="SKIP">Date</fo:block></fo:table-cell>
10749
+ <fo:table-cell border="1pt solid black"><fo:block role="SKIP">Type</fo:block></fo:table-cell>
10750
+ <fo:table-cell border="1pt solid black"><fo:block role="SKIP">Change</fo:block></fo:table-cell>
10751
+ <fo:table-cell border="1pt solid black"><fo:block role="SKIP">Pages</fo:block></fo:table-cell>
10644
10752
  </fo:table-row>
10645
10753
  <xsl:apply-templates/>
10646
10754
  </fo:table-body>
@@ -10655,7 +10763,7 @@
10655
10763
 
10656
10764
  <xsl:template match="*[local-name() = 'errata']/*[local-name() = 'row']/*">
10657
10765
  <fo:table-cell border="1pt solid black" padding-left="1mm" padding-top="0.5mm">
10658
- <fo:block><xsl:apply-templates/></fo:block>
10766
+ <fo:block role="SKIP"><xsl:apply-templates/></fo:block>
10659
10767
  </fo:table-cell>
10660
10768
  </xsl:template>
10661
10769
  <!-- ============ -->
@@ -10726,8 +10834,8 @@
10726
10834
  <fo:list-block id="{@id}" xsl:use-attribute-sets="bibitem-non-normative-list-style">
10727
10835
  <fo:list-item>
10728
10836
  <fo:list-item-label end-indent="label-end()">
10729
- <fo:block>
10730
- <fo:inline>
10837
+ <fo:block role="SKIP">
10838
+ <fo:inline role="SKIP">
10731
10839
 
10732
10840
  <xsl:apply-templates select="*[local-name() = 'biblio-tag']">
10733
10841
  <xsl:with-param name="biblio_tag_part">first</xsl:with-param>
@@ -10736,7 +10844,7 @@
10736
10844
  </fo:block>
10737
10845
  </fo:list-item-label>
10738
10846
  <fo:list-item-body start-indent="body-start()">
10739
- <fo:block xsl:use-attribute-sets="bibitem-non-normative-list-body-style">
10847
+ <fo:block xsl:use-attribute-sets="bibitem-non-normative-list-body-style" role="SKIP">
10740
10848
  <xsl:call-template name="processBibitem">
10741
10849
  <xsl:with-param name="biblio_tag_part">last</xsl:with-param>
10742
10850
  </xsl:call-template>
@@ -10963,7 +11071,7 @@
10963
11071
  <xsl:for-each select="*[local-name() = 'tab']">
10964
11072
  <xsl:variable name="current_id" select="generate-id()"/>
10965
11073
  <fo:table-cell>
10966
- <fo:block line-height-shift-adjustment="disregard-shifts">
11074
+ <fo:block line-height-shift-adjustment="disregard-shifts" role="SKIP">
10967
11075
  <xsl:call-template name="insert_basic_link">
10968
11076
  <xsl:with-param name="element">
10969
11077
  <fo:basic-link internal-destination="{$target}" fox:alt-text="{.}">
@@ -10981,7 +11089,7 @@
10981
11089
  </xsl:for-each>
10982
11090
  <!-- last column - for page numbers -->
10983
11091
  <fo:table-cell text-align="right" font-size="10pt" font-weight="bold" font-family="Arial">
10984
- <fo:block>
11092
+ <fo:block role="SKIP">
10985
11093
  <xsl:call-template name="insert_basic_link">
10986
11094
  <xsl:with-param name="element">
10987
11095
  <fo:basic-link internal-destination="{$target}" fox:alt-text="{.}">