metanorma-ribose 2.4.5 → 2.4.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 04fec1adc64d9089a2d992cd22535e17380317916d00bbb28d5b2bb3c3ff4092
4
- data.tar.gz: 5cda790bba9445ceb0a9613207da3514dc4d7bf7071f8cc74e32a7824961558c
3
+ metadata.gz: 916fa1fbeb573a0ee41f153a6fac734fc0878259eb2ad5cb2057d29ab89bd02d
4
+ data.tar.gz: cb0d292d7aec15c189380e3cc6d858718d35d161c360d7dc9952c428ae783628
5
5
  SHA512:
6
- metadata.gz: 350fb4a6f97089c3e596ff7d3edfef12e1cf85a36e4f9105613b51bf324f01a9ff9e9572c03b2a28ef32df05c9749dabec3fc89324132264cd28f39ace90d21f
7
- data.tar.gz: 45d6a86de99ab2425a542ea4343e2036a833d9075df97974f08107361488ad4ad1e9855b5dc3ed71417364d91fbef9b9a467b827ebfb844d77cdc09e8c4fb9f5
6
+ metadata.gz: b83beef32eeef721533f83e9d8e069dea8dc1399fa6607e1f1fba00fd54c4b20102aff61322da990d52a2da87238c4fdf6ac8d7f592277bcd7cc50e14562cb7c
7
+ data.tar.gz: 4fe493f21b38db3f90cb667828ecf0bc4010205b877f7cfa9a8db37a9dd7f3670971f7e2d722106e854b1b2738fa45e9d14d375fbc5ab8f631dd0bbf7c46b2f2
@@ -1223,17 +1223,30 @@
1223
1223
  <xsl:param name="add_math_as_text">true</xsl:param> <!-- add math in text behind svg formula, to copy-paste formula from PDF as text -->
1224
1224
 
1225
1225
  <xsl:param name="table_if">false</xsl:param> <!-- generate extended table in IF for autolayout-algorithm -->
1226
- <xsl:param name="table_widths"/> <!-- path to xml with table's widths, generated on 1st pass, based on FOP Intermediate Format -->
1226
+ <xsl:param name="table_widths"/> <!-- (debug: path to) xml with table's widths, generated on 1st pass, based on FOP Intermediate Format -->
1227
1227
  <!-- Example: <tables>
1228
- <table id="table_if_tab-symdu" page-width="75"> - table id prefixed by 'table_if_' to simple search in IF
1229
- <tbody>
1230
- <tr>
1231
- <td id="tab-symdu_1_1">
1232
- <p_len>6</p_len>
1233
- <p_len>100</p_len> for 2nd paragraph
1234
- <word_len>6</word_len>
1235
- <word_len>20</word_len>
1236
- ...
1228
+ <table page-width="509103" id="table1" width_max="223561" width_min="223560">
1229
+ <column width_max="39354" width_min="39354"/>
1230
+ <column width_max="75394" width_min="75394"/>
1231
+ <column width_max="108813" width_min="108813"/>
1232
+ <tbody>
1233
+ <tr>
1234
+ <td width_max="39354" width_min="39354">
1235
+ <p_len>39354</p_len>
1236
+ <word_len>39354</word_len>
1237
+ </td>
1238
+
1239
+ OLD:
1240
+ <tables>
1241
+ <table id="table_if_tab-symdu" page-width="75"> - table id prefixed by 'table_if_' to simple search in IF
1242
+ <tbody>
1243
+ <tr>
1244
+ <td id="tab-symdu_1_1">
1245
+ <p_len>6</p_len>
1246
+ <p_len>100</p_len> for 2nd paragraph
1247
+ <word_len>6</word_len>
1248
+ <word_len>20</word_len>
1249
+ ...
1237
1250
  -->
1238
1251
 
1239
1252
  <!-- for command line debug: <xsl:variable name="table_widths_from_if" select="document($table_widths)"/> -->
@@ -1453,6 +1466,9 @@
1453
1466
  <xsl:variable name="hair_space"> </xsl:variable>
1454
1467
  <xsl:variable name="en_dash">–</xsl:variable>
1455
1468
  <xsl:variable name="em_dash">—</xsl:variable>
1469
+ <xsl:variable name="cr">&#13;</xsl:variable>
1470
+ <xsl:variable name="lf">
1471
+ </xsl:variable>
1456
1472
 
1457
1473
  <xsl:template name="getTitle">
1458
1474
  <xsl:param name="name"/>
@@ -3204,6 +3220,20 @@
3204
3220
  </xsl:for-each>
3205
3221
  </xsl:template>
3206
3222
 
3223
+ <xsl:param name="table_only_with_id"/><!-- Example: table1, for table auto-layout algorithm -->
3224
+
3225
+ <xsl:template match="*[local-name()='table']" priority="2">
3226
+ <xsl:choose>
3227
+ <xsl:when test="$table_only_with_id != '' and @id = $table_only_with_id">
3228
+ <xsl:call-template name="table"/>
3229
+ </xsl:when>
3230
+ <xsl:when test="$table_only_with_id != ''"><fo:block/><!-- to prevent empty fo:block-container --></xsl:when>
3231
+ <xsl:otherwise>
3232
+ <xsl:call-template name="table"/>
3233
+ </xsl:otherwise>
3234
+ </xsl:choose>
3235
+ </xsl:template>
3236
+
3207
3237
  <xsl:template match="*[local-name()='table']" name="table">
3208
3238
 
3209
3239
  <xsl:variable name="table-preamble">
@@ -3213,9 +3243,11 @@
3213
3243
  <xsl:variable name="table">
3214
3244
 
3215
3245
  <xsl:variable name="simple-table">
3216
- <xsl:call-template name="getSimpleTable">
3217
- <xsl:with-param name="id" select="@id"/>
3218
- </xsl:call-template>
3246
+ <xsl:if test="$isGenerateTableIF = 'true' and $isApplyAutolayoutAlgorithm = 'true'">
3247
+ <xsl:call-template name="getSimpleTable">
3248
+ <xsl:with-param name="id" select="@id"/>
3249
+ </xsl:call-template>
3250
+ </xsl:if>
3219
3251
  </xsl:variable>
3220
3252
  <!-- <xsl:variable name="simple-table" select="xalan:nodeset($simple-table_)"/> -->
3221
3253
 
@@ -3309,9 +3341,9 @@
3309
3341
  </xsl:attribute>
3310
3342
  </xsl:for-each>
3311
3343
 
3312
- <xsl:variable name="isNoteOrFnExist" select="./*[local-name()='note'] or ./*[local-name()='example'] or .//*[local-name()='fn'][local-name(..) != 'name'] or ./*[local-name()='source']"/>
3344
+ <xsl:variable name="isNoteOrFnExist" select="./*[local-name()='note'][not(@type = 'units')] or ./*[local-name()='example'] or .//*[local-name()='fn'][local-name(..) != 'name'] or ./*[local-name()='source']"/>
3313
3345
  <xsl:if test="$isNoteOrFnExist = 'true'">
3314
- <xsl:attribute name="border-bottom">0pt solid black</xsl:attribute> <!-- set 0pt border, because there is a separete table below for footer -->
3346
+ <xsl:attribute name="border-bottom">0pt solid black</xsl:attribute><!-- set 0pt border, because there is a separete table below for footer -->
3315
3347
  </xsl:if>
3316
3348
 
3317
3349
  <xsl:choose>
@@ -3464,9 +3496,28 @@
3464
3496
 
3465
3497
  </fo:block>
3466
3498
 
3499
+ <!-- <xsl:if test="$namespace = 'bsi' or $namespace = 'iec' or $namespace = 'iso'"> -->
3500
+ <xsl:if test="$continued = 'true'">
3501
+ <fo:block text-align="right">
3502
+ <xsl:apply-templates select="../*[local-name() = 'note'][@type = 'units']/node()"/>
3503
+ </fo:block>
3504
+ </xsl:if>
3505
+ <!-- </xsl:if> -->
3506
+
3467
3507
  </xsl:if>
3468
3508
  </xsl:template> <!-- table/name -->
3469
3509
 
3510
+ <!-- workaround solution for https://github.com/metanorma/metanorma-iso/issues/1151#issuecomment-2033087938 -->
3511
+ <xsl:template match="*[local-name()='table']/*[local-name() = 'note'][@type = 'units']/*[local-name() = 'p']/text()" priority="4">
3512
+ <xsl:choose>
3513
+ <xsl:when test="preceding-sibling::*[local-name() = 'br']">
3514
+ <!-- remove CR or LF at start -->
3515
+ <xsl:value-of select="java:replaceAll(java:java.lang.String.new(.),'^(&#13;&#10;|&#13;|&#10;)', '')"/>
3516
+ </xsl:when>
3517
+ <xsl:otherwise><xsl:value-of select="."/></xsl:otherwise>
3518
+ </xsl:choose>
3519
+ </xsl:template>
3520
+
3470
3521
  <!-- SOURCE: ... -->
3471
3522
  <xsl:template match="*[local-name()='table']/*[local-name() = 'source']" priority="2">
3472
3523
  <xsl:call-template name="termsource"/>
@@ -3877,7 +3928,7 @@
3877
3928
  <xsl:param name="colwidths"/>
3878
3929
  <xsl:param name="colgroup"/>
3879
3930
 
3880
- <xsl:variable name="isNoteOrFnExist" select="../*[local-name()='note'] or ../*[local-name()='example'] or ../*[local-name()='dl'] or ..//*[local-name()='fn'][local-name(..) != 'name'] or ../*[local-name()='source'] or ../*[local-name()='p']"/>
3931
+ <xsl:variable name="isNoteOrFnExist" select="../*[local-name()='note'][not(@type = 'units')] or ../*[local-name()='example'] or ../*[local-name()='dl'] or ..//*[local-name()='fn'][local-name(..) != 'name'] or ../*[local-name()='source'] or ../*[local-name()='p']"/>
3881
3932
 
3882
3933
  <xsl:variable name="isNoteOrFnExistShowAfterTable">
3883
3934
 
@@ -3949,7 +4000,7 @@
3949
4000
 
3950
4001
  <xsl:apply-templates select="../*[local-name()='p']"/>
3951
4002
  <xsl:apply-templates select="../*[local-name()='dl']"/>
3952
- <xsl:apply-templates select="../*[local-name()='note']"/>
4003
+ <xsl:apply-templates select="../*[local-name()='note'][not(@type = 'units')]"/>
3953
4004
  <xsl:apply-templates select="../*[local-name()='example']"/>
3954
4005
  <xsl:apply-templates select="../*[local-name()='source']"/>
3955
4006
 
@@ -3959,7 +4010,7 @@
3959
4010
 
3960
4011
  <!-- horizontal row separator -->
3961
4012
  <xsl:if test="normalize-space($isDisplayRowSeparator) = 'true'">
3962
- <xsl:if test="(../*[local-name()='note'] or ../*[local-name()='example']) and normalize-space($table_fn_block) != ''">
4013
+ <xsl:if test="(../*[local-name()='note'][not(@type = 'units')] or ../*[local-name()='example']) and normalize-space($table_fn_block) != ''">
3963
4014
  <fo:block-container border-top="0.5pt solid black" padding-left="1mm" padding-right="1mm">
3964
4015
 
3965
4016
  <xsl:call-template name="setBordersTableArray"/>
@@ -4624,7 +4675,20 @@
4624
4675
  <!-- Definition List -->
4625
4676
  <!-- ===================== -->
4626
4677
 
4627
- <xsl:template match="*[local-name()='dl']">
4678
+ <!-- for table auto-layout algorithm -->
4679
+ <xsl:template match="*[local-name()='dl']" priority="2">
4680
+ <xsl:choose>
4681
+ <xsl:when test="$table_only_with_id != '' and @id = $table_only_with_id">
4682
+ <xsl:call-template name="dl"/>
4683
+ </xsl:when>
4684
+ <xsl:when test="$table_only_with_id != ''"><fo:block/><!-- to prevent empty fo:block-container --></xsl:when>
4685
+ <xsl:otherwise>
4686
+ <xsl:call-template name="dl"/>
4687
+ </xsl:otherwise>
4688
+ </xsl:choose>
4689
+ </xsl:template>
4690
+
4691
+ <xsl:template match="*[local-name()='dl']" name="dl">
4628
4692
  <xsl:variable name="isAdded" select="@added"/>
4629
4693
  <xsl:variable name="isDeleted" select="@deleted"/>
4630
4694
  <!-- <dl><xsl:copy-of select="."/></dl> -->
@@ -6566,7 +6630,13 @@
6566
6630
  <xsl:value-of select="$language_current_2"/>
6567
6631
  </xsl:when>
6568
6632
  <xsl:otherwise>
6569
- <xsl:value-of select="//*[local-name()='bibdata']//*[local-name()='language']"/>
6633
+ <xsl:variable name="language_current_3" select="normalize-space(//*[local-name()='bibdata']//*[local-name()='language'])"/>
6634
+ <xsl:choose>
6635
+ <xsl:when test="$language_current_3 != ''">
6636
+ <xsl:value-of select="$language_current_3"/>
6637
+ </xsl:when>
6638
+ <xsl:otherwise>en</xsl:otherwise>
6639
+ </xsl:choose>
6570
6640
  </xsl:otherwise>
6571
6641
  </xsl:choose>
6572
6642
  </xsl:otherwise>
@@ -7472,7 +7542,7 @@
7472
7542
  </xsl:when>
7473
7543
  <xsl:otherwise>
7474
7544
  <fo:external-graphic src="{$src}" fox:alt-text="Image {@alt}" xsl:use-attribute-sets="image-graphic-style">
7475
- <xsl:if test="not(@mimetype = 'image/svg+xml') and ../*[local-name() = 'name'] and not(ancestor::*[local-name() = 'table'])">
7545
+ <xsl:if test="not(@mimetype = 'image/svg+xml') and (../*[local-name() = 'name'] or parent::*[local-name() = 'figure'][@unnumbered = 'true']) and not(ancestor::*[local-name() = 'table'])">
7476
7546
 
7477
7547
  <xsl:if test="@width != '' and @width != 'auto' and @width != 'text-width' and @width != 'full-page-width' and @width != 'narrow'">
7478
7548
  <xsl:attribute name="width">
@@ -12495,6 +12565,4 @@
12495
12565
  </xsl:if>
12496
12566
  </xsl:template>
12497
12567
 
12498
- <!-- update -->
12499
-
12500
12568
  </xsl:stylesheet>
@@ -1,5 +1,5 @@
1
1
  module Metanorma
2
2
  module Ribose
3
- VERSION = "2.4.5".freeze
3
+ VERSION = "2.4.6".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.4.5
4
+ version: 2.4.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-03-25 00:00:00.000000000 Z
11
+ date: 2024-04-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: metanorma-generic