metanorma-jis 0.2.2 → 0.2.3
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/jis/base_convert.rb +33 -0
- data/lib/isodoc/jis/jis.international-standard.xsl +66 -9
- data/lib/isodoc/jis/presentation_xml_convert.rb +0 -8
- data/lib/metanorma/jis/biblio.rng +28 -25
- data/lib/metanorma/jis/version.rb +1 -1
- data/metanorma-jis.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: a064f0e798e321317671b5e491d584734b5c6348cce7a3b4724a6bc1f71460bf
|
4
|
+
data.tar.gz: d7f98949f0e67fa152423525138a0c203e544c102160c25b4852ddeee8dfde31
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 47436176727b7d79fcf56ef5dae063d8235f4e238cee743b88f0da622f0babbe9dfc5d7c1b477f919c23990b0e75f4bd27f98a07dd7903e4aa11122acdcf7be5
|
7
|
+
data.tar.gz: 30fd069624c832d3527736d35f56d8f0ff52225579121f299f91d54b106b8584c2483d98ecac608583cd74323798fbbf6f2a60d9cdf89ec470d4943758ab7743
|
@@ -54,6 +54,39 @@ module IsoDoc
|
|
54
54
|
end
|
55
55
|
end
|
56
56
|
end
|
57
|
+
|
58
|
+
def table_parse(node, out)
|
59
|
+
cols = table_cols_count(node)
|
60
|
+
name = node.at(ns("./name"))
|
61
|
+
thead = table_thead_pt(node, name)
|
62
|
+
table_name(name, thead, cols)
|
63
|
+
super
|
64
|
+
end
|
65
|
+
|
66
|
+
def table_thead_pt(node, name)
|
67
|
+
node.at(ns("./thead")) ||
|
68
|
+
name&.after("<thead> </thead>")&.next ||
|
69
|
+
node.elements.first.before("<thead> </thead>").previous
|
70
|
+
end
|
71
|
+
|
72
|
+
def table_cols_count(node)
|
73
|
+
cols = 0
|
74
|
+
node.at(ns(".//tr")).xpath(ns("./td | ./th")).each do |x|
|
75
|
+
cols += x["colspan"]&.to_i || 1
|
76
|
+
end
|
77
|
+
cols
|
78
|
+
end
|
79
|
+
|
80
|
+
def full_row(cols, elem)
|
81
|
+
"<tr><td border='0' colspan='#{cols}'>#{elem}</td></tr>"
|
82
|
+
end
|
83
|
+
|
84
|
+
def table_name(name, thead, cols)
|
85
|
+
name or return
|
86
|
+
thead.children.first.previous =
|
87
|
+
full_row(cols, "<p class='TableTitle' style='text-align:center;'> " \
|
88
|
+
"#{name.remove.children.to_xml}</p>")
|
89
|
+
end
|
57
90
|
end
|
58
91
|
end
|
59
92
|
end
|
@@ -1620,6 +1620,8 @@
|
|
1620
1620
|
<xsl:param name="svg_images"/> <!-- svg images array -->
|
1621
1621
|
<xsl:variable name="images" select="document($svg_images)"/>
|
1622
1622
|
<xsl:param name="basepath"/> <!-- base path for images -->
|
1623
|
+
<xsl:param name="inputxml_basepath"/> <!-- input xml file path -->
|
1624
|
+
<xsl:param name="inputxml_filename"/> <!-- input xml file name -->
|
1623
1625
|
<xsl:param name="external_index"/><!-- path to index xml, generated on 1st pass, based on FOP Intermediate Format -->
|
1624
1626
|
<xsl:param name="syntax-highlight">false</xsl:param> <!-- syntax highlighting feature, default - off -->
|
1625
1627
|
<xsl:param name="add_math_as_text">true</xsl:param> <!-- add math in text behind svg formula, to copy-paste formula from PDF as text -->
|
@@ -1672,6 +1674,20 @@
|
|
1672
1674
|
<xsl:call-template name="getLang"/>
|
1673
1675
|
</xsl:variable>
|
1674
1676
|
|
1677
|
+
<xsl:variable name="inputxml_filename_prefix">
|
1678
|
+
<xsl:choose>
|
1679
|
+
<xsl:when test="contains($inputxml_filename, '.presentation.xml')">
|
1680
|
+
<xsl:value-of select="substring-before($inputxml_filename, '.presentation.xml')"/>
|
1681
|
+
</xsl:when>
|
1682
|
+
<xsl:when test="contains($inputxml_filename, '.xml')">
|
1683
|
+
<xsl:value-of select="substring-before($inputxml_filename, '.xml')"/>
|
1684
|
+
</xsl:when>
|
1685
|
+
<xsl:otherwise>
|
1686
|
+
<xsl:value-of select="$inputxml_filename"/>
|
1687
|
+
</xsl:otherwise>
|
1688
|
+
</xsl:choose>
|
1689
|
+
</xsl:variable>
|
1690
|
+
|
1675
1691
|
<!-- Note 1: Each xslt has declated variable `namespace` that allows to set some properties, processing logic, etc. for concrete xslt.
|
1676
1692
|
You can put such conditions by using xslt construction `xsl:if test="..."` or <xsl:choose><xsl:when test=""></xsl:when><xsl:otherwiste></xsl:otherwiste></xsl:choose>,
|
1677
1693
|
BUT DON'T put any another conditions together with $namespace = '...' (such conditions will be ignored). For another conditions, please use nested xsl:if or xsl:choose -->
|
@@ -2596,6 +2612,10 @@
|
|
2596
2612
|
|
2597
2613
|
</xsl:attribute-set>
|
2598
2614
|
|
2615
|
+
<xsl:template name="refine_figure-block-style">
|
2616
|
+
|
2617
|
+
</xsl:template>
|
2618
|
+
|
2599
2619
|
<xsl:attribute-set name="figure-style">
|
2600
2620
|
|
2601
2621
|
</xsl:attribute-set>
|
@@ -3499,7 +3519,7 @@
|
|
3499
3519
|
<xsl:variable name="cols-count" select="count(xalan:nodeset($simple-table)/*/tr[1]/td)"/>
|
3500
3520
|
|
3501
3521
|
<xsl:variable name="colwidths">
|
3502
|
-
<xsl:if test="not(*[local-name()='colgroup']/*[local-name()='col'])">
|
3522
|
+
<xsl:if test="not(*[local-name()='colgroup']/*[local-name()='col']) and not(@class = 'dl')">
|
3503
3523
|
<xsl:call-template name="calculate-column-widths">
|
3504
3524
|
<xsl:with-param name="cols-count" select="$cols-count"/>
|
3505
3525
|
<xsl:with-param name="table" select="$simple-table"/>
|
@@ -3611,6 +3631,11 @@
|
|
3611
3631
|
<fo:table-column column-width="{@width}"/>
|
3612
3632
|
</xsl:for-each>
|
3613
3633
|
</xsl:when>
|
3634
|
+
<xsl:when test="@class = 'dl'">
|
3635
|
+
<xsl:for-each select=".//*[local-name()='tr'][1]/*">
|
3636
|
+
<fo:table-column column-width="{@width}"/>
|
3637
|
+
</xsl:for-each>
|
3638
|
+
</xsl:when>
|
3614
3639
|
<xsl:otherwise>
|
3615
3640
|
<xsl:call-template name="insertTableColumnWidth">
|
3616
3641
|
<xsl:with-param name="colwidths" select="$colwidths"/>
|
@@ -4878,6 +4903,7 @@
|
|
4878
4903
|
<!-- ===================== -->
|
4879
4904
|
<!-- Definition List -->
|
4880
4905
|
<!-- ===================== -->
|
4906
|
+
|
4881
4907
|
<xsl:template match="*[local-name()='dl']">
|
4882
4908
|
<xsl:variable name="isAdded" select="@added"/>
|
4883
4909
|
<xsl:variable name="isDeleted" select="@deleted"/>
|
@@ -5090,10 +5116,21 @@
|
|
5090
5116
|
</xsl:variable>
|
5091
5117
|
|
5092
5118
|
<xsl:variable name="colwidths">
|
5093
|
-
<xsl:
|
5094
|
-
|
5095
|
-
<xsl:
|
5096
|
-
|
5119
|
+
<xsl:choose>
|
5120
|
+
<!-- dl from table[@class='dl'] -->
|
5121
|
+
<xsl:when test="*[local-name() = 'colgroup']">
|
5122
|
+
<autolayout/>
|
5123
|
+
<xsl:for-each select="*[local-name() = 'colgroup']/*[local-name() = 'col']">
|
5124
|
+
<column><xsl:value-of select="translate(@width,'%m','')"/></column>
|
5125
|
+
</xsl:for-each>
|
5126
|
+
</xsl:when>
|
5127
|
+
<xsl:otherwise>
|
5128
|
+
<xsl:call-template name="calculate-column-widths">
|
5129
|
+
<xsl:with-param name="cols-count" select="2"/>
|
5130
|
+
<xsl:with-param name="table" select="$simple-table"/>
|
5131
|
+
</xsl:call-template>
|
5132
|
+
</xsl:otherwise>
|
5133
|
+
</xsl:choose>
|
5097
5134
|
</xsl:variable>
|
5098
5135
|
|
5099
5136
|
<!-- <xsl:text disable-output-escaping="yes"><!- -</xsl:text>
|
@@ -7193,6 +7230,12 @@
|
|
7193
7230
|
<xsl:when test="@updatetype = 'true'">
|
7194
7231
|
<xsl:value-of select="concat(normalize-space(@target), '.pdf')"/>
|
7195
7232
|
</xsl:when>
|
7233
|
+
<xsl:when test="contains(@target, concat('_', $inputxml_filename_prefix, '_attachments'))">
|
7234
|
+
<!-- link to the PDF attachment -->
|
7235
|
+
<xsl:variable name="target_" select="translate(@target, '\', '/')"/>
|
7236
|
+
<xsl:variable name="target__" select="substring-after($target_, concat('_', $inputxml_filename_prefix, '_attachments', '/'))"/>
|
7237
|
+
<xsl:value-of select="concat('url(embedded-file:', $target__, ')')"/>
|
7238
|
+
</xsl:when>
|
7196
7239
|
<xsl:otherwise>
|
7197
7240
|
<xsl:value-of select="normalize-space(@target)"/>
|
7198
7241
|
</xsl:otherwise>
|
@@ -7593,6 +7636,7 @@
|
|
7593
7636
|
<xsl:variable name="isAdded" select="@added"/>
|
7594
7637
|
<xsl:variable name="isDeleted" select="@deleted"/>
|
7595
7638
|
<fo:block-container id="{@id}" xsl:use-attribute-sets="figure-block-style">
|
7639
|
+
<xsl:call-template name="refine_figure-block-style"/>
|
7596
7640
|
|
7597
7641
|
<xsl:call-template name="setTrackChangesStyles">
|
7598
7642
|
<xsl:with-param name="isAdded" select="$isAdded"/>
|
@@ -12067,10 +12111,10 @@
|
|
12067
12111
|
|
12068
12112
|
<xsl:template name="addPDFUAmeta">
|
12069
12113
|
<pdf:catalog>
|
12070
|
-
|
12071
|
-
|
12072
|
-
|
12073
|
-
|
12114
|
+
<pdf:dictionary type="normal" key="ViewerPreferences">
|
12115
|
+
<pdf:boolean key="DisplayDocTitle">true</pdf:boolean>
|
12116
|
+
</pdf:dictionary>
|
12117
|
+
</pdf:catalog>
|
12074
12118
|
<x:xmpmeta xmlns:x="adobe:ns:meta/">
|
12075
12119
|
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
|
12076
12120
|
<rdf:Description xmlns:pdf="http://ns.adobe.com/pdf/1.3/" xmlns:dc="http://purl.org/dc/elements/1.1/" rdf:about="">
|
@@ -12122,6 +12166,19 @@
|
|
12122
12166
|
</rdf:Description>
|
12123
12167
|
</rdf:RDF>
|
12124
12168
|
</x:xmpmeta>
|
12169
|
+
<!-- add attachments -->
|
12170
|
+
<xsl:for-each select="//*[contains(local-name(), '-standard')]/*[local-name() = 'metanorma-extension']/*[local-name() = 'attachment']">
|
12171
|
+
<xsl:choose>
|
12172
|
+
<xsl:when test="normalize-space() != ''">
|
12173
|
+
<pdf:embedded-file src="{.}" filename="{@name}"/>
|
12174
|
+
</xsl:when>
|
12175
|
+
<xsl:otherwise>
|
12176
|
+
<!-- _{filename}_attachments -->
|
12177
|
+
<xsl:variable name="url" select="concat('url(file:///',$inputxml_basepath, '_', $inputxml_filename_prefix, '_attachments', '/', @name, ')')"/>
|
12178
|
+
<pdf:embedded-file src="{$url}" filename="{@name}"/>
|
12179
|
+
</xsl:otherwise>
|
12180
|
+
</xsl:choose>
|
12181
|
+
</xsl:for-each>
|
12125
12182
|
</xsl:template> <!-- addPDFUAmeta -->
|
12126
12183
|
|
12127
12184
|
<xsl:template name="getId">
|
@@ -102,7 +102,6 @@ module IsoDoc
|
|
102
102
|
name = node.at(ns("./name"))
|
103
103
|
thead = table_thead_pt(node, name)
|
104
104
|
table_unit_note(node, thead, cols)
|
105
|
-
table_name(name, thead, cols)
|
106
105
|
end
|
107
106
|
|
108
107
|
def table_thead_pt(node, name)
|
@@ -124,13 +123,6 @@ module IsoDoc
|
|
124
123
|
thead.children.first.previous = full_row(cols, unit_note.remove.to_xml)
|
125
124
|
end
|
126
125
|
|
127
|
-
def table_name(name, thead, cols)
|
128
|
-
name or return
|
129
|
-
thead.children.first.previous =
|
130
|
-
full_row(cols, "<p class='TableTitle' style='text-align:center;'> " \
|
131
|
-
"#{name.remove.children.to_xml}</p>")
|
132
|
-
end
|
133
|
-
|
134
126
|
def full_row(cols, elem)
|
135
127
|
"<tr><td border='0' colspan='#{cols}'>#{elem}</td></tr>"
|
136
128
|
end
|
@@ -338,29 +338,32 @@
|
|
338
338
|
</define>
|
339
339
|
<define name="organization">
|
340
340
|
<element name="organization">
|
341
|
-
<
|
342
|
-
<ref name="orgname"/>
|
343
|
-
</oneOrMore>
|
344
|
-
<zeroOrMore>
|
345
|
-
<ref name="subdivision"/>
|
346
|
-
</zeroOrMore>
|
347
|
-
<optional>
|
348
|
-
<ref name="abbreviation"/>
|
349
|
-
</optional>
|
350
|
-
<zeroOrMore>
|
351
|
-
<ref name="uri"/>
|
352
|
-
</zeroOrMore>
|
353
|
-
<zeroOrMore>
|
354
|
-
<ref name="org-identifier"/>
|
355
|
-
</zeroOrMore>
|
356
|
-
<zeroOrMore>
|
357
|
-
<ref name="contact"/>
|
358
|
-
</zeroOrMore>
|
359
|
-
<optional>
|
360
|
-
<ref name="logo"/>
|
361
|
-
</optional>
|
341
|
+
<ref name="OrganizationType"/>
|
362
342
|
</element>
|
363
343
|
</define>
|
344
|
+
<define name="OrganizationType">
|
345
|
+
<oneOrMore>
|
346
|
+
<ref name="orgname"/>
|
347
|
+
</oneOrMore>
|
348
|
+
<zeroOrMore>
|
349
|
+
<ref name="subdivision"/>
|
350
|
+
</zeroOrMore>
|
351
|
+
<optional>
|
352
|
+
<ref name="abbreviation"/>
|
353
|
+
</optional>
|
354
|
+
<zeroOrMore>
|
355
|
+
<ref name="uri"/>
|
356
|
+
</zeroOrMore>
|
357
|
+
<zeroOrMore>
|
358
|
+
<ref name="org-identifier"/>
|
359
|
+
</zeroOrMore>
|
360
|
+
<zeroOrMore>
|
361
|
+
<ref name="contact"/>
|
362
|
+
</zeroOrMore>
|
363
|
+
<optional>
|
364
|
+
<ref name="logo"/>
|
365
|
+
</optional>
|
366
|
+
</define>
|
364
367
|
<define name="orgname">
|
365
368
|
<element name="name">
|
366
369
|
<choice>
|
@@ -371,10 +374,10 @@
|
|
371
374
|
</define>
|
372
375
|
<define name="subdivision">
|
373
376
|
<element name="subdivision">
|
374
|
-
<
|
375
|
-
<
|
376
|
-
|
377
|
-
|
377
|
+
<optional>
|
378
|
+
<attribute name="type"/>
|
379
|
+
</optional>
|
380
|
+
<ref name="OrganizationType"/>
|
378
381
|
</element>
|
379
382
|
</define>
|
380
383
|
<define name="logo">
|
data/metanorma-jis.gemspec
CHANGED
@@ -31,7 +31,7 @@ Gem::Specification.new do |spec|
|
|
31
31
|
spec.required_ruby_version = Gem::Requirement.new(">= 2.7.0")
|
32
32
|
|
33
33
|
spec.add_dependency "japanese_calendar", "~> 0"
|
34
|
-
spec.add_dependency "metanorma-iso", "~> 2.7.
|
34
|
+
spec.add_dependency "metanorma-iso", "~> 2.7.3"
|
35
35
|
spec.add_dependency "pubid-jis"
|
36
36
|
|
37
37
|
spec.add_development_dependency "debug"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: metanorma-jis
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ribose Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-03-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: japanese_calendar
|
@@ -30,14 +30,14 @@ dependencies:
|
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 2.7.
|
33
|
+
version: 2.7.3
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 2.7.
|
40
|
+
version: 2.7.3
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: pubid-jis
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|