metanorma-iho 0.3.6 → 0.3.7

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: a004b35531809df73115ec0a8091609c5fba1f0ff3047c3872cdd78f999860dd
4
- data.tar.gz: 39efd220edea91cec2953ab1b15a54564afad01ab81318ae2a11a0892d3346a5
3
+ metadata.gz: 78ed7a2327fce3d84a0abea428a0a3d64df78ba43260d86763741a7af909fc12
4
+ data.tar.gz: 99d76431ad5f1df63d4b41d75b845313da2bd3798cf09f2fba7144e990d712d3
5
5
  SHA512:
6
- metadata.gz: 681c2073b4d051acddaa7569cd4f3a522f2e17c5245e1e68e381fa69c7d82ede83d760f78156f33df04b9641bc7f88d7ebb5a6ae05239169d0493c43b42b2f06
7
- data.tar.gz: 96155b68694666a1c1084126a9c58c728d62bfa67b2f7a52a97ff0118cf8693025bb5648a9a617dc6ffd653689e4362695659cbf3aeddcb2a0fff7a6216fe7be
6
+ metadata.gz: b2c96de49bd42c36f59dde810db26b023a8c5ca561a047afecd3b923af8620d5488e10f33a0c71322b8a96acffd496daf0f74007154693e76c019a411f96339d
7
+ data.tar.gz: e864952f8073090f3b64a51080f447d2d91d9b357d8d2a33a29c9664a396fe77d1efc7538b69f31d8a2c4e1985febc9f1ef6806b24ec29037c6541d94cc18c53
@@ -204,6 +204,18 @@
204
204
  </zeroOrMore>
205
205
  </element>
206
206
  </define>
207
+ <define name="dt">
208
+ <element name="dt">
209
+ <optional>
210
+ <attribute name="id">
211
+ <data type="ID"/>
212
+ </attribute>
213
+ </optional>
214
+ <zeroOrMore>
215
+ <ref name="TextElement"/>
216
+ </zeroOrMore>
217
+ </element>
218
+ </define>
207
219
  <define name="example">
208
220
  <element name="example">
209
221
  <attribute name="id">
@@ -899,7 +911,7 @@
899
911
  </include>
900
912
  <!-- end overrides -->
901
913
  <define name="docsubtype">
902
- <element name="docsubtype">
914
+ <element name="subdoctype">
903
915
  <ref name="DocumentSubtype"/>
904
916
  </element>
905
917
  </define>
@@ -954,6 +966,16 @@
954
966
  </define>
955
967
  <define name="concept">
956
968
  <element name="concept">
969
+ <optional>
970
+ <attribute name="ital">
971
+ <data type="boolean"/>
972
+ </attribute>
973
+ </optional>
974
+ <optional>
975
+ <attribute name="ref">
976
+ <data type="boolean"/>
977
+ </attribute>
978
+ </optional>
957
979
  <optional>
958
980
  <element name="refterm">
959
981
  <zeroOrMore>
@@ -998,6 +1020,9 @@
998
1020
  </attribute>
999
1021
  <attribute name="name"/>
1000
1022
  <attribute name="action"/>
1023
+ <optional>
1024
+ <attribute name="class"/>
1025
+ </optional>
1001
1026
  <zeroOrMore>
1002
1027
  <choice>
1003
1028
  <ref name="TextElement"/>
@@ -1490,26 +1515,26 @@
1490
1515
  <optional>
1491
1516
  <ref name="section-title"/>
1492
1517
  </optional>
1493
- <group>
1518
+ <choice>
1494
1519
  <choice>
1495
1520
  <group>
1496
- <zeroOrMore>
1521
+ <oneOrMore>
1497
1522
  <ref name="BasicBlock"/>
1498
- </zeroOrMore>
1523
+ </oneOrMore>
1499
1524
  <zeroOrMore>
1500
1525
  <ref name="note"/>
1501
1526
  </zeroOrMore>
1502
1527
  </group>
1503
1528
  <ref name="amend"/>
1504
1529
  </choice>
1505
- <zeroOrMore>
1530
+ <oneOrMore>
1506
1531
  <choice>
1507
1532
  <ref name="clause-subsection"/>
1508
1533
  <ref name="terms"/>
1509
1534
  <ref name="definitions"/>
1510
1535
  </choice>
1511
- </zeroOrMore>
1512
- </group>
1536
+ </oneOrMore>
1537
+ </choice>
1513
1538
  </define>
1514
1539
  <define name="Annex-Section">
1515
1540
  <optional>
@@ -2116,6 +2116,7 @@
2116
2116
 
2117
2117
 
2118
2118
 
2119
+
2119
2120
  <!-- fn will be processed inside 'note' processing -->
2120
2121
 
2121
2122
 
@@ -2124,6 +2125,10 @@
2124
2125
 
2125
2126
 
2126
2127
 
2128
+
2129
+ <!-- for BSI (not PAS) display Notes before footnotes -->
2130
+
2131
+
2127
2132
  <!-- except gb -->
2128
2133
 
2129
2134
  <xsl:apply-templates select="../*[local-name()='note']" mode="process"/>
@@ -2149,6 +2154,10 @@
2149
2154
  <!-- fn processing -->
2150
2155
  <xsl:call-template name="fn_display"/>
2151
2156
 
2157
+
2158
+ <!-- for PAS display Notes after footnotes -->
2159
+
2160
+
2152
2161
  </fo:table-cell>
2153
2162
  </fo:table-row>
2154
2163
  </fo:table-body>
@@ -2206,6 +2215,7 @@
2206
2215
  <xsl:if test="$parent-name = 'tfoot'">
2207
2216
 
2208
2217
 
2218
+
2209
2219
  </xsl:if>
2210
2220
 
2211
2221
 
@@ -2333,13 +2343,18 @@
2333
2343
 
2334
2344
 
2335
2345
 
2346
+
2336
2347
  <xsl:attribute name="font-size">12pt</xsl:attribute>
2337
2348
 
2338
2349
 
2339
2350
 
2340
2351
 
2352
+ <!-- Table's note name (NOTE, for example) -->
2353
+
2341
2354
  <fo:inline padding-right="2mm">
2342
2355
 
2356
+
2357
+
2343
2358
 
2344
2359
  <xsl:attribute name="font-size">11pt</xsl:attribute>
2345
2360
  <xsl:attribute name="padding-right">3mm</xsl:attribute>
@@ -2350,6 +2365,8 @@
2350
2365
 
2351
2366
  </fo:inline>
2352
2367
 
2368
+
2369
+
2353
2370
  <xsl:apply-templates mode="process"/>
2354
2371
  </fo:block>
2355
2372
 
@@ -2369,6 +2386,8 @@
2369
2386
  <xsl:variable name="reference" select="@reference"/>
2370
2387
  <xsl:if test="not(preceding-sibling::*[@reference = $reference])"> <!-- only unique reference puts in note-->
2371
2388
  <fo:block margin-bottom="12pt">
2389
+
2390
+
2372
2391
 
2373
2392
 
2374
2393
 
@@ -2388,6 +2407,7 @@
2388
2407
  <xsl:value-of select="@reference"/>
2389
2408
 
2390
2409
 
2410
+
2391
2411
  </fo:inline>
2392
2412
  <fo:inline>
2393
2413
 
@@ -2537,6 +2557,7 @@
2537
2557
 
2538
2558
  <xsl:value-of select="@reference"/>
2539
2559
 
2560
+
2540
2561
  </fo:basic-link>
2541
2562
  </fo:inline>
2542
2563
  </xsl:template><xsl:template match="*[local-name()='fn']/*[local-name()='p']">
@@ -3547,6 +3568,7 @@
3547
3568
 
3548
3569
 
3549
3570
 
3571
+
3550
3572
  <fo:block-container margin-left="0mm">
3551
3573
 
3552
3574
 
@@ -4753,9 +4775,10 @@
4753
4775
 
4754
4776
 
4755
4777
  </xsl:if>
4756
-
4778
+
4779
+
4780
+
4757
4781
  <fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}">
4758
-
4759
4782
  <xsl:if test="normalize-space(@citeas) = ''">
4760
4783
  <xsl:attribute name="fox:alt-text"><xsl:value-of select="."/></xsl:attribute>
4761
4784
  </xsl:if>
@@ -4766,6 +4789,7 @@
4766
4789
 
4767
4790
 
4768
4791
 
4792
+
4769
4793
  </xsl:if>
4770
4794
 
4771
4795
  <xsl:apply-templates/>
@@ -5779,4 +5803,100 @@
5779
5803
  <xsl:otherwise><xsl:value-of select="$default"/></xsl:otherwise>
5780
5804
  </xsl:choose>
5781
5805
  </xsl:attribute>
5806
+ </xsl:template><xsl:template name="number-to-words">
5807
+ <xsl:param name="number"/>
5808
+ <xsl:param name="first"/>
5809
+ <xsl:if test="$number != ''">
5810
+ <xsl:variable name="words">
5811
+ <words>
5812
+ <word cardinal="1">One-</word>
5813
+ <word ordinal="1">First </word>
5814
+ <word cardinal="2">Two-</word>
5815
+ <word ordinal="2">Second </word>
5816
+ <word cardinal="3">Three-</word>
5817
+ <word ordinal="3">Third </word>
5818
+ <word cardinal="4">Four-</word>
5819
+ <word ordinal="4">Fourth </word>
5820
+ <word cardinal="5">Five-</word>
5821
+ <word ordinal="5">Fifth </word>
5822
+ <word cardinal="6">Six-</word>
5823
+ <word ordinal="6">Sixth </word>
5824
+ <word cardinal="7">Seven-</word>
5825
+ <word ordinal="7">Seventh </word>
5826
+ <word cardinal="8">Eight-</word>
5827
+ <word ordinal="8">Eighth </word>
5828
+ <word cardinal="9">Nine-</word>
5829
+ <word ordinal="9">Ninth </word>
5830
+ <word ordinal="10">Tenth </word>
5831
+ <word ordinal="11">Eleventh </word>
5832
+ <word ordinal="12">Twelfth </word>
5833
+ <word ordinal="13">Thirteenth </word>
5834
+ <word ordinal="14">Fourteenth </word>
5835
+ <word ordinal="15">Fifteenth </word>
5836
+ <word ordinal="16">Sixteenth </word>
5837
+ <word ordinal="17">Seventeenth </word>
5838
+ <word ordinal="18">Eighteenth </word>
5839
+ <word ordinal="19">Nineteenth </word>
5840
+ <word cardinal="20">Twenty-</word>
5841
+ <word ordinal="20">Twentieth </word>
5842
+ <word cardinal="30">Thirty-</word>
5843
+ <word ordinal="30">Thirtieth </word>
5844
+ <word cardinal="40">Forty-</word>
5845
+ <word ordinal="40">Fortieth </word>
5846
+ <word cardinal="50">Fifty-</word>
5847
+ <word ordinal="50">Fiftieth </word>
5848
+ <word cardinal="60">Sixty-</word>
5849
+ <word ordinal="60">Sixtieth </word>
5850
+ <word cardinal="70">Seventy-</word>
5851
+ <word ordinal="70">Seventieth </word>
5852
+ <word cardinal="80">Eighty-</word>
5853
+ <word ordinal="80">Eightieth </word>
5854
+ <word cardinal="90">Ninety-</word>
5855
+ <word ordinal="90">Ninetieth </word>
5856
+ <word cardinal="100">Hundred-</word>
5857
+ <word ordinal="100">Hundredth </word>
5858
+ </words>
5859
+ </xsl:variable>
5860
+
5861
+ <xsl:variable name="ordinal" select="xalan:nodeset($words)//word[@ordinal = $number]/text()"/>
5862
+
5863
+ <xsl:variable name="value">
5864
+ <xsl:choose>
5865
+ <xsl:when test="$ordinal != ''">
5866
+ <xsl:value-of select="$ordinal"/>
5867
+ </xsl:when>
5868
+ <xsl:otherwise>
5869
+ <xsl:choose>
5870
+ <xsl:when test="$number &lt; 100">
5871
+ <xsl:variable name="decade" select="concat(substring($number,1,1), '0')"/>
5872
+ <xsl:variable name="digit" select="substring($number,2)"/>
5873
+ <xsl:value-of select="xalan:nodeset($words)//word[@cardinal = $decade]/text()"/>
5874
+ <xsl:value-of select="xalan:nodeset($words)//word[@ordinal = $digit]/text()"/>
5875
+ </xsl:when>
5876
+ <xsl:otherwise>
5877
+ <!-- more 100 -->
5878
+ <xsl:variable name="hundred" select="substring($number,1,1)"/>
5879
+ <xsl:variable name="digits" select="number(substring($number,2))"/>
5880
+ <xsl:value-of select="xalan:nodeset($words)//word[@cardinal = $hundred]/text()"/>
5881
+ <xsl:value-of select="xalan:nodeset($words)//word[@cardinal = '100']/text()"/>
5882
+ <xsl:call-template name="number-to-words">
5883
+ <xsl:with-param name="number" select="$digits"/>
5884
+ </xsl:call-template>
5885
+ </xsl:otherwise>
5886
+ </xsl:choose>
5887
+ </xsl:otherwise>
5888
+ </xsl:choose>
5889
+ </xsl:variable>
5890
+ <xsl:choose>
5891
+ <xsl:when test="$first = 'true'">
5892
+ <xsl:variable name="value_lc" select="java:toLowerCase(java:java.lang.String.new($value))"/>
5893
+ <xsl:call-template name="capitalize">
5894
+ <xsl:with-param name="str" select="$value_lc"/>
5895
+ </xsl:call-template>
5896
+ </xsl:when>
5897
+ <xsl:otherwise>
5898
+ <xsl:value-of select="$value"/>
5899
+ </xsl:otherwise>
5900
+ </xsl:choose>
5901
+ </xsl:if>
5782
5902
  </xsl:template></xsl:stylesheet>
@@ -2116,6 +2116,7 @@
2116
2116
 
2117
2117
 
2118
2118
 
2119
+
2119
2120
  <!-- fn will be processed inside 'note' processing -->
2120
2121
 
2121
2122
 
@@ -2124,6 +2125,10 @@
2124
2125
 
2125
2126
 
2126
2127
 
2128
+
2129
+ <!-- for BSI (not PAS) display Notes before footnotes -->
2130
+
2131
+
2127
2132
  <!-- except gb -->
2128
2133
 
2129
2134
  <xsl:apply-templates select="../*[local-name()='note']" mode="process"/>
@@ -2149,6 +2154,10 @@
2149
2154
  <!-- fn processing -->
2150
2155
  <xsl:call-template name="fn_display"/>
2151
2156
 
2157
+
2158
+ <!-- for PAS display Notes after footnotes -->
2159
+
2160
+
2152
2161
  </fo:table-cell>
2153
2162
  </fo:table-row>
2154
2163
  </fo:table-body>
@@ -2206,6 +2215,7 @@
2206
2215
  <xsl:if test="$parent-name = 'tfoot'">
2207
2216
 
2208
2217
 
2218
+
2209
2219
  </xsl:if>
2210
2220
 
2211
2221
 
@@ -2333,13 +2343,18 @@
2333
2343
 
2334
2344
 
2335
2345
 
2346
+
2336
2347
  <xsl:attribute name="font-size">12pt</xsl:attribute>
2337
2348
 
2338
2349
 
2339
2350
 
2340
2351
 
2352
+ <!-- Table's note name (NOTE, for example) -->
2353
+
2341
2354
  <fo:inline padding-right="2mm">
2342
2355
 
2356
+
2357
+
2343
2358
 
2344
2359
  <xsl:attribute name="font-size">11pt</xsl:attribute>
2345
2360
  <xsl:attribute name="padding-right">3mm</xsl:attribute>
@@ -2350,6 +2365,8 @@
2350
2365
 
2351
2366
  </fo:inline>
2352
2367
 
2368
+
2369
+
2353
2370
  <xsl:apply-templates mode="process"/>
2354
2371
  </fo:block>
2355
2372
 
@@ -2369,6 +2386,8 @@
2369
2386
  <xsl:variable name="reference" select="@reference"/>
2370
2387
  <xsl:if test="not(preceding-sibling::*[@reference = $reference])"> <!-- only unique reference puts in note-->
2371
2388
  <fo:block margin-bottom="12pt">
2389
+
2390
+
2372
2391
 
2373
2392
 
2374
2393
 
@@ -2388,6 +2407,7 @@
2388
2407
  <xsl:value-of select="@reference"/>
2389
2408
 
2390
2409
 
2410
+
2391
2411
  </fo:inline>
2392
2412
  <fo:inline>
2393
2413
 
@@ -2537,6 +2557,7 @@
2537
2557
 
2538
2558
  <xsl:value-of select="@reference"/>
2539
2559
 
2560
+
2540
2561
  </fo:basic-link>
2541
2562
  </fo:inline>
2542
2563
  </xsl:template><xsl:template match="*[local-name()='fn']/*[local-name()='p']">
@@ -3547,6 +3568,7 @@
3547
3568
 
3548
3569
 
3549
3570
 
3571
+
3550
3572
  <fo:block-container margin-left="0mm">
3551
3573
 
3552
3574
 
@@ -4753,9 +4775,10 @@
4753
4775
 
4754
4776
 
4755
4777
  </xsl:if>
4756
-
4778
+
4779
+
4780
+
4757
4781
  <fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}">
4758
-
4759
4782
  <xsl:if test="normalize-space(@citeas) = ''">
4760
4783
  <xsl:attribute name="fox:alt-text"><xsl:value-of select="."/></xsl:attribute>
4761
4784
  </xsl:if>
@@ -4766,6 +4789,7 @@
4766
4789
 
4767
4790
 
4768
4791
 
4792
+
4769
4793
  </xsl:if>
4770
4794
 
4771
4795
  <xsl:apply-templates/>
@@ -5779,4 +5803,100 @@
5779
5803
  <xsl:otherwise><xsl:value-of select="$default"/></xsl:otherwise>
5780
5804
  </xsl:choose>
5781
5805
  </xsl:attribute>
5806
+ </xsl:template><xsl:template name="number-to-words">
5807
+ <xsl:param name="number"/>
5808
+ <xsl:param name="first"/>
5809
+ <xsl:if test="$number != ''">
5810
+ <xsl:variable name="words">
5811
+ <words>
5812
+ <word cardinal="1">One-</word>
5813
+ <word ordinal="1">First </word>
5814
+ <word cardinal="2">Two-</word>
5815
+ <word ordinal="2">Second </word>
5816
+ <word cardinal="3">Three-</word>
5817
+ <word ordinal="3">Third </word>
5818
+ <word cardinal="4">Four-</word>
5819
+ <word ordinal="4">Fourth </word>
5820
+ <word cardinal="5">Five-</word>
5821
+ <word ordinal="5">Fifth </word>
5822
+ <word cardinal="6">Six-</word>
5823
+ <word ordinal="6">Sixth </word>
5824
+ <word cardinal="7">Seven-</word>
5825
+ <word ordinal="7">Seventh </word>
5826
+ <word cardinal="8">Eight-</word>
5827
+ <word ordinal="8">Eighth </word>
5828
+ <word cardinal="9">Nine-</word>
5829
+ <word ordinal="9">Ninth </word>
5830
+ <word ordinal="10">Tenth </word>
5831
+ <word ordinal="11">Eleventh </word>
5832
+ <word ordinal="12">Twelfth </word>
5833
+ <word ordinal="13">Thirteenth </word>
5834
+ <word ordinal="14">Fourteenth </word>
5835
+ <word ordinal="15">Fifteenth </word>
5836
+ <word ordinal="16">Sixteenth </word>
5837
+ <word ordinal="17">Seventeenth </word>
5838
+ <word ordinal="18">Eighteenth </word>
5839
+ <word ordinal="19">Nineteenth </word>
5840
+ <word cardinal="20">Twenty-</word>
5841
+ <word ordinal="20">Twentieth </word>
5842
+ <word cardinal="30">Thirty-</word>
5843
+ <word ordinal="30">Thirtieth </word>
5844
+ <word cardinal="40">Forty-</word>
5845
+ <word ordinal="40">Fortieth </word>
5846
+ <word cardinal="50">Fifty-</word>
5847
+ <word ordinal="50">Fiftieth </word>
5848
+ <word cardinal="60">Sixty-</word>
5849
+ <word ordinal="60">Sixtieth </word>
5850
+ <word cardinal="70">Seventy-</word>
5851
+ <word ordinal="70">Seventieth </word>
5852
+ <word cardinal="80">Eighty-</word>
5853
+ <word ordinal="80">Eightieth </word>
5854
+ <word cardinal="90">Ninety-</word>
5855
+ <word ordinal="90">Ninetieth </word>
5856
+ <word cardinal="100">Hundred-</word>
5857
+ <word ordinal="100">Hundredth </word>
5858
+ </words>
5859
+ </xsl:variable>
5860
+
5861
+ <xsl:variable name="ordinal" select="xalan:nodeset($words)//word[@ordinal = $number]/text()"/>
5862
+
5863
+ <xsl:variable name="value">
5864
+ <xsl:choose>
5865
+ <xsl:when test="$ordinal != ''">
5866
+ <xsl:value-of select="$ordinal"/>
5867
+ </xsl:when>
5868
+ <xsl:otherwise>
5869
+ <xsl:choose>
5870
+ <xsl:when test="$number &lt; 100">
5871
+ <xsl:variable name="decade" select="concat(substring($number,1,1), '0')"/>
5872
+ <xsl:variable name="digit" select="substring($number,2)"/>
5873
+ <xsl:value-of select="xalan:nodeset($words)//word[@cardinal = $decade]/text()"/>
5874
+ <xsl:value-of select="xalan:nodeset($words)//word[@ordinal = $digit]/text()"/>
5875
+ </xsl:when>
5876
+ <xsl:otherwise>
5877
+ <!-- more 100 -->
5878
+ <xsl:variable name="hundred" select="substring($number,1,1)"/>
5879
+ <xsl:variable name="digits" select="number(substring($number,2))"/>
5880
+ <xsl:value-of select="xalan:nodeset($words)//word[@cardinal = $hundred]/text()"/>
5881
+ <xsl:value-of select="xalan:nodeset($words)//word[@cardinal = '100']/text()"/>
5882
+ <xsl:call-template name="number-to-words">
5883
+ <xsl:with-param name="number" select="$digits"/>
5884
+ </xsl:call-template>
5885
+ </xsl:otherwise>
5886
+ </xsl:choose>
5887
+ </xsl:otherwise>
5888
+ </xsl:choose>
5889
+ </xsl:variable>
5890
+ <xsl:choose>
5891
+ <xsl:when test="$first = 'true'">
5892
+ <xsl:variable name="value_lc" select="java:toLowerCase(java:java.lang.String.new($value))"/>
5893
+ <xsl:call-template name="capitalize">
5894
+ <xsl:with-param name="str" select="$value_lc"/>
5895
+ </xsl:call-template>
5896
+ </xsl:when>
5897
+ <xsl:otherwise>
5898
+ <xsl:value-of select="$value"/>
5899
+ </xsl:otherwise>
5900
+ </xsl:choose>
5901
+ </xsl:if>
5782
5902
  </xsl:template></xsl:stylesheet>
@@ -1,5 +1,5 @@
1
1
  module Metanorma
2
2
  module IHO
3
- VERSION = "0.3.6".freeze
3
+ VERSION = "0.3.7".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: 0.3.6
4
+ version: 0.3.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-07-05 00:00:00.000000000 Z
11
+ date: 2021-07-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: htmlentities