metanorma-csa 2.2.11 → 2.2.12

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: '0354818d41d11101f7b6c8887da47415bc21aa1ea6d09401ca2327123653042d'
4
- data.tar.gz: ef4b3538d19b0dad0a4e690b6d54bccf94038afb4ccc7b4eb59a3e1ada381f0c
3
+ metadata.gz: 47c25ed6381d2fe09a3ac929df7af1ed4404896e017b8fd9cf3728d60a6f2b6f
4
+ data.tar.gz: 560163c63362347a00f63c687c3e82345f808b92c0e7811c9f93611e87145371
5
5
  SHA512:
6
- metadata.gz: df2b1c575115cc72dee940c2f299507562733521fa3ca4885de4cd493e3db6ef437a3d9975eed9264d693e0a3cbcf3b31fccc747900dad16d5d8f23c77e130e9
7
- data.tar.gz: 320844b64ebad5514704255397a55f818ba32a80a63b402f4590ba8ac100a3d141930fbe1f8f0e69b67439bbe3df27da4b3841e78b32adc439dcccf437654ddf
6
+ metadata.gz: 6369b6ef70d7d246ed973f679a264b8ac159e8ca8ee6548eea052ec22eddc627fa9cbef97e0082cecb8d531fd1954cc6572fc70f8a77f70fceab5c9b411bb33a
7
+ data.tar.gz: 321927ff23afc25fe53d7178e96b508aeb9a02bc709b2a6a68b00f0265cd412a875d53a7b780a3e241ce605d6ea612ac342aa606fbee2150801f2b6350ac14b6
@@ -1507,6 +1507,7 @@
1507
1507
  </xsl:attribute-set>
1508
1508
 
1509
1509
  <xsl:attribute-set name="figure-block-style">
1510
+ <xsl:attribute name="role">SKIP</xsl:attribute>
1510
1511
 
1511
1512
  <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
1512
1513
 
@@ -1517,6 +1518,7 @@
1517
1518
  </xsl:attribute-set>
1518
1519
 
1519
1520
  <xsl:attribute-set name="figure-name-style">
1521
+ <xsl:attribute name="role">Caption</xsl:attribute>
1520
1522
 
1521
1523
  <xsl:attribute name="font-size">11pt</xsl:attribute>
1522
1524
  <xsl:attribute name="font-weight">bold</xsl:attribute>
@@ -1565,6 +1567,7 @@
1565
1567
  </xsl:template>
1566
1568
 
1567
1569
  <xsl:attribute-set name="image-style">
1570
+ <xsl:attribute name="role">SKIP</xsl:attribute>
1568
1571
  <xsl:attribute name="text-align">center</xsl:attribute>
1569
1572
 
1570
1573
  </xsl:attribute-set>
@@ -1841,6 +1844,11 @@
1841
1844
 
1842
1845
  </xsl:attribute-set> <!-- bibitem-non-normative-list-style -->
1843
1846
 
1847
+ <xsl:attribute-set name="bibitem-non-normative-list-item-style">
1848
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1849
+
1850
+ </xsl:attribute-set>
1851
+
1844
1852
  <!-- bibitem in bibliography section (references/@normative="false"), list body -->
1845
1853
  <xsl:attribute-set name="bibitem-normative-list-body-style">
1846
1854
 
@@ -2237,14 +2245,14 @@
2237
2245
  <xsl:value-of select="$sep"/><xsl:value-of select="$zero_width_space"/>
2238
2246
  </xsl:when>
2239
2247
  <xsl:otherwise>
2240
- <fo:inline keep-together.within-line="always"><xsl:apply-templates/></fo:inline>
2248
+ <fo:inline keep-together.within-line="always" role="SKIP"><xsl:apply-templates/></fo:inline>
2241
2249
  </xsl:otherwise>
2242
2250
  </xsl:choose>
2243
2251
  </xsl:for-each>
2244
2252
  </xsl:when>
2245
2253
 
2246
2254
  <xsl:otherwise>
2247
- <fo:inline keep-together.within-line="always"><xsl:apply-templates/></fo:inline>
2255
+ <fo:inline keep-together.within-line="always" role="SKIP"><xsl:apply-templates/></fo:inline>
2248
2256
  </xsl:otherwise>
2249
2257
 
2250
2258
  </xsl:choose>
@@ -2254,7 +2262,7 @@
2254
2262
  <!-- Preface boilerplate sections processing -->
2255
2263
  <!-- ================================= -->
2256
2264
  <xsl:template match="*[local-name()='copyright-statement']">
2257
- <fo:block xsl:use-attribute-sets="copyright-statement-style">
2265
+ <fo:block xsl:use-attribute-sets="copyright-statement-style" role="SKIP">
2258
2266
  <xsl:apply-templates/>
2259
2267
  </fo:block>
2260
2268
  </xsl:template> <!-- copyright-statement -->
@@ -2422,7 +2430,7 @@
2422
2430
  </xsl:choose>
2423
2431
  </xsl:variable>
2424
2432
 
2425
- <fo:block-container xsl:use-attribute-sets="table-container-style">
2433
+ <fo:block-container xsl:use-attribute-sets="table-container-style" role="SKIP">
2426
2434
 
2427
2435
  <xsl:call-template name="refine_table-container-style">
2428
2436
  <xsl:with-param name="margin-side" select="$margin-side"/>
@@ -3455,7 +3463,7 @@
3455
3463
  </xsl:choose>
3456
3464
  </xsl:variable>
3457
3465
  <xsl:variable name="footnote_inline">
3458
- <fo:inline>
3466
+ <fo:inline role="Reference">
3459
3467
 
3460
3468
  <xsl:variable name="fn_styles">
3461
3469
  <xsl:choose>
@@ -3478,7 +3486,7 @@
3478
3486
 
3479
3487
  <xsl:call-template name="insert_basic_link">
3480
3488
  <xsl:with-param name="element">
3481
- <fo:basic-link internal-destination="{$ref_id}" fox:alt-text="footnote {$current_fn_number}">
3489
+ <fo:basic-link internal-destination="{$ref_id}" fox:alt-text="footnote {$current_fn_number}" role="Lbl">
3482
3490
  <xsl:copy-of select="$current_fn_number_text"/>
3483
3491
  </fo:basic-link>
3484
3492
  </xsl:with-param>
@@ -3491,17 +3499,17 @@
3491
3499
  <xsl:copy-of select="$footnote_inline"/>
3492
3500
  </xsl:when>
3493
3501
  <xsl:when test="$p_fn//fn[@gen_id = $gen_id] or normalize-space(@skip_footnote_body) = 'false'">
3494
- <fo:footnote xsl:use-attribute-sets="fn-style">
3502
+ <fo:footnote xsl:use-attribute-sets="fn-style" role="SKIP">
3495
3503
  <xsl:copy-of select="$footnote_inline"/>
3496
- <fo:footnote-body>
3504
+ <fo:footnote-body role="Note">
3497
3505
 
3498
- <fo:block-container xsl:use-attribute-sets="fn-container-body-style">
3506
+ <fo:block-container xsl:use-attribute-sets="fn-container-body-style" role="SKIP">
3499
3507
 
3500
- <fo:block xsl:use-attribute-sets="fn-body-style">
3508
+ <fo:block xsl:use-attribute-sets="fn-body-style" role="SKIP">
3501
3509
 
3502
3510
  <xsl:call-template name="refine_fn-body-style"/>
3503
3511
 
3504
- <fo:inline id="{$ref_id}" xsl:use-attribute-sets="fn-body-num-style">
3512
+ <fo:inline id="{$ref_id}" xsl:use-attribute-sets="fn-body-num-style" role="Lbl">
3505
3513
 
3506
3514
  <xsl:call-template name="refine_fn-body-num-style"/>
3507
3515
 
@@ -3763,11 +3771,11 @@
3763
3771
  </xsl:template>
3764
3772
 
3765
3773
  <xsl:template match="*[local-name()='fn']/text()[normalize-space() != '']">
3766
- <fo:inline><xsl:value-of select="."/></fo:inline>
3774
+ <fo:inline role="SKIP"><xsl:value-of select="."/></fo:inline>
3767
3775
  </xsl:template>
3768
3776
 
3769
3777
  <xsl:template match="*[local-name()='fn']//*[local-name()='p']">
3770
- <fo:inline>
3778
+ <fo:inline role="P">
3771
3779
  <xsl:apply-templates/>
3772
3780
  </fo:inline>
3773
3781
  </xsl:template>
@@ -3782,7 +3790,7 @@
3782
3790
  <xsl:variable name="isAdded" select="@added"/>
3783
3791
  <xsl:variable name="isDeleted" select="@deleted"/>
3784
3792
  <!-- <dl><xsl:copy-of select="."/></dl> -->
3785
- <fo:block-container xsl:use-attribute-sets="dl-block-style">
3793
+ <fo:block-container xsl:use-attribute-sets="dl-block-style" role="SKIP">
3786
3794
 
3787
3795
  <xsl:call-template name="setBlockSpanAll"/>
3788
3796
 
@@ -3817,7 +3825,7 @@
3817
3825
  <xsl:with-param name="isDeleted" select="$isDeleted"/>
3818
3826
  </xsl:call-template>
3819
3827
 
3820
- <fo:block-container margin-left="0mm">
3828
+ <fo:block-container margin-left="0mm" role="SKIP">
3821
3829
 
3822
3830
  <xsl:attribute name="margin-right">0mm</xsl:attribute>
3823
3831
 
@@ -3882,7 +3890,7 @@
3882
3890
 
3883
3891
  <!-- a few components -->
3884
3892
  <xsl:if test="$onlyOneComponent = 'false'">
3885
- <fo:block>
3893
+ <fo:block role="SKIP">
3886
3894
 
3887
3895
  <xsl:call-template name="refine_multicomponent_style"/>
3888
3896
 
@@ -3890,7 +3898,7 @@
3890
3898
  <xsl:attribute name="margin-top">0</xsl:attribute>
3891
3899
  </xsl:if>
3892
3900
 
3893
- <fo:block>
3901
+ <fo:block role="SKIP">
3894
3902
 
3895
3903
  <xsl:call-template name="refine_multicomponent_block_style"/>
3896
3904
 
@@ -4485,6 +4493,9 @@
4485
4493
 
4486
4494
  <xsl:template name="refine_strong_style">
4487
4495
 
4496
+ <xsl:if test="ancestor::*['preferred']">
4497
+ <xsl:attribute name="role">SKIP</xsl:attribute>
4498
+ </xsl:if>
4488
4499
  </xsl:template>
4489
4500
 
4490
4501
  <xsl:template match="*[local-name()='padding']">
@@ -5418,6 +5429,18 @@
5418
5429
  </xsl:copy>
5419
5430
  </xsl:template>
5420
5431
 
5432
+ <xsl:variable name="font_main_root_style">
5433
+ <root-style xsl:use-attribute-sets="root-style">
5434
+ </root-style>
5435
+ </xsl:variable>
5436
+ <xsl:variable name="font_main_root_style_font_family" select="xalan:nodeset($font_main_root_style)/root-style/@font-family"/>
5437
+ <xsl:variable name="font_main">
5438
+ <xsl:choose>
5439
+ <xsl:when test="contains($font_main_root_style_font_family, ',')"><xsl:value-of select="substring-before($font_main_root_style_font_family, ',')"/></xsl:when>
5440
+ <xsl:otherwise><xsl:value-of select="$font_main_root_style_font_family"/></xsl:otherwise>
5441
+ </xsl:choose>
5442
+ </xsl:variable>
5443
+
5421
5444
  <xsl:template match="*[local-name()='th' or local-name()='td']" mode="simple-table-id">
5422
5445
  <xsl:param name="id"/>
5423
5446
  <xsl:copy>
@@ -5456,6 +5479,33 @@
5456
5479
 
5457
5480
  <!-- td_text='<xsl:copy-of select="$td_text"/>' -->
5458
5481
 
5482
+ <xsl:variable name="words_with_width">
5483
+ <!-- calculate width for 'word' which contain text only (without formatting tags inside) -->
5484
+ <xsl:for-each select="xalan:nodeset($td_text)//*[local-name() = 'word'][normalize-space() != ''][not(*)]">
5485
+ <xsl:copy>
5486
+ <xsl:copy-of select="@*"/>
5487
+ <xsl:attribute name="width">
5488
+ <xsl:value-of select="java:org.metanorma.fop.Util.getStringWidth(., $font_main)"/> <!-- Example: 'Times New Roman' -->
5489
+ </xsl:attribute>
5490
+ <xsl:copy-of select="node()"/>
5491
+ </xsl:copy>
5492
+ </xsl:for-each>
5493
+ </xsl:variable>
5494
+
5495
+ <xsl:variable name="words_with_width_sorted">
5496
+ <xsl:for-each select="xalan:nodeset($words_with_width)//*[local-name() = 'word']">
5497
+ <xsl:sort select="@width" data-type="number" order="descending"/>
5498
+ <!-- select word maximal width only -->
5499
+ <xsl:if test="position() = 1">
5500
+ <xsl:copy-of select="."/>
5501
+ </xsl:if>
5502
+ </xsl:for-each>
5503
+ <!-- add 'word' with formatting tags inside -->
5504
+ <xsl:for-each select="xalan:nodeset($td_text)//*[local-name() = 'word'][normalize-space() != ''][*]">
5505
+ <xsl:copy-of select="."/>
5506
+ </xsl:for-each>
5507
+ </xsl:variable>
5508
+
5459
5509
  <xsl:variable name="words">
5460
5510
  <xsl:for-each select=".//*[local-name() = 'image' or local-name() = 'stem']">
5461
5511
  <word>
@@ -5463,9 +5513,12 @@
5463
5513
  </word>
5464
5514
  </xsl:for-each>
5465
5515
 
5466
- <xsl:for-each select="xalan:nodeset($td_text)//*[local-name() = 'word'][normalize-space() != '']">
5516
+ <xsl:for-each select="xalan:nodeset($words_with_width_sorted)//*[local-name() = 'word'][normalize-space() != '']">
5467
5517
  <xsl:copy-of select="."/>
5468
5518
  </xsl:for-each>
5519
+ <!-- <xsl:for-each select="xalan:nodeset($td_text)//*[local-name() = 'word'][normalize-space() != '']">
5520
+ <xsl:copy-of select="."/>
5521
+ </xsl:for-each> -->
5469
5522
 
5470
5523
  </xsl:variable>
5471
5524
 
@@ -5926,10 +5979,10 @@
5926
5979
  <xsl:copy>
5927
5980
  <xsl:apply-templates select="@*" mode="mathml"/>
5928
5981
  <xsl:if test="not(@lspace)">
5929
- <xsl:attribute name="lspace">0.4em</xsl:attribute>
5982
+ <xsl:attribute name="lspace">0.2em</xsl:attribute>
5930
5983
  </xsl:if>
5931
- <xsl:if test="not(@rspace)">
5932
- <xsl:attribute name="rspace">0.4em</xsl:attribute>
5984
+ <xsl:if test="not(@rspace) and not(following-sibling::*[1][self::mathml:mo and normalize-space(text()) = '|'])">
5985
+ <xsl:attribute name="rspace">0.2em</xsl:attribute>
5933
5986
  </xsl:if>
5934
5987
  <xsl:apply-templates mode="mathml"/>
5935
5988
  </xsl:copy>
@@ -5946,6 +5999,27 @@
5946
5999
  </xsl:copy>
5947
6000
  </xsl:template>
5948
6001
 
6002
+ <!-- increase space before '(' -->
6003
+ <xsl:template match="mathml:mo[normalize-space(text()) = '(']" mode="mathml">
6004
+ <xsl:copy>
6005
+ <xsl:apply-templates select="@*" mode="mathml"/>
6006
+ <xsl:if test="(preceding-sibling::* and not(preceding-sibling::*[1][self::mathml:mo])) or (../preceding-sibling::* and not(../preceding-sibling::*[1][self::mathml:mo]))">
6007
+ <xsl:if test="not(@lspace)">
6008
+ <xsl:attribute name="lspace">0.4em</xsl:attribute>
6009
+ <xsl:choose>
6010
+ <xsl:when test="preceding-sibling::*[1][self::mathml:mi or self::mathml:mstyle]">
6011
+ <xsl:attribute name="lspace">0.2em</xsl:attribute>
6012
+ </xsl:when>
6013
+ <xsl:when test="../preceding-sibling::*[1][self::mathml:mi or self::mathml:mstyle]">
6014
+ <xsl:attribute name="lspace">0.2em</xsl:attribute>
6015
+ </xsl:when>
6016
+ </xsl:choose>
6017
+ </xsl:if>
6018
+ </xsl:if>
6019
+ <xsl:apply-templates mode="mathml"/>
6020
+ </xsl:copy>
6021
+ </xsl:template>
6022
+
5949
6023
  <!-- Examples:
5950
6024
  <stem type="AsciiMath">x = 1</stem>
5951
6025
  <stem type="AsciiMath"><asciimath>x = 1</asciimath></stem>
@@ -6105,7 +6179,7 @@
6105
6179
  <!-- formula -->
6106
6180
  <!-- ====== -->
6107
6181
  <xsl:template match="*[local-name() = 'formula']" name="formula">
6108
- <fo:block-container margin-left="0mm">
6182
+ <fo:block-container margin-left="0mm" role="SKIP">
6109
6183
  <xsl:if test="parent::*[local-name() = 'note']">
6110
6184
  <xsl:attribute name="margin-left">
6111
6185
  <xsl:choose>
@@ -6115,7 +6189,7 @@
6115
6189
  </xsl:attribute>
6116
6190
 
6117
6191
  </xsl:if>
6118
- <fo:block-container margin-left="0mm">
6192
+ <fo:block-container margin-left="0mm" role="SKIP">
6119
6193
  <fo:block id="{@id}">
6120
6194
  <xsl:apply-templates select="node()[not(local-name() = 'name')]"/> <!-- formula's number will be process in 'stem' template -->
6121
6195
  </fo:block>
@@ -6195,13 +6269,13 @@
6195
6269
 
6196
6270
  <xsl:template match="*[local-name() = 'note']" name="note">
6197
6271
 
6198
- <fo:block-container id="{@id}" xsl:use-attribute-sets="note-style">
6272
+ <fo:block-container id="{@id}" xsl:use-attribute-sets="note-style" role="SKIP">
6199
6273
 
6200
6274
  <xsl:call-template name="setBlockSpanAll"/>
6201
6275
 
6202
6276
  <xsl:call-template name="refine_note-style"/>
6203
6277
 
6204
- <fo:block-container margin-left="0mm" margin-right="0mm">
6278
+ <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
6205
6279
 
6206
6280
  <xsl:if test="ancestor::csa:ul or ancestor::csa:ol and not(ancestor::csa:note[1]/following-sibling::*)">
6207
6281
  <xsl:attribute name="margin-bottom">0pt</xsl:attribute>
@@ -6367,12 +6441,13 @@
6367
6441
 
6368
6442
  <xsl:template match="*[local-name() = 'term']/*[local-name() = 'name']">
6369
6443
  <xsl:if test="normalize-space() != ''">
6370
- <xsl:variable name="level">
6444
+ <!-- <xsl:variable name="level">
6371
6445
  <xsl:call-template name="getLevelTermName"/>
6372
6446
  </xsl:variable>
6373
6447
  <fo:inline role="H{$level}">
6374
- <xsl:apply-templates/>
6375
- </fo:inline>
6448
+ <xsl:apply-templates />
6449
+ </fo:inline> -->
6450
+ <xsl:apply-templates/>
6376
6451
  </xsl:if>
6377
6452
  </xsl:template>
6378
6453
  <!-- ====== -->
@@ -6396,7 +6471,7 @@
6396
6471
  <!-- Example: Dimensions in millimeters -->
6397
6472
  <xsl:apply-templates select="*[local-name() = 'note'][@type = 'units']"/>
6398
6473
 
6399
- <fo:block xsl:use-attribute-sets="figure-style">
6474
+ <fo:block xsl:use-attribute-sets="figure-style" role="SKIP">
6400
6475
  <xsl:apply-templates select="node()[not(local-name() = 'name') and not(local-name() = 'note' and @type = 'units')]"/>
6401
6476
  </fo:block>
6402
6477
  <xsl:for-each select="*[local-name() = 'note'][not(@type = 'units')]">
@@ -7531,7 +7606,7 @@
7531
7606
  </xsl:when>
7532
7607
 
7533
7608
  <xsl:otherwise>
7534
- <fo:block-container xsl:use-attribute-sets="sourcecode-container-style">
7609
+ <fo:block-container xsl:use-attribute-sets="sourcecode-container-style" role="SKIP">
7535
7610
 
7536
7611
  <xsl:if test="not(ancestor::*[local-name() = 'li']) or ancestor::*[local-name() = 'example']">
7537
7612
  <xsl:attribute name="margin-left">0mm</xsl:attribute>
@@ -7552,7 +7627,7 @@
7552
7627
  </xsl:attribute>
7553
7628
 
7554
7629
  </xsl:if>
7555
- <fo:block-container margin-left="0mm">
7630
+ <fo:block-container margin-left="0mm" role="SKIP">
7556
7631
 
7557
7632
  <fo:block xsl:use-attribute-sets="sourcecode-style">
7558
7633
 
@@ -8098,11 +8173,11 @@
8098
8173
  <!-- requirement, recommendation, permission table -->
8099
8174
  <!-- ========== -->
8100
8175
  <xsl:template match="*[local-name() = 'table'][@class = 'recommendation' or @class='requirement' or @class='permission']">
8101
- <fo:block-container margin-left="0mm" margin-right="0mm" margin-bottom="12pt">
8176
+ <fo:block-container margin-left="0mm" margin-right="0mm" margin-bottom="12pt" role="SKIP">
8102
8177
  <xsl:if test="ancestor::*[local-name() = 'table'][@class = 'recommendation' or @class='requirement' or @class='permission']">
8103
8178
  <xsl:attribute name="margin-bottom">0pt</xsl:attribute>
8104
8179
  </xsl:if>
8105
- <fo:block-container margin-left="0mm" margin-right="0mm">
8180
+ <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
8106
8181
  <fo:table id="{@id}" table-layout="fixed" width="100%"> <!-- border="1pt solid black" -->
8107
8182
  <xsl:if test="ancestor::*[local-name() = 'table'][@class = 'recommendation' or @class='requirement' or @class='permission']">
8108
8183
  <!-- <xsl:attribute name="border">0.5pt solid black</xsl:attribute> -->
@@ -8264,7 +8339,7 @@
8264
8339
  -->
8265
8340
  <xsl:template match="*[local-name() = 'example']">
8266
8341
 
8267
- <fo:block-container id="{@id}" xsl:use-attribute-sets="example-style">
8342
+ <fo:block-container id="{@id}" xsl:use-attribute-sets="example-style" role="SKIP">
8268
8343
 
8269
8344
  <xsl:call-template name="setBlockSpanAll"/>
8270
8345
 
@@ -8275,7 +8350,7 @@
8275
8350
  block
8276
8351
  </xsl:variable>
8277
8352
 
8278
- <fo:block-container margin-left="0mm">
8353
+ <fo:block-container margin-left="0mm" role="SKIP">
8279
8354
 
8280
8355
  <xsl:choose>
8281
8356
 
@@ -8288,8 +8363,8 @@
8288
8363
  </xsl:apply-templates>
8289
8364
  </fo:block>
8290
8365
 
8291
- <fo:block-container xsl:use-attribute-sets="example-body-style">
8292
- <fo:block-container margin-left="0mm" margin-right="0mm">
8366
+ <fo:block-container xsl:use-attribute-sets="example-body-style" role="SKIP">
8367
+ <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
8293
8368
  <xsl:apply-templates select="node()[not(local-name() = 'name')]">
8294
8369
  <xsl:with-param name="fo_element" select="$fo_element"/>
8295
8370
  </xsl:apply-templates>
@@ -8342,8 +8417,8 @@
8342
8417
 
8343
8418
  <xsl:if test="*[not(local-name() = 'name')][position() &gt; 1]">
8344
8419
  <!-- display further elements in blocks -->
8345
- <fo:block-container xsl:use-attribute-sets="example-body-style">
8346
- <fo:block-container margin-left="0mm" margin-right="0mm">
8420
+ <fo:block-container xsl:use-attribute-sets="example-body-style" role="SKIP">
8421
+ <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
8347
8422
  <xsl:apply-templates select="*[not(local-name() = 'name')][position() &gt; 1]">
8348
8423
  <xsl:with-param name="fo_element" select="'block'"/>
8349
8424
  </xsl:apply-templates>
@@ -8396,7 +8471,7 @@
8396
8471
  </xsl:variable>
8397
8472
  <xsl:choose>
8398
8473
  <xsl:when test="starts-with(normalize-space($element), 'block')">
8399
- <fo:block-container>
8474
+ <fo:block-container role="SKIP">
8400
8475
  <xsl:if test="ancestor::*[local-name() = 'li'] and contains(normalize-space($fo_element), 'block')">
8401
8476
  <xsl:attribute name="margin-left">0mm</xsl:attribute>
8402
8477
  <xsl:attribute name="margin-right">0mm</xsl:attribute>
@@ -8537,7 +8612,7 @@
8537
8612
  <!-- author -->
8538
8613
  <!-- ====== -->
8539
8614
  <xsl:template match="*[local-name() = 'quote']">
8540
- <fo:block-container margin-left="0mm">
8615
+ <fo:block-container margin-left="0mm" role="SKIP">
8541
8616
 
8542
8617
  <xsl:call-template name="setBlockSpanAll"/>
8543
8618
 
@@ -8547,12 +8622,12 @@
8547
8622
  </xsl:if>
8548
8623
  </xsl:if>
8549
8624
 
8550
- <fo:block-container margin-left="0mm">
8551
- <fo:block-container xsl:use-attribute-sets="quote-style">
8625
+ <fo:block-container margin-left="0mm" role="SKIP">
8626
+ <fo:block-container xsl:use-attribute-sets="quote-style" role="SKIP">
8552
8627
 
8553
8628
  <xsl:call-template name="refine_quote-style"/>
8554
8629
 
8555
- <fo:block-container margin-left="0mm" margin-right="0mm">
8630
+ <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
8556
8631
  <fo:block role="BlockQuote">
8557
8632
  <xsl:apply-templates select="./node()[not(local-name() = 'author') and not(local-name() = 'source')]"/> <!-- process all nested nodes, except author and source -->
8558
8633
  </fo:block>
@@ -8705,10 +8780,10 @@
8705
8780
 
8706
8781
  <xsl:choose>
8707
8782
  <xsl:when test="$lang = 'zh'">
8708
- <fo:inline><xsl:value-of select="$tab_zh"/></fo:inline>
8783
+ <fo:inline role="SKIP"><xsl:value-of select="$tab_zh"/></fo:inline>
8709
8784
  </xsl:when>
8710
8785
  <xsl:when test="../../@inline-header = 'true'">
8711
- <fo:inline font-size="90%">
8786
+ <fo:inline font-size="90%" role="SKIP">
8712
8787
  <xsl:call-template name="insertNonBreakSpaces">
8713
8788
  <xsl:with-param name="count" select="$padding-right"/>
8714
8789
  </xsl:call-template>
@@ -8716,7 +8791,7 @@
8716
8791
  </xsl:when>
8717
8792
  <xsl:otherwise>
8718
8793
  <xsl:variable name="direction"><xsl:if test="$lang = 'ar'"><xsl:value-of select="$RLM"/></xsl:if></xsl:variable>
8719
- <fo:inline padding-right="{$padding-right}mm"><xsl:value-of select="$direction"/>​</fo:inline>
8794
+ <fo:inline padding-right="{$padding-right}mm" role="SKIP"><xsl:value-of select="$direction"/>​</fo:inline>
8720
8795
  </xsl:otherwise>
8721
8796
  </xsl:choose>
8722
8797
 
@@ -8751,12 +8826,12 @@
8751
8826
  <fo:block font-size="{normalize-space($font-size)}" role="H{$levelTerm}" xsl:use-attribute-sets="preferred-block-style">
8752
8827
 
8753
8828
  <xsl:if test="parent::*[local-name() = 'term'] and not(preceding-sibling::*[local-name() = 'preferred'])"> <!-- if first preffered in term, then display term's name -->
8754
- <fo:block xsl:use-attribute-sets="term-name-style">
8829
+ <fo:block xsl:use-attribute-sets="term-name-style" role="SKIP">
8755
8830
  <xsl:apply-templates select="ancestor::*[local-name() = 'term'][1]/*[local-name() = 'name']"/>
8756
8831
  </fo:block>
8757
8832
  </xsl:if>
8758
8833
 
8759
- <fo:block xsl:use-attribute-sets="preferred-term-style">
8834
+ <fo:block xsl:use-attribute-sets="preferred-term-style" role="SKIP">
8760
8835
  <xsl:call-template name="setStyle_preferred"/>
8761
8836
  <xsl:apply-templates/>
8762
8837
  </fo:block>
@@ -8797,7 +8872,7 @@
8797
8872
  <!-- definition -->
8798
8873
  <!-- ========== -->
8799
8874
  <xsl:template match="*[local-name() = 'definition']">
8800
- <fo:block xsl:use-attribute-sets="definition-style">
8875
+ <fo:block xsl:use-attribute-sets="definition-style" role="SKIP">
8801
8876
  <xsl:apply-templates/>
8802
8877
  </fo:block>
8803
8878
  </xsl:template>
@@ -8845,6 +8920,10 @@
8845
8920
 
8846
8921
  <xsl:template match="*[local-name() = 'clause']">
8847
8922
  <fo:block>
8923
+ <xsl:if test="parent::*[local-name() = 'copyright-statement']">
8924
+ <xsl:attribute name="role">SKIP</xsl:attribute>
8925
+ </xsl:if>
8926
+
8848
8927
  <xsl:call-template name="setId"/>
8849
8928
 
8850
8929
  <xsl:call-template name="setBlockSpanAll"/>
@@ -9083,7 +9162,7 @@
9083
9162
  <xsl:template match="*[local-name() = 'ul'] | *[local-name() = 'ol']">
9084
9163
  <xsl:choose>
9085
9164
  <xsl:when test="parent::*[local-name() = 'note'] or parent::*[local-name() = 'termnote']">
9086
- <fo:block-container>
9165
+ <fo:block-container role="SKIP">
9087
9166
  <xsl:attribute name="margin-left">
9088
9167
  <xsl:choose>
9089
9168
  <xsl:when test="not(ancestor::*[local-name() = 'table'])"><xsl:value-of select="$note-body-indent"/></xsl:when>
@@ -9093,7 +9172,7 @@
9093
9172
 
9094
9173
  <xsl:call-template name="refine_list_container_style"/>
9095
9174
 
9096
- <fo:block-container margin-left="0mm">
9175
+ <fo:block-container margin-left="0mm" role="SKIP">
9097
9176
  <fo:block>
9098
9177
  <xsl:apply-templates select="." mode="list"/>
9099
9178
  </fo:block>
@@ -9102,7 +9181,7 @@
9102
9181
  </xsl:when>
9103
9182
  <xsl:otherwise>
9104
9183
 
9105
- <fo:block>
9184
+ <fo:block role="SKIP">
9106
9185
  <xsl:apply-templates select="." mode="list"/>
9107
9186
  </fo:block>
9108
9187
 
@@ -9520,7 +9599,10 @@
9520
9599
  <!-- Reference sections (Normative References and Bibliography) -->
9521
9600
  <!-- ========================================================== -->
9522
9601
  <xsl:template match="*[local-name() = 'references'][@hidden='true']" priority="3"/>
9523
- <xsl:template match="*[local-name() = 'bibitem'][@hidden='true']" priority="3"/>
9602
+ <xsl:template match="*[local-name() = 'bibitem'][@hidden='true']" priority="3">
9603
+ <xsl:param name="skip" select="normalize-space(preceding-sibling::*[1][local-name() = 'bibitem'] and 1 = 1)"/>
9604
+
9605
+ </xsl:template>
9524
9606
  <!-- don't display bibitem with @id starts with '_hidden', that was introduced for references integrity -->
9525
9607
  <xsl:template match="*[local-name() = 'bibitem'][starts-with(@id, 'hidden_bibitem_')]" priority="3"/>
9526
9608
 
@@ -9569,6 +9651,7 @@
9569
9651
 
9570
9652
  <!-- Bibliography (non-normative references) -->
9571
9653
  <xsl:template match="*[local-name() = 'references'][not(@normative='true')]/*[local-name() = 'bibitem']" name="bibitem_non_normative" priority="2">
9654
+ <xsl:param name="skip" select="normalize-space(preceding-sibling::*[1][local-name() = 'bibitem'] and 1 = 1)"/> <!-- current bibiitem is non-first -->
9572
9655
 
9573
9656
  <!-- start CSA bibitem processing -->
9574
9657
  <fo:block id="{@id}" xsl:use-attribute-sets="bibitem-non-normative-style">
@@ -9579,6 +9662,35 @@
9579
9662
 
9580
9663
  </xsl:template> <!-- references[not(@normative='true')]/bibitem -->
9581
9664
 
9665
+ <xsl:template name="insertListItem_Bibitem">
9666
+ <xsl:choose>
9667
+ <xsl:when test="@hidden = 'true'"><!-- skip --></xsl:when>
9668
+ <xsl:otherwise>
9669
+ <fo:list-item id="{@id}" xsl:use-attribute-sets="bibitem-non-normative-list-item-style">
9670
+ <fo:list-item-label end-indent="label-end()">
9671
+ <fo:block role="SKIP">
9672
+ <fo:inline role="SKIP">
9673
+ <xsl:apply-templates select="*[local-name() = 'biblio-tag']">
9674
+ <xsl:with-param name="biblio_tag_part">first</xsl:with-param>
9675
+ </xsl:apply-templates>
9676
+ </fo:inline>
9677
+ </fo:block>
9678
+ </fo:list-item-label>
9679
+ <fo:list-item-body start-indent="body-start()">
9680
+ <fo:block xsl:use-attribute-sets="bibitem-non-normative-list-body-style" role="SKIP">
9681
+ <xsl:call-template name="processBibitem">
9682
+ <xsl:with-param name="biblio_tag_part">last</xsl:with-param>
9683
+ </xsl:call-template>
9684
+ </fo:block>
9685
+ </fo:list-item-body>
9686
+ </fo:list-item>
9687
+ </xsl:otherwise>
9688
+ </xsl:choose>
9689
+ <xsl:apply-templates select="following-sibling::*[1][local-name() = 'bibitem']">
9690
+ <xsl:with-param name="skip">false</xsl:with-param>
9691
+ </xsl:apply-templates>
9692
+ </xsl:template>
9693
+
9582
9694
  <xsl:template name="processBibitem">
9583
9695
  <xsl:param name="biblio_tag_part">both</xsl:param>
9584
9696
 
@@ -9912,9 +10024,9 @@
9912
10024
 
9913
10025
  <xsl:call-template name="setBlockSpanAll"/>
9914
10026
 
9915
- <fo:block-container xsl:use-attribute-sets="admonition-container-style">
10027
+ <fo:block-container xsl:use-attribute-sets="admonition-container-style" role="SKIP">
9916
10028
 
9917
- <fo:block-container margin-left="0mm" margin-right="0mm">
10029
+ <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
9918
10030
  <fo:block>
9919
10031
  <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
9920
10032
  </fo:block>
@@ -1,5 +1,5 @@
1
1
  module Metanorma
2
2
  module Csa
3
- VERSION = "2.2.11".freeze
3
+ VERSION = "2.2.12".freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metanorma-csa
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.11
4
+ version: 2.2.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-06-19 00:00:00.000000000 Z
11
+ date: 2023-07-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: metanorma-generic