metanorma-un 0.12.0 → 0.12.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/isodoc/un/metadata.rb +15 -13
- data/lib/isodoc/un/un.plenary-attachment.xsl +103 -16
- data/lib/isodoc/un/un.plenary.xsl +103 -16
- data/lib/isodoc/un/un.recommendation.xsl +103 -16
- data/lib/metanorma/un/basicdoc.rng +3 -0
- data/lib/metanorma/un/converter.rb +0 -1
- data/lib/metanorma/un/isodoc.rng +4 -1
- data/lib/metanorma/un/version.rb +1 -1
- data/metanorma-un.gemspec +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: afef4ddbab8e145f16145d3073dab882a4655888e14361bfcd0cafa8df0df6f5
|
4
|
+
data.tar.gz: 376ced8cee4bb57461c1aeaaf4dc93d1160da3e08cdc2aa455c5e30faff1d5c7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e78e0ea377c90c1f10c2dad246747f34d52bcc4135bf4d5528cec7cad043f72fe1546bbe53057eaf0ade3bbc421e95f3d311d3ffe61fe4b52c94adc26143b146
|
7
|
+
data.tar.gz: 5f951a6ac21e68a2bc21e4b60d855d8230f978d242fc96bbad62ca691287461cea5d9c8a8e686235510a0a2b5f7513f8eeda5483eddf855417d5f0d109541884
|
data/lib/isodoc/un/metadata.rb
CHANGED
@@ -12,24 +12,22 @@ module IsoDoc
|
|
12
12
|
end
|
13
13
|
|
14
14
|
def title(isoxml, _out)
|
15
|
-
main = isoxml
|
16
|
-
|
15
|
+
main = isoxml.at(ns("//bibdata/title[@language='en' and @type='main']"))
|
16
|
+
&.children&.to_xml
|
17
17
|
set(:doctitle, main)
|
18
18
|
end
|
19
19
|
|
20
20
|
def subtitle(isoxml, _out)
|
21
|
-
main = isoxml
|
22
|
-
|
21
|
+
main = isoxml.at(ns("//bibdata/title[@language='en' and @type='subtitle']"))
|
22
|
+
&.children&.to_xml
|
23
23
|
set(:docsubtitle, main)
|
24
24
|
end
|
25
25
|
|
26
26
|
def extract_languages(nodeset)
|
27
|
-
lgs = []
|
28
|
-
|
29
|
-
l && ISO_639.find(l.text)&.english_name and
|
30
|
-
lgs << ISO_639.find(l.text).english_name
|
27
|
+
lgs = nodeset.each_with_object([]) do |l, m|
|
28
|
+
l and lg = ISO_639.find(l.text) and m << lg.english_name
|
31
29
|
end
|
32
|
-
lgs.map { |l| l == "Spanish; Castilian" ? "Spanish" : l }
|
30
|
+
lgs.compact.map { |l| l == "Spanish; Castilian" ? "Spanish" : l }
|
33
31
|
end
|
34
32
|
|
35
33
|
def author(isoxml, _out)
|
@@ -61,10 +59,7 @@ module IsoDoc
|
|
61
59
|
set(:session_date, isoxml.at(ns("//bibdata/ext/session/date"))&.text)
|
62
60
|
set(:session_collaborator,
|
63
61
|
isoxml.at(ns("//bibdata/ext/session/collaborator"))&.text)
|
64
|
-
|
65
|
-
set(:session_id, sid)
|
66
|
-
set(:session_id_head, sid&.sub(%r{/.*$}, ""))
|
67
|
-
set(:session_id_tail, sid&.sub(%r{^[^/]+}, ""))
|
62
|
+
session_id(isoxml)
|
68
63
|
set(:item_footnote,
|
69
64
|
isoxml.at(ns("//bibdata/ext/session/item-footnote"))&.text)
|
70
65
|
set(:session_itemnumber,
|
@@ -75,6 +70,13 @@ module IsoDoc
|
|
75
70
|
multival(isoxml, "//bibdata/ext/session/subitem-name"))
|
76
71
|
end
|
77
72
|
|
73
|
+
def session_id(isoxml)
|
74
|
+
sid = isoxml.at(ns("//bibdata/ext/session/id"))&.text
|
75
|
+
set(:session_id, sid)
|
76
|
+
set(:session_id_head, sid&.sub(%r{/.*$}, ""))
|
77
|
+
set(:session_id_tail, sid&.sub(%r{^[^/]+}, ""))
|
78
|
+
end
|
79
|
+
|
78
80
|
def docid(isoxml, _out)
|
79
81
|
dn = isoxml.at(ns("//bibdata/docidentifier"))&.text
|
80
82
|
set(:docnumber, dn)
|
@@ -1240,6 +1240,10 @@
|
|
1240
1240
|
|
1241
1241
|
</xsl:attribute-set>
|
1242
1242
|
|
1243
|
+
<xsl:template name="refine_termexample-style">
|
1244
|
+
|
1245
|
+
</xsl:template>
|
1246
|
+
|
1243
1247
|
<xsl:attribute-set name="example-style">
|
1244
1248
|
|
1245
1249
|
</xsl:attribute-set> <!-- example-style -->
|
@@ -2345,6 +2349,36 @@
|
|
2345
2349
|
</xsl:for-each>
|
2346
2350
|
</xsl:template>
|
2347
2351
|
|
2352
|
+
<xsl:template name="processMainSectionsDefault_flatxml">
|
2353
|
+
<xsl:for-each select="/*/*[local-name()='sections']/* | /*/*[local-name()='bibliography']/*[local-name()='references'][@normative='true']">
|
2354
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
2355
|
+
<xsl:variable name="flatxml">
|
2356
|
+
<xsl:apply-templates select="." mode="flatxml"/>
|
2357
|
+
</xsl:variable>
|
2358
|
+
<!-- debug_flatxml='<xsl:copy-of select="$flatxml"/>' -->
|
2359
|
+
<xsl:apply-templates select="xalan:nodeset($flatxml)/*"/>
|
2360
|
+
|
2361
|
+
</xsl:for-each>
|
2362
|
+
|
2363
|
+
<xsl:for-each select="/*/*[local-name()='annex']">
|
2364
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
2365
|
+
<xsl:variable name="flatxml">
|
2366
|
+
<xsl:apply-templates select="." mode="flatxml"/>
|
2367
|
+
</xsl:variable>
|
2368
|
+
<!-- debug_flatxml='<xsl:copy-of select="$flatxml"/>' -->
|
2369
|
+
<xsl:apply-templates select="xalan:nodeset($flatxml)/*"/>
|
2370
|
+
</xsl:for-each>
|
2371
|
+
|
2372
|
+
<xsl:for-each select="/*/*[local-name()='bibliography']/*[not(@normative='true')] | /*/*[local-name()='bibliography']/*[local-name()='clause'][*[local-name()='references'][not(@normative='true')]]">
|
2373
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
2374
|
+
<xsl:variable name="flatxml">
|
2375
|
+
<xsl:apply-templates select="." mode="flatxml"/>
|
2376
|
+
</xsl:variable>
|
2377
|
+
<!-- debug_flatxml='<xsl:copy-of select="$flatxml"/>' -->
|
2378
|
+
<xsl:apply-templates select="xalan:nodeset($flatxml)/*"/>
|
2379
|
+
</xsl:for-each>
|
2380
|
+
</xsl:template>
|
2381
|
+
|
2348
2382
|
<xsl:variable name="regex_standard_reference">([A-Z]{2,}(/[A-Z]{2,})* \d+(-\d+)*(:\d{4})?)</xsl:variable>
|
2349
2383
|
<xsl:variable name="tag_fo_inline_keep-together_within-line_open">###fo:inline keep-together_within-line###</xsl:variable>
|
2350
2384
|
<xsl:variable name="tag_fo_inline_keep-together_within-line_close">###/fo:inline keep-together_within-line###</xsl:variable>
|
@@ -2471,7 +2505,9 @@
|
|
2471
2505
|
</xsl:template> <!-- license-statement/p -->
|
2472
2506
|
|
2473
2507
|
<xsl:template match="*[local-name()='legal-statement']">
|
2508
|
+
<xsl:param name="isLegacy">false</xsl:param>
|
2474
2509
|
<fo:block xsl:use-attribute-sets="legal-statement-style">
|
2510
|
+
|
2475
2511
|
<xsl:apply-templates/>
|
2476
2512
|
</fo:block>
|
2477
2513
|
</xsl:template> <!-- legal-statement -->
|
@@ -4425,13 +4461,13 @@
|
|
4425
4461
|
<tr>
|
4426
4462
|
<td>
|
4427
4463
|
<xsl:attribute name="id">
|
4428
|
-
<xsl:value-of select="concat($id,'
|
4464
|
+
<xsl:value-of select="concat($id,'@',$row_number,'_1')"/>
|
4429
4465
|
</xsl:attribute>
|
4430
4466
|
<xsl:apply-templates/>
|
4431
4467
|
</td>
|
4432
4468
|
<td>
|
4433
4469
|
<xsl:attribute name="id">
|
4434
|
-
<xsl:value-of select="concat($id,'
|
4470
|
+
<xsl:value-of select="concat($id,'@',$row_number,'_2')"/>
|
4435
4471
|
</xsl:attribute>
|
4436
4472
|
|
4437
4473
|
<xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]">
|
@@ -4740,13 +4776,14 @@
|
|
4740
4776
|
<!-- ================= -->
|
4741
4777
|
<!-- Added,deleted text -->
|
4742
4778
|
<!-- ================= -->
|
4743
|
-
<xsl:template match="*[local-name()='add']" name="tag_add">
|
4779
|
+
<xsl:template match="*[local-name()='add'] | *[local-name() = 'change-open-tag'] | *[local-name() = 'change-close-tag']" name="tag_add">
|
4744
4780
|
<xsl:param name="skip">true</xsl:param>
|
4745
4781
|
<xsl:param name="block">false</xsl:param>
|
4746
4782
|
<xsl:param name="type"/>
|
4747
4783
|
<xsl:param name="text-align"/>
|
4748
4784
|
<xsl:choose>
|
4749
|
-
<xsl:when test="starts-with(., $ace_tag)"> <!-- examples: ace-tag_A1_start, ace-tag_A2_end, C1_start, AC_start
|
4785
|
+
<xsl:when test="starts-with(., $ace_tag) or local-name() = 'change-open-tag' or local-name() = 'change-close-tag'"> <!-- examples: ace-tag_A1_start, ace-tag_A2_end, C1_start, AC_start, or
|
4786
|
+
<change-open-tag>A<sub>1</sub></change-open-tag>, <change-close-tag>A<sub>1</sub></change-close-tag> -->
|
4750
4787
|
<xsl:choose>
|
4751
4788
|
<xsl:when test="$skip = 'true' and ((local-name(../..) = 'note' and not(preceding-sibling::node())) or (local-name(..) = 'title' and preceding-sibling::node()[1][local-name() = 'tab']) or local-name(..) = 'formattedref' and not(preceding-sibling::node())) and ../node()[last()][local-name() = 'add'][starts-with(text(), $ace_tag)]"><!-- start tag displayed in template name="note" and title --></xsl:when>
|
4752
4789
|
<xsl:otherwise>
|
@@ -4754,12 +4791,32 @@
|
|
4754
4791
|
<xsl:call-template name="insertTag">
|
4755
4792
|
<xsl:with-param name="type">
|
4756
4793
|
<xsl:choose>
|
4794
|
+
<xsl:when test="local-name() = 'change-open-tag'">start</xsl:when>
|
4795
|
+
<xsl:when test="local-name() = 'change-close-tag'">end</xsl:when>
|
4757
4796
|
<xsl:when test="$type = ''"><xsl:value-of select="substring-after(substring-after(., $ace_tag), '_')"/> <!-- start or end --></xsl:when>
|
4758
4797
|
<xsl:otherwise><xsl:value-of select="$type"/></xsl:otherwise>
|
4759
4798
|
</xsl:choose>
|
4760
4799
|
</xsl:with-param>
|
4761
|
-
<xsl:with-param name="kind"
|
4762
|
-
|
4800
|
+
<xsl:with-param name="kind">
|
4801
|
+
<xsl:choose>
|
4802
|
+
<xsl:when test="local-name() = 'change-open-tag' or local-name() = 'change-close-tag'">
|
4803
|
+
<xsl:value-of select="text()"/>
|
4804
|
+
</xsl:when>
|
4805
|
+
<xsl:otherwise>
|
4806
|
+
<xsl:value-of select="substring(substring-before(substring-after(., $ace_tag), '_'), 1, 1)"/> <!-- A or C -->
|
4807
|
+
</xsl:otherwise>
|
4808
|
+
</xsl:choose>
|
4809
|
+
</xsl:with-param>
|
4810
|
+
<xsl:with-param name="value">
|
4811
|
+
<xsl:choose>
|
4812
|
+
<xsl:when test="local-name() = 'change-open-tag' or local-name() = 'change-close-tag'">
|
4813
|
+
<xsl:value-of select="*[local-name() = 'sub']"/>
|
4814
|
+
</xsl:when>
|
4815
|
+
<xsl:otherwise>
|
4816
|
+
<xsl:value-of select="substring(substring-before(substring-after(., $ace_tag), '_'), 2)"/> <!-- 1, 2, C -->
|
4817
|
+
</xsl:otherwise>
|
4818
|
+
</xsl:choose>
|
4819
|
+
</xsl:with-param>
|
4763
4820
|
</xsl:call-template>
|
4764
4821
|
</xsl:variable>
|
4765
4822
|
<xsl:choose>
|
@@ -5019,6 +5076,10 @@
|
|
5019
5076
|
<fo:inline keep-with-next.within-line="always"><xsl:value-of select="."/></fo:inline>
|
5020
5077
|
</xsl:template>
|
5021
5078
|
|
5079
|
+
<xsl:template match="*[local-name() = 'span'][contains(@style, 'text-transform:none')]//text()" priority="5">
|
5080
|
+
<xsl:value-of select="."/>
|
5081
|
+
</xsl:template>
|
5082
|
+
|
5022
5083
|
<!-- ========================= -->
|
5023
5084
|
<!-- END Rich text formatting -->
|
5024
5085
|
<!-- ========================= -->
|
@@ -5649,7 +5710,7 @@
|
|
5649
5710
|
</xsl:choose>
|
5650
5711
|
</xsl:variable>
|
5651
5712
|
<xsl:attribute name="id">
|
5652
|
-
<xsl:value-of select="concat($id,'
|
5713
|
+
<xsl:value-of select="concat($id,'@',$row_number,'_',$col_number,'_',$divide)"/>
|
5653
5714
|
</xsl:attribute>
|
5654
5715
|
|
5655
5716
|
<xsl:for-each select="*[local-name() = 'p']">
|
@@ -5657,7 +5718,7 @@
|
|
5657
5718
|
<xsl:copy-of select="@*"/>
|
5658
5719
|
<xsl:variable name="p_num" select="count(preceding-sibling::*[local-name() = 'p']) + 1"/>
|
5659
5720
|
<xsl:attribute name="id">
|
5660
|
-
<xsl:value-of select="concat($id,'
|
5721
|
+
<xsl:value-of select="concat($id,'@',$row_number,'_',$col_number,'_p_',$p_num,'_',$divide)"/>
|
5661
5722
|
</xsl:attribute>
|
5662
5723
|
|
5663
5724
|
<!-- <xsl:copy-of select="node()" /> -->
|
@@ -5721,7 +5782,7 @@
|
|
5721
5782
|
<xsl:variable name="num" select="count(preceding-sibling::word) + 1"/>
|
5722
5783
|
<xsl:copy>
|
5723
5784
|
<xsl:attribute name="id">
|
5724
|
-
<xsl:value-of select="concat($id,'
|
5785
|
+
<xsl:value-of select="concat($id,'@',$row_number,'_',$col_number,'_word_',$num,'_',$divide)"/>
|
5725
5786
|
</xsl:attribute>
|
5726
5787
|
<xsl:copy-of select="node()"/>
|
5727
5788
|
</xsl:copy>
|
@@ -6976,11 +7037,17 @@
|
|
6976
7037
|
</xsl:when>
|
6977
7038
|
<xsl:otherwise>
|
6978
7039
|
|
7040
|
+
<xsl:variable name="image_class" select="ancestor::*[local-name() = 'image']/@class"/>
|
7041
|
+
<xsl:variable name="ancestor_table_cell" select="normalize-space(ancestor::*[local-name() = 'td'] or ancestor::*[local-name() = 'th'])"/>
|
7042
|
+
|
6979
7043
|
<xsl:variable name="element">
|
6980
7044
|
<xsl:choose>
|
6981
7045
|
<xsl:when test="ancestor::*[local-name() = 'tr'] and $isGenerateTableIF = 'true'">
|
6982
7046
|
<fo:inline xsl:use-attribute-sets="image-style" text-align="left"/>
|
6983
7047
|
</xsl:when>
|
7048
|
+
<xsl:when test="not(ancestor::*[local-name() = 'figure'])">
|
7049
|
+
<fo:inline xsl:use-attribute-sets="image-style" text-align="left"/>
|
7050
|
+
</xsl:when>
|
6984
7051
|
<xsl:otherwise>
|
6985
7052
|
<fo:block xsl:use-attribute-sets="image-style">
|
6986
7053
|
<xsl:if test="ancestor::*[local-name() = 'dt']">
|
@@ -6996,10 +7063,24 @@
|
|
6996
7063
|
<xsl:copy-of select="@*"/>
|
6997
7064
|
<!-- <fo:block xsl:use-attribute-sets="image-style"> -->
|
6998
7065
|
<fo:instream-foreign-object fox:alt-text="{$alt-text}">
|
6999
|
-
|
7000
|
-
|
7001
|
-
|
7002
|
-
|
7066
|
+
|
7067
|
+
<xsl:choose>
|
7068
|
+
<xsl:when test="$image_class = 'corrigenda-tag'">
|
7069
|
+
<xsl:attribute name="fox:alt-text">CorrigendaTag</xsl:attribute>
|
7070
|
+
<xsl:attribute name="baseline-shift">-10%</xsl:attribute>
|
7071
|
+
<xsl:if test="$ancestor_table_cell = 'true'">
|
7072
|
+
<xsl:attribute name="baseline-shift">-25%</xsl:attribute>
|
7073
|
+
</xsl:if>
|
7074
|
+
<xsl:attribute name="height">3.5mm</xsl:attribute>
|
7075
|
+
</xsl:when>
|
7076
|
+
<xsl:otherwise>
|
7077
|
+
<xsl:if test="$isGenerateTableIF = 'false'">
|
7078
|
+
<xsl:attribute name="width">100%</xsl:attribute>
|
7079
|
+
</xsl:if>
|
7080
|
+
<xsl:attribute name="content-height">100%</xsl:attribute>
|
7081
|
+
</xsl:otherwise>
|
7082
|
+
</xsl:choose>
|
7083
|
+
|
7003
7084
|
<xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
|
7004
7085
|
<xsl:variable name="svg_width" select="xalan:nodeset($svg_content)/*/@width"/>
|
7005
7086
|
<xsl:variable name="svg_height" select="xalan:nodeset($svg_content)/*/@height"/>
|
@@ -8514,7 +8595,7 @@
|
|
8514
8595
|
<!-- ====== -->
|
8515
8596
|
<xsl:template match="*[local-name() = 'termexample']">
|
8516
8597
|
<fo:block id="{@id}" xsl:use-attribute-sets="termexample-style">
|
8517
|
-
|
8598
|
+
<xsl:call-template name="refine_termexample-style"/>
|
8518
8599
|
<xsl:call-template name="setBlockSpanAll"/>
|
8519
8600
|
|
8520
8601
|
<xsl:apply-templates select="*[local-name()='name']"/>
|
@@ -9207,13 +9288,19 @@
|
|
9207
9288
|
<fo:block id="{@id}" font-size="1pt"><xsl:value-of select="$hair_space"/></fo:block>
|
9208
9289
|
</xsl:when>
|
9209
9290
|
<!-- if there isn't element with id 'from', then create 'bookmark' here -->
|
9210
|
-
<xsl:when test="not(ancestor::*[contains(local-name(), '-standard')]//*[@id = $id_from])">
|
9291
|
+
<xsl:when test="ancestor::*[contains(local-name(), '-standard')] and not(ancestor::*[contains(local-name(), '-standard')]//*[@id = $id_from])">
|
9292
|
+
<fo:block id="{@from}" font-size="1pt"><xsl:value-of select="$hair_space"/></fo:block>
|
9293
|
+
</xsl:when>
|
9294
|
+
<xsl:when test="not(//*[@id = $id_from]) and not(preceding-sibling::*[@id = $id_from])">
|
9211
9295
|
<fo:block id="{@from}" font-size="1pt"><xsl:value-of select="$hair_space"/></fo:block>
|
9212
9296
|
</xsl:when>
|
9213
9297
|
</xsl:choose>
|
9214
9298
|
|
9215
9299
|
</xsl:template>
|
9216
9300
|
|
9301
|
+
<!-- https://github.com/metanorma/mn-samples-bsi/issues/312 -->
|
9302
|
+
<xsl:template match="*[local-name() = 'review'][@type = 'other']"/>
|
9303
|
+
|
9217
9304
|
<xsl:template match="*[local-name() = 'name']/text()">
|
9218
9305
|
<!-- 0xA0 to space replacement -->
|
9219
9306
|
<xsl:value-of select="java:replaceAll(java:java.lang.String.new(.),' ',' ')"/>
|
@@ -10803,7 +10890,7 @@
|
|
10803
10890
|
|
10804
10891
|
<xsl:template name="printEdition">
|
10805
10892
|
<xsl:variable name="edition_i18n" select="normalize-space((//*[contains(local-name(), '-standard')])[1]/*[local-name() = 'bibdata']/*[local-name() = 'edition'][normalize-space(@language) != ''])"/>
|
10806
|
-
|
10893
|
+
|
10807
10894
|
<xsl:choose>
|
10808
10895
|
<xsl:when test="$edition_i18n != ''">
|
10809
10896
|
<!-- Example: <edition language="fr">deuxième édition</edition> -->
|
@@ -1240,6 +1240,10 @@
|
|
1240
1240
|
|
1241
1241
|
</xsl:attribute-set>
|
1242
1242
|
|
1243
|
+
<xsl:template name="refine_termexample-style">
|
1244
|
+
|
1245
|
+
</xsl:template>
|
1246
|
+
|
1243
1247
|
<xsl:attribute-set name="example-style">
|
1244
1248
|
|
1245
1249
|
</xsl:attribute-set> <!-- example-style -->
|
@@ -2345,6 +2349,36 @@
|
|
2345
2349
|
</xsl:for-each>
|
2346
2350
|
</xsl:template>
|
2347
2351
|
|
2352
|
+
<xsl:template name="processMainSectionsDefault_flatxml">
|
2353
|
+
<xsl:for-each select="/*/*[local-name()='sections']/* | /*/*[local-name()='bibliography']/*[local-name()='references'][@normative='true']">
|
2354
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
2355
|
+
<xsl:variable name="flatxml">
|
2356
|
+
<xsl:apply-templates select="." mode="flatxml"/>
|
2357
|
+
</xsl:variable>
|
2358
|
+
<!-- debug_flatxml='<xsl:copy-of select="$flatxml"/>' -->
|
2359
|
+
<xsl:apply-templates select="xalan:nodeset($flatxml)/*"/>
|
2360
|
+
|
2361
|
+
</xsl:for-each>
|
2362
|
+
|
2363
|
+
<xsl:for-each select="/*/*[local-name()='annex']">
|
2364
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
2365
|
+
<xsl:variable name="flatxml">
|
2366
|
+
<xsl:apply-templates select="." mode="flatxml"/>
|
2367
|
+
</xsl:variable>
|
2368
|
+
<!-- debug_flatxml='<xsl:copy-of select="$flatxml"/>' -->
|
2369
|
+
<xsl:apply-templates select="xalan:nodeset($flatxml)/*"/>
|
2370
|
+
</xsl:for-each>
|
2371
|
+
|
2372
|
+
<xsl:for-each select="/*/*[local-name()='bibliography']/*[not(@normative='true')] | /*/*[local-name()='bibliography']/*[local-name()='clause'][*[local-name()='references'][not(@normative='true')]]">
|
2373
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
2374
|
+
<xsl:variable name="flatxml">
|
2375
|
+
<xsl:apply-templates select="." mode="flatxml"/>
|
2376
|
+
</xsl:variable>
|
2377
|
+
<!-- debug_flatxml='<xsl:copy-of select="$flatxml"/>' -->
|
2378
|
+
<xsl:apply-templates select="xalan:nodeset($flatxml)/*"/>
|
2379
|
+
</xsl:for-each>
|
2380
|
+
</xsl:template>
|
2381
|
+
|
2348
2382
|
<xsl:variable name="regex_standard_reference">([A-Z]{2,}(/[A-Z]{2,})* \d+(-\d+)*(:\d{4})?)</xsl:variable>
|
2349
2383
|
<xsl:variable name="tag_fo_inline_keep-together_within-line_open">###fo:inline keep-together_within-line###</xsl:variable>
|
2350
2384
|
<xsl:variable name="tag_fo_inline_keep-together_within-line_close">###/fo:inline keep-together_within-line###</xsl:variable>
|
@@ -2471,7 +2505,9 @@
|
|
2471
2505
|
</xsl:template> <!-- license-statement/p -->
|
2472
2506
|
|
2473
2507
|
<xsl:template match="*[local-name()='legal-statement']">
|
2508
|
+
<xsl:param name="isLegacy">false</xsl:param>
|
2474
2509
|
<fo:block xsl:use-attribute-sets="legal-statement-style">
|
2510
|
+
|
2475
2511
|
<xsl:apply-templates/>
|
2476
2512
|
</fo:block>
|
2477
2513
|
</xsl:template> <!-- legal-statement -->
|
@@ -4425,13 +4461,13 @@
|
|
4425
4461
|
<tr>
|
4426
4462
|
<td>
|
4427
4463
|
<xsl:attribute name="id">
|
4428
|
-
<xsl:value-of select="concat($id,'
|
4464
|
+
<xsl:value-of select="concat($id,'@',$row_number,'_1')"/>
|
4429
4465
|
</xsl:attribute>
|
4430
4466
|
<xsl:apply-templates/>
|
4431
4467
|
</td>
|
4432
4468
|
<td>
|
4433
4469
|
<xsl:attribute name="id">
|
4434
|
-
<xsl:value-of select="concat($id,'
|
4470
|
+
<xsl:value-of select="concat($id,'@',$row_number,'_2')"/>
|
4435
4471
|
</xsl:attribute>
|
4436
4472
|
|
4437
4473
|
<xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]">
|
@@ -4740,13 +4776,14 @@
|
|
4740
4776
|
<!-- ================= -->
|
4741
4777
|
<!-- Added,deleted text -->
|
4742
4778
|
<!-- ================= -->
|
4743
|
-
<xsl:template match="*[local-name()='add']" name="tag_add">
|
4779
|
+
<xsl:template match="*[local-name()='add'] | *[local-name() = 'change-open-tag'] | *[local-name() = 'change-close-tag']" name="tag_add">
|
4744
4780
|
<xsl:param name="skip">true</xsl:param>
|
4745
4781
|
<xsl:param name="block">false</xsl:param>
|
4746
4782
|
<xsl:param name="type"/>
|
4747
4783
|
<xsl:param name="text-align"/>
|
4748
4784
|
<xsl:choose>
|
4749
|
-
<xsl:when test="starts-with(., $ace_tag)"> <!-- examples: ace-tag_A1_start, ace-tag_A2_end, C1_start, AC_start
|
4785
|
+
<xsl:when test="starts-with(., $ace_tag) or local-name() = 'change-open-tag' or local-name() = 'change-close-tag'"> <!-- examples: ace-tag_A1_start, ace-tag_A2_end, C1_start, AC_start, or
|
4786
|
+
<change-open-tag>A<sub>1</sub></change-open-tag>, <change-close-tag>A<sub>1</sub></change-close-tag> -->
|
4750
4787
|
<xsl:choose>
|
4751
4788
|
<xsl:when test="$skip = 'true' and ((local-name(../..) = 'note' and not(preceding-sibling::node())) or (local-name(..) = 'title' and preceding-sibling::node()[1][local-name() = 'tab']) or local-name(..) = 'formattedref' and not(preceding-sibling::node())) and ../node()[last()][local-name() = 'add'][starts-with(text(), $ace_tag)]"><!-- start tag displayed in template name="note" and title --></xsl:when>
|
4752
4789
|
<xsl:otherwise>
|
@@ -4754,12 +4791,32 @@
|
|
4754
4791
|
<xsl:call-template name="insertTag">
|
4755
4792
|
<xsl:with-param name="type">
|
4756
4793
|
<xsl:choose>
|
4794
|
+
<xsl:when test="local-name() = 'change-open-tag'">start</xsl:when>
|
4795
|
+
<xsl:when test="local-name() = 'change-close-tag'">end</xsl:when>
|
4757
4796
|
<xsl:when test="$type = ''"><xsl:value-of select="substring-after(substring-after(., $ace_tag), '_')"/> <!-- start or end --></xsl:when>
|
4758
4797
|
<xsl:otherwise><xsl:value-of select="$type"/></xsl:otherwise>
|
4759
4798
|
</xsl:choose>
|
4760
4799
|
</xsl:with-param>
|
4761
|
-
<xsl:with-param name="kind"
|
4762
|
-
|
4800
|
+
<xsl:with-param name="kind">
|
4801
|
+
<xsl:choose>
|
4802
|
+
<xsl:when test="local-name() = 'change-open-tag' or local-name() = 'change-close-tag'">
|
4803
|
+
<xsl:value-of select="text()"/>
|
4804
|
+
</xsl:when>
|
4805
|
+
<xsl:otherwise>
|
4806
|
+
<xsl:value-of select="substring(substring-before(substring-after(., $ace_tag), '_'), 1, 1)"/> <!-- A or C -->
|
4807
|
+
</xsl:otherwise>
|
4808
|
+
</xsl:choose>
|
4809
|
+
</xsl:with-param>
|
4810
|
+
<xsl:with-param name="value">
|
4811
|
+
<xsl:choose>
|
4812
|
+
<xsl:when test="local-name() = 'change-open-tag' or local-name() = 'change-close-tag'">
|
4813
|
+
<xsl:value-of select="*[local-name() = 'sub']"/>
|
4814
|
+
</xsl:when>
|
4815
|
+
<xsl:otherwise>
|
4816
|
+
<xsl:value-of select="substring(substring-before(substring-after(., $ace_tag), '_'), 2)"/> <!-- 1, 2, C -->
|
4817
|
+
</xsl:otherwise>
|
4818
|
+
</xsl:choose>
|
4819
|
+
</xsl:with-param>
|
4763
4820
|
</xsl:call-template>
|
4764
4821
|
</xsl:variable>
|
4765
4822
|
<xsl:choose>
|
@@ -5019,6 +5076,10 @@
|
|
5019
5076
|
<fo:inline keep-with-next.within-line="always"><xsl:value-of select="."/></fo:inline>
|
5020
5077
|
</xsl:template>
|
5021
5078
|
|
5079
|
+
<xsl:template match="*[local-name() = 'span'][contains(@style, 'text-transform:none')]//text()" priority="5">
|
5080
|
+
<xsl:value-of select="."/>
|
5081
|
+
</xsl:template>
|
5082
|
+
|
5022
5083
|
<!-- ========================= -->
|
5023
5084
|
<!-- END Rich text formatting -->
|
5024
5085
|
<!-- ========================= -->
|
@@ -5649,7 +5710,7 @@
|
|
5649
5710
|
</xsl:choose>
|
5650
5711
|
</xsl:variable>
|
5651
5712
|
<xsl:attribute name="id">
|
5652
|
-
<xsl:value-of select="concat($id,'
|
5713
|
+
<xsl:value-of select="concat($id,'@',$row_number,'_',$col_number,'_',$divide)"/>
|
5653
5714
|
</xsl:attribute>
|
5654
5715
|
|
5655
5716
|
<xsl:for-each select="*[local-name() = 'p']">
|
@@ -5657,7 +5718,7 @@
|
|
5657
5718
|
<xsl:copy-of select="@*"/>
|
5658
5719
|
<xsl:variable name="p_num" select="count(preceding-sibling::*[local-name() = 'p']) + 1"/>
|
5659
5720
|
<xsl:attribute name="id">
|
5660
|
-
<xsl:value-of select="concat($id,'
|
5721
|
+
<xsl:value-of select="concat($id,'@',$row_number,'_',$col_number,'_p_',$p_num,'_',$divide)"/>
|
5661
5722
|
</xsl:attribute>
|
5662
5723
|
|
5663
5724
|
<!-- <xsl:copy-of select="node()" /> -->
|
@@ -5721,7 +5782,7 @@
|
|
5721
5782
|
<xsl:variable name="num" select="count(preceding-sibling::word) + 1"/>
|
5722
5783
|
<xsl:copy>
|
5723
5784
|
<xsl:attribute name="id">
|
5724
|
-
<xsl:value-of select="concat($id,'
|
5785
|
+
<xsl:value-of select="concat($id,'@',$row_number,'_',$col_number,'_word_',$num,'_',$divide)"/>
|
5725
5786
|
</xsl:attribute>
|
5726
5787
|
<xsl:copy-of select="node()"/>
|
5727
5788
|
</xsl:copy>
|
@@ -6976,11 +7037,17 @@
|
|
6976
7037
|
</xsl:when>
|
6977
7038
|
<xsl:otherwise>
|
6978
7039
|
|
7040
|
+
<xsl:variable name="image_class" select="ancestor::*[local-name() = 'image']/@class"/>
|
7041
|
+
<xsl:variable name="ancestor_table_cell" select="normalize-space(ancestor::*[local-name() = 'td'] or ancestor::*[local-name() = 'th'])"/>
|
7042
|
+
|
6979
7043
|
<xsl:variable name="element">
|
6980
7044
|
<xsl:choose>
|
6981
7045
|
<xsl:when test="ancestor::*[local-name() = 'tr'] and $isGenerateTableIF = 'true'">
|
6982
7046
|
<fo:inline xsl:use-attribute-sets="image-style" text-align="left"/>
|
6983
7047
|
</xsl:when>
|
7048
|
+
<xsl:when test="not(ancestor::*[local-name() = 'figure'])">
|
7049
|
+
<fo:inline xsl:use-attribute-sets="image-style" text-align="left"/>
|
7050
|
+
</xsl:when>
|
6984
7051
|
<xsl:otherwise>
|
6985
7052
|
<fo:block xsl:use-attribute-sets="image-style">
|
6986
7053
|
<xsl:if test="ancestor::*[local-name() = 'dt']">
|
@@ -6996,10 +7063,24 @@
|
|
6996
7063
|
<xsl:copy-of select="@*"/>
|
6997
7064
|
<!-- <fo:block xsl:use-attribute-sets="image-style"> -->
|
6998
7065
|
<fo:instream-foreign-object fox:alt-text="{$alt-text}">
|
6999
|
-
|
7000
|
-
|
7001
|
-
|
7002
|
-
|
7066
|
+
|
7067
|
+
<xsl:choose>
|
7068
|
+
<xsl:when test="$image_class = 'corrigenda-tag'">
|
7069
|
+
<xsl:attribute name="fox:alt-text">CorrigendaTag</xsl:attribute>
|
7070
|
+
<xsl:attribute name="baseline-shift">-10%</xsl:attribute>
|
7071
|
+
<xsl:if test="$ancestor_table_cell = 'true'">
|
7072
|
+
<xsl:attribute name="baseline-shift">-25%</xsl:attribute>
|
7073
|
+
</xsl:if>
|
7074
|
+
<xsl:attribute name="height">3.5mm</xsl:attribute>
|
7075
|
+
</xsl:when>
|
7076
|
+
<xsl:otherwise>
|
7077
|
+
<xsl:if test="$isGenerateTableIF = 'false'">
|
7078
|
+
<xsl:attribute name="width">100%</xsl:attribute>
|
7079
|
+
</xsl:if>
|
7080
|
+
<xsl:attribute name="content-height">100%</xsl:attribute>
|
7081
|
+
</xsl:otherwise>
|
7082
|
+
</xsl:choose>
|
7083
|
+
|
7003
7084
|
<xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
|
7004
7085
|
<xsl:variable name="svg_width" select="xalan:nodeset($svg_content)/*/@width"/>
|
7005
7086
|
<xsl:variable name="svg_height" select="xalan:nodeset($svg_content)/*/@height"/>
|
@@ -8514,7 +8595,7 @@
|
|
8514
8595
|
<!-- ====== -->
|
8515
8596
|
<xsl:template match="*[local-name() = 'termexample']">
|
8516
8597
|
<fo:block id="{@id}" xsl:use-attribute-sets="termexample-style">
|
8517
|
-
|
8598
|
+
<xsl:call-template name="refine_termexample-style"/>
|
8518
8599
|
<xsl:call-template name="setBlockSpanAll"/>
|
8519
8600
|
|
8520
8601
|
<xsl:apply-templates select="*[local-name()='name']"/>
|
@@ -9207,13 +9288,19 @@
|
|
9207
9288
|
<fo:block id="{@id}" font-size="1pt"><xsl:value-of select="$hair_space"/></fo:block>
|
9208
9289
|
</xsl:when>
|
9209
9290
|
<!-- if there isn't element with id 'from', then create 'bookmark' here -->
|
9210
|
-
<xsl:when test="not(ancestor::*[contains(local-name(), '-standard')]//*[@id = $id_from])">
|
9291
|
+
<xsl:when test="ancestor::*[contains(local-name(), '-standard')] and not(ancestor::*[contains(local-name(), '-standard')]//*[@id = $id_from])">
|
9292
|
+
<fo:block id="{@from}" font-size="1pt"><xsl:value-of select="$hair_space"/></fo:block>
|
9293
|
+
</xsl:when>
|
9294
|
+
<xsl:when test="not(//*[@id = $id_from]) and not(preceding-sibling::*[@id = $id_from])">
|
9211
9295
|
<fo:block id="{@from}" font-size="1pt"><xsl:value-of select="$hair_space"/></fo:block>
|
9212
9296
|
</xsl:when>
|
9213
9297
|
</xsl:choose>
|
9214
9298
|
|
9215
9299
|
</xsl:template>
|
9216
9300
|
|
9301
|
+
<!-- https://github.com/metanorma/mn-samples-bsi/issues/312 -->
|
9302
|
+
<xsl:template match="*[local-name() = 'review'][@type = 'other']"/>
|
9303
|
+
|
9217
9304
|
<xsl:template match="*[local-name() = 'name']/text()">
|
9218
9305
|
<!-- 0xA0 to space replacement -->
|
9219
9306
|
<xsl:value-of select="java:replaceAll(java:java.lang.String.new(.),' ',' ')"/>
|
@@ -10803,7 +10890,7 @@
|
|
10803
10890
|
|
10804
10891
|
<xsl:template name="printEdition">
|
10805
10892
|
<xsl:variable name="edition_i18n" select="normalize-space((//*[contains(local-name(), '-standard')])[1]/*[local-name() = 'bibdata']/*[local-name() = 'edition'][normalize-space(@language) != ''])"/>
|
10806
|
-
|
10893
|
+
|
10807
10894
|
<xsl:choose>
|
10808
10895
|
<xsl:when test="$edition_i18n != ''">
|
10809
10896
|
<!-- Example: <edition language="fr">deuxième édition</edition> -->
|
@@ -1346,6 +1346,10 @@
|
|
1346
1346
|
|
1347
1347
|
</xsl:attribute-set>
|
1348
1348
|
|
1349
|
+
<xsl:template name="refine_termexample-style">
|
1350
|
+
|
1351
|
+
</xsl:template>
|
1352
|
+
|
1349
1353
|
<xsl:attribute-set name="example-style">
|
1350
1354
|
|
1351
1355
|
</xsl:attribute-set> <!-- example-style -->
|
@@ -2476,6 +2480,36 @@
|
|
2476
2480
|
</xsl:for-each>
|
2477
2481
|
</xsl:template>
|
2478
2482
|
|
2483
|
+
<xsl:template name="processMainSectionsDefault_flatxml">
|
2484
|
+
<xsl:for-each select="/*/*[local-name()='sections']/* | /*/*[local-name()='bibliography']/*[local-name()='references'][@normative='true']">
|
2485
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
2486
|
+
<xsl:variable name="flatxml">
|
2487
|
+
<xsl:apply-templates select="." mode="flatxml"/>
|
2488
|
+
</xsl:variable>
|
2489
|
+
<!-- debug_flatxml='<xsl:copy-of select="$flatxml"/>' -->
|
2490
|
+
<xsl:apply-templates select="xalan:nodeset($flatxml)/*"/>
|
2491
|
+
|
2492
|
+
</xsl:for-each>
|
2493
|
+
|
2494
|
+
<xsl:for-each select="/*/*[local-name()='annex']">
|
2495
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
2496
|
+
<xsl:variable name="flatxml">
|
2497
|
+
<xsl:apply-templates select="." mode="flatxml"/>
|
2498
|
+
</xsl:variable>
|
2499
|
+
<!-- debug_flatxml='<xsl:copy-of select="$flatxml"/>' -->
|
2500
|
+
<xsl:apply-templates select="xalan:nodeset($flatxml)/*"/>
|
2501
|
+
</xsl:for-each>
|
2502
|
+
|
2503
|
+
<xsl:for-each select="/*/*[local-name()='bibliography']/*[not(@normative='true')] | /*/*[local-name()='bibliography']/*[local-name()='clause'][*[local-name()='references'][not(@normative='true')]]">
|
2504
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
2505
|
+
<xsl:variable name="flatxml">
|
2506
|
+
<xsl:apply-templates select="." mode="flatxml"/>
|
2507
|
+
</xsl:variable>
|
2508
|
+
<!-- debug_flatxml='<xsl:copy-of select="$flatxml"/>' -->
|
2509
|
+
<xsl:apply-templates select="xalan:nodeset($flatxml)/*"/>
|
2510
|
+
</xsl:for-each>
|
2511
|
+
</xsl:template>
|
2512
|
+
|
2479
2513
|
<xsl:variable name="regex_standard_reference">([A-Z]{2,}(/[A-Z]{2,})* \d+(-\d+)*(:\d{4})?)</xsl:variable>
|
2480
2514
|
<xsl:variable name="tag_fo_inline_keep-together_within-line_open">###fo:inline keep-together_within-line###</xsl:variable>
|
2481
2515
|
<xsl:variable name="tag_fo_inline_keep-together_within-line_close">###/fo:inline keep-together_within-line###</xsl:variable>
|
@@ -2602,7 +2636,9 @@
|
|
2602
2636
|
</xsl:template> <!-- license-statement/p -->
|
2603
2637
|
|
2604
2638
|
<xsl:template match="*[local-name()='legal-statement']">
|
2639
|
+
<xsl:param name="isLegacy">false</xsl:param>
|
2605
2640
|
<fo:block xsl:use-attribute-sets="legal-statement-style">
|
2641
|
+
|
2606
2642
|
<xsl:apply-templates/>
|
2607
2643
|
</fo:block>
|
2608
2644
|
</xsl:template> <!-- legal-statement -->
|
@@ -4552,13 +4588,13 @@
|
|
4552
4588
|
<tr>
|
4553
4589
|
<td>
|
4554
4590
|
<xsl:attribute name="id">
|
4555
|
-
<xsl:value-of select="concat($id,'
|
4591
|
+
<xsl:value-of select="concat($id,'@',$row_number,'_1')"/>
|
4556
4592
|
</xsl:attribute>
|
4557
4593
|
<xsl:apply-templates/>
|
4558
4594
|
</td>
|
4559
4595
|
<td>
|
4560
4596
|
<xsl:attribute name="id">
|
4561
|
-
<xsl:value-of select="concat($id,'
|
4597
|
+
<xsl:value-of select="concat($id,'@',$row_number,'_2')"/>
|
4562
4598
|
</xsl:attribute>
|
4563
4599
|
|
4564
4600
|
<xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]">
|
@@ -4867,13 +4903,14 @@
|
|
4867
4903
|
<!-- ================= -->
|
4868
4904
|
<!-- Added,deleted text -->
|
4869
4905
|
<!-- ================= -->
|
4870
|
-
<xsl:template match="*[local-name()='add']" name="tag_add">
|
4906
|
+
<xsl:template match="*[local-name()='add'] | *[local-name() = 'change-open-tag'] | *[local-name() = 'change-close-tag']" name="tag_add">
|
4871
4907
|
<xsl:param name="skip">true</xsl:param>
|
4872
4908
|
<xsl:param name="block">false</xsl:param>
|
4873
4909
|
<xsl:param name="type"/>
|
4874
4910
|
<xsl:param name="text-align"/>
|
4875
4911
|
<xsl:choose>
|
4876
|
-
<xsl:when test="starts-with(., $ace_tag)"> <!-- examples: ace-tag_A1_start, ace-tag_A2_end, C1_start, AC_start
|
4912
|
+
<xsl:when test="starts-with(., $ace_tag) or local-name() = 'change-open-tag' or local-name() = 'change-close-tag'"> <!-- examples: ace-tag_A1_start, ace-tag_A2_end, C1_start, AC_start, or
|
4913
|
+
<change-open-tag>A<sub>1</sub></change-open-tag>, <change-close-tag>A<sub>1</sub></change-close-tag> -->
|
4877
4914
|
<xsl:choose>
|
4878
4915
|
<xsl:when test="$skip = 'true' and ((local-name(../..) = 'note' and not(preceding-sibling::node())) or (local-name(..) = 'title' and preceding-sibling::node()[1][local-name() = 'tab']) or local-name(..) = 'formattedref' and not(preceding-sibling::node())) and ../node()[last()][local-name() = 'add'][starts-with(text(), $ace_tag)]"><!-- start tag displayed in template name="note" and title --></xsl:when>
|
4879
4916
|
<xsl:otherwise>
|
@@ -4881,12 +4918,32 @@
|
|
4881
4918
|
<xsl:call-template name="insertTag">
|
4882
4919
|
<xsl:with-param name="type">
|
4883
4920
|
<xsl:choose>
|
4921
|
+
<xsl:when test="local-name() = 'change-open-tag'">start</xsl:when>
|
4922
|
+
<xsl:when test="local-name() = 'change-close-tag'">end</xsl:when>
|
4884
4923
|
<xsl:when test="$type = ''"><xsl:value-of select="substring-after(substring-after(., $ace_tag), '_')"/> <!-- start or end --></xsl:when>
|
4885
4924
|
<xsl:otherwise><xsl:value-of select="$type"/></xsl:otherwise>
|
4886
4925
|
</xsl:choose>
|
4887
4926
|
</xsl:with-param>
|
4888
|
-
<xsl:with-param name="kind"
|
4889
|
-
|
4927
|
+
<xsl:with-param name="kind">
|
4928
|
+
<xsl:choose>
|
4929
|
+
<xsl:when test="local-name() = 'change-open-tag' or local-name() = 'change-close-tag'">
|
4930
|
+
<xsl:value-of select="text()"/>
|
4931
|
+
</xsl:when>
|
4932
|
+
<xsl:otherwise>
|
4933
|
+
<xsl:value-of select="substring(substring-before(substring-after(., $ace_tag), '_'), 1, 1)"/> <!-- A or C -->
|
4934
|
+
</xsl:otherwise>
|
4935
|
+
</xsl:choose>
|
4936
|
+
</xsl:with-param>
|
4937
|
+
<xsl:with-param name="value">
|
4938
|
+
<xsl:choose>
|
4939
|
+
<xsl:when test="local-name() = 'change-open-tag' or local-name() = 'change-close-tag'">
|
4940
|
+
<xsl:value-of select="*[local-name() = 'sub']"/>
|
4941
|
+
</xsl:when>
|
4942
|
+
<xsl:otherwise>
|
4943
|
+
<xsl:value-of select="substring(substring-before(substring-after(., $ace_tag), '_'), 2)"/> <!-- 1, 2, C -->
|
4944
|
+
</xsl:otherwise>
|
4945
|
+
</xsl:choose>
|
4946
|
+
</xsl:with-param>
|
4890
4947
|
</xsl:call-template>
|
4891
4948
|
</xsl:variable>
|
4892
4949
|
<xsl:choose>
|
@@ -5146,6 +5203,10 @@
|
|
5146
5203
|
<fo:inline keep-with-next.within-line="always"><xsl:value-of select="."/></fo:inline>
|
5147
5204
|
</xsl:template>
|
5148
5205
|
|
5206
|
+
<xsl:template match="*[local-name() = 'span'][contains(@style, 'text-transform:none')]//text()" priority="5">
|
5207
|
+
<xsl:value-of select="."/>
|
5208
|
+
</xsl:template>
|
5209
|
+
|
5149
5210
|
<!-- ========================= -->
|
5150
5211
|
<!-- END Rich text formatting -->
|
5151
5212
|
<!-- ========================= -->
|
@@ -5776,7 +5837,7 @@
|
|
5776
5837
|
</xsl:choose>
|
5777
5838
|
</xsl:variable>
|
5778
5839
|
<xsl:attribute name="id">
|
5779
|
-
<xsl:value-of select="concat($id,'
|
5840
|
+
<xsl:value-of select="concat($id,'@',$row_number,'_',$col_number,'_',$divide)"/>
|
5780
5841
|
</xsl:attribute>
|
5781
5842
|
|
5782
5843
|
<xsl:for-each select="*[local-name() = 'p']">
|
@@ -5784,7 +5845,7 @@
|
|
5784
5845
|
<xsl:copy-of select="@*"/>
|
5785
5846
|
<xsl:variable name="p_num" select="count(preceding-sibling::*[local-name() = 'p']) + 1"/>
|
5786
5847
|
<xsl:attribute name="id">
|
5787
|
-
<xsl:value-of select="concat($id,'
|
5848
|
+
<xsl:value-of select="concat($id,'@',$row_number,'_',$col_number,'_p_',$p_num,'_',$divide)"/>
|
5788
5849
|
</xsl:attribute>
|
5789
5850
|
|
5790
5851
|
<!-- <xsl:copy-of select="node()" /> -->
|
@@ -5848,7 +5909,7 @@
|
|
5848
5909
|
<xsl:variable name="num" select="count(preceding-sibling::word) + 1"/>
|
5849
5910
|
<xsl:copy>
|
5850
5911
|
<xsl:attribute name="id">
|
5851
|
-
<xsl:value-of select="concat($id,'
|
5912
|
+
<xsl:value-of select="concat($id,'@',$row_number,'_',$col_number,'_word_',$num,'_',$divide)"/>
|
5852
5913
|
</xsl:attribute>
|
5853
5914
|
<xsl:copy-of select="node()"/>
|
5854
5915
|
</xsl:copy>
|
@@ -7103,11 +7164,17 @@
|
|
7103
7164
|
</xsl:when>
|
7104
7165
|
<xsl:otherwise>
|
7105
7166
|
|
7167
|
+
<xsl:variable name="image_class" select="ancestor::*[local-name() = 'image']/@class"/>
|
7168
|
+
<xsl:variable name="ancestor_table_cell" select="normalize-space(ancestor::*[local-name() = 'td'] or ancestor::*[local-name() = 'th'])"/>
|
7169
|
+
|
7106
7170
|
<xsl:variable name="element">
|
7107
7171
|
<xsl:choose>
|
7108
7172
|
<xsl:when test="ancestor::*[local-name() = 'tr'] and $isGenerateTableIF = 'true'">
|
7109
7173
|
<fo:inline xsl:use-attribute-sets="image-style" text-align="left"/>
|
7110
7174
|
</xsl:when>
|
7175
|
+
<xsl:when test="not(ancestor::*[local-name() = 'figure'])">
|
7176
|
+
<fo:inline xsl:use-attribute-sets="image-style" text-align="left"/>
|
7177
|
+
</xsl:when>
|
7111
7178
|
<xsl:otherwise>
|
7112
7179
|
<fo:block xsl:use-attribute-sets="image-style">
|
7113
7180
|
<xsl:if test="ancestor::*[local-name() = 'dt']">
|
@@ -7123,10 +7190,24 @@
|
|
7123
7190
|
<xsl:copy-of select="@*"/>
|
7124
7191
|
<!-- <fo:block xsl:use-attribute-sets="image-style"> -->
|
7125
7192
|
<fo:instream-foreign-object fox:alt-text="{$alt-text}">
|
7126
|
-
|
7127
|
-
|
7128
|
-
|
7129
|
-
|
7193
|
+
|
7194
|
+
<xsl:choose>
|
7195
|
+
<xsl:when test="$image_class = 'corrigenda-tag'">
|
7196
|
+
<xsl:attribute name="fox:alt-text">CorrigendaTag</xsl:attribute>
|
7197
|
+
<xsl:attribute name="baseline-shift">-10%</xsl:attribute>
|
7198
|
+
<xsl:if test="$ancestor_table_cell = 'true'">
|
7199
|
+
<xsl:attribute name="baseline-shift">-25%</xsl:attribute>
|
7200
|
+
</xsl:if>
|
7201
|
+
<xsl:attribute name="height">3.5mm</xsl:attribute>
|
7202
|
+
</xsl:when>
|
7203
|
+
<xsl:otherwise>
|
7204
|
+
<xsl:if test="$isGenerateTableIF = 'false'">
|
7205
|
+
<xsl:attribute name="width">100%</xsl:attribute>
|
7206
|
+
</xsl:if>
|
7207
|
+
<xsl:attribute name="content-height">100%</xsl:attribute>
|
7208
|
+
</xsl:otherwise>
|
7209
|
+
</xsl:choose>
|
7210
|
+
|
7130
7211
|
<xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
|
7131
7212
|
<xsl:variable name="svg_width" select="xalan:nodeset($svg_content)/*/@width"/>
|
7132
7213
|
<xsl:variable name="svg_height" select="xalan:nodeset($svg_content)/*/@height"/>
|
@@ -8641,7 +8722,7 @@
|
|
8641
8722
|
<!-- ====== -->
|
8642
8723
|
<xsl:template match="*[local-name() = 'termexample']">
|
8643
8724
|
<fo:block id="{@id}" xsl:use-attribute-sets="termexample-style">
|
8644
|
-
|
8725
|
+
<xsl:call-template name="refine_termexample-style"/>
|
8645
8726
|
<xsl:call-template name="setBlockSpanAll"/>
|
8646
8727
|
|
8647
8728
|
<xsl:apply-templates select="*[local-name()='name']"/>
|
@@ -9334,13 +9415,19 @@
|
|
9334
9415
|
<fo:block id="{@id}" font-size="1pt"><xsl:value-of select="$hair_space"/></fo:block>
|
9335
9416
|
</xsl:when>
|
9336
9417
|
<!-- if there isn't element with id 'from', then create 'bookmark' here -->
|
9337
|
-
<xsl:when test="not(ancestor::*[contains(local-name(), '-standard')]//*[@id = $id_from])">
|
9418
|
+
<xsl:when test="ancestor::*[contains(local-name(), '-standard')] and not(ancestor::*[contains(local-name(), '-standard')]//*[@id = $id_from])">
|
9419
|
+
<fo:block id="{@from}" font-size="1pt"><xsl:value-of select="$hair_space"/></fo:block>
|
9420
|
+
</xsl:when>
|
9421
|
+
<xsl:when test="not(//*[@id = $id_from]) and not(preceding-sibling::*[@id = $id_from])">
|
9338
9422
|
<fo:block id="{@from}" font-size="1pt"><xsl:value-of select="$hair_space"/></fo:block>
|
9339
9423
|
</xsl:when>
|
9340
9424
|
</xsl:choose>
|
9341
9425
|
|
9342
9426
|
</xsl:template>
|
9343
9427
|
|
9428
|
+
<!-- https://github.com/metanorma/mn-samples-bsi/issues/312 -->
|
9429
|
+
<xsl:template match="*[local-name() = 'review'][@type = 'other']"/>
|
9430
|
+
|
9344
9431
|
<xsl:template match="*[local-name() = 'name']/text()">
|
9345
9432
|
<!-- 0xA0 to space replacement -->
|
9346
9433
|
<xsl:value-of select="java:replaceAll(java:java.lang.String.new(.),' ',' ')"/>
|
@@ -10931,7 +11018,7 @@
|
|
10931
11018
|
|
10932
11019
|
<xsl:template name="printEdition">
|
10933
11020
|
<xsl:variable name="edition_i18n" select="normalize-space((//*[contains(local-name(), '-standard')])[1]/*[local-name() = 'bibdata']/*[local-name() = 'edition'][normalize-space(@language) != ''])"/>
|
10934
|
-
|
11021
|
+
|
10935
11022
|
<xsl:choose>
|
10936
11023
|
<xsl:when test="$edition_i18n != ''">
|
10937
11024
|
<!-- Example: <edition language="fr">deuxième édition</edition> -->
|
data/lib/metanorma/un/isodoc.rng
CHANGED
@@ -17,7 +17,7 @@
|
|
17
17
|
these elements; we just want one namespace for any child grammars
|
18
18
|
of this.
|
19
19
|
-->
|
20
|
-
<!-- VERSION v1.
|
20
|
+
<!-- VERSION v1.3.0 -->
|
21
21
|
<grammar xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
|
22
22
|
<include href="reqt.rng"/>
|
23
23
|
<include href="basicdoc.rng">
|
@@ -146,6 +146,9 @@
|
|
146
146
|
<data type="boolean"/>
|
147
147
|
</attribute>
|
148
148
|
</optional>
|
149
|
+
<optional>
|
150
|
+
<attribute name="style"/>
|
151
|
+
</optional>
|
149
152
|
<oneOrMore>
|
150
153
|
<ref name="PureTextElement"/>
|
151
154
|
</oneOrMore>
|
data/lib/metanorma/un/version.rb
CHANGED
data/metanorma-un.gemspec
CHANGED
@@ -31,7 +31,7 @@ Gem::Specification.new do |spec|
|
|
31
31
|
spec.add_dependency "roman-numerals"
|
32
32
|
spec.add_dependency "twitter_cldr"
|
33
33
|
|
34
|
-
spec.add_dependency "metanorma-standoc", "~> 2.8.
|
34
|
+
spec.add_dependency "metanorma-standoc", "~> 2.8.2"
|
35
35
|
|
36
36
|
spec.add_development_dependency "debug"
|
37
37
|
spec.add_development_dependency "equivalent-xml", "~> 0.6"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: metanorma-un
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.12.
|
4
|
+
version: 0.12.3
|
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-
|
11
|
+
date: 2024-02-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: iso-639
|
@@ -58,14 +58,14 @@ dependencies:
|
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: 2.8.
|
61
|
+
version: 2.8.2
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: 2.8.
|
68
|
+
version: 2.8.2
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: debug
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|