metanorma-csa 2.2.11 → 2.2.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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