metanorma-iho 1.0.14 → 1.0.16

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: 7cdfebb993b782a2c17eaf34610fd07f8351425743814f3e57167d7991af5edf
4
- data.tar.gz: cde48a080e752f287ce934c1fd8f9786b2cf03dc18e8083fcb310c9e5ca77945
3
+ metadata.gz: fabe86221211d88962e1b6520a72d7ecc9ba842a7c04d87aed2c379eaf1752fb
4
+ data.tar.gz: 31cbef779d6b01b48903066ff266d0a1de1d18064b1015a5447b5d8104be3a58
5
5
  SHA512:
6
- metadata.gz: b9018d84334f416d6e26d10ee6b447c37758e401803f76499c1d337bf1e6b26b76a824aeab8854bc3708be49f7778df72ca37375a31e3305f08eb6d594a2df2f
7
- data.tar.gz: 5be59f0634e3fbcd8abf2b31c114f47554e6a7a4889a7308510c4852ef903b5b833019f617f3209e3fa0ffaec765a40e45db604f5ae3ee9f135cd3bd7f13b045
6
+ metadata.gz: 8b96d34deb88167129d01f0c4b39f87910ccbe3967a779c161df496224e5d04fd52edb21db5a0c34f308c33bd8054db6bb0cdbdab4ebc9de61227edb92b07d95
7
+ data.tar.gz: 3bdfcc58087628650e0405a3078614c26ae8bddd1852206783642cc39af42d36ef5f8f3af300e19b3d99c7d15e3c4911661f7644d4d45a8a7ecddd9d95e9cc93
@@ -2066,6 +2066,9 @@
2066
2066
 
2067
2067
  </xsl:attribute-set>
2068
2068
 
2069
+ <xsl:attribute-set name="related-block-style" use-attribute-sets="preferred-block-style">
2070
+ </xsl:attribute-set>
2071
+
2069
2072
  <xsl:attribute-set name="definition-style">
2070
2073
 
2071
2074
  <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
@@ -4305,7 +4308,9 @@
4305
4308
  <xsl:with-param name="element">
4306
4309
  <fo:basic-link internal-destination="{$ref_id}" fox:alt-text="footnote {$current_fn_number}"> <!-- note: role="Lbl" removed in https://github.com/metanorma/mn2pdf/issues/291 -->
4307
4310
  <fo:inline role="Lbl"> <!-- need for https://github.com/metanorma/metanorma-iso/issues/1003 -->
4311
+
4308
4312
  <xsl:copy-of select="$current_fn_number_text"/>
4313
+
4309
4314
  </fo:inline>
4310
4315
  </fo:basic-link>
4311
4316
  </xsl:with-param>
@@ -4324,8 +4329,7 @@
4324
4329
 
4325
4330
  <fo:block-container xsl:use-attribute-sets="fn-container-body-style" role="SKIP">
4326
4331
 
4327
- <fo:block xsl:use-attribute-sets="fn-body-style" role="SKIP">
4328
-
4332
+ <xsl:variable name="fn_block">
4329
4333
  <xsl:call-template name="refine_fn-body-style"/>
4330
4334
 
4331
4335
  <fo:inline id="{$ref_id}" xsl:use-attribute-sets="fn-body-num-style" role="Lbl">
@@ -4333,9 +4337,15 @@
4333
4337
  <xsl:call-template name="refine_fn-body-num-style"/>
4334
4338
 
4335
4339
  <xsl:value-of select="$current_fn_number_text"/>
4340
+
4336
4341
  </fo:inline>
4337
4342
  <xsl:apply-templates/>
4338
- </fo:block>
4343
+ </xsl:variable>
4344
+
4345
+ <fo:block xsl:use-attribute-sets="fn-body-style" role="SKIP">
4346
+ <xsl:copy-of select="$fn_block"/>
4347
+ </fo:block>
4348
+
4339
4349
  </fo:block-container>
4340
4350
  </fo:footnote-body>
4341
4351
  </fo:footnote>
@@ -6180,9 +6190,14 @@
6180
6190
 
6181
6191
  <xsl:variable name="simple-table">
6182
6192
 
6193
+ <xsl:variable name="table_without_semantic_elements">
6194
+ <xsl:apply-templates mode="update_xml_pres"/>
6195
+ </xsl:variable>
6196
+
6183
6197
  <!-- Step 0. replace <br/> to <p>...</p> -->
6184
6198
  <xsl:variable name="table_without_br">
6185
- <xsl:apply-templates mode="table-without-br"/>
6199
+ <!-- <xsl:apply-templates mode="table-without-br"/> -->
6200
+ <xsl:apply-templates select="xalan:nodeset($table_without_semantic_elements)" mode="table-without-br"/>
6186
6201
  </xsl:variable>
6187
6202
 
6188
6203
  <!-- Step 1. colspan processing -->
@@ -10446,14 +10461,17 @@
10446
10461
  </fo:block>
10447
10462
  </xsl:template>
10448
10463
 
10449
- <xsl:template match="*[local-name() = 'domain']">
10464
+ <!-- <xsl:template match="*[local-name() = 'domain']"> -->
10450
10465
  <!-- https://github.com/metanorma/isodoc/issues/607
10451
10466
  <fo:inline xsl:use-attribute-sets="domain-style">&lt;<xsl:apply-templates/>&gt;</fo:inline>
10452
10467
  <xsl:text> </xsl:text> -->
10453
- <xsl:if test="not(@hidden = 'true')">
10468
+ <!-- <xsl:if test="not(@hidden = 'true')">
10454
10469
  <xsl:apply-templates/>
10455
10470
  </xsl:if>
10456
- </xsl:template>
10471
+ </xsl:template> -->
10472
+
10473
+ <!-- https://github.com/metanorma/isodoc/issues/632#issuecomment-2567163931 -->
10474
+ <xsl:template match="*[local-name() = 'domain']"/>
10457
10475
 
10458
10476
  <xsl:template match="*[local-name() = 'admitted']">
10459
10477
  <fo:block xsl:use-attribute-sets="admitted-style">
@@ -10468,9 +10486,11 @@
10468
10486
  </xsl:template>
10469
10487
 
10470
10488
  <xsl:template name="setStyle_preferred">
10471
- <xsl:if test="*[local-name() = 'strong']">
10472
- <xsl:attribute name="font-weight">normal</xsl:attribute>
10473
- </xsl:if>
10489
+
10490
+ <xsl:if test="*[local-name() = 'strong']">
10491
+ <xsl:attribute name="font-weight">normal</xsl:attribute>
10492
+ </xsl:if>
10493
+
10474
10494
  </xsl:template>
10475
10495
 
10476
10496
  <!-- regarding ISO 10241-1:2011, If there is more than one preferred term, each preferred term follows the previous one on a new line. -->
@@ -10480,6 +10500,17 @@
10480
10500
  </xsl:template>
10481
10501
  <!-- End Preferred, admitted, deprecated -->
10482
10502
 
10503
+ <xsl:template match="*[local-name() = 'fmt-related']">
10504
+ <fo:block role="SKIP" xsl:use-attribute-sets="related-block-style">
10505
+ <xsl:apply-templates/>
10506
+ </fo:block>
10507
+ </xsl:template>
10508
+ <xsl:template match="*[local-name() = 'fmt-related']/*[local-name() = 'p']" priority="4">
10509
+ <fo:block>
10510
+ <xsl:apply-templates/>
10511
+ </fo:block>
10512
+ </xsl:template>
10513
+
10483
10514
  <!-- ========== -->
10484
10515
  <!-- definition -->
10485
10516
  <!-- ========== -->
@@ -11380,6 +11411,7 @@
11380
11411
 
11381
11412
  <!-- Normative references -->
11382
11413
  <xsl:template match="*[local-name() = 'references'][@normative='true']/*[local-name() = 'bibitem']" name="bibitem" priority="2">
11414
+ <xsl:param name="skip" select="normalize-space(preceding-sibling::*[1][local-name() = 'bibitem'] and 1 = 1)"/> <!-- current bibiitem is non-first -->
11383
11415
 
11384
11416
  <fo:list-block id="{@id}" xsl:use-attribute-sets="bibitem-normative-list-style">
11385
11417
 
@@ -12101,7 +12133,8 @@
12101
12133
  <!-- add @id - first element with @id plus '_element_name' -->
12102
12134
  <xsl:variable name="prefix_id_" select="(.//*[@id])[1]/@id"/>
12103
12135
  <xsl:variable name="prefix_id"><xsl:value-of select="$prefix_id_"/><xsl:if test="normalize-space($prefix_id_) = ''"><xsl:value-of select="generate-id()"/></xsl:if></xsl:variable>
12104
- <xsl:attribute name="id"><xsl:value-of select="$prefix_id"/>_<xsl:value-of select="local-name()"/></xsl:attribute>
12136
+ <xsl:variable name="document_suffix" select="ancestor::*[contains(local-name(), '-standard')]/@document_suffix"/>
12137
+ <xsl:attribute name="id"><xsl:value-of select="concat($prefix_id, '_', local-name(), '_', $document_suffix)"/></xsl:attribute>
12105
12138
  </xsl:if>
12106
12139
  </xsl:template>
12107
12140
 
@@ -12158,6 +12191,31 @@
12158
12191
  <xsl:template match="*[local-name() = 'name'][following-sibling::*[1][local-name() = 'fmt-name']]" mode="update_xml_pres"/>
12159
12192
  <xsl:template match="*[local-name() = 'section-title'][following-sibling::*[1][local-name() = 'p'][@type = 'section-title' or @type = 'floating-title']]" mode="update_xml_step1"/>
12160
12193
  <xsl:template match="*[local-name() = 'section-title'][following-sibling::*[1][local-name() = 'p'][@type = 'section-title' or @type = 'floating-title']]" mode="update_xml_pres"/>
12194
+ <!-- <xsl:template match="*[local-name() = 'preferred'][following-sibling::*[not(local-name() = 'preferred')][1][local-name() = 'fmt-preferred']]" mode="update_xml_step1"/> -->
12195
+ <xsl:template match="*[local-name() = 'preferred']" mode="update_xml_step1"/>
12196
+ <!-- <xsl:template match="*[local-name() = 'preferred'][following-sibling::*[not(local-name() = 'preferred')][1][local-name() = 'fmt-preferred']]" mode="update_xml_pres"/> -->
12197
+ <xsl:template match="*[local-name() = 'preferred']" mode="update_xml_pres"/>
12198
+ <!-- <xsl:template match="*[local-name() = 'admitted'][following-sibling::*[not(local-name() = 'admitted')][1][local-name() = 'fmt-admitted']]" mode="update_xml_step1"/> -->
12199
+ <xsl:template match="*[local-name() = 'admitted']" mode="update_xml_step1"/>
12200
+ <!-- <xsl:template match="*[local-name() = 'admitted'][following-sibling::*[not(local-name() = 'admitted')][1][local-name() = 'fmt-admitted']]" mode="update_xml_pres"/> -->
12201
+ <xsl:template match="*[local-name() = 'admitted']" mode="update_xml_pres"/>
12202
+ <!-- <xsl:template match="*[local-name() = 'deprecates'][following-sibling::*[not(local-name() = 'deprecates')][1][local-name() = 'fmt-deprecates']]" mode="update_xml_step1"/> -->
12203
+ <xsl:template match="*[local-name() = 'deprecates']" mode="update_xml_step1"/>
12204
+ <xsl:template match="*[local-name() = 'related']" mode="update_xml_step1"/>
12205
+ <!-- <xsl:template match="*[local-name() = 'deprecates'][following-sibling::*[not(local-name() = 'deprecates')][1][local-name() = 'fmt-deprecates']]" mode="update_xml_pres"/> -->
12206
+ <xsl:template match="*[local-name() = 'deprecates']" mode="update_xml_pres"/>
12207
+ <xsl:template match="*[local-name() = 'related']" mode="update_xml_pres"/>
12208
+ <!-- <xsl:template match="*[local-name() = 'definition'][following-sibling::*[1][local-name() = 'fmt-definition']]" mode="update_xml_step1"/> -->
12209
+ <xsl:template match="*[local-name() = 'definition']" mode="update_xml_step1"/>
12210
+ <!-- <xsl:template match="*[local-name() = 'definition'][following-sibling::*[1][local-name() = 'fmt-definition']]" mode="update_xml_pres"/> -->
12211
+ <xsl:template match="*[local-name() = 'definition']" mode="update_xml_pres"/>
12212
+ <!-- <xsl:template match="*[local-name() = 'termsource'][following-sibling::*[1][local-name() = 'fmt-termsource']]" mode="update_xml_step1"/> -->
12213
+ <xsl:template match="*[local-name() = 'termsource']" mode="update_xml_step1"/>
12214
+ <!-- <xsl:template match="*[local-name() = 'termsource'][following-sibling::*[1][local-name() = 'fmt-termsource']]" mode="update_xml_pres"/> -->
12215
+ <xsl:template match="*[local-name() = 'termsource']" mode="update_xml_pres"/>
12216
+
12217
+ <xsl:template match="*[local-name() = 'term'][@unnumbered = 'true'][not(.//*[starts-with(local-name(), 'fmt-')])]" mode="update_xml_step1"/>
12218
+ <xsl:template match="*[local-name() = 'term'][@unnumbered = 'true'][not(.//*[starts-with(local-name(), 'fmt-')])]" mode="update_xml_pres"/>
12161
12219
 
12162
12220
  <xsl:template match="*[local-name() = 'p'][@type = 'section-title' or @type = 'floating-title'][preceding-sibling::*[1][local-name() = 'section-title']]" mode="update_xml_step1">
12163
12221
  <xsl:copy>
@@ -12190,13 +12248,115 @@
12190
12248
 
12191
12249
  <xsl:template match="*[local-name() = 'fmt-name']"/>
12192
12250
  <xsl:template match="*[local-name() = 'fmt-name']" mode="update_xml_step1">
12193
- <xsl:element name="name" namespace="{$namespace_full}">
12251
+ <xsl:choose>
12252
+ <xsl:when test="local-name(..) = 'p' and ancestor::*[local-name() = 'table']">
12253
+ <xsl:apply-templates mode="update_xml_step1"/>
12254
+ </xsl:when>
12255
+ <xsl:otherwise>
12256
+ <xsl:element name="name" namespace="{$namespace_full}">
12257
+ <xsl:copy-of select="@*"/>
12258
+ <xsl:apply-templates mode="update_xml_step1"/>
12259
+ </xsl:element>
12260
+ </xsl:otherwise>
12261
+ </xsl:choose>
12262
+ </xsl:template>
12263
+ <xsl:template match="*[local-name() = 'fmt-name']" mode="update_xml_pres">
12264
+ <xsl:choose>
12265
+ <xsl:when test="local-name(..) = 'p' and ancestor::*[local-name() = 'table']">
12266
+ <xsl:apply-templates mode="update_xml_step1"/>
12267
+ </xsl:when>
12268
+ <xsl:otherwise>
12269
+ <xsl:element name="name" namespace="{$namespace_full}">
12270
+ <xsl:copy-of select="@*"/>
12271
+ <xsl:apply-templates mode="update_xml_pres"/>
12272
+ </xsl:element>
12273
+ </xsl:otherwise>
12274
+ </xsl:choose>
12275
+ </xsl:template>
12276
+
12277
+ <xsl:template match="*[local-name() = 'fmt-preferred']"/>
12278
+ <xsl:template match="*[local-name() = 'fmt-preferred'][*[local-name() = 'p']]" mode="update_xml_step1">
12279
+ <xsl:apply-templates mode="update_xml_step1"/>
12280
+ </xsl:template>
12281
+ <xsl:template match="*[local-name() = 'fmt-preferred'][not(*[local-name() = 'p'])] | *[local-name() = 'fmt-preferred']/*[local-name() = 'p']" mode="update_xml_step1">
12282
+ <xsl:element name="preferred" namespace="{$namespace_full}">
12194
12283
  <xsl:copy-of select="@*"/>
12195
12284
  <xsl:apply-templates mode="update_xml_step1"/>
12196
12285
  </xsl:element>
12197
12286
  </xsl:template>
12198
- <xsl:template match="*[local-name() = 'fmt-name']" mode="update_xml_pres">
12199
- <xsl:element name="name" namespace="{$namespace_full}">
12287
+ <xsl:template match="*[local-name() = 'fmt-preferred'][*[local-name() = 'p']]" mode="update_xml_pres">
12288
+ <xsl:apply-templates mode="update_xml_pres"/>
12289
+ </xsl:template>
12290
+ <xsl:template match="*[local-name() = 'fmt-preferred'][not(*[local-name() = 'p'])] | *[local-name() = 'fmt-preferred']/*[local-name() = 'p']" mode="update_xml_pres">
12291
+ <xsl:element name="preferred" namespace="{$namespace_full}">
12292
+ <xsl:copy-of select="@*"/>
12293
+ <xsl:apply-templates mode="update_xml_pres"/>
12294
+ </xsl:element>
12295
+ </xsl:template>
12296
+
12297
+ <xsl:template match="*[local-name() = 'fmt-admitted']"/>
12298
+ <xsl:template match="*[local-name() = 'fmt-admitted'][*[local-name() = 'p']]" mode="update_xml_step1">
12299
+ <xsl:apply-templates mode="update_xml_step1"/>
12300
+ </xsl:template>
12301
+ <xsl:template match="*[local-name() = 'fmt-admitted'][not(*[local-name() = 'p'])] | *[local-name() = 'fmt-admitted']/*[local-name() = 'p']" mode="update_xml_step1">
12302
+ <xsl:element name="admitted" namespace="{$namespace_full}">
12303
+ <xsl:copy-of select="@*"/>
12304
+ <xsl:apply-templates mode="update_xml_step1"/>
12305
+ </xsl:element>
12306
+ </xsl:template>
12307
+ <xsl:template match="*[local-name() = 'fmt-admitted'][*[local-name() = 'p']]" mode="update_xml_pres">
12308
+ <xsl:apply-templates mode="update_xml_pres"/>
12309
+ </xsl:template>
12310
+ <xsl:template match="*[local-name() = 'fmt-admitted'][not(*[local-name() = 'p'])] | *[local-name() = 'fmt-admitted']/*[local-name() = 'p']" mode="update_xml_pres">
12311
+ <xsl:element name="admitted" namespace="{$namespace_full}">
12312
+ <xsl:copy-of select="@*"/>
12313
+ <xsl:apply-templates mode="update_xml_pres"/>
12314
+ </xsl:element>
12315
+ </xsl:template>
12316
+
12317
+ <xsl:template match="*[local-name() = 'fmt-deprecates']"/>
12318
+ <xsl:template match="*[local-name() = 'fmt-deprecates'][*[local-name() = 'p']]" mode="update_xml_step1">
12319
+ <xsl:apply-templates mode="update_xml_step1"/>
12320
+ </xsl:template>
12321
+ <xsl:template match="*[local-name() = 'fmt-deprecates'][not(*[local-name() = 'p'])] | *[local-name() = 'fmt-deprecates']/*[local-name() = 'p']" mode="update_xml_step1">
12322
+ <xsl:element name="deprecates" namespace="{$namespace_full}">
12323
+ <xsl:copy-of select="@*"/>
12324
+ <xsl:apply-templates mode="update_xml_step1"/>
12325
+ </xsl:element>
12326
+ </xsl:template>
12327
+ <xsl:template match="*[local-name() = 'fmt-deprecates'][*[local-name() = 'p']]" mode="update_xml_pres">
12328
+ <xsl:apply-templates mode="update_xml_pres"/>
12329
+ </xsl:template>
12330
+ <xsl:template match="*[local-name() = 'fmt-deprecates'][not(*[local-name() = 'p'])] | *[local-name() = 'fmt-deprecates']/*[local-name() = 'p']" mode="update_xml_pres">
12331
+ <xsl:element name="deprecates" namespace="{$namespace_full}">
12332
+ <xsl:copy-of select="@*"/>
12333
+ <xsl:apply-templates mode="update_xml_pres"/>
12334
+ </xsl:element>
12335
+ </xsl:template>
12336
+
12337
+ <xsl:template match="*[local-name() = 'fmt-definition']"/>
12338
+ <xsl:template match="*[local-name() = 'fmt-definition']" mode="update_xml_step1">
12339
+ <xsl:element name="definition" namespace="{$namespace_full}">
12340
+ <xsl:copy-of select="@*"/>
12341
+ <xsl:apply-templates mode="update_xml_step1"/>
12342
+ </xsl:element>
12343
+ </xsl:template>
12344
+ <xsl:template match="*[local-name() = 'fmt-definition']" mode="update_xml_pres">
12345
+ <xsl:element name="definition" namespace="{$namespace_full}">
12346
+ <xsl:copy-of select="@*"/>
12347
+ <xsl:apply-templates mode="update_xml_pres"/>
12348
+ </xsl:element>
12349
+ </xsl:template>
12350
+
12351
+ <xsl:template match="*[local-name() = 'fmt-termsource']"/>
12352
+ <xsl:template match="*[local-name() = 'fmt-termsource']" mode="update_xml_step1">
12353
+ <xsl:element name="termsource" namespace="{$namespace_full}">
12354
+ <xsl:copy-of select="@*"/>
12355
+ <xsl:apply-templates mode="update_xml_step1"/>
12356
+ </xsl:element>
12357
+ </xsl:template>
12358
+ <xsl:template match="*[local-name() = 'fmt-termsource']" mode="update_xml_pres">
12359
+ <xsl:element name="termsource" namespace="{$namespace_full}">
12200
12360
  <xsl:copy-of select="@*"/>
12201
12361
  <xsl:apply-templates mode="update_xml_pres"/>
12202
12362
  </xsl:element>
@@ -12209,6 +12369,9 @@
12209
12369
  <xsl:apply-templates mode="update_xml_pres"/>
12210
12370
  </xsl:template>
12211
12371
 
12372
+ <xsl:template match="*[local-name() = 'semx']">
12373
+ <xsl:apply-templates/>
12374
+ </xsl:template>
12212
12375
  <xsl:template match="*[local-name() = 'semx']" mode="update_xml_step1">
12213
12376
  <xsl:apply-templates mode="update_xml_step1"/>
12214
12377
  </xsl:template>
@@ -13333,7 +13496,7 @@
13333
13496
  </xsl:template>
13334
13497
 
13335
13498
  <xsl:template name="namespaceCheck">
13336
- <xsl:variable name="documentNS" select="namespace-uri(/*)"/>
13499
+ <xsl:variable name="documentNS" select="$namespace_full"/> <!-- namespace-uri(/*) -->
13337
13500
  <xsl:variable name="XSLNS">
13338
13501
 
13339
13502
  <xsl:value-of select="document('')//*/namespace::iho"/>
@@ -13423,6 +13586,9 @@
13423
13586
  <xsl:when test="$formatted = 'true' and string-length($bibdata_updated) != ''">
13424
13587
  <xsl:apply-templates select="xalan:nodeset($bibdata_updated)//*[local-name() = 'localized-string'][@key = $key and @language = $curr_lang]"/>
13425
13588
  </xsl:when>
13589
+ <xsl:when test="string-length($bibdata_updated) != ''">
13590
+ <xsl:value-of select="xalan:nodeset($bibdata_updated)//*[local-name() = 'localized-string'][@key = $key and @language = $curr_lang]"/>
13591
+ </xsl:when>
13426
13592
  <xsl:when test="$formatted = 'true'">
13427
13593
  <xsl:apply-templates select="xalan:nodeset($bibdata)//*[local-name() = 'localized-string'][@key = $key and @language = $curr_lang]"/>
13428
13594
  </xsl:when>
@@ -2066,6 +2066,9 @@
2066
2066
 
2067
2067
  </xsl:attribute-set>
2068
2068
 
2069
+ <xsl:attribute-set name="related-block-style" use-attribute-sets="preferred-block-style">
2070
+ </xsl:attribute-set>
2071
+
2069
2072
  <xsl:attribute-set name="definition-style">
2070
2073
 
2071
2074
  <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
@@ -4305,7 +4308,9 @@
4305
4308
  <xsl:with-param name="element">
4306
4309
  <fo:basic-link internal-destination="{$ref_id}" fox:alt-text="footnote {$current_fn_number}"> <!-- note: role="Lbl" removed in https://github.com/metanorma/mn2pdf/issues/291 -->
4307
4310
  <fo:inline role="Lbl"> <!-- need for https://github.com/metanorma/metanorma-iso/issues/1003 -->
4311
+
4308
4312
  <xsl:copy-of select="$current_fn_number_text"/>
4313
+
4309
4314
  </fo:inline>
4310
4315
  </fo:basic-link>
4311
4316
  </xsl:with-param>
@@ -4324,8 +4329,7 @@
4324
4329
 
4325
4330
  <fo:block-container xsl:use-attribute-sets="fn-container-body-style" role="SKIP">
4326
4331
 
4327
- <fo:block xsl:use-attribute-sets="fn-body-style" role="SKIP">
4328
-
4332
+ <xsl:variable name="fn_block">
4329
4333
  <xsl:call-template name="refine_fn-body-style"/>
4330
4334
 
4331
4335
  <fo:inline id="{$ref_id}" xsl:use-attribute-sets="fn-body-num-style" role="Lbl">
@@ -4333,9 +4337,15 @@
4333
4337
  <xsl:call-template name="refine_fn-body-num-style"/>
4334
4338
 
4335
4339
  <xsl:value-of select="$current_fn_number_text"/>
4340
+
4336
4341
  </fo:inline>
4337
4342
  <xsl:apply-templates/>
4338
- </fo:block>
4343
+ </xsl:variable>
4344
+
4345
+ <fo:block xsl:use-attribute-sets="fn-body-style" role="SKIP">
4346
+ <xsl:copy-of select="$fn_block"/>
4347
+ </fo:block>
4348
+
4339
4349
  </fo:block-container>
4340
4350
  </fo:footnote-body>
4341
4351
  </fo:footnote>
@@ -6180,9 +6190,14 @@
6180
6190
 
6181
6191
  <xsl:variable name="simple-table">
6182
6192
 
6193
+ <xsl:variable name="table_without_semantic_elements">
6194
+ <xsl:apply-templates mode="update_xml_pres"/>
6195
+ </xsl:variable>
6196
+
6183
6197
  <!-- Step 0. replace <br/> to <p>...</p> -->
6184
6198
  <xsl:variable name="table_without_br">
6185
- <xsl:apply-templates mode="table-without-br"/>
6199
+ <!-- <xsl:apply-templates mode="table-without-br"/> -->
6200
+ <xsl:apply-templates select="xalan:nodeset($table_without_semantic_elements)" mode="table-without-br"/>
6186
6201
  </xsl:variable>
6187
6202
 
6188
6203
  <!-- Step 1. colspan processing -->
@@ -10446,14 +10461,17 @@
10446
10461
  </fo:block>
10447
10462
  </xsl:template>
10448
10463
 
10449
- <xsl:template match="*[local-name() = 'domain']">
10464
+ <!-- <xsl:template match="*[local-name() = 'domain']"> -->
10450
10465
  <!-- https://github.com/metanorma/isodoc/issues/607
10451
10466
  <fo:inline xsl:use-attribute-sets="domain-style">&lt;<xsl:apply-templates/>&gt;</fo:inline>
10452
10467
  <xsl:text> </xsl:text> -->
10453
- <xsl:if test="not(@hidden = 'true')">
10468
+ <!-- <xsl:if test="not(@hidden = 'true')">
10454
10469
  <xsl:apply-templates/>
10455
10470
  </xsl:if>
10456
- </xsl:template>
10471
+ </xsl:template> -->
10472
+
10473
+ <!-- https://github.com/metanorma/isodoc/issues/632#issuecomment-2567163931 -->
10474
+ <xsl:template match="*[local-name() = 'domain']"/>
10457
10475
 
10458
10476
  <xsl:template match="*[local-name() = 'admitted']">
10459
10477
  <fo:block xsl:use-attribute-sets="admitted-style">
@@ -10468,9 +10486,11 @@
10468
10486
  </xsl:template>
10469
10487
 
10470
10488
  <xsl:template name="setStyle_preferred">
10471
- <xsl:if test="*[local-name() = 'strong']">
10472
- <xsl:attribute name="font-weight">normal</xsl:attribute>
10473
- </xsl:if>
10489
+
10490
+ <xsl:if test="*[local-name() = 'strong']">
10491
+ <xsl:attribute name="font-weight">normal</xsl:attribute>
10492
+ </xsl:if>
10493
+
10474
10494
  </xsl:template>
10475
10495
 
10476
10496
  <!-- regarding ISO 10241-1:2011, If there is more than one preferred term, each preferred term follows the previous one on a new line. -->
@@ -10480,6 +10500,17 @@
10480
10500
  </xsl:template>
10481
10501
  <!-- End Preferred, admitted, deprecated -->
10482
10502
 
10503
+ <xsl:template match="*[local-name() = 'fmt-related']">
10504
+ <fo:block role="SKIP" xsl:use-attribute-sets="related-block-style">
10505
+ <xsl:apply-templates/>
10506
+ </fo:block>
10507
+ </xsl:template>
10508
+ <xsl:template match="*[local-name() = 'fmt-related']/*[local-name() = 'p']" priority="4">
10509
+ <fo:block>
10510
+ <xsl:apply-templates/>
10511
+ </fo:block>
10512
+ </xsl:template>
10513
+
10483
10514
  <!-- ========== -->
10484
10515
  <!-- definition -->
10485
10516
  <!-- ========== -->
@@ -11380,6 +11411,7 @@
11380
11411
 
11381
11412
  <!-- Normative references -->
11382
11413
  <xsl:template match="*[local-name() = 'references'][@normative='true']/*[local-name() = 'bibitem']" name="bibitem" priority="2">
11414
+ <xsl:param name="skip" select="normalize-space(preceding-sibling::*[1][local-name() = 'bibitem'] and 1 = 1)"/> <!-- current bibiitem is non-first -->
11383
11415
 
11384
11416
  <fo:list-block id="{@id}" xsl:use-attribute-sets="bibitem-normative-list-style">
11385
11417
 
@@ -12101,7 +12133,8 @@
12101
12133
  <!-- add @id - first element with @id plus '_element_name' -->
12102
12134
  <xsl:variable name="prefix_id_" select="(.//*[@id])[1]/@id"/>
12103
12135
  <xsl:variable name="prefix_id"><xsl:value-of select="$prefix_id_"/><xsl:if test="normalize-space($prefix_id_) = ''"><xsl:value-of select="generate-id()"/></xsl:if></xsl:variable>
12104
- <xsl:attribute name="id"><xsl:value-of select="$prefix_id"/>_<xsl:value-of select="local-name()"/></xsl:attribute>
12136
+ <xsl:variable name="document_suffix" select="ancestor::*[contains(local-name(), '-standard')]/@document_suffix"/>
12137
+ <xsl:attribute name="id"><xsl:value-of select="concat($prefix_id, '_', local-name(), '_', $document_suffix)"/></xsl:attribute>
12105
12138
  </xsl:if>
12106
12139
  </xsl:template>
12107
12140
 
@@ -12158,6 +12191,31 @@
12158
12191
  <xsl:template match="*[local-name() = 'name'][following-sibling::*[1][local-name() = 'fmt-name']]" mode="update_xml_pres"/>
12159
12192
  <xsl:template match="*[local-name() = 'section-title'][following-sibling::*[1][local-name() = 'p'][@type = 'section-title' or @type = 'floating-title']]" mode="update_xml_step1"/>
12160
12193
  <xsl:template match="*[local-name() = 'section-title'][following-sibling::*[1][local-name() = 'p'][@type = 'section-title' or @type = 'floating-title']]" mode="update_xml_pres"/>
12194
+ <!-- <xsl:template match="*[local-name() = 'preferred'][following-sibling::*[not(local-name() = 'preferred')][1][local-name() = 'fmt-preferred']]" mode="update_xml_step1"/> -->
12195
+ <xsl:template match="*[local-name() = 'preferred']" mode="update_xml_step1"/>
12196
+ <!-- <xsl:template match="*[local-name() = 'preferred'][following-sibling::*[not(local-name() = 'preferred')][1][local-name() = 'fmt-preferred']]" mode="update_xml_pres"/> -->
12197
+ <xsl:template match="*[local-name() = 'preferred']" mode="update_xml_pres"/>
12198
+ <!-- <xsl:template match="*[local-name() = 'admitted'][following-sibling::*[not(local-name() = 'admitted')][1][local-name() = 'fmt-admitted']]" mode="update_xml_step1"/> -->
12199
+ <xsl:template match="*[local-name() = 'admitted']" mode="update_xml_step1"/>
12200
+ <!-- <xsl:template match="*[local-name() = 'admitted'][following-sibling::*[not(local-name() = 'admitted')][1][local-name() = 'fmt-admitted']]" mode="update_xml_pres"/> -->
12201
+ <xsl:template match="*[local-name() = 'admitted']" mode="update_xml_pres"/>
12202
+ <!-- <xsl:template match="*[local-name() = 'deprecates'][following-sibling::*[not(local-name() = 'deprecates')][1][local-name() = 'fmt-deprecates']]" mode="update_xml_step1"/> -->
12203
+ <xsl:template match="*[local-name() = 'deprecates']" mode="update_xml_step1"/>
12204
+ <xsl:template match="*[local-name() = 'related']" mode="update_xml_step1"/>
12205
+ <!-- <xsl:template match="*[local-name() = 'deprecates'][following-sibling::*[not(local-name() = 'deprecates')][1][local-name() = 'fmt-deprecates']]" mode="update_xml_pres"/> -->
12206
+ <xsl:template match="*[local-name() = 'deprecates']" mode="update_xml_pres"/>
12207
+ <xsl:template match="*[local-name() = 'related']" mode="update_xml_pres"/>
12208
+ <!-- <xsl:template match="*[local-name() = 'definition'][following-sibling::*[1][local-name() = 'fmt-definition']]" mode="update_xml_step1"/> -->
12209
+ <xsl:template match="*[local-name() = 'definition']" mode="update_xml_step1"/>
12210
+ <!-- <xsl:template match="*[local-name() = 'definition'][following-sibling::*[1][local-name() = 'fmt-definition']]" mode="update_xml_pres"/> -->
12211
+ <xsl:template match="*[local-name() = 'definition']" mode="update_xml_pres"/>
12212
+ <!-- <xsl:template match="*[local-name() = 'termsource'][following-sibling::*[1][local-name() = 'fmt-termsource']]" mode="update_xml_step1"/> -->
12213
+ <xsl:template match="*[local-name() = 'termsource']" mode="update_xml_step1"/>
12214
+ <!-- <xsl:template match="*[local-name() = 'termsource'][following-sibling::*[1][local-name() = 'fmt-termsource']]" mode="update_xml_pres"/> -->
12215
+ <xsl:template match="*[local-name() = 'termsource']" mode="update_xml_pres"/>
12216
+
12217
+ <xsl:template match="*[local-name() = 'term'][@unnumbered = 'true'][not(.//*[starts-with(local-name(), 'fmt-')])]" mode="update_xml_step1"/>
12218
+ <xsl:template match="*[local-name() = 'term'][@unnumbered = 'true'][not(.//*[starts-with(local-name(), 'fmt-')])]" mode="update_xml_pres"/>
12161
12219
 
12162
12220
  <xsl:template match="*[local-name() = 'p'][@type = 'section-title' or @type = 'floating-title'][preceding-sibling::*[1][local-name() = 'section-title']]" mode="update_xml_step1">
12163
12221
  <xsl:copy>
@@ -12190,13 +12248,115 @@
12190
12248
 
12191
12249
  <xsl:template match="*[local-name() = 'fmt-name']"/>
12192
12250
  <xsl:template match="*[local-name() = 'fmt-name']" mode="update_xml_step1">
12193
- <xsl:element name="name" namespace="{$namespace_full}">
12251
+ <xsl:choose>
12252
+ <xsl:when test="local-name(..) = 'p' and ancestor::*[local-name() = 'table']">
12253
+ <xsl:apply-templates mode="update_xml_step1"/>
12254
+ </xsl:when>
12255
+ <xsl:otherwise>
12256
+ <xsl:element name="name" namespace="{$namespace_full}">
12257
+ <xsl:copy-of select="@*"/>
12258
+ <xsl:apply-templates mode="update_xml_step1"/>
12259
+ </xsl:element>
12260
+ </xsl:otherwise>
12261
+ </xsl:choose>
12262
+ </xsl:template>
12263
+ <xsl:template match="*[local-name() = 'fmt-name']" mode="update_xml_pres">
12264
+ <xsl:choose>
12265
+ <xsl:when test="local-name(..) = 'p' and ancestor::*[local-name() = 'table']">
12266
+ <xsl:apply-templates mode="update_xml_step1"/>
12267
+ </xsl:when>
12268
+ <xsl:otherwise>
12269
+ <xsl:element name="name" namespace="{$namespace_full}">
12270
+ <xsl:copy-of select="@*"/>
12271
+ <xsl:apply-templates mode="update_xml_pres"/>
12272
+ </xsl:element>
12273
+ </xsl:otherwise>
12274
+ </xsl:choose>
12275
+ </xsl:template>
12276
+
12277
+ <xsl:template match="*[local-name() = 'fmt-preferred']"/>
12278
+ <xsl:template match="*[local-name() = 'fmt-preferred'][*[local-name() = 'p']]" mode="update_xml_step1">
12279
+ <xsl:apply-templates mode="update_xml_step1"/>
12280
+ </xsl:template>
12281
+ <xsl:template match="*[local-name() = 'fmt-preferred'][not(*[local-name() = 'p'])] | *[local-name() = 'fmt-preferred']/*[local-name() = 'p']" mode="update_xml_step1">
12282
+ <xsl:element name="preferred" namespace="{$namespace_full}">
12194
12283
  <xsl:copy-of select="@*"/>
12195
12284
  <xsl:apply-templates mode="update_xml_step1"/>
12196
12285
  </xsl:element>
12197
12286
  </xsl:template>
12198
- <xsl:template match="*[local-name() = 'fmt-name']" mode="update_xml_pres">
12199
- <xsl:element name="name" namespace="{$namespace_full}">
12287
+ <xsl:template match="*[local-name() = 'fmt-preferred'][*[local-name() = 'p']]" mode="update_xml_pres">
12288
+ <xsl:apply-templates mode="update_xml_pres"/>
12289
+ </xsl:template>
12290
+ <xsl:template match="*[local-name() = 'fmt-preferred'][not(*[local-name() = 'p'])] | *[local-name() = 'fmt-preferred']/*[local-name() = 'p']" mode="update_xml_pres">
12291
+ <xsl:element name="preferred" namespace="{$namespace_full}">
12292
+ <xsl:copy-of select="@*"/>
12293
+ <xsl:apply-templates mode="update_xml_pres"/>
12294
+ </xsl:element>
12295
+ </xsl:template>
12296
+
12297
+ <xsl:template match="*[local-name() = 'fmt-admitted']"/>
12298
+ <xsl:template match="*[local-name() = 'fmt-admitted'][*[local-name() = 'p']]" mode="update_xml_step1">
12299
+ <xsl:apply-templates mode="update_xml_step1"/>
12300
+ </xsl:template>
12301
+ <xsl:template match="*[local-name() = 'fmt-admitted'][not(*[local-name() = 'p'])] | *[local-name() = 'fmt-admitted']/*[local-name() = 'p']" mode="update_xml_step1">
12302
+ <xsl:element name="admitted" namespace="{$namespace_full}">
12303
+ <xsl:copy-of select="@*"/>
12304
+ <xsl:apply-templates mode="update_xml_step1"/>
12305
+ </xsl:element>
12306
+ </xsl:template>
12307
+ <xsl:template match="*[local-name() = 'fmt-admitted'][*[local-name() = 'p']]" mode="update_xml_pres">
12308
+ <xsl:apply-templates mode="update_xml_pres"/>
12309
+ </xsl:template>
12310
+ <xsl:template match="*[local-name() = 'fmt-admitted'][not(*[local-name() = 'p'])] | *[local-name() = 'fmt-admitted']/*[local-name() = 'p']" mode="update_xml_pres">
12311
+ <xsl:element name="admitted" namespace="{$namespace_full}">
12312
+ <xsl:copy-of select="@*"/>
12313
+ <xsl:apply-templates mode="update_xml_pres"/>
12314
+ </xsl:element>
12315
+ </xsl:template>
12316
+
12317
+ <xsl:template match="*[local-name() = 'fmt-deprecates']"/>
12318
+ <xsl:template match="*[local-name() = 'fmt-deprecates'][*[local-name() = 'p']]" mode="update_xml_step1">
12319
+ <xsl:apply-templates mode="update_xml_step1"/>
12320
+ </xsl:template>
12321
+ <xsl:template match="*[local-name() = 'fmt-deprecates'][not(*[local-name() = 'p'])] | *[local-name() = 'fmt-deprecates']/*[local-name() = 'p']" mode="update_xml_step1">
12322
+ <xsl:element name="deprecates" namespace="{$namespace_full}">
12323
+ <xsl:copy-of select="@*"/>
12324
+ <xsl:apply-templates mode="update_xml_step1"/>
12325
+ </xsl:element>
12326
+ </xsl:template>
12327
+ <xsl:template match="*[local-name() = 'fmt-deprecates'][*[local-name() = 'p']]" mode="update_xml_pres">
12328
+ <xsl:apply-templates mode="update_xml_pres"/>
12329
+ </xsl:template>
12330
+ <xsl:template match="*[local-name() = 'fmt-deprecates'][not(*[local-name() = 'p'])] | *[local-name() = 'fmt-deprecates']/*[local-name() = 'p']" mode="update_xml_pres">
12331
+ <xsl:element name="deprecates" namespace="{$namespace_full}">
12332
+ <xsl:copy-of select="@*"/>
12333
+ <xsl:apply-templates mode="update_xml_pres"/>
12334
+ </xsl:element>
12335
+ </xsl:template>
12336
+
12337
+ <xsl:template match="*[local-name() = 'fmt-definition']"/>
12338
+ <xsl:template match="*[local-name() = 'fmt-definition']" mode="update_xml_step1">
12339
+ <xsl:element name="definition" namespace="{$namespace_full}">
12340
+ <xsl:copy-of select="@*"/>
12341
+ <xsl:apply-templates mode="update_xml_step1"/>
12342
+ </xsl:element>
12343
+ </xsl:template>
12344
+ <xsl:template match="*[local-name() = 'fmt-definition']" mode="update_xml_pres">
12345
+ <xsl:element name="definition" namespace="{$namespace_full}">
12346
+ <xsl:copy-of select="@*"/>
12347
+ <xsl:apply-templates mode="update_xml_pres"/>
12348
+ </xsl:element>
12349
+ </xsl:template>
12350
+
12351
+ <xsl:template match="*[local-name() = 'fmt-termsource']"/>
12352
+ <xsl:template match="*[local-name() = 'fmt-termsource']" mode="update_xml_step1">
12353
+ <xsl:element name="termsource" namespace="{$namespace_full}">
12354
+ <xsl:copy-of select="@*"/>
12355
+ <xsl:apply-templates mode="update_xml_step1"/>
12356
+ </xsl:element>
12357
+ </xsl:template>
12358
+ <xsl:template match="*[local-name() = 'fmt-termsource']" mode="update_xml_pres">
12359
+ <xsl:element name="termsource" namespace="{$namespace_full}">
12200
12360
  <xsl:copy-of select="@*"/>
12201
12361
  <xsl:apply-templates mode="update_xml_pres"/>
12202
12362
  </xsl:element>
@@ -12209,6 +12369,9 @@
12209
12369
  <xsl:apply-templates mode="update_xml_pres"/>
12210
12370
  </xsl:template>
12211
12371
 
12372
+ <xsl:template match="*[local-name() = 'semx']">
12373
+ <xsl:apply-templates/>
12374
+ </xsl:template>
12212
12375
  <xsl:template match="*[local-name() = 'semx']" mode="update_xml_step1">
12213
12376
  <xsl:apply-templates mode="update_xml_step1"/>
12214
12377
  </xsl:template>
@@ -13333,7 +13496,7 @@
13333
13496
  </xsl:template>
13334
13497
 
13335
13498
  <xsl:template name="namespaceCheck">
13336
- <xsl:variable name="documentNS" select="namespace-uri(/*)"/>
13499
+ <xsl:variable name="documentNS" select="$namespace_full"/> <!-- namespace-uri(/*) -->
13337
13500
  <xsl:variable name="XSLNS">
13338
13501
 
13339
13502
  <xsl:value-of select="document('')//*/namespace::iho"/>
@@ -13423,6 +13586,9 @@
13423
13586
  <xsl:when test="$formatted = 'true' and string-length($bibdata_updated) != ''">
13424
13587
  <xsl:apply-templates select="xalan:nodeset($bibdata_updated)//*[local-name() = 'localized-string'][@key = $key and @language = $curr_lang]"/>
13425
13588
  </xsl:when>
13589
+ <xsl:when test="string-length($bibdata_updated) != ''">
13590
+ <xsl:value-of select="xalan:nodeset($bibdata_updated)//*[local-name() = 'localized-string'][@key = $key and @language = $curr_lang]"/>
13591
+ </xsl:when>
13426
13592
  <xsl:when test="$formatted = 'true'">
13427
13593
  <xsl:apply-templates select="xalan:nodeset($bibdata)//*[local-name() = 'localized-string'][@key = $key and @language = $curr_lang]"/>
13428
13594
  </xsl:when>
@@ -124,6 +124,7 @@ _bib)
124
124
 
125
125
  def term1(elem); end
126
126
 
127
+ # KILL
127
128
  def termsource1(elem)
128
129
  elem.parent.nil? and return
129
130
  while elem&.next_element&.name == "termsource"
@@ -135,6 +136,32 @@ _bib)
135
136
  defn.elements.last << s
136
137
  end
137
138
 
139
+ def termsource1(elem)
140
+ elem.parent.nil? and return
141
+ super
142
+ end
143
+
144
+ def termsource_label(elem, sources)
145
+ elem.at("./ancestor::xmlns:term") or return
146
+ elem.replace(l10n("[#{sources}]"))
147
+ end
148
+
149
+ def termcleanup(docxml)
150
+ collapse_term docxml
151
+ super
152
+ end
153
+
154
+ def collapse_term(docxml)
155
+ docxml.xpath(ns("//term")).each { |t| collapse_term1(t) }
156
+ end
157
+
158
+ def collapse_term1(term)
159
+ defn = term.at(ns("./fmt-definition")) or return
160
+ source = term.at(ns("./fmt-termsource")) or return
161
+ defn.elements.last << source.children
162
+ source.remove
163
+ end
164
+
138
165
  def clausedelim
139
166
  ""
140
167
  end
@@ -947,6 +947,8 @@ May be electronic (e.g. Twitter direct message, email) or voice (e.g. a remark m
947
947
  typically cited as "personal communication")</a:documentation>
948
948
  <value>conversation</value>
949
949
  <a:documentation>An exchange of messages between two or more persons. May be electronic (e.g. web chat) or voice (e.g. phone call)</a:documentation>
950
+ <value>collection</value>
951
+ <a:documentation>A compound resource consisting of other resources, which are themselves presupposed to have their type specified..</a:documentation>
950
952
  <value>misc</value>
951
953
  <a:documentation>Bibliographic type not adequately described in the foregoing</a:documentation>
952
954
  </choice>
@@ -1277,17 +1279,17 @@ for which this claim of validity is made, if applicable</a:documentation>
1277
1279
  </define>
1278
1280
  <define name="validityBegins">
1279
1281
  <element name="validityBegins">
1280
- <ref name="ISO8601DateTime"/>
1282
+ <ref name="ISO8601Date"/>
1281
1283
  </element>
1282
1284
  </define>
1283
1285
  <define name="validityEnds">
1284
1286
  <element name="validityEnds">
1285
- <ref name="ISO8601DateTime"/>
1287
+ <ref name="ISO8601Date"/>
1286
1288
  </element>
1287
1289
  </define>
1288
1290
  <define name="validityRevision">
1289
1291
  <element name="revision">
1290
- <ref name="ISO8601DateTime"/>
1292
+ <ref name="ISO8601Date"/>
1291
1293
  </element>
1292
1294
  </define>
1293
1295
  <define name="TypedTitleString">
@@ -1,5 +1,5 @@
1
1
  module Metanorma
2
2
  module Iho
3
- VERSION = "1.0.14".freeze
3
+ VERSION = "1.0.16".freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metanorma-iho
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.14
4
+ version: 1.0.16
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2025-01-07 00:00:00.000000000 Z
11
+ date: 2025-02-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: metanorma-generic