metanorma-iso 2.4.1 → 2.4.2
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 +4 -4
- data/lib/isodoc/iso/base_convert.rb +9 -3
- data/lib/isodoc/iso/iso.amendment.xsl +81 -13
- data/lib/isodoc/iso/iso.international-standard.xsl +81 -13
- data/lib/isodoc/iso/presentation_xml_convert.rb +1 -0
- data/lib/isodoc/iso/word_convert.rb +8 -3
- data/lib/metanorma/iso/isodoc.rng +29 -7
- data/lib/metanorma/iso/version.rb +1 -1
- data/metanorma-iso.gemspec +2 -2
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d8bfb0d40024d23c0e4bcf6f7e5d7a9b59066f3ac7288d16f232203a39a00b6c
|
4
|
+
data.tar.gz: 13262faed4ac013f95881bc6cdac14f702f61b44d62275c88d5e1bcf1de13397
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: aaa40bf853a800144371bb0419a818ef26806308622fba26f79169c533fcc24e29206c20b11538e71d903c3d05a0d873b75e6ad348bf7c72bd2944bed37f55e9
|
7
|
+
data.tar.gz: 5bc24e5f4fa220d136f3d71be7096e0660b1c37bcdde1a104fc3c3f9ba91c308f5921d8fa7e2a6971659800e219bb511aeea9f5ca6f0aa7464943da0d24cf8a3
|
@@ -183,13 +183,19 @@ module IsoDoc
|
|
183
183
|
measurement_units(node, out)
|
184
184
|
out.table **table_attrs(node) do |t|
|
185
185
|
table_parse_core(node, t)
|
186
|
-
(
|
187
|
-
node.xpath(ns("./note[not(@type = 'units')]"))
|
188
|
-
.each { |n| parse(n, out) }
|
186
|
+
table_parse_tail(node, t)
|
189
187
|
end
|
190
188
|
@in_table = false
|
191
189
|
end
|
192
190
|
|
191
|
+
def table_parse_tail(node, out)
|
192
|
+
(dl = node.at(ns("./dl"))) && parse(dl, out)
|
193
|
+
node.xpath(ns("./source")).each { |n| parse(n, out) }
|
194
|
+
node.xpath(ns("./note[not(@type = 'units')]")).each do |n|
|
195
|
+
parse(n, out)
|
196
|
+
end
|
197
|
+
end
|
198
|
+
|
193
199
|
def figure_parse1(node, out)
|
194
200
|
measurement_units(node, out)
|
195
201
|
out.div **figure_attrs(node) do |div|
|
@@ -2974,11 +2974,17 @@
|
|
2974
2974
|
<!-- ========================== -->
|
2975
2975
|
<!-- Definition's list styles -->
|
2976
2976
|
<!-- ========================== -->
|
2977
|
+
|
2978
|
+
<xsl:attribute-set name="dl-block-style">
|
2979
|
+
|
2980
|
+
</xsl:attribute-set>
|
2981
|
+
|
2977
2982
|
<xsl:attribute-set name="dt-row-style">
|
2978
2983
|
|
2979
2984
|
</xsl:attribute-set>
|
2980
2985
|
|
2981
2986
|
<xsl:attribute-set name="dt-cell-style">
|
2987
|
+
|
2982
2988
|
</xsl:attribute-set>
|
2983
2989
|
|
2984
2990
|
<xsl:attribute-set name="dt-block-style">
|
@@ -2996,6 +3002,7 @@
|
|
2996
3002
|
|
2997
3003
|
<xsl:attribute-set name="dd-cell-style">
|
2998
3004
|
<xsl:attribute name="padding-left">2mm</xsl:attribute>
|
3005
|
+
|
2999
3006
|
</xsl:attribute-set>
|
3000
3007
|
|
3001
3008
|
<!-- ========================== -->
|
@@ -3136,6 +3143,10 @@
|
|
3136
3143
|
|
3137
3144
|
</xsl:attribute-set>
|
3138
3145
|
|
3146
|
+
<xsl:attribute-set name="figure-source-style">
|
3147
|
+
|
3148
|
+
</xsl:attribute-set>
|
3149
|
+
|
3139
3150
|
<!-- Formula's styles -->
|
3140
3151
|
<xsl:attribute-set name="formula-style">
|
3141
3152
|
<xsl:attribute name="margin-top">6pt</xsl:attribute>
|
@@ -3671,7 +3682,7 @@
|
|
3671
3682
|
|
3672
3683
|
<xsl:template name="processTables_Contents">
|
3673
3684
|
<tables>
|
3674
|
-
<xsl:for-each select="//*[local-name() = 'table'][@id and *[local-name() = 'name'] and normalize-space(@id) != '']">
|
3685
|
+
<xsl:for-each select="//*[local-name() = 'table'][not(ancestor::*[local-name() = 'metanorma-extension'])][@id and *[local-name() = 'name'] and normalize-space(@id) != '']">
|
3675
3686
|
<table id="{@id}" alt-text="{*[local-name() = 'name']}">
|
3676
3687
|
<xsl:copy-of select="*[local-name() = 'name']"/>
|
3677
3688
|
</table>
|
@@ -4027,7 +4038,7 @@
|
|
4027
4038
|
</xsl:attribute>
|
4028
4039
|
</xsl:for-each>
|
4029
4040
|
|
4030
|
-
<xsl:variable name="isNoteOrFnExist" select="./*[local-name()='note'] or .//*[local-name()='fn'][local-name(..) != 'name']"/>
|
4041
|
+
<xsl:variable name="isNoteOrFnExist" select="./*[local-name()='note'] or .//*[local-name()='fn'][local-name(..) != 'name'] or ./*[local-name()='source']"/>
|
4031
4042
|
<xsl:if test="$isNoteOrFnExist = 'true'">
|
4032
4043
|
<xsl:attribute name="border-bottom">0pt solid black</xsl:attribute> <!-- set 0pt border, because there is a separete table below for footer -->
|
4033
4044
|
</xsl:if>
|
@@ -4071,7 +4082,7 @@
|
|
4071
4082
|
<xsl:apply-templates select="*[local-name()='thead']" mode="process_tbody"/>
|
4072
4083
|
</xsl:when>
|
4073
4084
|
<xsl:otherwise>
|
4074
|
-
<xsl:apply-templates select="node()[not(local-name() = 'name') and not(local-name() = 'note') and not(local-name() = 'dl') and not(local-name() = 'thead') and not(local-name() = 'tfoot')]"/> <!-- process all table' elements, except name, header, footer, note and dl which render separaterely -->
|
4085
|
+
<xsl:apply-templates select="node()[not(local-name() = 'name') and not(local-name() = 'note') and not(local-name() = 'dl') and not(local-name() = 'source') and not(local-name() = 'thead') and not(local-name() = 'tfoot')]"/> <!-- process all table' elements, except name, header, footer, note, source and dl which render separaterely -->
|
4075
4086
|
</xsl:otherwise>
|
4076
4087
|
</xsl:choose>
|
4077
4088
|
|
@@ -4194,6 +4205,11 @@
|
|
4194
4205
|
</xsl:if>
|
4195
4206
|
</xsl:template> <!-- table/name -->
|
4196
4207
|
|
4208
|
+
<!-- SOURCE: ... -->
|
4209
|
+
<xsl:template match="*[local-name()='table']/*[local-name() = 'source']" priority="2">
|
4210
|
+
<xsl:call-template name="termsource"/>
|
4211
|
+
</xsl:template>
|
4212
|
+
|
4197
4213
|
<xsl:template name="calculate-columns-numbers">
|
4198
4214
|
<xsl:param name="table-row"/>
|
4199
4215
|
<xsl:variable name="columns-count" select="count($table-row/*)"/>
|
@@ -4554,7 +4570,7 @@
|
|
4554
4570
|
</fo:table-header>
|
4555
4571
|
</xsl:template> <!-- thead -->
|
4556
4572
|
|
4557
|
-
<!-- template is using for iso, jcgm, bsi only -->
|
4573
|
+
<!-- template is using for iec, iso, jcgm, bsi only -->
|
4558
4574
|
<xsl:template name="table-header-title">
|
4559
4575
|
<xsl:param name="cols-count"/>
|
4560
4576
|
<!-- row for title -->
|
@@ -4607,7 +4623,7 @@
|
|
4607
4623
|
<xsl:param name="colwidths"/>
|
4608
4624
|
<xsl:param name="colgroup"/>
|
4609
4625
|
|
4610
|
-
<xsl:variable name="isNoteOrFnExist" select="../*[local-name()='note'] or ../*[local-name()='dl'] or ..//*[local-name()='fn'][local-name(..) != 'name']"/>
|
4626
|
+
<xsl:variable name="isNoteOrFnExist" select="../*[local-name()='note'] or ../*[local-name()='dl'] or ..//*[local-name()='fn'][local-name(..) != 'name'] or ../*[local-name()='source']"/>
|
4611
4627
|
|
4612
4628
|
<xsl:variable name="isNoteOrFnExistShowAfterTable">
|
4613
4629
|
|
@@ -4677,6 +4693,7 @@
|
|
4677
4693
|
|
4678
4694
|
<xsl:apply-templates select="../*[local-name()='dl']"/>
|
4679
4695
|
<xsl:apply-templates select="../*[local-name()='note']"/>
|
4696
|
+
<xsl:apply-templates select="../*[local-name()='source']"/>
|
4680
4697
|
|
4681
4698
|
<xsl:variable name="isDisplayRowSeparator">
|
4682
4699
|
|
@@ -5391,7 +5408,7 @@
|
|
5391
5408
|
<xsl:variable name="isAdded" select="@added"/>
|
5392
5409
|
<xsl:variable name="isDeleted" select="@deleted"/>
|
5393
5410
|
<!-- <dl><xsl:copy-of select="."/></dl> -->
|
5394
|
-
<fo:block-container>
|
5411
|
+
<fo:block-container xsl:use-attribute-sets="dl-block-style">
|
5395
5412
|
|
5396
5413
|
<xsl:call-template name="setBlockSpanAll"/>
|
5397
5414
|
|
@@ -5399,6 +5416,18 @@
|
|
5399
5416
|
<xsl:attribute name="margin-left">0mm</xsl:attribute>
|
5400
5417
|
</xsl:if>
|
5401
5418
|
|
5419
|
+
<xsl:if test="ancestor::*[local-name() = 'sourcecode']">
|
5420
|
+
<!-- set font-size as sourcecode font-size -->
|
5421
|
+
<xsl:variable name="sourcecode_attributes">
|
5422
|
+
<xsl:call-template name="get_sourcecode_attributes"/>
|
5423
|
+
</xsl:variable>
|
5424
|
+
<xsl:for-each select="xalan:nodeset($sourcecode_attributes)/sourcecode_attributes/@font-size">
|
5425
|
+
<xsl:attribute name="{local-name()}">
|
5426
|
+
<xsl:value-of select="."/>
|
5427
|
+
</xsl:attribute>
|
5428
|
+
</xsl:for-each>
|
5429
|
+
</xsl:if>
|
5430
|
+
|
5402
5431
|
<xsl:if test="parent::*[local-name() = 'note']">
|
5403
5432
|
<xsl:attribute name="margin-left">
|
5404
5433
|
<xsl:choose>
|
@@ -5850,6 +5879,7 @@
|
|
5850
5879
|
<xsl:param name="split_keep-within-line"/>
|
5851
5880
|
|
5852
5881
|
<fo:table-row xsl:use-attribute-sets="dt-row-style">
|
5882
|
+
|
5853
5883
|
<xsl:call-template name="insert_dt_cell">
|
5854
5884
|
<xsl:with-param name="key_iso" select="$key_iso"/>
|
5855
5885
|
<xsl:with-param name="split_keep-within-line" select="$split_keep-within-line"/>
|
@@ -5871,6 +5901,7 @@
|
|
5871
5901
|
<!-- border is mandatory, to calculate real width -->
|
5872
5902
|
<xsl:attribute name="border">0.1pt solid black</xsl:attribute>
|
5873
5903
|
<xsl:attribute name="text-align">left</xsl:attribute>
|
5904
|
+
|
5874
5905
|
</xsl:if>
|
5875
5906
|
|
5876
5907
|
<fo:block xsl:use-attribute-sets="dt-block-style">
|
@@ -6384,6 +6415,7 @@
|
|
6384
6415
|
<fo:inline>
|
6385
6416
|
<xsl:for-each select="$styles/style">
|
6386
6417
|
<xsl:attribute name="{@name}"><xsl:value-of select="."/></xsl:attribute>
|
6418
|
+
|
6387
6419
|
</xsl:for-each>
|
6388
6420
|
<xsl:apply-templates/>
|
6389
6421
|
</fo:inline>
|
@@ -7900,6 +7932,13 @@
|
|
7900
7932
|
</fo:block>
|
7901
7933
|
</xsl:template>
|
7902
7934
|
|
7935
|
+
<!-- SOURCE: ... -->
|
7936
|
+
<xsl:template match="*[local-name() = 'figure']/*[local-name() = 'source']" priority="2">
|
7937
|
+
|
7938
|
+
<xsl:call-template name="termsource"/>
|
7939
|
+
|
7940
|
+
</xsl:template>
|
7941
|
+
|
7903
7942
|
<xsl:template match="*[local-name() = 'image']">
|
7904
7943
|
<xsl:variable name="isAdded" select="../@added"/>
|
7905
7944
|
<xsl:variable name="isDeleted" select="../@deleted"/>
|
@@ -9029,9 +9068,11 @@
|
|
9029
9068
|
<xsl:attribute name="margin-bottom">0pt</xsl:attribute>
|
9030
9069
|
</xsl:if>
|
9031
9070
|
|
9032
|
-
<xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
|
9071
|
+
<xsl:apply-templates select="node()[not(local-name() = 'name' or local-name() = 'dl')]"/>
|
9033
9072
|
</fo:block>
|
9034
9073
|
|
9074
|
+
<xsl:apply-templates select="*[local-name() = 'dl']"/> <!-- Key table -->
|
9075
|
+
|
9035
9076
|
<xsl:apply-templates select="*[local-name()='name']"/> <!-- show sourcecode's name AFTER content -->
|
9036
9077
|
|
9037
9078
|
</fo:block-container>
|
@@ -9063,11 +9104,22 @@
|
|
9063
9104
|
<!-- add sourcecode highlighting -->
|
9064
9105
|
<xsl:template match="*[local-name()='sourcecode']//*[local-name()='span'][@class]" priority="2">
|
9065
9106
|
<xsl:variable name="class" select="@class"/>
|
9107
|
+
|
9108
|
+
<!-- Example: <1> -->
|
9109
|
+
<xsl:variable name="is_callout">
|
9110
|
+
<xsl:if test="parent::*[local-name() = 'dt']">
|
9111
|
+
<xsl:variable name="dt_id" select="../@id"/>
|
9112
|
+
<xsl:if test="ancestor::*[local-name() = 'sourcecode']//*[local-name() = 'callout'][@target = $dt_id]">true</xsl:if>
|
9113
|
+
</xsl:if>
|
9114
|
+
</xsl:variable>
|
9115
|
+
|
9066
9116
|
<xsl:choose>
|
9067
9117
|
<xsl:when test="$sourcecode_css//class[@name = $class]">
|
9068
9118
|
<fo:inline>
|
9069
9119
|
<xsl:apply-templates select="$sourcecode_css//class[@name = $class]" mode="css"/>
|
9120
|
+
<xsl:if test="$is_callout = 'true'"><</xsl:if>
|
9070
9121
|
<xsl:apply-templates/>
|
9122
|
+
<xsl:if test="$is_callout = 'true'">></xsl:if>
|
9071
9123
|
</fo:inline>
|
9072
9124
|
</xsl:when>
|
9073
9125
|
<xsl:otherwise>
|
@@ -9493,6 +9545,10 @@
|
|
9493
9545
|
</fo:block>
|
9494
9546
|
</xsl:template>
|
9495
9547
|
|
9548
|
+
<xsl:template match="*[local-name() = 'div']">
|
9549
|
+
<fo:block><xsl:apply-templates/></fo:block>
|
9550
|
+
</xsl:template>
|
9551
|
+
|
9496
9552
|
<xsl:template match="*[local-name() = 'inherit'] | *[local-name() = 'component'][@class = 'inherit'] | *[local-name() = 'div'][@type = 'requirement-inherit'] | *[local-name() = 'div'][@type = 'recommendation-inherit'] | *[local-name() = 'div'][@type = 'permission-inherit']">
|
9497
9553
|
<fo:block xsl:use-attribute-sets="inherit-style">
|
9498
9554
|
<xsl:text>Dependency </xsl:text><xsl:apply-templates/>
|
@@ -10194,13 +10250,8 @@
|
|
10194
10250
|
</xsl:template>
|
10195
10251
|
|
10196
10252
|
<xsl:template match="*[local-name() = 'deprecates']">
|
10197
|
-
<xsl:variable name="title-deprecated">
|
10198
|
-
<xsl:call-template name="getLocalizedString">
|
10199
|
-
<xsl:with-param name="key">deprecated</xsl:with-param>
|
10200
|
-
</xsl:call-template>
|
10201
|
-
</xsl:variable>
|
10202
10253
|
<fo:block xsl:use-attribute-sets="deprecates-style">
|
10203
|
-
<xsl:
|
10254
|
+
<xsl:apply-templates/>
|
10204
10255
|
</fo:block>
|
10205
10256
|
</xsl:template>
|
10206
10257
|
|
@@ -11430,6 +11481,23 @@
|
|
11430
11481
|
<xsl:template match="*[local-name() = 'stem'] | *[local-name() = 'image']" mode="update_xml_step1">
|
11431
11482
|
<xsl:copy-of select="."/>
|
11432
11483
|
</xsl:template>
|
11484
|
+
|
11485
|
+
<!-- add @id, redundant for table auto-layout algorithm -->
|
11486
|
+
<xsl:template match="*[local-name() = 'dl' or local-name() = 'table'][not(@id)]" mode="update_xml_step1">
|
11487
|
+
<xsl:copy>
|
11488
|
+
<xsl:copy-of select="@*"/>
|
11489
|
+
<xsl:call-template name="add_id"/>
|
11490
|
+
<xsl:apply-templates mode="update_xml_step1"/>
|
11491
|
+
</xsl:copy>
|
11492
|
+
</xsl:template>
|
11493
|
+
|
11494
|
+
<xsl:template name="add_id">
|
11495
|
+
<xsl:if test="not(@id)">
|
11496
|
+
<!-- add @id - first element with @id plus '_element_name' -->
|
11497
|
+
<xsl:attribute name="id"><xsl:value-of select="(.//*[@id])[1]/@id"/>_<xsl:value-of select="local-name()"/></xsl:attribute>
|
11498
|
+
</xsl:if>
|
11499
|
+
</xsl:template>
|
11500
|
+
|
11433
11501
|
<!-- =========================================================================== -->
|
11434
11502
|
<!-- END STEP1: Re-order elements in 'preface', 'sections' based on @displayorder -->
|
11435
11503
|
<!-- =========================================================================== -->
|
@@ -2974,11 +2974,17 @@
|
|
2974
2974
|
<!-- ========================== -->
|
2975
2975
|
<!-- Definition's list styles -->
|
2976
2976
|
<!-- ========================== -->
|
2977
|
+
|
2978
|
+
<xsl:attribute-set name="dl-block-style">
|
2979
|
+
|
2980
|
+
</xsl:attribute-set>
|
2981
|
+
|
2977
2982
|
<xsl:attribute-set name="dt-row-style">
|
2978
2983
|
|
2979
2984
|
</xsl:attribute-set>
|
2980
2985
|
|
2981
2986
|
<xsl:attribute-set name="dt-cell-style">
|
2987
|
+
|
2982
2988
|
</xsl:attribute-set>
|
2983
2989
|
|
2984
2990
|
<xsl:attribute-set name="dt-block-style">
|
@@ -2996,6 +3002,7 @@
|
|
2996
3002
|
|
2997
3003
|
<xsl:attribute-set name="dd-cell-style">
|
2998
3004
|
<xsl:attribute name="padding-left">2mm</xsl:attribute>
|
3005
|
+
|
2999
3006
|
</xsl:attribute-set>
|
3000
3007
|
|
3001
3008
|
<!-- ========================== -->
|
@@ -3136,6 +3143,10 @@
|
|
3136
3143
|
|
3137
3144
|
</xsl:attribute-set>
|
3138
3145
|
|
3146
|
+
<xsl:attribute-set name="figure-source-style">
|
3147
|
+
|
3148
|
+
</xsl:attribute-set>
|
3149
|
+
|
3139
3150
|
<!-- Formula's styles -->
|
3140
3151
|
<xsl:attribute-set name="formula-style">
|
3141
3152
|
<xsl:attribute name="margin-top">6pt</xsl:attribute>
|
@@ -3671,7 +3682,7 @@
|
|
3671
3682
|
|
3672
3683
|
<xsl:template name="processTables_Contents">
|
3673
3684
|
<tables>
|
3674
|
-
<xsl:for-each select="//*[local-name() = 'table'][@id and *[local-name() = 'name'] and normalize-space(@id) != '']">
|
3685
|
+
<xsl:for-each select="//*[local-name() = 'table'][not(ancestor::*[local-name() = 'metanorma-extension'])][@id and *[local-name() = 'name'] and normalize-space(@id) != '']">
|
3675
3686
|
<table id="{@id}" alt-text="{*[local-name() = 'name']}">
|
3676
3687
|
<xsl:copy-of select="*[local-name() = 'name']"/>
|
3677
3688
|
</table>
|
@@ -4027,7 +4038,7 @@
|
|
4027
4038
|
</xsl:attribute>
|
4028
4039
|
</xsl:for-each>
|
4029
4040
|
|
4030
|
-
<xsl:variable name="isNoteOrFnExist" select="./*[local-name()='note'] or .//*[local-name()='fn'][local-name(..) != 'name']"/>
|
4041
|
+
<xsl:variable name="isNoteOrFnExist" select="./*[local-name()='note'] or .//*[local-name()='fn'][local-name(..) != 'name'] or ./*[local-name()='source']"/>
|
4031
4042
|
<xsl:if test="$isNoteOrFnExist = 'true'">
|
4032
4043
|
<xsl:attribute name="border-bottom">0pt solid black</xsl:attribute> <!-- set 0pt border, because there is a separete table below for footer -->
|
4033
4044
|
</xsl:if>
|
@@ -4071,7 +4082,7 @@
|
|
4071
4082
|
<xsl:apply-templates select="*[local-name()='thead']" mode="process_tbody"/>
|
4072
4083
|
</xsl:when>
|
4073
4084
|
<xsl:otherwise>
|
4074
|
-
<xsl:apply-templates select="node()[not(local-name() = 'name') and not(local-name() = 'note') and not(local-name() = 'dl') and not(local-name() = 'thead') and not(local-name() = 'tfoot')]"/> <!-- process all table' elements, except name, header, footer, note and dl which render separaterely -->
|
4085
|
+
<xsl:apply-templates select="node()[not(local-name() = 'name') and not(local-name() = 'note') and not(local-name() = 'dl') and not(local-name() = 'source') and not(local-name() = 'thead') and not(local-name() = 'tfoot')]"/> <!-- process all table' elements, except name, header, footer, note, source and dl which render separaterely -->
|
4075
4086
|
</xsl:otherwise>
|
4076
4087
|
</xsl:choose>
|
4077
4088
|
|
@@ -4194,6 +4205,11 @@
|
|
4194
4205
|
</xsl:if>
|
4195
4206
|
</xsl:template> <!-- table/name -->
|
4196
4207
|
|
4208
|
+
<!-- SOURCE: ... -->
|
4209
|
+
<xsl:template match="*[local-name()='table']/*[local-name() = 'source']" priority="2">
|
4210
|
+
<xsl:call-template name="termsource"/>
|
4211
|
+
</xsl:template>
|
4212
|
+
|
4197
4213
|
<xsl:template name="calculate-columns-numbers">
|
4198
4214
|
<xsl:param name="table-row"/>
|
4199
4215
|
<xsl:variable name="columns-count" select="count($table-row/*)"/>
|
@@ -4554,7 +4570,7 @@
|
|
4554
4570
|
</fo:table-header>
|
4555
4571
|
</xsl:template> <!-- thead -->
|
4556
4572
|
|
4557
|
-
<!-- template is using for iso, jcgm, bsi only -->
|
4573
|
+
<!-- template is using for iec, iso, jcgm, bsi only -->
|
4558
4574
|
<xsl:template name="table-header-title">
|
4559
4575
|
<xsl:param name="cols-count"/>
|
4560
4576
|
<!-- row for title -->
|
@@ -4607,7 +4623,7 @@
|
|
4607
4623
|
<xsl:param name="colwidths"/>
|
4608
4624
|
<xsl:param name="colgroup"/>
|
4609
4625
|
|
4610
|
-
<xsl:variable name="isNoteOrFnExist" select="../*[local-name()='note'] or ../*[local-name()='dl'] or ..//*[local-name()='fn'][local-name(..) != 'name']"/>
|
4626
|
+
<xsl:variable name="isNoteOrFnExist" select="../*[local-name()='note'] or ../*[local-name()='dl'] or ..//*[local-name()='fn'][local-name(..) != 'name'] or ../*[local-name()='source']"/>
|
4611
4627
|
|
4612
4628
|
<xsl:variable name="isNoteOrFnExistShowAfterTable">
|
4613
4629
|
|
@@ -4677,6 +4693,7 @@
|
|
4677
4693
|
|
4678
4694
|
<xsl:apply-templates select="../*[local-name()='dl']"/>
|
4679
4695
|
<xsl:apply-templates select="../*[local-name()='note']"/>
|
4696
|
+
<xsl:apply-templates select="../*[local-name()='source']"/>
|
4680
4697
|
|
4681
4698
|
<xsl:variable name="isDisplayRowSeparator">
|
4682
4699
|
|
@@ -5391,7 +5408,7 @@
|
|
5391
5408
|
<xsl:variable name="isAdded" select="@added"/>
|
5392
5409
|
<xsl:variable name="isDeleted" select="@deleted"/>
|
5393
5410
|
<!-- <dl><xsl:copy-of select="."/></dl> -->
|
5394
|
-
<fo:block-container>
|
5411
|
+
<fo:block-container xsl:use-attribute-sets="dl-block-style">
|
5395
5412
|
|
5396
5413
|
<xsl:call-template name="setBlockSpanAll"/>
|
5397
5414
|
|
@@ -5399,6 +5416,18 @@
|
|
5399
5416
|
<xsl:attribute name="margin-left">0mm</xsl:attribute>
|
5400
5417
|
</xsl:if>
|
5401
5418
|
|
5419
|
+
<xsl:if test="ancestor::*[local-name() = 'sourcecode']">
|
5420
|
+
<!-- set font-size as sourcecode font-size -->
|
5421
|
+
<xsl:variable name="sourcecode_attributes">
|
5422
|
+
<xsl:call-template name="get_sourcecode_attributes"/>
|
5423
|
+
</xsl:variable>
|
5424
|
+
<xsl:for-each select="xalan:nodeset($sourcecode_attributes)/sourcecode_attributes/@font-size">
|
5425
|
+
<xsl:attribute name="{local-name()}">
|
5426
|
+
<xsl:value-of select="."/>
|
5427
|
+
</xsl:attribute>
|
5428
|
+
</xsl:for-each>
|
5429
|
+
</xsl:if>
|
5430
|
+
|
5402
5431
|
<xsl:if test="parent::*[local-name() = 'note']">
|
5403
5432
|
<xsl:attribute name="margin-left">
|
5404
5433
|
<xsl:choose>
|
@@ -5850,6 +5879,7 @@
|
|
5850
5879
|
<xsl:param name="split_keep-within-line"/>
|
5851
5880
|
|
5852
5881
|
<fo:table-row xsl:use-attribute-sets="dt-row-style">
|
5882
|
+
|
5853
5883
|
<xsl:call-template name="insert_dt_cell">
|
5854
5884
|
<xsl:with-param name="key_iso" select="$key_iso"/>
|
5855
5885
|
<xsl:with-param name="split_keep-within-line" select="$split_keep-within-line"/>
|
@@ -5871,6 +5901,7 @@
|
|
5871
5901
|
<!-- border is mandatory, to calculate real width -->
|
5872
5902
|
<xsl:attribute name="border">0.1pt solid black</xsl:attribute>
|
5873
5903
|
<xsl:attribute name="text-align">left</xsl:attribute>
|
5904
|
+
|
5874
5905
|
</xsl:if>
|
5875
5906
|
|
5876
5907
|
<fo:block xsl:use-attribute-sets="dt-block-style">
|
@@ -6384,6 +6415,7 @@
|
|
6384
6415
|
<fo:inline>
|
6385
6416
|
<xsl:for-each select="$styles/style">
|
6386
6417
|
<xsl:attribute name="{@name}"><xsl:value-of select="."/></xsl:attribute>
|
6418
|
+
|
6387
6419
|
</xsl:for-each>
|
6388
6420
|
<xsl:apply-templates/>
|
6389
6421
|
</fo:inline>
|
@@ -7900,6 +7932,13 @@
|
|
7900
7932
|
</fo:block>
|
7901
7933
|
</xsl:template>
|
7902
7934
|
|
7935
|
+
<!-- SOURCE: ... -->
|
7936
|
+
<xsl:template match="*[local-name() = 'figure']/*[local-name() = 'source']" priority="2">
|
7937
|
+
|
7938
|
+
<xsl:call-template name="termsource"/>
|
7939
|
+
|
7940
|
+
</xsl:template>
|
7941
|
+
|
7903
7942
|
<xsl:template match="*[local-name() = 'image']">
|
7904
7943
|
<xsl:variable name="isAdded" select="../@added"/>
|
7905
7944
|
<xsl:variable name="isDeleted" select="../@deleted"/>
|
@@ -9029,9 +9068,11 @@
|
|
9029
9068
|
<xsl:attribute name="margin-bottom">0pt</xsl:attribute>
|
9030
9069
|
</xsl:if>
|
9031
9070
|
|
9032
|
-
<xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
|
9071
|
+
<xsl:apply-templates select="node()[not(local-name() = 'name' or local-name() = 'dl')]"/>
|
9033
9072
|
</fo:block>
|
9034
9073
|
|
9074
|
+
<xsl:apply-templates select="*[local-name() = 'dl']"/> <!-- Key table -->
|
9075
|
+
|
9035
9076
|
<xsl:apply-templates select="*[local-name()='name']"/> <!-- show sourcecode's name AFTER content -->
|
9036
9077
|
|
9037
9078
|
</fo:block-container>
|
@@ -9063,11 +9104,22 @@
|
|
9063
9104
|
<!-- add sourcecode highlighting -->
|
9064
9105
|
<xsl:template match="*[local-name()='sourcecode']//*[local-name()='span'][@class]" priority="2">
|
9065
9106
|
<xsl:variable name="class" select="@class"/>
|
9107
|
+
|
9108
|
+
<!-- Example: <1> -->
|
9109
|
+
<xsl:variable name="is_callout">
|
9110
|
+
<xsl:if test="parent::*[local-name() = 'dt']">
|
9111
|
+
<xsl:variable name="dt_id" select="../@id"/>
|
9112
|
+
<xsl:if test="ancestor::*[local-name() = 'sourcecode']//*[local-name() = 'callout'][@target = $dt_id]">true</xsl:if>
|
9113
|
+
</xsl:if>
|
9114
|
+
</xsl:variable>
|
9115
|
+
|
9066
9116
|
<xsl:choose>
|
9067
9117
|
<xsl:when test="$sourcecode_css//class[@name = $class]">
|
9068
9118
|
<fo:inline>
|
9069
9119
|
<xsl:apply-templates select="$sourcecode_css//class[@name = $class]" mode="css"/>
|
9120
|
+
<xsl:if test="$is_callout = 'true'"><</xsl:if>
|
9070
9121
|
<xsl:apply-templates/>
|
9122
|
+
<xsl:if test="$is_callout = 'true'">></xsl:if>
|
9071
9123
|
</fo:inline>
|
9072
9124
|
</xsl:when>
|
9073
9125
|
<xsl:otherwise>
|
@@ -9493,6 +9545,10 @@
|
|
9493
9545
|
</fo:block>
|
9494
9546
|
</xsl:template>
|
9495
9547
|
|
9548
|
+
<xsl:template match="*[local-name() = 'div']">
|
9549
|
+
<fo:block><xsl:apply-templates/></fo:block>
|
9550
|
+
</xsl:template>
|
9551
|
+
|
9496
9552
|
<xsl:template match="*[local-name() = 'inherit'] | *[local-name() = 'component'][@class = 'inherit'] | *[local-name() = 'div'][@type = 'requirement-inherit'] | *[local-name() = 'div'][@type = 'recommendation-inherit'] | *[local-name() = 'div'][@type = 'permission-inherit']">
|
9497
9553
|
<fo:block xsl:use-attribute-sets="inherit-style">
|
9498
9554
|
<xsl:text>Dependency </xsl:text><xsl:apply-templates/>
|
@@ -10194,13 +10250,8 @@
|
|
10194
10250
|
</xsl:template>
|
10195
10251
|
|
10196
10252
|
<xsl:template match="*[local-name() = 'deprecates']">
|
10197
|
-
<xsl:variable name="title-deprecated">
|
10198
|
-
<xsl:call-template name="getLocalizedString">
|
10199
|
-
<xsl:with-param name="key">deprecated</xsl:with-param>
|
10200
|
-
</xsl:call-template>
|
10201
|
-
</xsl:variable>
|
10202
10253
|
<fo:block xsl:use-attribute-sets="deprecates-style">
|
10203
|
-
<xsl:
|
10254
|
+
<xsl:apply-templates/>
|
10204
10255
|
</fo:block>
|
10205
10256
|
</xsl:template>
|
10206
10257
|
|
@@ -11430,6 +11481,23 @@
|
|
11430
11481
|
<xsl:template match="*[local-name() = 'stem'] | *[local-name() = 'image']" mode="update_xml_step1">
|
11431
11482
|
<xsl:copy-of select="."/>
|
11432
11483
|
</xsl:template>
|
11484
|
+
|
11485
|
+
<!-- add @id, redundant for table auto-layout algorithm -->
|
11486
|
+
<xsl:template match="*[local-name() = 'dl' or local-name() = 'table'][not(@id)]" mode="update_xml_step1">
|
11487
|
+
<xsl:copy>
|
11488
|
+
<xsl:copy-of select="@*"/>
|
11489
|
+
<xsl:call-template name="add_id"/>
|
11490
|
+
<xsl:apply-templates mode="update_xml_step1"/>
|
11491
|
+
</xsl:copy>
|
11492
|
+
</xsl:template>
|
11493
|
+
|
11494
|
+
<xsl:template name="add_id">
|
11495
|
+
<xsl:if test="not(@id)">
|
11496
|
+
<!-- add @id - first element with @id plus '_element_name' -->
|
11497
|
+
<xsl:attribute name="id"><xsl:value-of select="(.//*[@id])[1]/@id"/>_<xsl:value-of select="local-name()"/></xsl:attribute>
|
11498
|
+
</xsl:if>
|
11499
|
+
</xsl:template>
|
11500
|
+
|
11433
11501
|
<!-- =========================================================================== -->
|
11434
11502
|
<!-- END STEP1: Re-order elements in 'preface', 'sections' based on @displayorder -->
|
11435
11503
|
<!-- =========================================================================== -->
|
@@ -231,14 +231,19 @@ module IsoDoc
|
|
231
231
|
out.div align: "center", class: "table_container" do |div|
|
232
232
|
div.table **table_attrs(node) do |t|
|
233
233
|
table_parse_core(node, t)
|
234
|
-
(
|
235
|
-
node.xpath(ns("./note[not(@type = 'units')]"))
|
236
|
-
.each { |n| parse(n, div) }
|
234
|
+
table_parse_tail(node, t)
|
237
235
|
end
|
238
236
|
end
|
239
237
|
@in_table = false
|
240
238
|
end
|
241
239
|
|
240
|
+
def table_parse_tail(node, out)
|
241
|
+
(dl = node.at(ns("./dl"))) && parse(dl, out)
|
242
|
+
node.xpath(ns("./source")).each { |n| parse(n, out) }
|
243
|
+
node.xpath(ns("./note[not(@type = 'units')]"))
|
244
|
+
.each { |n| parse(n, out) }
|
245
|
+
end
|
246
|
+
|
242
247
|
include BaseConvert
|
243
248
|
include Init
|
244
249
|
end
|
@@ -382,6 +382,9 @@
|
|
382
382
|
<optional>
|
383
383
|
<ref name="dl"/>
|
384
384
|
</optional>
|
385
|
+
<optional>
|
386
|
+
<ref name="source"/>
|
387
|
+
</optional>
|
385
388
|
</element>
|
386
389
|
</define>
|
387
390
|
<define name="figure">
|
@@ -404,9 +407,6 @@
|
|
404
407
|
<attribute name="class"/>
|
405
408
|
</optional>
|
406
409
|
<ref name="BlockAttributes"/>
|
407
|
-
<optional>
|
408
|
-
<ref name="source"/>
|
409
|
-
</optional>
|
410
410
|
<optional>
|
411
411
|
<ref name="tname"/>
|
412
412
|
</optional>
|
@@ -431,6 +431,20 @@
|
|
431
431
|
<zeroOrMore>
|
432
432
|
<ref name="note"/>
|
433
433
|
</zeroOrMore>
|
434
|
+
<optional>
|
435
|
+
<ref name="source"/>
|
436
|
+
</optional>
|
437
|
+
</element>
|
438
|
+
</define>
|
439
|
+
<define name="source">
|
440
|
+
<element name="source">
|
441
|
+
<attribute name="status">
|
442
|
+
<ref name="SourceStatusType"/>
|
443
|
+
</attribute>
|
444
|
+
<ref name="origin"/>
|
445
|
+
<optional>
|
446
|
+
<ref name="modification"/>
|
447
|
+
</optional>
|
434
448
|
</element>
|
435
449
|
</define>
|
436
450
|
<define name="sourcecode">
|
@@ -2099,10 +2113,7 @@
|
|
2099
2113
|
<define name="termsource">
|
2100
2114
|
<element name="termsource">
|
2101
2115
|
<attribute name="status">
|
2102
|
-
<
|
2103
|
-
<value>identical</value>
|
2104
|
-
<value>modified</value>
|
2105
|
-
</choice>
|
2116
|
+
<ref name="SourceStatusType"/>
|
2106
2117
|
</attribute>
|
2107
2118
|
<attribute name="type">
|
2108
2119
|
<choice>
|
@@ -2116,6 +2127,17 @@
|
|
2116
2127
|
</optional>
|
2117
2128
|
</element>
|
2118
2129
|
</define>
|
2130
|
+
<define name="SourceStatusType">
|
2131
|
+
<choice>
|
2132
|
+
<value>identical</value>
|
2133
|
+
<value>modified</value>
|
2134
|
+
<value>restyled</value>
|
2135
|
+
<value>context-added</value>
|
2136
|
+
<value>generalisation</value>
|
2137
|
+
<value>specialisation</value>
|
2138
|
+
<value>unspecified</value>
|
2139
|
+
</choice>
|
2140
|
+
</define>
|
2119
2141
|
<define name="origin">
|
2120
2142
|
<element name="origin">
|
2121
2143
|
<choice>
|
data/metanorma-iso.gemspec
CHANGED
@@ -32,9 +32,9 @@ Gem::Specification.new do |spec|
|
|
32
32
|
spec.test_files = `git ls-files -- {spec}/*`.split("\n")
|
33
33
|
spec.required_ruby_version = Gem::Requirement.new(">= 2.7.0")
|
34
34
|
|
35
|
-
spec.add_dependency "metanorma-standoc", "~> 2.4.
|
35
|
+
spec.add_dependency "metanorma-standoc", "~> 2.4.2"
|
36
36
|
spec.add_dependency "mnconvert", "~> 1.14"
|
37
|
-
spec.add_dependency "pubid-iso", "~> 0.
|
37
|
+
spec.add_dependency "pubid-iso", "~> 0.5.0"
|
38
38
|
spec.add_dependency "ruby-jing"
|
39
39
|
spec.add_dependency "tokenizer", "~> 0.3.0"
|
40
40
|
spec.add_dependency "twitter_cldr"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: metanorma-iso
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.4.
|
4
|
+
version: 2.4.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ribose Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-04-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: metanorma-standoc
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 2.4.
|
19
|
+
version: 2.4.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.4.
|
26
|
+
version: 2.4.2
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: mnconvert
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -44,14 +44,14 @@ dependencies:
|
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: 0.
|
47
|
+
version: 0.5.0
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: 0.
|
54
|
+
version: 0.5.0
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: ruby-jing
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|