metanorma-ribose 2.2.11 → 2.2.13

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: de1b7b4d819ecf4191da99de7f00b9dfbfbc73f02c26abbdee4ef9d4274c73d3
4
- data.tar.gz: 4ba0a78c55a12df977d40e247b6f5c29b20f1edc19882722f3d962802eb9d797
3
+ metadata.gz: 6050feccc1fe58b1346459237604117fc356f67789dff7c37a79f58ca292bf01
4
+ data.tar.gz: 7f5266ed502813bcd9eb610bb022adf98b08cca5573f9b9deb4353e5e9803435
5
5
  SHA512:
6
- metadata.gz: 4646478457e5708c1d83eb408e8ea77d06e1574e47e390df2240c681811afb71e02e5e85cef5f2e3f7b2ba225974184c8e65a9b5b06466c68af110ec9ba777a7
7
- data.tar.gz: 6bee01be652e3c07a9b43445cc01ced533e6321c5bbb967f02acd79ccad660cc06dd01b8ac6346afe27a65e5656c987b218c5d086a5b30a09a6ff4272e67159a
6
+ metadata.gz: 8d8a75a61dacfe0084e371a5ade4739d6b080108866f1f3d589b60a5678def496aac3f95d9e8ec911df53e772a9bd5422ac1cbd59dcc2c33185051ec9274e5a1
7
+ data.tar.gz: '08051535eca77df632609d2e459f2c32802f38e8de4a34389cf07e0ab189abf34fefa4d593587e7686cf70a3bd86bd694ba93b4a37a92ff13eef63b9e84c2313'
@@ -97,7 +97,7 @@ h1, h2, h3, h4, h5, h6 {
97
97
 
98
98
  blockquote, q {
99
99
  quotes: none; }
100
- blockquote:before, blockquote:after, q:before, q:after {
100
+ blockquote::before, blockquote::after, q::before, q::after {
101
101
  content: '';
102
102
  content: none; }
103
103
 
@@ -120,14 +120,18 @@ b, strong {
120
120
  div.document-stage-band, div.document-type-band {
121
121
  background-color: #333333; }
122
122
 
123
- a.FootnoteRef + a.FootnoteRef:before {
123
+ a.FootnoteRef + a.FootnoteRef::before {
124
124
  content: ", ";
125
125
  vertical-align: super; }
126
126
 
127
- a.TableFootnoteRef + a.TableFootnoteRef:before {
127
+ a.TableFootnoteRef + a.TableFootnoteRef::before {
128
128
  content: ", ";
129
129
  vertical-align: super; }
130
130
 
131
+ a.TableFootnoteRef, span.TableFootnoteRef,
132
+ a.FootnoteRef, span.FootnoteRef {
133
+ vertical-align: super; }
134
+
131
135
  .addition {
132
136
  color: blue; }
133
137
 
@@ -1349,19 +1349,32 @@
1349
1349
  <xsl:variable name="titles_">
1350
1350
 
1351
1351
  <!-- These titles of Table of contents renders different than determined in localized-strings -->
1352
- <title-toc lang="en">
1353
-
1354
- </title-toc>
1355
- <title-toc lang="fr">
1352
+ <!-- <title-toc lang="en">
1353
+ <xsl:if test="$namespace = 'csd' or $namespace = 'ieee' or $namespace = 'iho' or $namespace = 'mpfd' or $namespace = 'ogc' or $namespace = 'unece-rec'">
1354
+ <xsl:text>Contents</xsl:text>
1355
+ </xsl:if>
1356
+ <xsl:if test="$namespace = 'csa' or $namespace = 'm3d' or $namespace = 'nist-sp' or $namespace = 'ogc-white-paper'">
1357
+ <xsl:text>Table of Contents</xsl:text>
1358
+ </xsl:if>
1359
+ <xsl:if test="$namespace = 'gb'">
1360
+ <xsl:text>Table of contents</xsl:text>
1361
+ </xsl:if>
1362
+ </title-toc> -->
1363
+ <title-toc lang="en">Table of contents</title-toc>
1364
+ <!-- <title-toc lang="fr">
1356
1365
  <xsl:text>Sommaire</xsl:text>
1357
- </title-toc>
1358
- <title-toc lang="zh">
1359
-
1366
+ </title-toc> -->
1367
+ <!-- <title-toc lang="zh">
1368
+ <xsl:choose>
1369
+ <xsl:when test="$namespace = 'gb'">
1370
+ <xsl:text>目次</xsl:text>
1371
+ </xsl:when>
1372
+ <xsl:otherwise>
1360
1373
  <xsl:text>Contents</xsl:text>
1361
-
1362
- </title-toc>
1363
-
1364
- <title-descriptors lang="en">Descriptors</title-descriptors>
1374
+ </xsl:otherwise>
1375
+ </xsl:choose>
1376
+ </title-toc> -->
1377
+ <title-toc lang="zh">目次</title-toc>
1365
1378
 
1366
1379
  <title-part lang="en">
1367
1380
 
@@ -1377,20 +1390,6 @@
1377
1390
  <title-subpart lang="en">Sub-part #</title-subpart>
1378
1391
  <title-subpart lang="fr">Partie de sub #</title-subpart>
1379
1392
 
1380
- <title-list-tables lang="en">List of Tables</title-list-tables>
1381
-
1382
- <title-list-figures lang="en">List of Figures</title-list-figures>
1383
-
1384
- <title-table-figures lang="en">Table of Figures</title-table-figures>
1385
-
1386
- <title-list-recommendations lang="en">List of Recommendations</title-list-recommendations>
1387
-
1388
- <title-summary lang="en">Summary</title-summary>
1389
-
1390
- <title-continued lang="ru">(продолжение)</title-continued>
1391
- <title-continued lang="en">(continued)</title-continued>
1392
- <title-continued lang="fr">(continué)</title-continued>
1393
-
1394
1393
  </xsl:variable>
1395
1394
  <xsl:variable name="titles" select="xalan:nodeset($titles_)"/>
1396
1395
 
@@ -1398,8 +1397,8 @@
1398
1397
  <xsl:variable name="toc_table_title" select="//*[contains(local-name(), '-standard')]/*[local-name() = 'metanorma-extension']/*[local-name() = 'toc'][@type='table']/*[local-name() = 'title']"/>
1399
1398
  <xsl:value-of select="$toc_table_title"/>
1400
1399
  <xsl:if test="normalize-space($toc_table_title) = ''">
1401
- <xsl:call-template name="getTitle">
1402
- <xsl:with-param name="name" select="'title-list-tables'"/>
1400
+ <xsl:call-template name="getLocalizedString">
1401
+ <xsl:with-param name="key">toc_tables</xsl:with-param>
1403
1402
  </xsl:call-template>
1404
1403
  </xsl:if>
1405
1404
  </xsl:variable>
@@ -1408,8 +1407,8 @@
1408
1407
  <xsl:variable name="toc_figure_title" select="//*[contains(local-name(), '-standard')]/*[local-name() = 'metanorma-extension']/*[local-name() = 'toc'][@type='figure']/*[local-name() = 'title']"/>
1409
1408
  <xsl:value-of select="$toc_figure_title"/>
1410
1409
  <xsl:if test="normalize-space($toc_figure_title) = ''">
1411
- <xsl:call-template name="getTitle">
1412
- <xsl:with-param name="name" select="'title-list-figures'"/>
1410
+ <xsl:call-template name="getLocalizedString">
1411
+ <xsl:with-param name="key">toc_figures</xsl:with-param>
1413
1412
  </xsl:call-template>
1414
1413
  </xsl:if>
1415
1414
  </xsl:variable>
@@ -1418,8 +1417,8 @@
1418
1417
  <xsl:variable name="toc_requirement_title" select="//*[contains(local-name(), '-standard')]/*[local-name() = 'metanorma-extension']/*[local-name() = 'toc'][@type='requirement']/*[local-name() = 'title']"/>
1419
1418
  <xsl:value-of select="$toc_requirement_title"/>
1420
1419
  <xsl:if test="normalize-space($toc_requirement_title) = ''">
1421
- <xsl:call-template name="getTitle">
1422
- <xsl:with-param name="name" select="'title-list-recommendations'"/>
1420
+ <xsl:call-template name="getLocalizedString">
1421
+ <xsl:with-param name="key">toc_recommendations</xsl:with-param>
1423
1422
  </xsl:call-template>
1424
1423
  </xsl:if>
1425
1424
  </xsl:variable>
@@ -2213,6 +2212,7 @@
2213
2212
  </xsl:attribute-set>
2214
2213
 
2215
2214
  <xsl:attribute-set name="figure-block-style">
2215
+ <xsl:attribute name="role">SKIP</xsl:attribute>
2216
2216
 
2217
2217
  </xsl:attribute-set>
2218
2218
 
@@ -2230,6 +2230,7 @@
2230
2230
  </xsl:attribute-set>
2231
2231
 
2232
2232
  <xsl:attribute-set name="figure-name-style">
2233
+ <xsl:attribute name="role">Caption</xsl:attribute>
2233
2234
 
2234
2235
  <xsl:attribute name="font-size">13pt</xsl:attribute>
2235
2236
  <xsl:attribute name="font-weight">300</xsl:attribute>
@@ -2279,6 +2280,7 @@
2279
2280
  </xsl:template>
2280
2281
 
2281
2282
  <xsl:attribute-set name="image-style">
2283
+ <xsl:attribute name="role">SKIP</xsl:attribute>
2282
2284
  <xsl:attribute name="text-align">center</xsl:attribute>
2283
2285
 
2284
2286
  </xsl:attribute-set>
@@ -2580,6 +2582,13 @@
2580
2582
 
2581
2583
  </xsl:attribute-set> <!-- bibitem-non-normative-list-style -->
2582
2584
 
2585
+ <xsl:attribute-set name="bibitem-non-normative-list-item-style">
2586
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
2587
+
2588
+ <xsl:attribute name="margin-bottom">4pt</xsl:attribute>
2589
+
2590
+ </xsl:attribute-set>
2591
+
2583
2592
  <!-- bibitem in bibliography section (references/@normative="false"), list body -->
2584
2593
  <xsl:attribute-set name="bibitem-normative-list-body-style">
2585
2594
 
@@ -2973,14 +2982,14 @@
2973
2982
  <xsl:value-of select="$sep"/><xsl:value-of select="$zero_width_space"/>
2974
2983
  </xsl:when>
2975
2984
  <xsl:otherwise>
2976
- <fo:inline keep-together.within-line="always"><xsl:apply-templates/></fo:inline>
2985
+ <fo:inline keep-together.within-line="always" role="SKIP"><xsl:apply-templates/></fo:inline>
2977
2986
  </xsl:otherwise>
2978
2987
  </xsl:choose>
2979
2988
  </xsl:for-each>
2980
2989
  </xsl:when>
2981
2990
 
2982
2991
  <xsl:otherwise>
2983
- <fo:inline keep-together.within-line="always"><xsl:apply-templates/></fo:inline>
2992
+ <fo:inline keep-together.within-line="always" role="SKIP"><xsl:apply-templates/></fo:inline>
2984
2993
  </xsl:otherwise>
2985
2994
 
2986
2995
  </xsl:choose>
@@ -2990,7 +2999,7 @@
2990
2999
  <!-- Preface boilerplate sections processing -->
2991
3000
  <!-- ================================= -->
2992
3001
  <xsl:template match="*[local-name()='copyright-statement']">
2993
- <fo:block xsl:use-attribute-sets="copyright-statement-style">
3002
+ <fo:block xsl:use-attribute-sets="copyright-statement-style" role="SKIP">
2994
3003
  <xsl:apply-templates/>
2995
3004
  </fo:block>
2996
3005
  </xsl:template> <!-- copyright-statement -->
@@ -3163,7 +3172,7 @@
3163
3172
  </xsl:choose>
3164
3173
  </xsl:variable>
3165
3174
 
3166
- <fo:block-container xsl:use-attribute-sets="table-container-style">
3175
+ <fo:block-container xsl:use-attribute-sets="table-container-style" role="SKIP">
3167
3176
 
3168
3177
  <xsl:call-template name="refine_table-container-style">
3169
3178
  <xsl:with-param name="margin-side" select="$margin-side"/>
@@ -4196,7 +4205,7 @@
4196
4205
  </xsl:choose>
4197
4206
  </xsl:variable>
4198
4207
  <xsl:variable name="footnote_inline">
4199
- <fo:inline>
4208
+ <fo:inline role="Reference">
4200
4209
 
4201
4210
  <xsl:variable name="fn_styles">
4202
4211
  <xsl:choose>
@@ -4219,7 +4228,7 @@
4219
4228
 
4220
4229
  <xsl:call-template name="insert_basic_link">
4221
4230
  <xsl:with-param name="element">
4222
- <fo:basic-link internal-destination="{$ref_id}" fox:alt-text="footnote {$current_fn_number}">
4231
+ <fo:basic-link internal-destination="{$ref_id}" fox:alt-text="footnote {$current_fn_number}" role="Lbl">
4223
4232
  <xsl:copy-of select="$current_fn_number_text"/>
4224
4233
  </fo:basic-link>
4225
4234
  </xsl:with-param>
@@ -4232,17 +4241,17 @@
4232
4241
  <xsl:copy-of select="$footnote_inline"/>
4233
4242
  </xsl:when>
4234
4243
  <xsl:when test="$p_fn//fn[@gen_id = $gen_id] or normalize-space(@skip_footnote_body) = 'false'">
4235
- <fo:footnote xsl:use-attribute-sets="fn-style">
4244
+ <fo:footnote xsl:use-attribute-sets="fn-style" role="SKIP">
4236
4245
  <xsl:copy-of select="$footnote_inline"/>
4237
- <fo:footnote-body>
4246
+ <fo:footnote-body role="Note">
4238
4247
 
4239
- <fo:block-container xsl:use-attribute-sets="fn-container-body-style">
4248
+ <fo:block-container xsl:use-attribute-sets="fn-container-body-style" role="SKIP">
4240
4249
 
4241
- <fo:block xsl:use-attribute-sets="fn-body-style">
4250
+ <fo:block xsl:use-attribute-sets="fn-body-style" role="SKIP">
4242
4251
 
4243
4252
  <xsl:call-template name="refine_fn-body-style"/>
4244
4253
 
4245
- <fo:inline id="{$ref_id}" xsl:use-attribute-sets="fn-body-num-style">
4254
+ <fo:inline id="{$ref_id}" xsl:use-attribute-sets="fn-body-num-style" role="Lbl">
4246
4255
 
4247
4256
  <xsl:call-template name="refine_fn-body-num-style"/>
4248
4257
 
@@ -4504,11 +4513,11 @@
4504
4513
  </xsl:template>
4505
4514
 
4506
4515
  <xsl:template match="*[local-name()='fn']/text()[normalize-space() != '']">
4507
- <fo:inline><xsl:value-of select="."/></fo:inline>
4516
+ <fo:inline role="SKIP"><xsl:value-of select="."/></fo:inline>
4508
4517
  </xsl:template>
4509
4518
 
4510
4519
  <xsl:template match="*[local-name()='fn']//*[local-name()='p']">
4511
- <fo:inline>
4520
+ <fo:inline role="P">
4512
4521
  <xsl:apply-templates/>
4513
4522
  </fo:inline>
4514
4523
  </xsl:template>
@@ -4523,7 +4532,7 @@
4523
4532
  <xsl:variable name="isAdded" select="@added"/>
4524
4533
  <xsl:variable name="isDeleted" select="@deleted"/>
4525
4534
  <!-- <dl><xsl:copy-of select="."/></dl> -->
4526
- <fo:block-container xsl:use-attribute-sets="dl-block-style">
4535
+ <fo:block-container xsl:use-attribute-sets="dl-block-style" role="SKIP">
4527
4536
 
4528
4537
  <xsl:call-template name="setBlockSpanAll"/>
4529
4538
 
@@ -4558,7 +4567,7 @@
4558
4567
  <xsl:with-param name="isDeleted" select="$isDeleted"/>
4559
4568
  </xsl:call-template>
4560
4569
 
4561
- <fo:block-container margin-left="0mm">
4570
+ <fo:block-container margin-left="0mm" role="SKIP">
4562
4571
 
4563
4572
  <xsl:attribute name="margin-right">0mm</xsl:attribute>
4564
4573
 
@@ -4623,7 +4632,7 @@
4623
4632
 
4624
4633
  <!-- a few components -->
4625
4634
  <xsl:if test="$onlyOneComponent = 'false'">
4626
- <fo:block>
4635
+ <fo:block role="SKIP">
4627
4636
 
4628
4637
  <xsl:call-template name="refine_multicomponent_style"/>
4629
4638
 
@@ -4631,7 +4640,7 @@
4631
4640
  <xsl:attribute name="margin-top">0</xsl:attribute>
4632
4641
  </xsl:if>
4633
4642
 
4634
- <fo:block>
4643
+ <fo:block role="SKIP">
4635
4644
 
4636
4645
  <xsl:call-template name="refine_multicomponent_block_style"/>
4637
4646
 
@@ -5234,6 +5243,9 @@
5234
5243
  <xsl:attribute name="color">black</xsl:attribute>
5235
5244
  </xsl:if>
5236
5245
 
5246
+ <xsl:if test="ancestor::*['preferred']">
5247
+ <xsl:attribute name="role">SKIP</xsl:attribute>
5248
+ </xsl:if>
5237
5249
  </xsl:template>
5238
5250
 
5239
5251
  <xsl:template match="*[local-name()='padding']">
@@ -5283,7 +5295,7 @@
5283
5295
  <xsl:variable name="regex_url_start">^(http://|https://|www\.)?(.*)</xsl:variable>
5284
5296
  <xsl:template match="*[local-name()='tt']/text()" priority="2">
5285
5297
  <xsl:choose>
5286
- <xsl:when test="java:replaceAll(java:java.lang.String.new(.), '$2', '') != ''">
5298
+ <xsl:when test="java:replaceAll(java:java.lang.String.new(.), $regex_url_start, '$2') != ''">
5287
5299
  <!-- url -->
5288
5300
  <xsl:call-template name="add-zero-spaces-link-java"/>
5289
5301
  </xsl:when>
@@ -5745,10 +5757,13 @@
5745
5757
  </xsl:choose>
5746
5758
  </xsl:variable>
5747
5759
 
5760
+ <!-- replace sequence #x200B to one &#x200B -->
5761
+ <xsl:variable name="text10" select="java:replaceAll(java:java.lang.String.new($text9), '\u200b{2,}', '​')"/>
5762
+
5748
5763
  <!-- replace sequence #x200B and space TO space -->
5749
- <xsl:variable name="text10" select="java:replaceAll(java:java.lang.String.new($text9), '\u200b ', ' ')"/>
5764
+ <xsl:variable name="text11" select="java:replaceAll(java:java.lang.String.new($text10), '\u200b ', ' ')"/>
5750
5765
 
5751
- <xsl:value-of select="$text10"/>
5766
+ <xsl:value-of select="$text11"/>
5752
5767
  </xsl:template>
5753
5768
 
5754
5769
  <xsl:template name="add-zero-spaces-link-java">
@@ -5758,8 +5773,12 @@
5758
5773
  <xsl:variable name="url_continue" select="java:replaceAll(java:java.lang.String.new($text), $regex_url_start, '$2')"/>
5759
5774
  <!-- add zero-width space (#x200B) after characters: dash, dot, colon, equal, underscore, em dash, thin space, comma, slash, @ -->
5760
5775
  <xsl:variable name="url" select="java:replaceAll(java:java.lang.String.new($url_continue),'(-|\.|:|=|_|—| |,|/|@)','$1​')"/>
5776
+
5777
+ <!-- replace sequence #x200B to one &#x200B -->
5778
+ <xsl:variable name="url2" select="java:replaceAll(java:java.lang.String.new($url), '\u200b{2,}', '​')"/>
5779
+
5761
5780
  <!-- remove zero-width space at the end -->
5762
- <xsl:value-of select="java:replaceAll(java:java.lang.String.new($url), '​$', '')"/>
5781
+ <xsl:value-of select="java:replaceAll(java:java.lang.String.new($url2), '​$', '')"/>
5763
5782
  </xsl:template>
5764
5783
 
5765
5784
  <!-- add zero space after dash character (for table's entries) -->
@@ -6170,6 +6189,18 @@
6170
6189
  </xsl:copy>
6171
6190
  </xsl:template>
6172
6191
 
6192
+ <xsl:variable name="font_main_root_style">
6193
+ <root-style xsl:use-attribute-sets="root-style">
6194
+ </root-style>
6195
+ </xsl:variable>
6196
+ <xsl:variable name="font_main_root_style_font_family" select="xalan:nodeset($font_main_root_style)/root-style/@font-family"/>
6197
+ <xsl:variable name="font_main">
6198
+ <xsl:choose>
6199
+ <xsl:when test="contains($font_main_root_style_font_family, ',')"><xsl:value-of select="substring-before($font_main_root_style_font_family, ',')"/></xsl:when>
6200
+ <xsl:otherwise><xsl:value-of select="$font_main_root_style_font_family"/></xsl:otherwise>
6201
+ </xsl:choose>
6202
+ </xsl:variable>
6203
+
6173
6204
  <xsl:template match="*[local-name()='th' or local-name()='td']" mode="simple-table-id">
6174
6205
  <xsl:param name="id"/>
6175
6206
  <xsl:copy>
@@ -6208,6 +6239,33 @@
6208
6239
 
6209
6240
  <!-- td_text='<xsl:copy-of select="$td_text"/>' -->
6210
6241
 
6242
+ <xsl:variable name="words_with_width">
6243
+ <!-- calculate width for 'word' which contain text only (without formatting tags inside) -->
6244
+ <xsl:for-each select="xalan:nodeset($td_text)//*[local-name() = 'word'][normalize-space() != ''][not(*)]">
6245
+ <xsl:copy>
6246
+ <xsl:copy-of select="@*"/>
6247
+ <xsl:attribute name="width">
6248
+ <xsl:value-of select="java:org.metanorma.fop.Util.getStringWidth(., $font_main)"/> <!-- Example: 'Times New Roman' -->
6249
+ </xsl:attribute>
6250
+ <xsl:copy-of select="node()"/>
6251
+ </xsl:copy>
6252
+ </xsl:for-each>
6253
+ </xsl:variable>
6254
+
6255
+ <xsl:variable name="words_with_width_sorted">
6256
+ <xsl:for-each select="xalan:nodeset($words_with_width)//*[local-name() = 'word']">
6257
+ <xsl:sort select="@width" data-type="number" order="descending"/>
6258
+ <!-- select word maximal width only -->
6259
+ <xsl:if test="position() = 1">
6260
+ <xsl:copy-of select="."/>
6261
+ </xsl:if>
6262
+ </xsl:for-each>
6263
+ <!-- add 'word' with formatting tags inside -->
6264
+ <xsl:for-each select="xalan:nodeset($td_text)//*[local-name() = 'word'][normalize-space() != ''][*]">
6265
+ <xsl:copy-of select="."/>
6266
+ </xsl:for-each>
6267
+ </xsl:variable>
6268
+
6211
6269
  <xsl:variable name="words">
6212
6270
  <xsl:for-each select=".//*[local-name() = 'image' or local-name() = 'stem']">
6213
6271
  <word>
@@ -6215,9 +6273,12 @@
6215
6273
  </word>
6216
6274
  </xsl:for-each>
6217
6275
 
6218
- <xsl:for-each select="xalan:nodeset($td_text)//*[local-name() = 'word'][normalize-space() != '']">
6276
+ <xsl:for-each select="xalan:nodeset($words_with_width_sorted)//*[local-name() = 'word'][normalize-space() != '']">
6219
6277
  <xsl:copy-of select="."/>
6220
6278
  </xsl:for-each>
6279
+ <!-- <xsl:for-each select="xalan:nodeset($td_text)//*[local-name() = 'word'][normalize-space() != '']">
6280
+ <xsl:copy-of select="."/>
6281
+ </xsl:for-each> -->
6221
6282
 
6222
6283
  </xsl:variable>
6223
6284
 
@@ -6678,10 +6739,10 @@
6678
6739
  <xsl:copy>
6679
6740
  <xsl:apply-templates select="@*" mode="mathml"/>
6680
6741
  <xsl:if test="not(@lspace)">
6681
- <xsl:attribute name="lspace">0.4em</xsl:attribute>
6742
+ <xsl:attribute name="lspace">0.2em</xsl:attribute>
6682
6743
  </xsl:if>
6683
- <xsl:if test="not(@rspace)">
6684
- <xsl:attribute name="rspace">0.4em</xsl:attribute>
6744
+ <xsl:if test="not(@rspace) and not(following-sibling::*[1][self::mathml:mo and normalize-space(text()) = '|'])">
6745
+ <xsl:attribute name="rspace">0.2em</xsl:attribute>
6685
6746
  </xsl:if>
6686
6747
  <xsl:apply-templates mode="mathml"/>
6687
6748
  </xsl:copy>
@@ -6698,6 +6759,27 @@
6698
6759
  </xsl:copy>
6699
6760
  </xsl:template>
6700
6761
 
6762
+ <!-- increase space before '(' -->
6763
+ <xsl:template match="mathml:mo[normalize-space(text()) = '(']" mode="mathml">
6764
+ <xsl:copy>
6765
+ <xsl:apply-templates select="@*" mode="mathml"/>
6766
+ <xsl:if test="(preceding-sibling::* and not(preceding-sibling::*[1][self::mathml:mo])) or (../preceding-sibling::* and not(../preceding-sibling::*[1][self::mathml:mo]))">
6767
+ <xsl:if test="not(@lspace)">
6768
+ <xsl:attribute name="lspace">0.4em</xsl:attribute>
6769
+ <xsl:choose>
6770
+ <xsl:when test="preceding-sibling::*[1][self::mathml:mi or self::mathml:mstyle]">
6771
+ <xsl:attribute name="lspace">0.2em</xsl:attribute>
6772
+ </xsl:when>
6773
+ <xsl:when test="../preceding-sibling::*[1][self::mathml:mi or self::mathml:mstyle]">
6774
+ <xsl:attribute name="lspace">0.2em</xsl:attribute>
6775
+ </xsl:when>
6776
+ </xsl:choose>
6777
+ </xsl:if>
6778
+ </xsl:if>
6779
+ <xsl:apply-templates mode="mathml"/>
6780
+ </xsl:copy>
6781
+ </xsl:template>
6782
+
6701
6783
  <!-- Examples:
6702
6784
  <stem type="AsciiMath">x = 1</stem>
6703
6785
  <stem type="AsciiMath"><asciimath>x = 1</asciimath></stem>
@@ -6857,7 +6939,7 @@
6857
6939
  <!-- formula -->
6858
6940
  <!-- ====== -->
6859
6941
  <xsl:template match="*[local-name() = 'formula']" name="formula">
6860
- <fo:block-container margin-left="0mm">
6942
+ <fo:block-container margin-left="0mm" role="SKIP">
6861
6943
  <xsl:if test="parent::*[local-name() = 'note']">
6862
6944
  <xsl:attribute name="margin-left">
6863
6945
  <xsl:choose>
@@ -6867,7 +6949,7 @@
6867
6949
  </xsl:attribute>
6868
6950
 
6869
6951
  </xsl:if>
6870
- <fo:block-container margin-left="0mm">
6952
+ <fo:block-container margin-left="0mm" role="SKIP">
6871
6953
  <fo:block id="{@id}">
6872
6954
  <xsl:apply-templates select="node()[not(local-name() = 'name')]"/> <!-- formula's number will be process in 'stem' template -->
6873
6955
  </fo:block>
@@ -6947,19 +7029,19 @@
6947
7029
 
6948
7030
  <xsl:template match="*[local-name() = 'note']" name="note">
6949
7031
 
6950
- <fo:block-container id="{@id}" xsl:use-attribute-sets="note-style">
7032
+ <fo:block-container id="{@id}" xsl:use-attribute-sets="note-style" role="SKIP">
6951
7033
 
6952
7034
  <xsl:call-template name="setBlockSpanAll"/>
6953
7035
 
6954
7036
  <xsl:call-template name="refine_note-style"/>
6955
7037
 
6956
- <fo:block-container margin-left="0mm" margin-right="0mm">
7038
+ <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
6957
7039
 
6958
7040
  <fo:block>
6959
7041
 
6960
7042
  <xsl:call-template name="refine_note_block_style"/>
6961
7043
 
6962
- <fo:inline xsl:use-attribute-sets="note-name-style">
7044
+ <fo:inline xsl:use-attribute-sets="note-name-style" role="SKIP">
6963
7045
 
6964
7046
  <xsl:call-template name="refine_note-name-style"/>
6965
7047
 
@@ -6996,12 +7078,12 @@
6996
7078
  <xsl:variable name="num"><xsl:number/></xsl:variable>
6997
7079
  <xsl:choose>
6998
7080
  <xsl:when test="$num = 1"> <!-- display first NOTE's paragraph in the same line with label NOTE -->
6999
- <fo:inline xsl:use-attribute-sets="note-p-style">
7081
+ <fo:inline xsl:use-attribute-sets="note-p-style" role="SKIP">
7000
7082
  <xsl:apply-templates/>
7001
7083
  </fo:inline>
7002
7084
  </xsl:when>
7003
7085
  <xsl:otherwise>
7004
- <fo:block xsl:use-attribute-sets="note-p-style">
7086
+ <fo:block xsl:use-attribute-sets="note-p-style" role="SKIP">
7005
7087
  <xsl:apply-templates/>
7006
7088
  </fo:block>
7007
7089
  </xsl:otherwise>
@@ -7119,12 +7201,13 @@
7119
7201
 
7120
7202
  <xsl:template match="*[local-name() = 'term']/*[local-name() = 'name']">
7121
7203
  <xsl:if test="normalize-space() != ''">
7122
- <xsl:variable name="level">
7204
+ <!-- <xsl:variable name="level">
7123
7205
  <xsl:call-template name="getLevelTermName"/>
7124
7206
  </xsl:variable>
7125
7207
  <fo:inline role="H{$level}">
7126
- <xsl:apply-templates/>
7127
- </fo:inline>
7208
+ <xsl:apply-templates />
7209
+ </fo:inline> -->
7210
+ <xsl:apply-templates/>
7128
7211
  </xsl:if>
7129
7212
  </xsl:template>
7130
7213
  <!-- ====== -->
@@ -7151,7 +7234,7 @@
7151
7234
  <!-- Example: Dimensions in millimeters -->
7152
7235
  <xsl:apply-templates select="*[local-name() = 'note'][@type = 'units']"/>
7153
7236
 
7154
- <fo:block xsl:use-attribute-sets="figure-style">
7237
+ <fo:block xsl:use-attribute-sets="figure-style" role="SKIP">
7155
7238
  <xsl:apply-templates select="node()[not(local-name() = 'name') and not(local-name() = 'note' and @type = 'units')]"/>
7156
7239
  </fo:block>
7157
7240
  <xsl:for-each select="*[local-name() = 'note'][not(@type = 'units')]">
@@ -8287,7 +8370,7 @@
8287
8370
  </xsl:when>
8288
8371
 
8289
8372
  <xsl:otherwise>
8290
- <fo:block-container xsl:use-attribute-sets="sourcecode-container-style">
8373
+ <fo:block-container xsl:use-attribute-sets="sourcecode-container-style" role="SKIP">
8291
8374
 
8292
8375
  <xsl:if test="not(ancestor::*[local-name() = 'li']) or ancestor::*[local-name() = 'example']">
8293
8376
  <xsl:attribute name="margin-left">0mm</xsl:attribute>
@@ -8308,7 +8391,7 @@
8308
8391
  </xsl:attribute>
8309
8392
 
8310
8393
  </xsl:if>
8311
- <fo:block-container margin-left="0mm">
8394
+ <fo:block-container margin-left="0mm" role="SKIP">
8312
8395
 
8313
8396
  <xsl:apply-templates select="*[local-name()='name']"/> <!-- show sourcecode's name BEFORE content -->
8314
8397
 
@@ -8854,11 +8937,11 @@
8854
8937
  <!-- requirement, recommendation, permission table -->
8855
8938
  <!-- ========== -->
8856
8939
  <xsl:template match="*[local-name() = 'table'][@class = 'recommendation' or @class='requirement' or @class='permission']">
8857
- <fo:block-container margin-left="0mm" margin-right="0mm" margin-bottom="12pt">
8940
+ <fo:block-container margin-left="0mm" margin-right="0mm" margin-bottom="12pt" role="SKIP">
8858
8941
  <xsl:if test="ancestor::*[local-name() = 'table'][@class = 'recommendation' or @class='requirement' or @class='permission']">
8859
8942
  <xsl:attribute name="margin-bottom">0pt</xsl:attribute>
8860
8943
  </xsl:if>
8861
- <fo:block-container margin-left="0mm" margin-right="0mm">
8944
+ <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
8862
8945
  <fo:table id="{@id}" table-layout="fixed" width="100%"> <!-- border="1pt solid black" -->
8863
8946
  <xsl:if test="ancestor::*[local-name() = 'table'][@class = 'recommendation' or @class='requirement' or @class='permission']">
8864
8947
  <!-- <xsl:attribute name="border">0.5pt solid black</xsl:attribute> -->
@@ -9020,7 +9103,7 @@
9020
9103
  -->
9021
9104
  <xsl:template match="*[local-name() = 'example']">
9022
9105
 
9023
- <fo:block-container id="{@id}" xsl:use-attribute-sets="example-style">
9106
+ <fo:block-container id="{@id}" xsl:use-attribute-sets="example-style" role="SKIP">
9024
9107
 
9025
9108
  <xsl:call-template name="setBlockSpanAll"/>
9026
9109
 
@@ -9031,7 +9114,7 @@
9031
9114
  inline
9032
9115
  </xsl:variable>
9033
9116
 
9034
- <fo:block-container margin-left="0mm">
9117
+ <fo:block-container margin-left="0mm" role="SKIP">
9035
9118
 
9036
9119
  <xsl:choose>
9037
9120
 
@@ -9044,8 +9127,8 @@
9044
9127
  </xsl:apply-templates>
9045
9128
  </fo:block>
9046
9129
 
9047
- <fo:block-container xsl:use-attribute-sets="example-body-style">
9048
- <fo:block-container margin-left="0mm" margin-right="0mm">
9130
+ <fo:block-container xsl:use-attribute-sets="example-body-style" role="SKIP">
9131
+ <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
9049
9132
  <xsl:apply-templates select="node()[not(local-name() = 'name')]">
9050
9133
  <xsl:with-param name="fo_element" select="$fo_element"/>
9051
9134
  </xsl:apply-templates>
@@ -9098,8 +9181,8 @@
9098
9181
 
9099
9182
  <xsl:if test="*[not(local-name() = 'name')][position() &gt; 1]">
9100
9183
  <!-- display further elements in blocks -->
9101
- <fo:block-container xsl:use-attribute-sets="example-body-style">
9102
- <fo:block-container margin-left="0mm" margin-right="0mm">
9184
+ <fo:block-container xsl:use-attribute-sets="example-body-style" role="SKIP">
9185
+ <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
9103
9186
  <xsl:apply-templates select="*[not(local-name() = 'name')][position() &gt; 1]">
9104
9187
  <xsl:with-param name="fo_element" select="'block'"/>
9105
9188
  </xsl:apply-templates>
@@ -9157,7 +9240,7 @@
9157
9240
  </xsl:variable>
9158
9241
  <xsl:choose>
9159
9242
  <xsl:when test="starts-with(normalize-space($element), 'block')">
9160
- <fo:block-container>
9243
+ <fo:block-container role="SKIP">
9161
9244
  <xsl:if test="ancestor::*[local-name() = 'li'] and contains(normalize-space($fo_element), 'block')">
9162
9245
  <xsl:attribute name="margin-left">0mm</xsl:attribute>
9163
9246
  <xsl:attribute name="margin-right">0mm</xsl:attribute>
@@ -9298,7 +9381,7 @@
9298
9381
  <!-- author -->
9299
9382
  <!-- ====== -->
9300
9383
  <xsl:template match="*[local-name() = 'quote']">
9301
- <fo:block-container margin-left="0mm">
9384
+ <fo:block-container margin-left="0mm" role="SKIP">
9302
9385
 
9303
9386
  <xsl:call-template name="setBlockSpanAll"/>
9304
9387
 
@@ -9308,12 +9391,12 @@
9308
9391
  </xsl:if>
9309
9392
  </xsl:if>
9310
9393
 
9311
- <fo:block-container margin-left="0mm">
9312
- <fo:block-container xsl:use-attribute-sets="quote-style">
9394
+ <fo:block-container margin-left="0mm" role="SKIP">
9395
+ <fo:block-container xsl:use-attribute-sets="quote-style" role="SKIP">
9313
9396
 
9314
9397
  <xsl:call-template name="refine_quote-style"/>
9315
9398
 
9316
- <fo:block-container margin-left="0mm" margin-right="0mm">
9399
+ <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
9317
9400
  <fo:block role="BlockQuote">
9318
9401
  <xsl:apply-templates select="./node()[not(local-name() = 'author') and not(local-name() = 'source')]"/> <!-- process all nested nodes, except author and source -->
9319
9402
  </fo:block>
@@ -9467,10 +9550,10 @@
9467
9550
 
9468
9551
  <xsl:choose>
9469
9552
  <xsl:when test="$lang = 'zh'">
9470
- <fo:inline><xsl:value-of select="$tab_zh"/></fo:inline>
9553
+ <fo:inline role="SKIP"><xsl:value-of select="$tab_zh"/></fo:inline>
9471
9554
  </xsl:when>
9472
9555
  <xsl:when test="../../@inline-header = 'true'">
9473
- <fo:inline font-size="90%">
9556
+ <fo:inline font-size="90%" role="SKIP">
9474
9557
  <xsl:call-template name="insertNonBreakSpaces">
9475
9558
  <xsl:with-param name="count" select="$padding-right"/>
9476
9559
  </xsl:call-template>
@@ -9478,7 +9561,7 @@
9478
9561
  </xsl:when>
9479
9562
  <xsl:otherwise>
9480
9563
  <xsl:variable name="direction"><xsl:if test="$lang = 'ar'"><xsl:value-of select="$RLM"/></xsl:if></xsl:variable>
9481
- <fo:inline padding-right="{$padding-right}mm"><xsl:value-of select="$direction"/>​</fo:inline>
9564
+ <fo:inline padding-right="{$padding-right}mm" role="SKIP"><xsl:value-of select="$direction"/>​</fo:inline>
9482
9565
  </xsl:otherwise>
9483
9566
  </xsl:choose>
9484
9567
 
@@ -9508,12 +9591,12 @@
9508
9591
  <fo:block font-size="{normalize-space($font-size)}" role="H{$levelTerm}" xsl:use-attribute-sets="preferred-block-style">
9509
9592
 
9510
9593
  <xsl:if test="parent::*[local-name() = 'term'] and not(preceding-sibling::*[local-name() = 'preferred'])"> <!-- if first preffered in term, then display term's name -->
9511
- <fo:block xsl:use-attribute-sets="term-name-style">
9594
+ <fo:block xsl:use-attribute-sets="term-name-style" role="SKIP">
9512
9595
  <xsl:apply-templates select="ancestor::*[local-name() = 'term'][1]/*[local-name() = 'name']"/>
9513
9596
  </fo:block>
9514
9597
  </xsl:if>
9515
9598
 
9516
- <fo:block xsl:use-attribute-sets="preferred-term-style">
9599
+ <fo:block xsl:use-attribute-sets="preferred-term-style" role="SKIP">
9517
9600
  <xsl:call-template name="setStyle_preferred"/>
9518
9601
  <xsl:apply-templates/>
9519
9602
  </fo:block>
@@ -9554,7 +9637,7 @@
9554
9637
  <!-- definition -->
9555
9638
  <!-- ========== -->
9556
9639
  <xsl:template match="*[local-name() = 'definition']">
9557
- <fo:block xsl:use-attribute-sets="definition-style">
9640
+ <fo:block xsl:use-attribute-sets="definition-style" role="SKIP">
9558
9641
  <xsl:apply-templates/>
9559
9642
  </fo:block>
9560
9643
  </xsl:template>
@@ -9602,6 +9685,10 @@
9602
9685
 
9603
9686
  <xsl:template match="*[local-name() = 'clause']">
9604
9687
  <fo:block>
9688
+ <xsl:if test="parent::*[local-name() = 'copyright-statement']">
9689
+ <xsl:attribute name="role">SKIP</xsl:attribute>
9690
+ </xsl:if>
9691
+
9605
9692
  <xsl:call-template name="setId"/>
9606
9693
 
9607
9694
  <xsl:call-template name="setBlockSpanAll"/>
@@ -9840,7 +9927,7 @@
9840
9927
  <xsl:template match="*[local-name() = 'ul'] | *[local-name() = 'ol']">
9841
9928
  <xsl:choose>
9842
9929
  <xsl:when test="parent::*[local-name() = 'note'] or parent::*[local-name() = 'termnote']">
9843
- <fo:block-container>
9930
+ <fo:block-container role="SKIP">
9844
9931
  <xsl:attribute name="margin-left">
9845
9932
  <xsl:choose>
9846
9933
  <xsl:when test="not(ancestor::*[local-name() = 'table'])"><xsl:value-of select="$note-body-indent"/></xsl:when>
@@ -9850,7 +9937,7 @@
9850
9937
 
9851
9938
  <xsl:call-template name="refine_list_container_style"/>
9852
9939
 
9853
- <fo:block-container margin-left="0mm">
9940
+ <fo:block-container margin-left="0mm" role="SKIP">
9854
9941
  <fo:block>
9855
9942
  <xsl:apply-templates select="." mode="list"/>
9856
9943
  </fo:block>
@@ -9859,7 +9946,7 @@
9859
9946
  </xsl:when>
9860
9947
  <xsl:otherwise>
9861
9948
 
9862
- <fo:block>
9949
+ <fo:block role="SKIP">
9863
9950
  <xsl:apply-templates select="." mode="list"/>
9864
9951
  </fo:block>
9865
9952
 
@@ -10277,7 +10364,10 @@
10277
10364
  <!-- Reference sections (Normative References and Bibliography) -->
10278
10365
  <!-- ========================================================== -->
10279
10366
  <xsl:template match="*[local-name() = 'references'][@hidden='true']" priority="3"/>
10280
- <xsl:template match="*[local-name() = 'bibitem'][@hidden='true']" priority="3"/>
10367
+ <xsl:template match="*[local-name() = 'bibitem'][@hidden='true']" priority="3">
10368
+ <xsl:param name="skip" select="normalize-space(preceding-sibling::*[1][local-name() = 'bibitem'] and 1 = 1)"/>
10369
+
10370
+ </xsl:template>
10281
10371
  <!-- don't display bibitem with @id starts with '_hidden', that was introduced for references integrity -->
10282
10372
  <xsl:template match="*[local-name() = 'bibitem'][starts-with(@id, 'hidden_bibitem_')]" priority="3"/>
10283
10373
 
@@ -10326,6 +10416,7 @@
10326
10416
 
10327
10417
  <!-- Bibliography (non-normative references) -->
10328
10418
  <xsl:template match="*[local-name() = 'references'][not(@normative='true')]/*[local-name() = 'bibitem']" name="bibitem_non_normative" priority="2">
10419
+ <xsl:param name="skip" select="normalize-space(preceding-sibling::*[1][local-name() = 'bibitem'] and 1 = 1)"/> <!-- current bibiitem is non-first -->
10329
10420
 
10330
10421
  <fo:list-block id="{@id}" xsl:use-attribute-sets="bibitem-non-normative-list-style">
10331
10422
  <fo:list-item>
@@ -10350,6 +10441,35 @@
10350
10441
 
10351
10442
  </xsl:template> <!-- references[not(@normative='true')]/bibitem -->
10352
10443
 
10444
+ <xsl:template name="insertListItem_Bibitem">
10445
+ <xsl:choose>
10446
+ <xsl:when test="@hidden = 'true'"><!-- skip --></xsl:when>
10447
+ <xsl:otherwise>
10448
+ <fo:list-item id="{@id}" xsl:use-attribute-sets="bibitem-non-normative-list-item-style">
10449
+ <fo:list-item-label end-indent="label-end()">
10450
+ <fo:block role="SKIP">
10451
+ <fo:inline role="SKIP">
10452
+ <xsl:apply-templates select="*[local-name() = 'biblio-tag']">
10453
+ <xsl:with-param name="biblio_tag_part">first</xsl:with-param>
10454
+ </xsl:apply-templates>
10455
+ </fo:inline>
10456
+ </fo:block>
10457
+ </fo:list-item-label>
10458
+ <fo:list-item-body start-indent="body-start()">
10459
+ <fo:block xsl:use-attribute-sets="bibitem-non-normative-list-body-style" role="SKIP">
10460
+ <xsl:call-template name="processBibitem">
10461
+ <xsl:with-param name="biblio_tag_part">last</xsl:with-param>
10462
+ </xsl:call-template>
10463
+ </fo:block>
10464
+ </fo:list-item-body>
10465
+ </fo:list-item>
10466
+ </xsl:otherwise>
10467
+ </xsl:choose>
10468
+ <xsl:apply-templates select="following-sibling::*[1][local-name() = 'bibitem']">
10469
+ <xsl:with-param name="skip">false</xsl:with-param>
10470
+ </xsl:apply-templates>
10471
+ </xsl:template>
10472
+
10353
10473
  <xsl:template name="processBibitem">
10354
10474
  <xsl:param name="biblio_tag_part">both</xsl:param>
10355
10475
 
@@ -10683,7 +10803,7 @@
10683
10803
 
10684
10804
  <xsl:call-template name="setBlockSpanAll"/>
10685
10805
 
10686
- <fo:block-container xsl:use-attribute-sets="admonition-container-style">
10806
+ <fo:block-container xsl:use-attribute-sets="admonition-container-style" role="SKIP">
10687
10807
 
10688
10808
  <fo:block xsl:use-attribute-sets="admonition-name-style">
10689
10809
  <xsl:call-template name="displayAdmonitionName"/>
@@ -1,5 +1,5 @@
1
1
  module Metanorma
2
2
  module Ribose
3
- VERSION = "2.2.11".freeze
3
+ VERSION = "2.2.13".freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metanorma-ribose
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.11
4
+ version: 2.2.13
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-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: metanorma-generic