metanorma-itu 2.2.13 → 2.2.14

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: 0bf978ffb0b2ec26a00373f90d2cbd668598b852b34c1681e82df7252f5b0111
4
- data.tar.gz: b8660774c7f40bbc7cb229d4483691e5298b3fbb2fdae8bc8eaacf39dcbb8300
3
+ metadata.gz: 7a28a71a0e59c9d816daa8687d0cb502725afe60f5c768dcebbe4fb0c039439b
4
+ data.tar.gz: cef6128f170257b229679f1a972239f7cc2803a3ecae8e9f977616facb92aece
5
5
  SHA512:
6
- metadata.gz: 90f9c359286137740d9bc652ec94df3ca239eb007d35799cd4ac5fec412589c24786d6ba993e0e813508ab19237e71a793debda3591f6922b2d908d027e470c7
7
- data.tar.gz: 90e5be4b57bd2d5161630849c755c066e5124e4a85169daa9691a7a3c99b89917eef4def9af78e34a37bdd335d27c70e133e078dc029af36311efdec63360fa8
6
+ metadata.gz: a2bf5a89490dea4a35da30754286f7c48af1d833c9275407c1b52dc30369247547333b8990b666e6d2730677b7b09954a733ccc8c54b7fda6e10f3b45ec04519
7
+ data.tar.gz: c8aff7031ab0a058682be1afdbd2963ac55e9acb91e80132ccc1daea4b27b6bc46ba78c7957674997e12272d33b144163b60bba0c27e0afe8c77435a90ee7627
@@ -3110,6 +3110,7 @@
3110
3110
  </xsl:attribute-set>
3111
3111
 
3112
3112
  <xsl:attribute-set name="figure-block-style">
3113
+ <xsl:attribute name="role">SKIP</xsl:attribute>
3113
3114
 
3114
3115
  <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
3115
3116
 
@@ -3120,6 +3121,7 @@
3120
3121
  </xsl:attribute-set>
3121
3122
 
3122
3123
  <xsl:attribute-set name="figure-name-style">
3124
+ <xsl:attribute name="role">Caption</xsl:attribute>
3123
3125
 
3124
3126
  <xsl:attribute name="font-weight">bold</xsl:attribute>
3125
3127
  <xsl:attribute name="text-align">center</xsl:attribute>
@@ -3170,6 +3172,7 @@
3170
3172
  </xsl:template>
3171
3173
 
3172
3174
  <xsl:attribute-set name="image-style">
3175
+ <xsl:attribute name="role">SKIP</xsl:attribute>
3173
3176
  <xsl:attribute name="text-align">center</xsl:attribute>
3174
3177
 
3175
3178
  </xsl:attribute-set>
@@ -3442,6 +3445,11 @@
3442
3445
 
3443
3446
  </xsl:attribute-set> <!-- bibitem-non-normative-list-style -->
3444
3447
 
3448
+ <xsl:attribute-set name="bibitem-non-normative-list-item-style">
3449
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
3450
+
3451
+ </xsl:attribute-set>
3452
+
3445
3453
  <!-- bibitem in bibliography section (references/@normative="false"), list body -->
3446
3454
  <xsl:attribute-set name="bibitem-normative-list-body-style">
3447
3455
 
@@ -3844,14 +3852,14 @@
3844
3852
  <xsl:value-of select="$sep"/><xsl:value-of select="$zero_width_space"/>
3845
3853
  </xsl:when>
3846
3854
  <xsl:otherwise>
3847
- <fo:inline keep-together.within-line="always"><xsl:apply-templates/></fo:inline>
3855
+ <fo:inline keep-together.within-line="always" role="SKIP"><xsl:apply-templates/></fo:inline>
3848
3856
  </xsl:otherwise>
3849
3857
  </xsl:choose>
3850
3858
  </xsl:for-each>
3851
3859
  </xsl:when>
3852
3860
 
3853
3861
  <xsl:otherwise>
3854
- <fo:inline keep-together.within-line="always"><xsl:apply-templates/></fo:inline>
3862
+ <fo:inline keep-together.within-line="always" role="SKIP"><xsl:apply-templates/></fo:inline>
3855
3863
  </xsl:otherwise>
3856
3864
 
3857
3865
  </xsl:choose>
@@ -3861,7 +3869,7 @@
3861
3869
  <!-- Preface boilerplate sections processing -->
3862
3870
  <!-- ================================= -->
3863
3871
  <xsl:template match="*[local-name()='copyright-statement']">
3864
- <fo:block xsl:use-attribute-sets="copyright-statement-style">
3872
+ <fo:block xsl:use-attribute-sets="copyright-statement-style" role="SKIP">
3865
3873
  <xsl:apply-templates/>
3866
3874
  </fo:block>
3867
3875
  </xsl:template> <!-- copyright-statement -->
@@ -4044,7 +4052,7 @@
4044
4052
  </xsl:choose>
4045
4053
  </xsl:variable>
4046
4054
 
4047
- <fo:block-container xsl:use-attribute-sets="table-container-style">
4055
+ <fo:block-container xsl:use-attribute-sets="table-container-style" role="SKIP">
4048
4056
 
4049
4057
  <xsl:call-template name="refine_table-container-style">
4050
4058
  <xsl:with-param name="margin-side" select="$margin-side"/>
@@ -5091,7 +5099,7 @@
5091
5099
  </xsl:choose>
5092
5100
  </xsl:variable>
5093
5101
  <xsl:variable name="footnote_inline">
5094
- <fo:inline>
5102
+ <fo:inline role="Reference">
5095
5103
 
5096
5104
  <xsl:variable name="fn_styles">
5097
5105
  <xsl:choose>
@@ -5114,7 +5122,7 @@
5114
5122
 
5115
5123
  <xsl:call-template name="insert_basic_link">
5116
5124
  <xsl:with-param name="element">
5117
- <fo:basic-link internal-destination="{$ref_id}" fox:alt-text="footnote {$current_fn_number}">
5125
+ <fo:basic-link internal-destination="{$ref_id}" fox:alt-text="footnote {$current_fn_number}" role="Lbl">
5118
5126
  <xsl:copy-of select="$current_fn_number_text"/>
5119
5127
  </fo:basic-link>
5120
5128
  </xsl:with-param>
@@ -5127,17 +5135,17 @@
5127
5135
  <xsl:copy-of select="$footnote_inline"/>
5128
5136
  </xsl:when>
5129
5137
  <xsl:when test="$p_fn//fn[@gen_id = $gen_id] or normalize-space(@skip_footnote_body) = 'false'">
5130
- <fo:footnote xsl:use-attribute-sets="fn-style">
5138
+ <fo:footnote xsl:use-attribute-sets="fn-style" role="SKIP">
5131
5139
  <xsl:copy-of select="$footnote_inline"/>
5132
- <fo:footnote-body>
5140
+ <fo:footnote-body role="Note">
5133
5141
 
5134
- <fo:block-container xsl:use-attribute-sets="fn-container-body-style">
5142
+ <fo:block-container xsl:use-attribute-sets="fn-container-body-style" role="SKIP">
5135
5143
 
5136
- <fo:block xsl:use-attribute-sets="fn-body-style">
5144
+ <fo:block xsl:use-attribute-sets="fn-body-style" role="SKIP">
5137
5145
 
5138
5146
  <xsl:call-template name="refine_fn-body-style"/>
5139
5147
 
5140
- <fo:inline id="{$ref_id}" xsl:use-attribute-sets="fn-body-num-style">
5148
+ <fo:inline id="{$ref_id}" xsl:use-attribute-sets="fn-body-num-style" role="Lbl">
5141
5149
 
5142
5150
  <xsl:call-template name="refine_fn-body-num-style"/>
5143
5151
 
@@ -5405,11 +5413,11 @@
5405
5413
  </xsl:template>
5406
5414
 
5407
5415
  <xsl:template match="*[local-name()='fn']/text()[normalize-space() != '']">
5408
- <fo:inline><xsl:value-of select="."/></fo:inline>
5416
+ <fo:inline role="SKIP"><xsl:value-of select="."/></fo:inline>
5409
5417
  </xsl:template>
5410
5418
 
5411
5419
  <xsl:template match="*[local-name()='fn']//*[local-name()='p']">
5412
- <fo:inline>
5420
+ <fo:inline role="P">
5413
5421
  <xsl:apply-templates/>
5414
5422
  </fo:inline>
5415
5423
  </xsl:template>
@@ -5424,7 +5432,7 @@
5424
5432
  <xsl:variable name="isAdded" select="@added"/>
5425
5433
  <xsl:variable name="isDeleted" select="@deleted"/>
5426
5434
  <!-- <dl><xsl:copy-of select="."/></dl> -->
5427
- <fo:block-container xsl:use-attribute-sets="dl-block-style">
5435
+ <fo:block-container xsl:use-attribute-sets="dl-block-style" role="SKIP">
5428
5436
 
5429
5437
  <xsl:call-template name="setBlockSpanAll"/>
5430
5438
 
@@ -5459,7 +5467,7 @@
5459
5467
  <xsl:with-param name="isDeleted" select="$isDeleted"/>
5460
5468
  </xsl:call-template>
5461
5469
 
5462
- <fo:block-container margin-left="0mm">
5470
+ <fo:block-container margin-left="0mm" role="SKIP">
5463
5471
 
5464
5472
  <xsl:attribute name="margin-right">0mm</xsl:attribute>
5465
5473
 
@@ -5524,7 +5532,7 @@
5524
5532
 
5525
5533
  <!-- a few components -->
5526
5534
  <xsl:if test="$onlyOneComponent = 'false'">
5527
- <fo:block>
5535
+ <fo:block role="SKIP">
5528
5536
 
5529
5537
  <xsl:call-template name="refine_multicomponent_style"/>
5530
5538
 
@@ -5532,7 +5540,7 @@
5532
5540
  <xsl:attribute name="margin-top">0</xsl:attribute>
5533
5541
  </xsl:if>
5534
5542
 
5535
- <fo:block>
5543
+ <fo:block role="SKIP">
5536
5544
 
5537
5545
  <xsl:call-template name="refine_multicomponent_block_style"/>
5538
5546
 
@@ -6139,6 +6147,9 @@
6139
6147
 
6140
6148
  <xsl:template name="refine_strong_style">
6141
6149
 
6150
+ <xsl:if test="ancestor::*['preferred']">
6151
+ <xsl:attribute name="role">SKIP</xsl:attribute>
6152
+ </xsl:if>
6142
6153
  </xsl:template>
6143
6154
 
6144
6155
  <xsl:template match="*[local-name()='padding']">
@@ -7070,6 +7081,18 @@
7070
7081
  </xsl:copy>
7071
7082
  </xsl:template>
7072
7083
 
7084
+ <xsl:variable name="font_main_root_style">
7085
+ <root-style xsl:use-attribute-sets="root-style">
7086
+ </root-style>
7087
+ </xsl:variable>
7088
+ <xsl:variable name="font_main_root_style_font_family" select="xalan:nodeset($font_main_root_style)/root-style/@font-family"/>
7089
+ <xsl:variable name="font_main">
7090
+ <xsl:choose>
7091
+ <xsl:when test="contains($font_main_root_style_font_family, ',')"><xsl:value-of select="substring-before($font_main_root_style_font_family, ',')"/></xsl:when>
7092
+ <xsl:otherwise><xsl:value-of select="$font_main_root_style_font_family"/></xsl:otherwise>
7093
+ </xsl:choose>
7094
+ </xsl:variable>
7095
+
7073
7096
  <xsl:template match="*[local-name()='th' or local-name()='td']" mode="simple-table-id">
7074
7097
  <xsl:param name="id"/>
7075
7098
  <xsl:copy>
@@ -7108,6 +7131,33 @@
7108
7131
 
7109
7132
  <!-- td_text='<xsl:copy-of select="$td_text"/>' -->
7110
7133
 
7134
+ <xsl:variable name="words_with_width">
7135
+ <!-- calculate width for 'word' which contain text only (without formatting tags inside) -->
7136
+ <xsl:for-each select="xalan:nodeset($td_text)//*[local-name() = 'word'][normalize-space() != ''][not(*)]">
7137
+ <xsl:copy>
7138
+ <xsl:copy-of select="@*"/>
7139
+ <xsl:attribute name="width">
7140
+ <xsl:value-of select="java:org.metanorma.fop.Util.getStringWidth(., $font_main)"/> <!-- Example: 'Times New Roman' -->
7141
+ </xsl:attribute>
7142
+ <xsl:copy-of select="node()"/>
7143
+ </xsl:copy>
7144
+ </xsl:for-each>
7145
+ </xsl:variable>
7146
+
7147
+ <xsl:variable name="words_with_width_sorted">
7148
+ <xsl:for-each select="xalan:nodeset($words_with_width)//*[local-name() = 'word']">
7149
+ <xsl:sort select="@width" data-type="number" order="descending"/>
7150
+ <!-- select word maximal width only -->
7151
+ <xsl:if test="position() = 1">
7152
+ <xsl:copy-of select="."/>
7153
+ </xsl:if>
7154
+ </xsl:for-each>
7155
+ <!-- add 'word' with formatting tags inside -->
7156
+ <xsl:for-each select="xalan:nodeset($td_text)//*[local-name() = 'word'][normalize-space() != ''][*]">
7157
+ <xsl:copy-of select="."/>
7158
+ </xsl:for-each>
7159
+ </xsl:variable>
7160
+
7111
7161
  <xsl:variable name="words">
7112
7162
  <xsl:for-each select=".//*[local-name() = 'image' or local-name() = 'stem']">
7113
7163
  <word>
@@ -7115,9 +7165,12 @@
7115
7165
  </word>
7116
7166
  </xsl:for-each>
7117
7167
 
7118
- <xsl:for-each select="xalan:nodeset($td_text)//*[local-name() = 'word'][normalize-space() != '']">
7168
+ <xsl:for-each select="xalan:nodeset($words_with_width_sorted)//*[local-name() = 'word'][normalize-space() != '']">
7119
7169
  <xsl:copy-of select="."/>
7120
7170
  </xsl:for-each>
7171
+ <!-- <xsl:for-each select="xalan:nodeset($td_text)//*[local-name() = 'word'][normalize-space() != '']">
7172
+ <xsl:copy-of select="."/>
7173
+ </xsl:for-each> -->
7121
7174
 
7122
7175
  </xsl:variable>
7123
7176
 
@@ -7578,10 +7631,10 @@
7578
7631
  <xsl:copy>
7579
7632
  <xsl:apply-templates select="@*" mode="mathml"/>
7580
7633
  <xsl:if test="not(@lspace)">
7581
- <xsl:attribute name="lspace">0.4em</xsl:attribute>
7634
+ <xsl:attribute name="lspace">0.2em</xsl:attribute>
7582
7635
  </xsl:if>
7583
- <xsl:if test="not(@rspace)">
7584
- <xsl:attribute name="rspace">0.4em</xsl:attribute>
7636
+ <xsl:if test="not(@rspace) and not(following-sibling::*[1][self::mathml:mo and normalize-space(text()) = '|'])">
7637
+ <xsl:attribute name="rspace">0.2em</xsl:attribute>
7585
7638
  </xsl:if>
7586
7639
  <xsl:apply-templates mode="mathml"/>
7587
7640
  </xsl:copy>
@@ -7598,6 +7651,27 @@
7598
7651
  </xsl:copy>
7599
7652
  </xsl:template>
7600
7653
 
7654
+ <!-- increase space before '(' -->
7655
+ <xsl:template match="mathml:mo[normalize-space(text()) = '(']" mode="mathml">
7656
+ <xsl:copy>
7657
+ <xsl:apply-templates select="@*" mode="mathml"/>
7658
+ <xsl:if test="(preceding-sibling::* and not(preceding-sibling::*[1][self::mathml:mo])) or (../preceding-sibling::* and not(../preceding-sibling::*[1][self::mathml:mo]))">
7659
+ <xsl:if test="not(@lspace)">
7660
+ <xsl:attribute name="lspace">0.4em</xsl:attribute>
7661
+ <xsl:choose>
7662
+ <xsl:when test="preceding-sibling::*[1][self::mathml:mi or self::mathml:mstyle]">
7663
+ <xsl:attribute name="lspace">0.2em</xsl:attribute>
7664
+ </xsl:when>
7665
+ <xsl:when test="../preceding-sibling::*[1][self::mathml:mi or self::mathml:mstyle]">
7666
+ <xsl:attribute name="lspace">0.2em</xsl:attribute>
7667
+ </xsl:when>
7668
+ </xsl:choose>
7669
+ </xsl:if>
7670
+ </xsl:if>
7671
+ <xsl:apply-templates mode="mathml"/>
7672
+ </xsl:copy>
7673
+ </xsl:template>
7674
+
7601
7675
  <!-- Examples:
7602
7676
  <stem type="AsciiMath">x = 1</stem>
7603
7677
  <stem type="AsciiMath"><asciimath>x = 1</asciimath></stem>
@@ -7757,7 +7831,7 @@
7757
7831
  <!-- formula -->
7758
7832
  <!-- ====== -->
7759
7833
  <xsl:template match="*[local-name() = 'formula']" name="formula">
7760
- <fo:block-container margin-left="0mm">
7834
+ <fo:block-container margin-left="0mm" role="SKIP">
7761
7835
  <xsl:if test="parent::*[local-name() = 'note']">
7762
7836
  <xsl:attribute name="margin-left">
7763
7837
  <xsl:choose>
@@ -7767,7 +7841,7 @@
7767
7841
  </xsl:attribute>
7768
7842
 
7769
7843
  </xsl:if>
7770
- <fo:block-container margin-left="0mm">
7844
+ <fo:block-container margin-left="0mm" role="SKIP">
7771
7845
  <fo:block id="{@id}">
7772
7846
  <xsl:apply-templates select="node()[not(local-name() = 'name')]"/> <!-- formula's number will be process in 'stem' template -->
7773
7847
  </fo:block>
@@ -7847,13 +7921,13 @@
7847
7921
 
7848
7922
  <xsl:template match="*[local-name() = 'note']" name="note">
7849
7923
 
7850
- <fo:block-container id="{@id}" xsl:use-attribute-sets="note-style">
7924
+ <fo:block-container id="{@id}" xsl:use-attribute-sets="note-style" role="SKIP">
7851
7925
 
7852
7926
  <xsl:call-template name="setBlockSpanAll"/>
7853
7927
 
7854
7928
  <xsl:call-template name="refine_note-style"/>
7855
7929
 
7856
- <fo:block-container margin-left="0mm" margin-right="0mm">
7930
+ <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
7857
7931
 
7858
7932
  <fo:block>
7859
7933
 
@@ -8023,12 +8097,13 @@
8023
8097
 
8024
8098
  <xsl:template match="*[local-name() = 'term']/*[local-name() = 'name']">
8025
8099
  <xsl:if test="normalize-space() != ''">
8026
- <xsl:variable name="level">
8100
+ <!-- <xsl:variable name="level">
8027
8101
  <xsl:call-template name="getLevelTermName"/>
8028
8102
  </xsl:variable>
8029
8103
  <fo:inline role="H{$level}">
8030
- <xsl:apply-templates/>
8031
- </fo:inline>
8104
+ <xsl:apply-templates />
8105
+ </fo:inline> -->
8106
+ <xsl:apply-templates/>
8032
8107
  </xsl:if>
8033
8108
  </xsl:template>
8034
8109
  <!-- ====== -->
@@ -8052,7 +8127,7 @@
8052
8127
  <!-- Example: Dimensions in millimeters -->
8053
8128
  <xsl:apply-templates select="*[local-name() = 'note'][@type = 'units']"/>
8054
8129
 
8055
- <fo:block xsl:use-attribute-sets="figure-style">
8130
+ <fo:block xsl:use-attribute-sets="figure-style" role="SKIP">
8056
8131
  <xsl:apply-templates select="node()[not(local-name() = 'name') and not(local-name() = 'note' and @type = 'units')]"/>
8057
8132
  </fo:block>
8058
8133
  <xsl:for-each select="*[local-name() = 'note'][not(@type = 'units')]">
@@ -9187,7 +9262,7 @@
9187
9262
  </xsl:when>
9188
9263
 
9189
9264
  <xsl:otherwise>
9190
- <fo:block-container xsl:use-attribute-sets="sourcecode-container-style">
9265
+ <fo:block-container xsl:use-attribute-sets="sourcecode-container-style" role="SKIP">
9191
9266
 
9192
9267
  <xsl:if test="not(ancestor::*[local-name() = 'li']) or ancestor::*[local-name() = 'example']">
9193
9268
  <xsl:attribute name="margin-left">0mm</xsl:attribute>
@@ -9208,7 +9283,7 @@
9208
9283
  </xsl:attribute>
9209
9284
 
9210
9285
  </xsl:if>
9211
- <fo:block-container margin-left="0mm">
9286
+ <fo:block-container margin-left="0mm" role="SKIP">
9212
9287
 
9213
9288
  <fo:block xsl:use-attribute-sets="sourcecode-style">
9214
9289
 
@@ -9754,11 +9829,11 @@
9754
9829
  <!-- requirement, recommendation, permission table -->
9755
9830
  <!-- ========== -->
9756
9831
  <xsl:template match="*[local-name() = 'table'][@class = 'recommendation' or @class='requirement' or @class='permission']">
9757
- <fo:block-container margin-left="0mm" margin-right="0mm" margin-bottom="12pt">
9832
+ <fo:block-container margin-left="0mm" margin-right="0mm" margin-bottom="12pt" role="SKIP">
9758
9833
  <xsl:if test="ancestor::*[local-name() = 'table'][@class = 'recommendation' or @class='requirement' or @class='permission']">
9759
9834
  <xsl:attribute name="margin-bottom">0pt</xsl:attribute>
9760
9835
  </xsl:if>
9761
- <fo:block-container margin-left="0mm" margin-right="0mm">
9836
+ <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
9762
9837
  <fo:table id="{@id}" table-layout="fixed" width="100%"> <!-- border="1pt solid black" -->
9763
9838
  <xsl:if test="ancestor::*[local-name() = 'table'][@class = 'recommendation' or @class='requirement' or @class='permission']">
9764
9839
  <!-- <xsl:attribute name="border">0.5pt solid black</xsl:attribute> -->
@@ -9920,7 +9995,7 @@
9920
9995
  -->
9921
9996
  <xsl:template match="*[local-name() = 'example']">
9922
9997
 
9923
- <fo:block-container id="{@id}" xsl:use-attribute-sets="example-style">
9998
+ <fo:block-container id="{@id}" xsl:use-attribute-sets="example-style" role="SKIP">
9924
9999
 
9925
10000
  <xsl:call-template name="setBlockSpanAll"/>
9926
10001
 
@@ -9931,7 +10006,7 @@
9931
10006
  block
9932
10007
  </xsl:variable>
9933
10008
 
9934
- <fo:block-container margin-left="0mm">
10009
+ <fo:block-container margin-left="0mm" role="SKIP">
9935
10010
 
9936
10011
  <xsl:choose>
9937
10012
 
@@ -9944,8 +10019,8 @@
9944
10019
  </xsl:apply-templates>
9945
10020
  </fo:block>
9946
10021
 
9947
- <fo:block-container xsl:use-attribute-sets="example-body-style">
9948
- <fo:block-container margin-left="0mm" margin-right="0mm">
10022
+ <fo:block-container xsl:use-attribute-sets="example-body-style" role="SKIP">
10023
+ <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
9949
10024
  <xsl:apply-templates select="node()[not(local-name() = 'name')]">
9950
10025
  <xsl:with-param name="fo_element" select="$fo_element"/>
9951
10026
  </xsl:apply-templates>
@@ -9998,8 +10073,8 @@
9998
10073
 
9999
10074
  <xsl:if test="*[not(local-name() = 'name')][position() &gt; 1]">
10000
10075
  <!-- display further elements in blocks -->
10001
- <fo:block-container xsl:use-attribute-sets="example-body-style">
10002
- <fo:block-container margin-left="0mm" margin-right="0mm">
10076
+ <fo:block-container xsl:use-attribute-sets="example-body-style" role="SKIP">
10077
+ <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
10003
10078
  <xsl:apply-templates select="*[not(local-name() = 'name')][position() &gt; 1]">
10004
10079
  <xsl:with-param name="fo_element" select="'block'"/>
10005
10080
  </xsl:apply-templates>
@@ -10052,7 +10127,7 @@
10052
10127
  </xsl:variable>
10053
10128
  <xsl:choose>
10054
10129
  <xsl:when test="starts-with(normalize-space($element), 'block')">
10055
- <fo:block-container>
10130
+ <fo:block-container role="SKIP">
10056
10131
  <xsl:if test="ancestor::*[local-name() = 'li'] and contains(normalize-space($fo_element), 'block')">
10057
10132
  <xsl:attribute name="margin-left">0mm</xsl:attribute>
10058
10133
  <xsl:attribute name="margin-right">0mm</xsl:attribute>
@@ -10193,7 +10268,7 @@
10193
10268
  <!-- author -->
10194
10269
  <!-- ====== -->
10195
10270
  <xsl:template match="*[local-name() = 'quote']">
10196
- <fo:block-container margin-left="0mm">
10271
+ <fo:block-container margin-left="0mm" role="SKIP">
10197
10272
 
10198
10273
  <xsl:call-template name="setBlockSpanAll"/>
10199
10274
 
@@ -10203,12 +10278,12 @@
10203
10278
  </xsl:if>
10204
10279
  </xsl:if>
10205
10280
 
10206
- <fo:block-container margin-left="0mm">
10207
- <fo:block-container xsl:use-attribute-sets="quote-style">
10281
+ <fo:block-container margin-left="0mm" role="SKIP">
10282
+ <fo:block-container xsl:use-attribute-sets="quote-style" role="SKIP">
10208
10283
 
10209
10284
  <xsl:call-template name="refine_quote-style"/>
10210
10285
 
10211
- <fo:block-container margin-left="0mm" margin-right="0mm">
10286
+ <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
10212
10287
  <fo:block role="BlockQuote">
10213
10288
  <xsl:apply-templates select="./node()[not(local-name() = 'author') and not(local-name() = 'source')]"/> <!-- process all nested nodes, except author and source -->
10214
10289
  </fo:block>
@@ -10367,10 +10442,10 @@
10367
10442
 
10368
10443
  <xsl:choose>
10369
10444
  <xsl:when test="$lang = 'zh'">
10370
- <fo:inline><xsl:value-of select="$tab_zh"/></fo:inline>
10445
+ <fo:inline role="SKIP"><xsl:value-of select="$tab_zh"/></fo:inline>
10371
10446
  </xsl:when>
10372
10447
  <xsl:when test="../../@inline-header = 'true'">
10373
- <fo:inline font-size="90%">
10448
+ <fo:inline font-size="90%" role="SKIP">
10374
10449
  <xsl:call-template name="insertNonBreakSpaces">
10375
10450
  <xsl:with-param name="count" select="$padding-right"/>
10376
10451
  </xsl:call-template>
@@ -10378,7 +10453,7 @@
10378
10453
  </xsl:when>
10379
10454
  <xsl:otherwise>
10380
10455
  <xsl:variable name="direction"><xsl:if test="$lang = 'ar'"><xsl:value-of select="$RLM"/></xsl:if></xsl:variable>
10381
- <fo:inline padding-right="{$padding-right}mm"><xsl:value-of select="$direction"/>​</fo:inline>
10456
+ <fo:inline padding-right="{$padding-right}mm" role="SKIP"><xsl:value-of select="$direction"/>​</fo:inline>
10382
10457
  </xsl:otherwise>
10383
10458
  </xsl:choose>
10384
10459
 
@@ -10408,12 +10483,12 @@
10408
10483
  <fo:block font-size="{normalize-space($font-size)}" role="H{$levelTerm}" xsl:use-attribute-sets="preferred-block-style">
10409
10484
 
10410
10485
  <xsl:if test="parent::*[local-name() = 'term'] and not(preceding-sibling::*[local-name() = 'preferred'])"> <!-- if first preffered in term, then display term's name -->
10411
- <fo:block xsl:use-attribute-sets="term-name-style">
10486
+ <fo:block xsl:use-attribute-sets="term-name-style" role="SKIP">
10412
10487
  <xsl:apply-templates select="ancestor::*[local-name() = 'term'][1]/*[local-name() = 'name']"/>
10413
10488
  </fo:block>
10414
10489
  </xsl:if>
10415
10490
 
10416
- <fo:block xsl:use-attribute-sets="preferred-term-style">
10491
+ <fo:block xsl:use-attribute-sets="preferred-term-style" role="SKIP">
10417
10492
  <xsl:call-template name="setStyle_preferred"/>
10418
10493
  <xsl:apply-templates/>
10419
10494
  </fo:block>
@@ -10454,7 +10529,7 @@
10454
10529
  <!-- definition -->
10455
10530
  <!-- ========== -->
10456
10531
  <xsl:template match="*[local-name() = 'definition']">
10457
- <fo:block xsl:use-attribute-sets="definition-style">
10532
+ <fo:block xsl:use-attribute-sets="definition-style" role="SKIP">
10458
10533
  <xsl:apply-templates/>
10459
10534
  </fo:block>
10460
10535
  </xsl:template>
@@ -10504,6 +10579,10 @@
10504
10579
 
10505
10580
  <xsl:template match="*[local-name() = 'clause']">
10506
10581
  <fo:block>
10582
+ <xsl:if test="parent::*[local-name() = 'copyright-statement']">
10583
+ <xsl:attribute name="role">SKIP</xsl:attribute>
10584
+ </xsl:if>
10585
+
10507
10586
  <xsl:call-template name="setId"/>
10508
10587
 
10509
10588
  <xsl:call-template name="setBlockSpanAll"/>
@@ -10746,7 +10825,7 @@
10746
10825
  <xsl:template match="*[local-name() = 'ul'] | *[local-name() = 'ol']">
10747
10826
  <xsl:choose>
10748
10827
  <xsl:when test="parent::*[local-name() = 'note'] or parent::*[local-name() = 'termnote']">
10749
- <fo:block-container>
10828
+ <fo:block-container role="SKIP">
10750
10829
  <xsl:attribute name="margin-left">
10751
10830
  <xsl:choose>
10752
10831
  <xsl:when test="not(ancestor::*[local-name() = 'table'])"><xsl:value-of select="$note-body-indent"/></xsl:when>
@@ -10756,7 +10835,7 @@
10756
10835
 
10757
10836
  <xsl:call-template name="refine_list_container_style"/>
10758
10837
 
10759
- <fo:block-container margin-left="0mm">
10838
+ <fo:block-container margin-left="0mm" role="SKIP">
10760
10839
  <fo:block>
10761
10840
  <xsl:apply-templates select="." mode="list"/>
10762
10841
  </fo:block>
@@ -10765,7 +10844,7 @@
10765
10844
  </xsl:when>
10766
10845
  <xsl:otherwise>
10767
10846
 
10768
- <fo:block>
10847
+ <fo:block role="SKIP">
10769
10848
  <xsl:apply-templates select="." mode="list"/>
10770
10849
  </fo:block>
10771
10850
 
@@ -11183,7 +11262,10 @@
11183
11262
  <!-- Reference sections (Normative References and Bibliography) -->
11184
11263
  <!-- ========================================================== -->
11185
11264
  <xsl:template match="*[local-name() = 'references'][@hidden='true']" priority="3"/>
11186
- <xsl:template match="*[local-name() = 'bibitem'][@hidden='true']" priority="3"/>
11265
+ <xsl:template match="*[local-name() = 'bibitem'][@hidden='true']" priority="3">
11266
+ <xsl:param name="skip" select="normalize-space(preceding-sibling::*[1][local-name() = 'bibitem'] and 1 = 1)"/>
11267
+
11268
+ </xsl:template>
11187
11269
  <!-- don't display bibitem with @id starts with '_hidden', that was introduced for references integrity -->
11188
11270
  <xsl:template match="*[local-name() = 'bibitem'][starts-with(@id, 'hidden_bibitem_')]" priority="3"/>
11189
11271
 
@@ -11232,6 +11314,7 @@
11232
11314
 
11233
11315
  <!-- Bibliography (non-normative references) -->
11234
11316
  <xsl:template match="*[local-name() = 'references'][not(@normative='true')]/*[local-name() = 'bibitem']" name="bibitem_non_normative" priority="2">
11317
+ <xsl:param name="skip" select="normalize-space(preceding-sibling::*[1][local-name() = 'bibitem'] and 1 = 1)"/> <!-- current bibiitem is non-first -->
11235
11318
 
11236
11319
  <fo:block id="{@id}" xsl:use-attribute-sets="bibitem-non-normative-style">
11237
11320
  <xsl:call-template name="processBibitem"/>
@@ -11239,6 +11322,35 @@
11239
11322
 
11240
11323
  </xsl:template> <!-- references[not(@normative='true')]/bibitem -->
11241
11324
 
11325
+ <xsl:template name="insertListItem_Bibitem">
11326
+ <xsl:choose>
11327
+ <xsl:when test="@hidden = 'true'"><!-- skip --></xsl:when>
11328
+ <xsl:otherwise>
11329
+ <fo:list-item id="{@id}" xsl:use-attribute-sets="bibitem-non-normative-list-item-style">
11330
+ <fo:list-item-label end-indent="label-end()">
11331
+ <fo:block role="SKIP">
11332
+ <fo:inline role="SKIP">
11333
+ <xsl:apply-templates select="*[local-name() = 'biblio-tag']">
11334
+ <xsl:with-param name="biblio_tag_part">first</xsl:with-param>
11335
+ </xsl:apply-templates>
11336
+ </fo:inline>
11337
+ </fo:block>
11338
+ </fo:list-item-label>
11339
+ <fo:list-item-body start-indent="body-start()">
11340
+ <fo:block xsl:use-attribute-sets="bibitem-non-normative-list-body-style" role="SKIP">
11341
+ <xsl:call-template name="processBibitem">
11342
+ <xsl:with-param name="biblio_tag_part">last</xsl:with-param>
11343
+ </xsl:call-template>
11344
+ </fo:block>
11345
+ </fo:list-item-body>
11346
+ </fo:list-item>
11347
+ </xsl:otherwise>
11348
+ </xsl:choose>
11349
+ <xsl:apply-templates select="following-sibling::*[1][local-name() = 'bibitem']">
11350
+ <xsl:with-param name="skip">false</xsl:with-param>
11351
+ </xsl:apply-templates>
11352
+ </xsl:template>
11353
+
11242
11354
  <xsl:template name="processBibitem">
11243
11355
  <xsl:param name="biblio_tag_part">both</xsl:param>
11244
11356
 
@@ -11621,7 +11733,7 @@
11621
11733
 
11622
11734
  <xsl:call-template name="setBlockSpanAll"/>
11623
11735
 
11624
- <fo:block-container xsl:use-attribute-sets="admonition-container-style">
11736
+ <fo:block-container xsl:use-attribute-sets="admonition-container-style" role="SKIP">
11625
11737
 
11626
11738
  <fo:block xsl:use-attribute-sets="admonition-name-style">
11627
11739
  <xsl:call-template name="displayAdmonitionName"/>