metanorma-csa 2.5.4 → 2.5.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/isodoc/csa/csa.standard.xsl +252 -55
- data/lib/metanorma/csa/biblio.rng +13 -1
- data/lib/metanorma/csa/csa.rng +2 -2
- data/lib/metanorma/csa/isodoc.rng +6 -6
- data/lib/metanorma/csa/version.rb +1 -1
- data/metanorma-csa.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: 36b52f4b3444d0cbcd89254b5a8610a9af1f8fb63cc9ba20b07a211a93eec13c
|
4
|
+
data.tar.gz: 21a1c124c59be971f99aba0872b3297b41d21cb5bae424be07670eac8863ee11
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e1767135930059c7ad65765dc32a45916e70d7114febee345cc48a3915c3878af842f15cceb308f8abfe0a48a7295f440457693dd99d7417592f4b5edf74bebb
|
7
|
+
data.tar.gz: 7d037aa690673ddec0eb1ded7b0c831e2c643f6892c953f4569eda91acb46640a4cb14accb6bcbd3eb4a7a05eb584b4c594291aef75d1799ae8c28663a0f8a1f
|
@@ -3993,10 +3993,14 @@
|
|
3993
3993
|
<xsl:variable name="fn_styles">
|
3994
3994
|
<xsl:choose>
|
3995
3995
|
<xsl:when test="ancestor::*[local-name() = 'bibitem']">
|
3996
|
-
<fn_styles xsl:use-attribute-sets="bibitem-note-fn-style"
|
3996
|
+
<fn_styles xsl:use-attribute-sets="bibitem-note-fn-style">
|
3997
|
+
|
3998
|
+
</fn_styles>
|
3997
3999
|
</xsl:when>
|
3998
4000
|
<xsl:otherwise>
|
3999
|
-
<fn_styles xsl:use-attribute-sets="fn-num-style"
|
4001
|
+
<fn_styles xsl:use-attribute-sets="fn-num-style">
|
4002
|
+
|
4003
|
+
</fn_styles>
|
4000
4004
|
</xsl:otherwise>
|
4001
4005
|
</xsl:choose>
|
4002
4006
|
</xsl:variable>
|
@@ -4135,6 +4139,11 @@
|
|
4135
4139
|
|
4136
4140
|
<xsl:value-of select="@reference"/>
|
4137
4141
|
|
4142
|
+
<!-- commented https://github.com/metanorma/isodoc/issues/614 -->
|
4143
|
+
<!-- <xsl:if test="$namespace = 'itu'">
|
4144
|
+
<xsl:text>)</xsl:text>
|
4145
|
+
</xsl:if> -->
|
4146
|
+
|
4138
4147
|
</fo:inline>
|
4139
4148
|
<fo:inline xsl:use-attribute-sets="table-fn-body-style">
|
4140
4149
|
<xsl:copy-of select="./node()"/>
|
@@ -4144,7 +4153,7 @@
|
|
4144
4153
|
|
4145
4154
|
</xsl:if>
|
4146
4155
|
</xsl:for-each>
|
4147
|
-
</xsl:template>
|
4156
|
+
</xsl:template> <!-- table_fn_display -->
|
4148
4157
|
|
4149
4158
|
<xsl:template name="create_fn">
|
4150
4159
|
<fn reference="{@reference}" id="{@reference}_{ancestor::*[@id][1]/@id}">
|
@@ -4172,8 +4181,10 @@
|
|
4172
4181
|
<!-- EMD table's footnotes rendering -->
|
4173
4182
|
<!-- ============================ -->
|
4174
4183
|
|
4184
|
+
<!-- ============================ -->
|
4175
4185
|
<!-- figure's footnotes rendering -->
|
4176
|
-
|
4186
|
+
<!-- ============================ -->
|
4187
|
+
<xsl:template name="fn_display_figure"> <!-- figure_fn_display -->
|
4177
4188
|
|
4178
4189
|
<!-- current figure id -->
|
4179
4190
|
<xsl:variable name="figure_id_">
|
@@ -4286,9 +4297,28 @@
|
|
4286
4297
|
|
4287
4298
|
</fo:block>
|
4288
4299
|
</xsl:if>
|
4289
|
-
|
4290
4300
|
</xsl:template> <!-- fn_display_figure -->
|
4291
4301
|
|
4302
|
+
<!-- added for https://github.com/metanorma/isodoc/issues/607 -->
|
4303
|
+
<!-- figure's footnote label -->
|
4304
|
+
<xsl:template match="*[local-name() = 'figure']/*[local-name() = 'dl'][@key = 'true']/*[local-name() = 'dt']/ *[local-name() = 'p'][count(node()[normalize-space() != '']) = 1]/*[local-name() = 'sup']" priority="3">
|
4305
|
+
<xsl:variable name="key_iso">
|
4306
|
+
|
4307
|
+
</xsl:variable>
|
4308
|
+
<xsl:if test="normalize-space($key_iso) = 'true'">
|
4309
|
+
<xsl:attribute name="font-size">10pt</xsl:attribute>
|
4310
|
+
|
4311
|
+
</xsl:if>
|
4312
|
+
<fo:inline xsl:use-attribute-sets="figure-fn-number-style"> <!-- id="{@id}" -->
|
4313
|
+
<!-- <xsl:value-of select="@reference"/> -->
|
4314
|
+
<xsl:apply-templates/>
|
4315
|
+
</fo:inline>
|
4316
|
+
</xsl:template>
|
4317
|
+
|
4318
|
+
<!-- ============================ -->
|
4319
|
+
<!-- END: figure's footnotes rendering -->
|
4320
|
+
<!-- ============================ -->
|
4321
|
+
|
4292
4322
|
<!-- fn reference in the text rendering (for instance, 'some text 1) some text' ) -->
|
4293
4323
|
<xsl:template match="*[local-name()='fn']">
|
4294
4324
|
<fo:inline xsl:use-attribute-sets="fn-reference-style">
|
@@ -4304,6 +4334,10 @@
|
|
4304
4334
|
|
4305
4335
|
<xsl:value-of select="@reference"/>
|
4306
4336
|
|
4337
|
+
<!-- commented, https://github.com/metanorma/isodoc/issues/614 -->
|
4338
|
+
<!-- <xsl:if test="$namespace = 'jis'">
|
4339
|
+
<fo:inline font-weight="normal">)</fo:inline>
|
4340
|
+
</xsl:if> -->
|
4307
4341
|
</fo:basic-link>
|
4308
4342
|
</fo:inline>
|
4309
4343
|
</xsl:template>
|
@@ -4430,17 +4464,22 @@
|
|
4430
4464
|
</fo:block>
|
4431
4465
|
</xsl:when> <!-- END: a few components -->
|
4432
4466
|
<xsl:when test="$parent = 'figure' and (not(../@class) or ../@class !='pseudocode')"> <!-- definition list in a figure -->
|
4433
|
-
|
4467
|
+
<!-- Presentation XML contains 'Key' caption, https://github.com/metanorma/isodoc/issues/607 -->
|
4468
|
+
<xsl:if test="not(preceding-sibling::*[1][local-name() = 'p' and @keep-with-next])"> <!-- for old Presentation XML -->
|
4434
4469
|
|
4435
|
-
|
4470
|
+
<fo:block font-weight="bold" text-align="left" margin-bottom="12pt" keep-with-next="always">
|
4436
4471
|
|
4437
|
-
|
4438
|
-
|
4439
|
-
|
4440
|
-
|
4441
|
-
|
4442
|
-
|
4443
|
-
|
4472
|
+
<xsl:call-template name="refine_figure_key_style"/>
|
4473
|
+
|
4474
|
+
<xsl:variable name="title-key">
|
4475
|
+
<xsl:call-template name="getLocalizedString">
|
4476
|
+
<xsl:with-param name="key">key</xsl:with-param>
|
4477
|
+
</xsl:call-template>
|
4478
|
+
</xsl:variable>
|
4479
|
+
<xsl:value-of select="$title-key"/>
|
4480
|
+
</fo:block>
|
4481
|
+
|
4482
|
+
</xsl:if>
|
4444
4483
|
</xsl:when> <!-- END: definition list in a figure -->
|
4445
4484
|
</xsl:choose>
|
4446
4485
|
|
@@ -4626,6 +4665,14 @@
|
|
4626
4665
|
|
4627
4666
|
</xsl:template> <!-- END: dl -->
|
4628
4667
|
|
4668
|
+
<!-- caption for figure key and another caption, https://github.com/metanorma/isodoc/issues/607 -->
|
4669
|
+
<xsl:template match="*[local-name() = 'figure']/*[local-name() = 'p'][@keep-with-next = 'true' and *[local-name() = 'strong']]" priority="3">
|
4670
|
+
<fo:block text-align="left" margin-bottom="12pt" keep-with-next="always">
|
4671
|
+
<xsl:call-template name="refine_figure_key_style"/>
|
4672
|
+
<xsl:apply-templates/>
|
4673
|
+
</fo:block>
|
4674
|
+
</xsl:template>
|
4675
|
+
|
4629
4676
|
<xsl:template name="refine_dl_formula_where_style">
|
4630
4677
|
|
4631
4678
|
</xsl:template> <!-- refine_dl_formula_where_style -->
|
@@ -6658,6 +6705,39 @@
|
|
6658
6705
|
</xsl:copy>
|
6659
6706
|
</xsl:template>
|
6660
6707
|
|
6708
|
+
<xsl:template match="@*|node()" mode="mathml_linebreak">
|
6709
|
+
<xsl:copy>
|
6710
|
+
<xsl:apply-templates select="@*|node()" mode="mathml_linebreak"/>
|
6711
|
+
</xsl:copy>
|
6712
|
+
</xsl:template>
|
6713
|
+
|
6714
|
+
<!-- split math into two math -->
|
6715
|
+
<xsl:template match="mathml:mo[@linebreak] | mathml:mspace[@linebreak]" mode="mathml_linebreak">
|
6716
|
+
<xsl:variable name="math_elements_tree_">
|
6717
|
+
<xsl:for-each select="ancestor::*[ancestor-or-self::mathml:math]">
|
6718
|
+
<element pos="{position()}">
|
6719
|
+
<xsl:copy-of select="@*[local-name() != 'id']"/>
|
6720
|
+
<xsl:value-of select="name()"/>
|
6721
|
+
</element>
|
6722
|
+
</xsl:for-each>
|
6723
|
+
</xsl:variable>
|
6724
|
+
|
6725
|
+
<xsl:variable name="math_elements_tree" select="xalan:nodeset($math_elements_tree_)"/>
|
6726
|
+
|
6727
|
+
<xsl:call-template name="insertClosingElements">
|
6728
|
+
<xsl:with-param name="tree" select="$math_elements_tree"/>
|
6729
|
+
</xsl:call-template>
|
6730
|
+
|
6731
|
+
<xsl:element name="br" namespace="{$namespace_full}"/>
|
6732
|
+
|
6733
|
+
<xsl:call-template name="insertOpeningElements">
|
6734
|
+
<xsl:with-param name="tree" select="$math_elements_tree"/>
|
6735
|
+
<xsl:with-param name="xmlns">http://www.w3.org/1998/Math/MathML</xsl:with-param>
|
6736
|
+
<xsl:with-param name="add_continue">false</xsl:with-param>
|
6737
|
+
</xsl:call-template>
|
6738
|
+
|
6739
|
+
</xsl:template>
|
6740
|
+
|
6661
6741
|
<!-- Examples:
|
6662
6742
|
<stem type="AsciiMath">x = 1</stem>
|
6663
6743
|
<stem type="AsciiMath"><asciimath>x = 1</asciimath></stem>
|
@@ -6859,6 +6939,7 @@
|
|
6859
6939
|
<xsl:if test="string-length(normalize-space()) < 30 and not(contains(normalize-space(), 'http://')) and not(contains(normalize-space(), 'https://')) and not(ancestor::*[local-name() = 'table' or local-name() = 'dl'])">
|
6860
6940
|
<xsl:attribute name="keep-together.within-line">always</xsl:attribute>
|
6861
6941
|
</xsl:if>
|
6942
|
+
|
6862
6943
|
<xsl:if test="parent::*[local-name() = 'add']">
|
6863
6944
|
<xsl:call-template name="append_add-style"/>
|
6864
6945
|
</xsl:if>
|
@@ -6908,9 +6989,11 @@
|
|
6908
6989
|
</xsl:template>
|
6909
6990
|
|
6910
6991
|
<xsl:template match="*[local-name() = 'formula']/*[local-name() = 'name']"> <!-- show in 'stem' template -->
|
6992
|
+
<!-- https://github.com/metanorma/isodoc/issues/607
|
6911
6993
|
<xsl:if test="normalize-space() != ''">
|
6912
|
-
<xsl:text>(</xsl:text><xsl:apply-templates/><xsl:text>)</xsl:text>
|
6913
|
-
</xsl:if>
|
6994
|
+
<xsl:text>(</xsl:text><xsl:apply-templates /><xsl:text>)</xsl:text>
|
6995
|
+
</xsl:if> -->
|
6996
|
+
<xsl:apply-templates/>
|
6914
6997
|
</xsl:template>
|
6915
6998
|
|
6916
6999
|
<!-- stem inside formula with name (with formula's number) -->
|
@@ -6967,48 +7050,48 @@
|
|
6967
7050
|
|
6968
7051
|
<xsl:template match="*[local-name() = 'note']" name="note">
|
6969
7052
|
|
6970
|
-
|
7053
|
+
<fo:block-container id="{@id}" xsl:use-attribute-sets="note-style" role="SKIP">
|
6971
7054
|
|
6972
|
-
|
7055
|
+
<xsl:call-template name="setBlockSpanAll"/>
|
6973
7056
|
|
6974
|
-
|
7057
|
+
<xsl:call-template name="refine_note-style"/>
|
6975
7058
|
|
6976
|
-
|
7059
|
+
<fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
|
6977
7060
|
|
6978
|
-
|
6979
|
-
|
6980
|
-
|
7061
|
+
<xsl:if test="ancestor::csa:ul or ancestor::csa:ol and not(ancestor::csa:note[1]/following-sibling::*)">
|
7062
|
+
<xsl:attribute name="margin-bottom">0pt</xsl:attribute>
|
7063
|
+
</xsl:if>
|
6981
7064
|
|
6982
|
-
|
7065
|
+
<fo:block>
|
6983
7066
|
|
6984
|
-
|
7067
|
+
<xsl:call-template name="refine_note_block_style"/>
|
6985
7068
|
|
6986
|
-
|
7069
|
+
<fo:inline xsl:use-attribute-sets="note-name-style" role="SKIP">
|
6987
7070
|
|
6988
|
-
|
7071
|
+
<xsl:call-template name="refine_note-name-style"/>
|
6989
7072
|
|
6990
|
-
|
6991
|
-
|
6992
|
-
|
6993
|
-
|
6994
|
-
|
7073
|
+
<!-- if 'p' contains all text in 'add' first and last elements in first p are 'add' -->
|
7074
|
+
<!-- <xsl:if test="*[not(local-name()='name')][1][node()[normalize-space() != ''][1][local-name() = 'add'] and node()[normalize-space() != ''][last()][local-name() = 'add']]"> -->
|
7075
|
+
<xsl:if test="*[not(local-name()='name')][1][count(node()[normalize-space() != '']) = 1 and *[local-name() = 'add']]">
|
7076
|
+
<xsl:call-template name="append_add-style"/>
|
7077
|
+
</xsl:if>
|
6995
7078
|
|
6996
|
-
|
6997
|
-
|
6998
|
-
|
6999
|
-
|
7000
|
-
|
7001
|
-
|
7079
|
+
<!-- if note contains only one element and first and last childs are `add` ace-tag, then move start ace-tag before NOTE's name-->
|
7080
|
+
<xsl:if test="count(*[not(local-name() = 'name')]) = 1 and *[not(local-name() = 'name')]/node()[last()][local-name() = 'add'][starts-with(text(), $ace_tag)]">
|
7081
|
+
<xsl:apply-templates select="*[not(local-name() = 'name')]/node()[1][local-name() = 'add'][starts-with(text(), $ace_tag)]">
|
7082
|
+
<xsl:with-param name="skip">false</xsl:with-param>
|
7083
|
+
</xsl:apply-templates>
|
7084
|
+
</xsl:if>
|
7002
7085
|
|
7003
|
-
|
7086
|
+
<xsl:apply-templates select="*[local-name() = 'name']"/>
|
7004
7087
|
|
7005
|
-
|
7088
|
+
</fo:inline>
|
7006
7089
|
|
7007
|
-
|
7008
|
-
|
7090
|
+
<xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
|
7091
|
+
</fo:block>
|
7009
7092
|
|
7010
|
-
|
7011
|
-
|
7093
|
+
</fo:block-container>
|
7094
|
+
</fo:block-container>
|
7012
7095
|
|
7013
7096
|
</xsl:template>
|
7014
7097
|
|
@@ -7070,6 +7153,17 @@
|
|
7070
7153
|
</xsl:when>
|
7071
7154
|
<xsl:otherwise>
|
7072
7155
|
|
7156
|
+
<!-- https://github.com/metanorma/isodoc/issues/607 -->
|
7157
|
+
<!-- <xsl:if test="$namespace = 'ieee'">
|
7158
|
+
<xsl:text>—</xsl:text> em dash —
|
7159
|
+
</xsl:if> -->
|
7160
|
+
<!-- <xsl:if test="$namespace = 'iho' or $namespace = 'gb' or $namespace = 'm3d' or $namespace = 'unece-rec' or $namespace = 'unece' or $namespace = 'rsd'">
|
7161
|
+
<xsl:text>:</xsl:text>
|
7162
|
+
</xsl:if> -->
|
7163
|
+
|
7164
|
+
<!-- <xsl:if test="$namespace = 'itu' or $namespace = 'nist-cswp' or $namespace = 'nist-sp'">
|
7165
|
+
<xsl:text> – </xsl:text> en dash –
|
7166
|
+
</xsl:if> -->
|
7073
7167
|
</xsl:otherwise>
|
7074
7168
|
</xsl:choose>
|
7075
7169
|
</xsl:variable>
|
@@ -7088,6 +7182,16 @@
|
|
7088
7182
|
</xsl:when>
|
7089
7183
|
<xsl:otherwise>
|
7090
7184
|
|
7185
|
+
<!-- https://github.com/metanorma/isodoc/issues/607 -->
|
7186
|
+
<!-- <xsl:if test="$namespace = 'ieee'">
|
7187
|
+
<xsl:text>—</xsl:text> em dash —
|
7188
|
+
</xsl:if> -->
|
7189
|
+
<!-- <xsl:if test="$namespace = 'gb' or $namespace = 'iso' or $namespace = 'iec' or $namespace = 'ogc' or $namespace = 'ogc-white-paper' or $namespace = 'rsd' or $namespace = 'jcgm'">
|
7190
|
+
<xsl:text>:</xsl:text>
|
7191
|
+
</xsl:if> -->
|
7192
|
+
<!-- <xsl:if test="$namespace = 'itu' or $namespace = 'nist-cswp' or $namespace = 'nist-sp' or $namespace = 'unece-rec' or $namespace = 'unece'">
|
7193
|
+
<xsl:text> – </xsl:text> en dash –
|
7194
|
+
</xsl:if> -->
|
7091
7195
|
</xsl:otherwise>
|
7092
7196
|
</xsl:choose>
|
7093
7197
|
</xsl:variable>
|
@@ -9255,7 +9359,7 @@
|
|
9255
9359
|
<xsl:if test="normalize-space() != ''">
|
9256
9360
|
<fo:inline xsl:use-attribute-sets="termexample-name-style">
|
9257
9361
|
<xsl:call-template name="refine_termexample-name-style"/>
|
9258
|
-
<xsl:apply-templates/>
|
9362
|
+
<xsl:apply-templates/> <!-- commented $namespace = 'ieee', https://github.com/metanorma/isodoc/issues/614-->
|
9259
9363
|
</fo:inline>
|
9260
9364
|
</xsl:if>
|
9261
9365
|
</xsl:template>
|
@@ -9410,13 +9514,14 @@
|
|
9410
9514
|
</xsl:when>
|
9411
9515
|
<xsl:when test="contains(normalize-space($fo_element), 'block')">
|
9412
9516
|
<fo:block xsl:use-attribute-sets="example-name-style">
|
9517
|
+
|
9413
9518
|
<xsl:apply-templates/>
|
9414
9519
|
</fo:block>
|
9415
9520
|
</xsl:when>
|
9416
9521
|
<xsl:otherwise>
|
9417
9522
|
<fo:inline xsl:use-attribute-sets="example-name-style">
|
9418
9523
|
<xsl:call-template name="refine_example-name-style"/>
|
9419
|
-
<xsl:apply-templates/>
|
9524
|
+
<xsl:apply-templates/> <!-- $namespace = 'ieee', see https://github.com/metanorma/isodoc/issues/614 -->
|
9420
9525
|
</fo:inline>
|
9421
9526
|
</xsl:otherwise>
|
9422
9527
|
</xsl:choose>
|
@@ -9425,6 +9530,7 @@
|
|
9425
9530
|
|
9426
9531
|
<xsl:template match="*[local-name() = 'table']/*[local-name() = 'example']/*[local-name() = 'name']">
|
9427
9532
|
<fo:inline xsl:use-attribute-sets="example-name-style">
|
9533
|
+
|
9428
9534
|
<xsl:apply-templates/>
|
9429
9535
|
</fo:inline>
|
9430
9536
|
</xsl:template>
|
@@ -9597,15 +9703,17 @@
|
|
9597
9703
|
|
9598
9704
|
<fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
|
9599
9705
|
<fo:block role="BlockQuote">
|
9600
|
-
<xsl:apply-templates select="./node()[not(local-name() = 'author') and
|
9706
|
+
<xsl:apply-templates select="./node()[not(local-name() = 'author') and not(local-name() = 'source') and not(local-name() = 'attribution')]"/> <!-- process all nested nodes, except author and source -->
|
9601
9707
|
</fo:block>
|
9602
9708
|
</fo:block-container>
|
9603
9709
|
</fo:block-container>
|
9604
|
-
<xsl:if test="*[local-name() = 'author'] or *[local-name() = 'source']">
|
9710
|
+
<xsl:if test="*[local-name() = 'author'] or *[local-name() = 'source'] or *[local-name() = 'attribution']">
|
9605
9711
|
<fo:block xsl:use-attribute-sets="quote-source-style">
|
9606
9712
|
<!-- — ISO, ISO 7301:2011, Clause 1 -->
|
9607
9713
|
<xsl:apply-templates select="*[local-name() = 'author']"/>
|
9608
9714
|
<xsl:apply-templates select="*[local-name() = 'source']"/>
|
9715
|
+
<!-- added for https://github.com/metanorma/isodoc/issues/607 -->
|
9716
|
+
<xsl:apply-templates select="*[local-name() = 'attribution']/*[local-name() = 'p']/node()"/>
|
9609
9717
|
</fo:block>
|
9610
9718
|
</xsl:if>
|
9611
9719
|
|
@@ -9627,9 +9735,13 @@
|
|
9627
9735
|
</xsl:template>
|
9628
9736
|
|
9629
9737
|
<xsl:template match="*[local-name() = 'author']">
|
9630
|
-
<xsl:
|
9738
|
+
<xsl:if test="local-name(..) = 'quote'"> <!-- for old Presentation XML, https://github.com/metanorma/isodoc/issues/607 -->
|
9739
|
+
<xsl:text>— </xsl:text>
|
9740
|
+
</xsl:if>
|
9631
9741
|
<xsl:apply-templates/>
|
9632
9742
|
</xsl:template>
|
9743
|
+
|
9744
|
+
<xsl:template match="*[local-name() = 'quote']//*[local-name() = 'referenceFrom']"/>
|
9633
9745
|
<!-- ====== -->
|
9634
9746
|
<!-- ====== -->
|
9635
9747
|
|
@@ -9795,20 +9907,26 @@
|
|
9795
9907
|
|
9796
9908
|
<xsl:if test="parent::*[local-name() = 'term'] and not(preceding-sibling::*[local-name() = 'preferred'])"> <!-- if first preffered in term, then display term's name -->
|
9797
9909
|
<fo:block xsl:use-attribute-sets="term-name-style" role="SKIP">
|
9910
|
+
|
9798
9911
|
<xsl:apply-templates select="ancestor::*[local-name() = 'term'][1]/*[local-name() = 'name']"/>
|
9799
9912
|
</fo:block>
|
9800
9913
|
</xsl:if>
|
9801
9914
|
|
9802
9915
|
<fo:block xsl:use-attribute-sets="preferred-term-style" role="SKIP">
|
9803
9916
|
<xsl:call-template name="setStyle_preferred"/>
|
9917
|
+
|
9804
9918
|
<xsl:apply-templates/>
|
9805
9919
|
</fo:block>
|
9806
9920
|
</fo:block>
|
9807
9921
|
</xsl:template>
|
9808
9922
|
|
9809
9923
|
<xsl:template match="*[local-name() = 'domain']">
|
9924
|
+
<!-- https://github.com/metanorma/isodoc/issues/607
|
9810
9925
|
<fo:inline xsl:use-attribute-sets="domain-style"><<xsl:apply-templates/>></fo:inline>
|
9811
|
-
<xsl:text> </xsl:text>
|
9926
|
+
<xsl:text> </xsl:text> -->
|
9927
|
+
<xsl:if test="not(@hidden = 'true')">
|
9928
|
+
<xsl:apply-templates/>
|
9929
|
+
</xsl:if>
|
9812
9930
|
</xsl:template>
|
9813
9931
|
|
9814
9932
|
<xsl:template match="*[local-name() = 'admitted']">
|
@@ -9856,6 +9974,29 @@
|
|
9856
9974
|
<!-- END definition -->
|
9857
9975
|
<!-- ========== -->
|
9858
9976
|
|
9977
|
+
<xsl:variable name="reviews_">
|
9978
|
+
<xsl:for-each select="//*[local-name() = 'review'][@from]">
|
9979
|
+
<xsl:copy>
|
9980
|
+
<xsl:copy-of select="@from"/>
|
9981
|
+
<xsl:copy-of select="@id"/>
|
9982
|
+
</xsl:copy>
|
9983
|
+
</xsl:for-each>
|
9984
|
+
</xsl:variable>
|
9985
|
+
<xsl:variable name="reviews" select="xalan:nodeset($reviews_)"/>
|
9986
|
+
|
9987
|
+
<xsl:template name="addReviewHelper">
|
9988
|
+
<!-- if there is review with from="...", then add small helper block for Annot tag adding, see 'review' template -->
|
9989
|
+
<xsl:variable name="curr_id" select="@id"/>
|
9990
|
+
<xsl:variable name="review_id" select="normalize-space($reviews//*[local-name() = 'review'][@from = $curr_id]/@id)"/>
|
9991
|
+
<xsl:if test="$review_id != ''"> <!-- i.e. if review found -->
|
9992
|
+
<fo:block keep-with-next="always" line-height="0.1" id="{$review_id}" font-size="1pt" role="SKIP"><xsl:value-of select="$hair_space"/><fo:basic-link internal-destination="{$review_id}" fox:alt-text="Annot___{$review_id}" role="Annot"><xsl:value-of select="$hair_space"/></fo:basic-link></fo:block>
|
9993
|
+
</xsl:if>
|
9994
|
+
<!-- <fo:block>
|
9995
|
+
<curr_id><xsl:value-of select="$curr_id"/></curr_id>
|
9996
|
+
<xsl:copy-of select="$reviews"/>
|
9997
|
+
</fo:block> -->
|
9998
|
+
</xsl:template>
|
9999
|
+
|
9859
10000
|
<!-- main sections -->
|
9860
10001
|
<xsl:template match="/*/*[local-name() = 'sections']/*" name="sections_node" priority="2">
|
9861
10002
|
|
@@ -9864,6 +10005,8 @@
|
|
9864
10005
|
|
9865
10006
|
<xsl:call-template name="sections_element_style"/>
|
9866
10007
|
|
10008
|
+
<xsl:call-template name="addReviewHelper"/>
|
10009
|
+
|
9867
10010
|
<xsl:apply-templates/>
|
9868
10011
|
</fo:block>
|
9869
10012
|
|
@@ -9904,6 +10047,7 @@
|
|
9904
10047
|
|
9905
10048
|
<fo:block>
|
9906
10049
|
<xsl:call-template name="setId"/>
|
10050
|
+
<xsl:call-template name="addReviewHelper"/>
|
9907
10051
|
<xsl:apply-templates/>
|
9908
10052
|
</fo:block>
|
9909
10053
|
</xsl:template>
|
@@ -9940,6 +10084,8 @@
|
|
9940
10084
|
|
9941
10085
|
<xsl:call-template name="refine_clause_style"/>
|
9942
10086
|
|
10087
|
+
<xsl:call-template name="addReviewHelper"/>
|
10088
|
+
|
9943
10089
|
<xsl:apply-templates/>
|
9944
10090
|
</fo:block>
|
9945
10091
|
</xsl:template>
|
@@ -9992,6 +10138,23 @@
|
|
9992
10138
|
|
9993
10139
|
<xsl:variable name="id_from" select="normalize-space(current()/@from)"/>
|
9994
10140
|
|
10141
|
+
<xsl:if test="1 = 1">
|
10142
|
+
<xsl:choose>
|
10143
|
+
<!-- if there isn't the attribute '@from', then -->
|
10144
|
+
<xsl:when test="$id_from = ''">
|
10145
|
+
<fo:block id="{@id}" font-size="1pt" role="SKIP"><xsl:value-of select="$hair_space"/><fo:basic-link internal-destination="{@id}" fox:alt-text="Annot___{@id}" role="Annot"><xsl:value-of select="$hair_space"/></fo:basic-link></fo:block>
|
10146
|
+
</xsl:when>
|
10147
|
+
<!-- if there isn't element with id 'from', then create 'bookmark' here -->
|
10148
|
+
<xsl:when test="ancestor::*[contains(local-name(), '-standard')] and not(ancestor::*[contains(local-name(), '-standard')]//*[@id = $id_from])">
|
10149
|
+
<fo:block id="{@from}" font-size="1pt" role="SKIP"><xsl:value-of select="$hair_space"/><fo:basic-link internal-destination="{@from}" fox:alt-text="Annot___{@id}" role="Annot"><xsl:value-of select="$hair_space"/></fo:basic-link></fo:block>
|
10150
|
+
</xsl:when>
|
10151
|
+
<xsl:when test="not(/*[@id = $id_from]) and not(/*//*[@id = $id_from]) and not(preceding-sibling::*[@id = $id_from])">
|
10152
|
+
<fo:block id="{@from}" font-size="1pt" role="SKIP"><xsl:value-of select="$hair_space"/><fo:basic-link internal-destination="{@from}" fox:alt-text="Annot___{@id}" role="Annot"><xsl:value-of select="$hair_space"/></fo:basic-link></fo:block>
|
10153
|
+
</xsl:when>
|
10154
|
+
</xsl:choose>
|
10155
|
+
</xsl:if>
|
10156
|
+
|
10157
|
+
<xsl:if test="1 = 2">
|
9995
10158
|
<xsl:choose>
|
9996
10159
|
<!-- if there isn't the attribute '@from', then -->
|
9997
10160
|
<xsl:when test="$id_from = ''">
|
@@ -10005,6 +10168,7 @@
|
|
10005
10168
|
<fo:block id="{@from}" font-size="1pt"><xsl:value-of select="$hair_space"/></fo:block>
|
10006
10169
|
</xsl:when>
|
10007
10170
|
</xsl:choose>
|
10171
|
+
</xsl:if>
|
10008
10172
|
|
10009
10173
|
</xsl:template>
|
10010
10174
|
|
@@ -11344,7 +11508,7 @@
|
|
11344
11508
|
<!-- remove preprocess-xslt -->
|
11345
11509
|
<xsl:template match="*[local-name() = 'preprocess-xslt']" mode="update_xml_step1"/>
|
11346
11510
|
|
11347
|
-
<xsl:template match="*[local-name() = 'stem'] | *[local-name() = 'image'] | *[local-name() = 'sourcecode'] | *[local-name() = 'bibdata'] | *[local-name() = 'localized-strings']" mode="update_xml_step1">
|
11511
|
+
<xsl:template match="*[local-name() = 'stem'][not(.//*[local-name() = 'passthrough']) and not(.//*[@linebreak])] | *[local-name() = 'image'][not(.//*[local-name() = 'passthrough'])] | *[local-name() = 'sourcecode'][not(.//*[local-name() = 'passthrough'])] | *[local-name() = 'bibdata'][not(.//*[local-name() = 'passthrough'])] | *[local-name() = 'localized-strings']" mode="update_xml_step1">
|
11348
11512
|
<xsl:copy-of select="."/>
|
11349
11513
|
</xsl:template>
|
11350
11514
|
|
@@ -11410,6 +11574,22 @@
|
|
11410
11574
|
</xsl:choose>
|
11411
11575
|
</xsl:template>
|
11412
11576
|
|
11577
|
+
<xsl:variable name="regex_passthrough">.*\bpdf\b.*</xsl:variable>
|
11578
|
+
<xsl:template match="*[local-name() = 'passthrough']" mode="update_xml_step1">
|
11579
|
+
<!-- <xsl:if test="contains(@formats, ' pdf ')"> -->
|
11580
|
+
<xsl:if test="normalize-space(java:matches(java:java.lang.String.new(@formats), $regex_passthrough)) = 'true'">
|
11581
|
+
<xsl:apply-templates mode="update_xml_step1"/>
|
11582
|
+
</xsl:if>
|
11583
|
+
</xsl:template>
|
11584
|
+
|
11585
|
+
<!-- split math by element with @linebreak into maths -->
|
11586
|
+
<xsl:template match="mathml:math[.//mathml:mo[@linebreak] or .//mathml:mspace[@linebreak]]" mode="update_xml_step1">
|
11587
|
+
<xsl:variable name="maths">
|
11588
|
+
<xsl:apply-templates select="." mode="mathml_linebreak"/>
|
11589
|
+
</xsl:variable>
|
11590
|
+
<xsl:copy-of select="$maths"/>
|
11591
|
+
</xsl:template>
|
11592
|
+
|
11413
11593
|
<!-- =========================================================================== -->
|
11414
11594
|
<!-- END STEP1: Re-order elements in 'preface', 'sections' based on @displayorder -->
|
11415
11595
|
<!-- =========================================================================== -->
|
@@ -11513,6 +11693,8 @@
|
|
11513
11693
|
|
11514
11694
|
<xsl:template name="insertOpeningElements">
|
11515
11695
|
<xsl:param name="tree"/>
|
11696
|
+
<xsl:param name="xmlns"/>
|
11697
|
+
<xsl:param name="add_continue">true</xsl:param>
|
11516
11698
|
<xsl:for-each select="$tree//element">
|
11517
11699
|
<xsl:text disable-output-escaping="yes"><</xsl:text>
|
11518
11700
|
<xsl:value-of select="."/>
|
@@ -11523,7 +11705,8 @@
|
|
11523
11705
|
<xsl:value-of select="."/>
|
11524
11706
|
<xsl:text>"</xsl:text>
|
11525
11707
|
</xsl:for-each>
|
11526
|
-
<xsl:if test="position() = 1"> continue="true"</xsl:if>
|
11708
|
+
<xsl:if test="position() = 1 and $add_continue = 'true'"> continue="true"</xsl:if>
|
11709
|
+
<xsl:if test="position() = 1 and $xmlns != ''"> xmlns="<xsl:value-of select="$xmlns"/>"</xsl:if>
|
11527
11710
|
<xsl:text disable-output-escaping="yes">></xsl:text>
|
11528
11711
|
<xsl:if test="$debug = 'true'">
|
11529
11712
|
<xsl:message><<xsl:value-of select="."/>></xsl:message>
|
@@ -12733,9 +12916,10 @@
|
|
12733
12916
|
<xsl:template name="insertBackgroundPageImage">
|
12734
12917
|
<xsl:param name="number">1</xsl:param>
|
12735
12918
|
<xsl:param name="name">coverpage-image</xsl:param>
|
12919
|
+
<xsl:param name="suffix"/>
|
12736
12920
|
<xsl:variable name="num" select="number($number)"/>
|
12737
12921
|
<!-- background image -->
|
12738
|
-
<fo:block-container absolute-position="fixed" left="0mm" top="0mm" font-size="0" id="
|
12922
|
+
<fo:block-container absolute-position="fixed" left="0mm" top="0mm" font-size="0" id="__internal_layout__coverpage{$suffix}_{$name}_{$number}_{generate-id()}">
|
12739
12923
|
<fo:block>
|
12740
12924
|
<xsl:for-each select="/*[contains(local-name(), '-standard')]/*[local-name() = 'metanorma-extension']/*[local-name() = 'presentation-metadata'][*[local-name() = 'name'] = $name][1]/*[local-name() = 'value']/*[local-name() = 'image'][$num]">
|
12741
12925
|
<xsl:choose>
|
@@ -12801,16 +12985,29 @@
|
|
12801
12985
|
|
12802
12986
|
<!-- END: insert cover page image -->
|
12803
12987
|
|
12988
|
+
<xsl:variable name="regex_ja_spec">[\uFF08\uFF09]</xsl:variable>
|
12804
12989
|
<xsl:template name="insertVerticalChar">
|
12805
12990
|
<xsl:param name="str"/>
|
12991
|
+
<xsl:param name="writing-mode">lr-tb</xsl:param>
|
12992
|
+
<xsl:param name="reference-orientation">90</xsl:param>
|
12806
12993
|
<xsl:if test="string-length($str) > 0">
|
12807
|
-
<fo:inline-container
|
12994
|
+
<fo:inline-container text-align="center" alignment-baseline="central" width="1em" margin="0" padding="0" text-indent="0mm" last-line-end-indent="0mm" start-indent="0mm" end-indent="0mm">
|
12995
|
+
<xsl:if test="normalize-space($writing-mode) != ''">
|
12996
|
+
<xsl:attribute name="writing-mode"><xsl:value-of select="$writing-mode"/></xsl:attribute>
|
12997
|
+
<xsl:attribute name="reference-orientation">90</xsl:attribute>
|
12998
|
+
</xsl:if>
|
12999
|
+
<xsl:variable name="char" select="substring($str,1,1)"/>
|
13000
|
+
<xsl:if test="normalize-space(java:matches(java:java.lang.String.new($char), concat('(', $regex_ja_spec, '{1,})'))) = 'true'">
|
13001
|
+
<xsl:attribute name="reference-orientation">0</xsl:attribute>
|
13002
|
+
</xsl:if>
|
12808
13003
|
<fo:block-container width="1em">
|
12809
|
-
<fo:block line-height="1em"><xsl:value-of select="
|
13004
|
+
<fo:block line-height="1em"><xsl:value-of select="$char"/></fo:block>
|
12810
13005
|
</fo:block-container>
|
12811
13006
|
</fo:inline-container>
|
12812
13007
|
<xsl:call-template name="insertVerticalChar">
|
12813
13008
|
<xsl:with-param name="str" select="substring($str, 2)"/>
|
13009
|
+
<xsl:with-param name="writing-mode" select="$writing-mode"/>
|
13010
|
+
<xsl:with-param name="reference-orientation" select="$reference-orientation"/>
|
12814
13011
|
</xsl:call-template>
|
12815
13012
|
</xsl:if>
|
12816
13013
|
</xsl:template>
|
@@ -1783,9 +1783,21 @@ that the `number` given for the series applies to the second iteration of number
|
|
1783
1783
|
May be used to differentiate rendering of notes in bibliographies</a:documentation>
|
1784
1784
|
</attribute>
|
1785
1785
|
</optional>
|
1786
|
-
<ref name="
|
1786
|
+
<ref name="LocalizedStringAttributes">
|
1787
1787
|
<a:documentation>The content of the note</a:documentation>
|
1788
1788
|
</ref>
|
1789
|
+
<choice>
|
1790
|
+
<oneOrMore>
|
1791
|
+
<ref name="BasicBlockNoId">
|
1792
|
+
<a:documentation>Multiple blocks of content</a:documentation>
|
1793
|
+
</ref>
|
1794
|
+
</oneOrMore>
|
1795
|
+
<oneOrMore>
|
1796
|
+
<ref name="TextElement">
|
1797
|
+
<a:documentation>Single block of content</a:documentation>
|
1798
|
+
</ref>
|
1799
|
+
</oneOrMore>
|
1800
|
+
</choice>
|
1789
1801
|
</element>
|
1790
1802
|
</define>
|
1791
1803
|
<define name="bibabstract">
|
data/lib/metanorma/csa/csa.rng
CHANGED
@@ -9,7 +9,7 @@
|
|
9
9
|
<include href="relaton-csa.rng"/>
|
10
10
|
<include href="isodoc.rng">
|
11
11
|
<start>
|
12
|
-
<ref name="
|
12
|
+
<ref name="csa-standard"/>
|
13
13
|
</start>
|
14
14
|
<define name="FigureBody">
|
15
15
|
<zeroOrMore>
|
@@ -39,7 +39,7 @@
|
|
39
39
|
</choice>
|
40
40
|
</define>
|
41
41
|
</include>
|
42
|
-
<define name="
|
42
|
+
<define name="csa-standard">
|
43
43
|
<element name="csa-standard">
|
44
44
|
<ref name="Root-Attributes"/>
|
45
45
|
<ref name="bibdata"/>
|
@@ -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.4.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">
|
@@ -326,7 +326,7 @@ normative or informative references, some split references into sections organiz
|
|
326
326
|
<a:documentation>Content of note</a:documentation>
|
327
327
|
<oneOrMore>
|
328
328
|
<choice>
|
329
|
-
<ref name="paragraph"/>
|
329
|
+
<ref name="paragraph-with-footnote"/>
|
330
330
|
<ref name="ul"/>
|
331
331
|
<ref name="ol"/>
|
332
332
|
<ref name="dl"/>
|
@@ -412,7 +412,7 @@ normative or informative references, some split references into sections organiz
|
|
412
412
|
<element name="note">
|
413
413
|
<ref name="OptionalId"/>
|
414
414
|
<oneOrMore>
|
415
|
-
<ref name="paragraph"/>
|
415
|
+
<ref name="paragraph-with-footnote"/>
|
416
416
|
</oneOrMore>
|
417
417
|
</element>
|
418
418
|
</define>
|
@@ -1977,7 +1977,7 @@ used in document amendments</a:documentation>
|
|
1977
1977
|
<oneOrMore>
|
1978
1978
|
<choice>
|
1979
1979
|
<a:documentation>Content of the verbal representation of the term</a:documentation>
|
1980
|
-
<ref name="paragraph"/>
|
1980
|
+
<ref name="paragraph-with-footnote"/>
|
1981
1981
|
<ref name="dl"/>
|
1982
1982
|
<ref name="ol"/>
|
1983
1983
|
<ref name="ul"/>
|
@@ -2015,7 +2015,7 @@ used in document amendments</a:documentation>
|
|
2015
2015
|
<oneOrMore>
|
2016
2016
|
<choice>
|
2017
2017
|
<a:documentation>Content of the term note</a:documentation>
|
2018
|
-
<ref name="paragraph"/>
|
2018
|
+
<ref name="paragraph-with-footnote"/>
|
2019
2019
|
<ref name="ul"/>
|
2020
2020
|
<ref name="ol"/>
|
2021
2021
|
<ref name="dl"/>
|
@@ -2037,7 +2037,7 @@ used in document amendments</a:documentation>
|
|
2037
2037
|
<ref name="dl"/>
|
2038
2038
|
<ref name="quote"/>
|
2039
2039
|
<ref name="sourcecode"/>
|
2040
|
-
<ref name="paragraph"/>
|
2040
|
+
<ref name="paragraph-with-footnote"/>
|
2041
2041
|
<ref name="figure"/>
|
2042
2042
|
</choice>
|
2043
2043
|
</oneOrMore>
|
data/metanorma-csa.gemspec
CHANGED
@@ -29,7 +29,7 @@ Gem::Specification.new do |spec|
|
|
29
29
|
spec.require_paths = ["lib"]
|
30
30
|
spec.required_ruby_version = Gem::Requirement.new(">= 3.1.0")
|
31
31
|
|
32
|
-
spec.add_dependency "metanorma-generic", "~> 2.7.
|
32
|
+
spec.add_dependency "metanorma-generic", "~> 2.7.2"
|
33
33
|
|
34
34
|
spec.add_development_dependency "debug"
|
35
35
|
spec.add_development_dependency "equivalent-xml", "~> 0.6"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: metanorma-csa
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.5.
|
4
|
+
version: 2.5.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-
|
11
|
+
date: 2024-11-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: metanorma-generic
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 2.7.
|
19
|
+
version: 2.7.2
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 2.7.
|
26
|
+
version: 2.7.2
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: debug
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|