metanorma-jis 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0ff1a468059b202d18d33ada0b23da0b282c96759e92abc63ed4fa5de1bd1758
4
- data.tar.gz: 8a9c0567a2aac6d8ee74055e473c38529c5159ecc5dc1ebc4a43e91f4bafe867
3
+ metadata.gz: 4366e5bb7877d5bf27560046213279fdac21ff1b21a7cfcf2cb1456f39a03091
4
+ data.tar.gz: fdc359c5a0d15c34f767b6d7529a6837ef5e9b8a394edfeed15c9e6726e9f4b9
5
5
  SHA512:
6
- metadata.gz: 6bd9b580671c15264219ba773d0abdb2213f864c122d4f38ebb94dcacecf5c2ad1a78c1ab482d9d616e7f3d4ecbd732b5c8b0d013386bb53d07af0829f36401d
7
- data.tar.gz: 63dff5f511d7f9e2cd2867bfadad394d4fc80a27566610633888dbec19efe7d62ac53b71233791ef1b01430702317af83d58eb8a2f9d3ccafd619508a7e7d76a
6
+ metadata.gz: 92ccc85ff096d361680d9736b684adc199547be3a4edabdcbd923b1ff5d03af47f255ebc33602efc5b2d03085d2aa0a09f064dfec756e8093c7f0474d97796fa
7
+ data.tar.gz: bffef6682d58e65c5f85614a80baf4d0c99449b20e5a4b90200592dcaa05f64c597383b8a095e441597a1fe2bc859ef3c49bbb4dd254ea73d98ed91c07439d4d
@@ -33,7 +33,7 @@ module IsoDoc
33
33
 
34
34
  def annex(node, out)
35
35
  node["commentary"] = "true" and return commentary(node, out)
36
- amd(isoxml) and @suppressheadingnumbers = @oldsuppressheadingnumbers
36
+ amd?(isoxml) and @suppressheadingnumbers = @oldsuppressheadingnumbers
37
37
  page_break(out)
38
38
  out.div **attr_code(annex_attrs(node)) do |s|
39
39
  node.elements.each do |c1|
@@ -41,7 +41,7 @@ module IsoDoc
41
41
  else parse(c1, s) end
42
42
  end
43
43
  end
44
- amd(isoxml) and @suppressheadingnumbers = true
44
+ amd?(isoxml) and @suppressheadingnumbers = true
45
45
  end
46
46
 
47
47
  def commentary(node, out)
@@ -653,16 +653,22 @@
653
653
  <fo:inline baseline-shift="20%"><fo:inline font-size="10pt">:</fo:inline>
654
654
  <fo:inline font-family="Times New Roman" font-size="10pt"><xsl:value-of select="$docidentifier_year"/></fo:inline></fo:inline>
655
655
  </fo:block>
656
- <fo:block font-family="Arial" font-size="14pt" margin-top="12mm"><fo:inline font-family="IPAexMincho">(</fo:inline>JSA<fo:inline font-family="IPAexMincho">)</fo:inline></fo:block>
656
+ <fo:block font-family="Arial" font-size="14pt" margin-top="12mm">
657
+ <fo:inline font-family="IPAexMincho">(</fo:inline>
658
+ <!-- JSA -->
659
+ <xsl:value-of select="/*/jis:bibdata/jis:copyright/jis:owner/jis:organization/jis:abbreviation"/>
660
+ <fo:inline font-family="IPAexMincho">)</fo:inline></fo:block>
657
661
  </fo:block-container>
658
662
 
659
663
  <fo:block-container absolute-position="fixed" left="0mm" top="200mm" height="69mm" text-align="center" display-align="after" font-family="IPAexMincho">
660
664
  <!-- Revised on July 22, 2019 -->
661
665
  <fo:block font-size="9pt">令和元年<fo:inline font-family="Times New Roman"> 7 </fo:inline>月<fo:inline font-family="Times New Roman"> 22 </fo:inline>日 改正</fo:block>
662
666
  <!-- Japan Industrial Standards Survey Council deliberations -->
663
- <fo:block font-size="14pt" margin-top="7mm">日本産業標準調査会 審議</fo:block>
667
+ <!-- 日本産業標準調査会 -->
668
+ <fo:block font-size="14pt" margin-top="7mm"><xsl:value-of select="/*/jis:bibdata/jis:contributor[jis:role/@type = 'authorizer']/jis:organization/jis:name/jis:variant[@language = 'ja']"/> 審議</fo:block>
664
669
  <!-- (Issued by the Japan Standards Association) -->
665
- <fo:block font-size="9pt" margin-top="6.5mm">(日本規格協会 発行)</fo:block>
670
+ <!-- 日本規格協会 -->
671
+ <fo:block font-size="9pt" margin-top="6.5mm">(<xsl:value-of select="/*/jis:bibdata/jis:contributor[jis:role/@type = 'publisher']/jis:organization/jis:name/jis:variant[@language = 'ja']"/> 発行)</fo:block>
666
672
  </fo:block-container>
667
673
  </fo:flow>
668
674
  </fo:page-sequence>
@@ -1912,11 +1918,26 @@
1912
1918
  <xsl:value-of select="$font_extended"/><xsl:text>, </xsl:text>
1913
1919
  </xsl:if>
1914
1920
 
1915
- <xsl:value-of select="."/>
1921
+ <xsl:variable name="font_family" select="."/>
1916
1922
 
1917
- <xsl:if test="$additional_fonts != ''">
1918
- <xsl:text>, </xsl:text><xsl:value-of select="$additional_fonts"/>
1919
- </xsl:if>
1923
+ <xsl:choose>
1924
+ <xsl:when test="$additional_fonts = ''">
1925
+ <xsl:value-of select="$font_family"/>
1926
+ </xsl:when>
1927
+ <xsl:otherwise> <!-- $additional_fonts != '' -->
1928
+ <xsl:choose>
1929
+ <xsl:when test="contains($font_family, ',')">
1930
+ <xsl:value-of select="substring-before($font_family, ',')"/>
1931
+ <xsl:text>, </xsl:text><xsl:value-of select="$additional_fonts"/>
1932
+ <xsl:text>, </xsl:text><xsl:value-of select="substring-after($font_family, ',')"/>
1933
+ </xsl:when>
1934
+ <xsl:otherwise>
1935
+ <xsl:value-of select="$font_family"/>
1936
+ <xsl:text>, </xsl:text><xsl:value-of select="$additional_fonts"/>
1937
+ </xsl:otherwise>
1938
+ </xsl:choose>
1939
+ </xsl:otherwise>
1940
+ </xsl:choose>
1920
1941
  </xsl:attribute>
1921
1942
  </xsl:when>
1922
1943
  <xsl:otherwise>
@@ -2144,6 +2165,7 @@
2144
2165
  <xsl:attribute name="margin-right">0mm</xsl:attribute>
2145
2166
 
2146
2167
  <xsl:attribute name="font-size">9pt</xsl:attribute>
2168
+ <xsl:attribute name="margin-bottom">8pt</xsl:attribute>
2147
2169
 
2148
2170
  </xsl:attribute-set> <!-- table-container-style -->
2149
2171
 
@@ -2307,6 +2329,10 @@
2307
2329
  <xsl:attribute name="font-size">10pt</xsl:attribute>
2308
2330
  <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
2309
2331
 
2332
+ <xsl:attribute name="font-size">inherit</xsl:attribute>
2333
+ <xsl:attribute name="margin-bottom">1pt</xsl:attribute>
2334
+ <xsl:attribute name="margin-left"><xsl:value-of select="$text_indent"/></xsl:attribute>
2335
+
2310
2336
  </xsl:attribute-set><!-- table-note-style -->
2311
2337
 
2312
2338
  <xsl:template name="refine_table-note-style">
@@ -2317,7 +2343,7 @@
2317
2343
  <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
2318
2344
 
2319
2345
  <xsl:attribute name="font-size">inherit</xsl:attribute>
2320
- <xsl:attribute name="margin-bottom">0pt</xsl:attribute>
2346
+ <xsl:attribute name="margin-bottom">1pt</xsl:attribute>
2321
2347
 
2322
2348
  </xsl:attribute-set> <!-- table-fn-style -->
2323
2349
 
@@ -2329,7 +2355,7 @@
2329
2355
  <xsl:attribute name="font-size">67%</xsl:attribute>
2330
2356
  <xsl:attribute name="font-weight">bold</xsl:attribute>
2331
2357
  <xsl:attribute name="vertical-align">super</xsl:attribute>
2332
- <xsl:attribute name="padding-right">3mm</xsl:attribute>
2358
+ <xsl:attribute name="padding-right">0mm</xsl:attribute>
2333
2359
 
2334
2360
  </xsl:attribute-set> <!-- table-fn-number-style -->
2335
2361
 
@@ -4119,11 +4145,7 @@
4119
4145
 
4120
4146
  <!-- except gb and bsi -->
4121
4147
 
4122
- <xsl:apply-templates select="../*[local-name()='p']"/>
4123
- <xsl:apply-templates select="../*[local-name()='dl']"/>
4124
- <xsl:apply-templates select="../*[local-name()='note']"/>
4125
- <xsl:apply-templates select="../*[local-name()='example']"/>
4126
- <xsl:apply-templates select="../*[local-name()='source']"/>
4148
+ <xsl:apply-templates select="../*[local-name()='p' or local-name()='dl' or local-name()='note' or local-name()='example' or local-name()='source']"/>
4127
4149
 
4128
4150
  <xsl:variable name="isDisplayRowSeparator">
4129
4151
 
@@ -4394,21 +4416,21 @@
4394
4416
 
4395
4417
  <xsl:template match="*[local-name()='table']/*[local-name()='note' or local-name() = 'example']" priority="2">
4396
4418
 
4397
- <fo:block xsl:use-attribute-sets="table-note-style">
4398
-
4399
- <xsl:call-template name="refine_table-note-style"/>
4400
-
4401
- <!-- Table's note/example name (NOTE, for example) -->
4402
- <fo:inline xsl:use-attribute-sets="table-note-name-style">
4403
-
4404
- <xsl:call-template name="refine_table-note-name-style"/>
4405
-
4406
- <xsl:apply-templates select="*[local-name() = 'name']"/>
4407
-
4408
- </fo:inline>
4409
-
4410
- <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
4411
- </fo:block>
4419
+ <fo:list-block id="{@id}" xsl:use-attribute-sets="table-note-style" provisional-distance-between-starts="{9 + $text_indent}mm"> <!-- 12 -->
4420
+ <fo:list-item>
4421
+ <fo:list-item-label start-indent="{$text_indent}mm" end-indent="label-end()">
4422
+ <fo:block>
4423
+ <xsl:apply-templates select="*[local-name() = 'name']"/>
4424
+ </fo:block>
4425
+ </fo:list-item-label>
4426
+ <fo:list-item-body start-indent="body-start()" xsl:use-attribute-sets="table-fn-body-style">
4427
+ <fo:block>
4428
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
4429
+ </fo:block>
4430
+ </fo:list-item-body>
4431
+ </fo:list-item>
4432
+ </fo:list-block>
4433
+ <!-- jis -->
4412
4434
 
4413
4435
  </xsl:template> <!-- table/note -->
4414
4436
 
@@ -4611,7 +4633,7 @@
4611
4633
  <xsl:variable name="reference" select="@reference"/>
4612
4634
  <xsl:if test="not(preceding-sibling::*[@reference = $reference])"> <!-- only unique reference puts in note-->
4613
4635
 
4614
- <fo:list-block id="{@id}" xsl:use-attribute-sets="table-fn-style" provisional-distance-between-starts="{12 + $text_indent}mm">
4636
+ <fo:list-block id="{@id}" xsl:use-attribute-sets="table-fn-style" provisional-distance-between-starts="{9 + $text_indent}mm"> <!-- 12 -->
4615
4637
  <fo:list-item>
4616
4638
  <fo:list-item-label start-indent="{$text_indent}mm" end-indent="label-end()">
4617
4639
  <fo:block>
@@ -4627,7 +4649,7 @@
4627
4649
  </fo:inline>
4628
4650
  </fo:block>
4629
4651
  </fo:list-item-label>
4630
- <fo:list-item-body start-indent="body-start()" xsl:use-attribute-sets="table-fn-body-style">&gt;
4652
+ <fo:list-item-body start-indent="body-start()" xsl:use-attribute-sets="table-fn-body-style">
4631
4653
  <fo:block>
4632
4654
  <xsl:copy-of select="./node()"/>
4633
4655
  </fo:block>
@@ -7537,8 +7559,12 @@
7537
7559
  <xsl:variable name="isAdded" select="../@added"/>
7538
7560
  <xsl:variable name="isDeleted" select="../@deleted"/>
7539
7561
  <xsl:choose>
7540
- <xsl:when test="ancestor::*[local-name() = 'title']">
7562
+ <xsl:when test="ancestor::*[local-name() = 'title'] or not(parent::*[local-name() = 'figure']) or parent::*[local-name() = 'p']">
7541
7563
  <fo:inline padding-left="1mm" padding-right="1mm">
7564
+ <xsl:if test="not(parent::*[local-name() = 'figure']) or parent::*[local-name() = 'p']">
7565
+ <xsl:attribute name="padding-left">0mm</xsl:attribute>
7566
+ <xsl:attribute name="padding-right">0mm</xsl:attribute>
7567
+ </xsl:if>
7542
7568
  <xsl:variable name="src">
7543
7569
  <xsl:call-template name="image_src"/>
7544
7570
  </xsl:variable>
@@ -7571,7 +7597,7 @@
7571
7597
  <fo:external-graphic src="{$src}" fox:alt-text="Image {@alt}" xsl:use-attribute-sets="image-graphic-style">
7572
7598
  <xsl:if test="not(@mimetype = 'image/svg+xml') and ../*[local-name() = 'name'] and not(ancestor::*[local-name() = 'table'])">
7573
7599
 
7574
- <xsl:if test="@width != '' and @width != 'auto'">
7600
+ <xsl:if test="@width != '' and @width != 'auto' and @width != 'text-width' and @width != 'full-page-width' and @width != 'narrow'">
7575
7601
  <xsl:attribute name="width">
7576
7602
  <xsl:value-of select="@width"/>
7577
7603
  </xsl:attribute>
@@ -172,23 +172,6 @@ module IsoDoc
172
172
  elem.previous = ret
173
173
  end
174
174
 
175
- def display_order(docxml)
176
- i = 0
177
- i = display_order_xpath(docxml, "//preface/*", i)
178
- i = display_order_at(docxml, "//sections/introduction", i)
179
- i = display_order_at(docxml, "//clause[@type = 'scope']", i)
180
- i = display_order_at(docxml, @xrefs.klass.norm_ref_xpath, i)
181
- i = display_order_at(docxml, "//sections/terms | " \
182
- "//sections/clause[descendant::terms]", i)
183
- i = display_order_at(docxml, "//sections/definitions", i)
184
- i = display_order_xpath(docxml, @xrefs.klass.middle_clause(docxml), i)
185
- i = display_order_xpath(docxml, "//annex[not(@commentary = 'true')]", i)
186
- i = display_order_xpath(docxml, @xrefs.klass.bibliography_xpath, i)
187
- i = display_order_xpath(docxml, "//annex[@commentary = 'true']", i)
188
- i = display_order_xpath(docxml, "//indexsect", i)
189
- display_order_xpath(docxml, "//colophon/*", i)
190
- end
191
-
192
175
  def tablesource(elem)
193
176
  while elem&.next_element&.name == "source"
194
177
  elem << "; #{to_xml(elem.next_element.remove.children)}"
@@ -132,11 +132,11 @@ module IsoDoc
132
132
 
133
133
  def annex(node, out)
134
134
  node["commentary"] == "true" and return commentary(node, out)
135
- amd(node.document.root) and
135
+ amd?(node.document.root) and
136
136
  @suppressheadingnumbers = @oldsuppressheadingnumbers
137
137
  page_break(out)
138
138
  render_annex(out, node)
139
- amd(node.document.root) and @suppressheadingnumbers = true
139
+ amd?(node.document.root) and @suppressheadingnumbers = true
140
140
  end
141
141
 
142
142
  def commentary(node, out)
@@ -25,23 +25,48 @@ module IsoDoc
25
25
  l10n("#{title} #{num}<br/>#{obl}")
26
26
  end
27
27
 
28
- def back_anchor_names(xml)
29
- if @parse_settings.empty? || @parse_settings[:clauses]
30
- i = Counter.new("@")
31
- xml.xpath(ns("//annex")).each do |c|
28
+ def clause_order_main(docxml)
29
+ [
30
+ { path: "//sections/introduction" },
31
+ { path: "//clause[@type = 'scope']" },
32
+ { path: @klass.norm_ref_xpath },
33
+ { path: "//sections/terms | " \
34
+ "//sections/clause[descendant::terms]" },
35
+ { path: "//sections/definitions | " \
36
+ "//sections/clause[descendant::definitions][not(descendant::terms)]" },
37
+ { path: @klass.middle_clause(docxml), multi: true },
38
+ ]
39
+ end
40
+
41
+ def clause_order_annex(_docxml)
42
+ [{ path: "//annex[not(@commentary = 'true')]", multi: true }]
43
+ end
44
+
45
+ def clause_order_back(_docxml)
46
+ [
47
+ { path: @klass.bibliography_xpath },
48
+ { path: "//annex[@commentary = 'true']", multi: true },
49
+ { path: "//indexsect", multi: true },
50
+ { path: "//colophon/*", multi: true },
51
+ ]
52
+ end
53
+
54
+ def section_names(clause, num, lvl)
55
+ clause&.name == "introduction" and clause["unnumbered"] = "true"
56
+ super
57
+ end
58
+
59
+ def back_clauses_anchor_names(xml)
60
+ clause_order_back(xml).each do |a|
61
+ xml.xpath(ns(a[:path])).each do |c|
32
62
  if c["commentary"] == "true"
33
63
  commentary_names(c)
34
64
  else
35
- annex_names(c, i.increment(c).print)
65
+ preface_names(c)
36
66
  end
67
+ a[:multi] or break
37
68
  end
38
- xml.xpath(ns(@klass.bibliography_xpath)).each do |b|
39
- preface_names(b)
40
- end
41
- xml.xpath(ns("//colophon/clause")).each { |b| preface_names(b) }
42
- xml.xpath(ns("//indexsect")).each { |b| preface_names(b) }
43
69
  end
44
- references(xml) if @parse_settings.empty? || @parse_settings[:refs]
45
70
  end
46
71
 
47
72
  def commentary_names(clause)
@@ -7,42 +7,130 @@ module Metanorma
7
7
  super.merge("Japanese Industrial Standards" => "JIS")
8
8
  end
9
9
 
10
+ def home_agency
11
+ "JIS"
12
+ end
13
+
14
+ # Like the ISO code, but multilingual
10
15
  def metadata_author(node, xml)
11
- publishers = node.attr("publisher") || "JIS"
12
- csv_split(publishers)&.each do |p|
13
- xml.contributor do |c|
14
- c.role type: "author"
15
- c.organization do |a|
16
- organization(a, p, false, node, !node.attr("publisher"))
17
- end
18
- end
19
- end
16
+ metadata_contrib_sdo(node, xml, JIS_HASH,
17
+ { role: "author", sourcerole: "publisher" })
20
18
  node.attr("doctype") == "expert-commentary" and
21
19
  personal_author(node, xml)
22
20
  end
23
21
 
24
22
  def metadata_publisher(node, xml)
25
- publishers = node.attr("publisher") || "JIS"
26
- csv_split(publishers)&.each do |p|
23
+ metadata_contrib_sdo(node, xml, JIS_HASH,
24
+ { role: "publisher", sourcerole: "publisher" })
25
+ metadata_contrib_sdo(node, xml, nil,
26
+ { role: "authorizer",
27
+ sourcerole: "investigative-organization",
28
+ desc: "Investigative organization" })
29
+ metadata_contrib_sdo(node, xml, nil,
30
+ { role: "authorizer",
31
+ sourcerole: "investigative-committee",
32
+ desc: "Investigative committee" })
33
+ end
34
+
35
+ LANGS = %w(ja en).freeze
36
+
37
+ JIS_HASH =
38
+ { "ja" => "日本工業規格", "en" => "Japanese Industrial Standards" }.freeze
39
+
40
+ def metadata_contrib_sdo(node, xml, default_value, opt)
41
+ pub, default = metadata_contrib_extract(node, opt[:sourcerole], default_value)
42
+ metadata_contrib_sdo_build(node, xml, pub, default, opt)
43
+ end
44
+
45
+ def metadata_contrib_sdo_build(node, xml, pub, default, opt)
46
+ pub&.each do |p|
27
47
  xml.contributor do |c|
28
- c.role type: "publisher"
48
+ c.role type: opt[:role] do |r|
49
+ opt[:desc] and r.description opt[:desc]
50
+ end
29
51
  c.organization do |a|
30
- organization(a, p, true, node, !node.attr("publisher"))
52
+ organization(a, p, opt[:role] == "publisher", node, default)
53
+ end
54
+ end
55
+ end
56
+ end
57
+
58
+ def metadata_contrib_extract(node, role, default_value)
59
+ pub, default = multiling_docattr_csv(node, role, LANGS, default_value)
60
+ a = node.attr("#{role}-abbr") and abbr = a # one abbrev for all languages
61
+ [pub&.map { |p| { name: p, abbr: abbr } }, default]
62
+ end
63
+
64
+ def multiling_docattr(node, attr, langs)
65
+ ret = node.attr(attr) and return ret
66
+ ret = langs.each_with_object({}).each do |l, m|
67
+ x = node.attr("#{attr}-#{l}") and m[l] = x
68
+ end.compact
69
+ ret.empty? and return nil
70
+ ret
71
+ end
72
+
73
+ def multiling_docattr_csv(node, attr, langs, default)
74
+ ret = multiling_docattr(node, attr, langs)
75
+ not_found = ret.nil?
76
+ ret ||= default
77
+ ret &&= if ret.is_a?(Hash) then interleave_multiling_docattr(ret)
78
+ else csv_split(ret)
79
+ end
80
+ [ret, not_found]
81
+ end
82
+
83
+ # TODO abort if CSV count different between different languages
84
+ def interleave_multiling_docattr(ret)
85
+ h = ret.transform_values { |v| csv_split(v) }
86
+ h.each_with_object([]) do |(k, v), m|
87
+ v.each_with_index do |v1, i|
88
+ m[i] ||= {}
89
+ m[i][k] = v1
90
+ end
91
+ end
92
+ end
93
+
94
+ def multiling_noko_value(value, tag, xml)
95
+ if value.is_a?(Hash)
96
+ xml.send tag do |t|
97
+ value.each do |k, v|
98
+ t.variant v, language: k
31
99
  end
32
100
  end
101
+ elsif value.is_a?(Array)
102
+ value.each { |a| xml.send tag, a }
103
+ else xml.send tag, value
33
104
  end
34
105
  end
35
106
 
107
+ def organization(xml, org, _is_pub, node = nil, default_org = nil)
108
+ org.is_a?(Hash) or org = { name: org }
109
+ abbrevs = org_abbrev
110
+ name_str = org[:name].is_a?(Hash) ? org[:name]["en"] : org[:name]
111
+ n = abbrevs.invert[org[:name]] and org = { name: n, abbr: org[:name] }
112
+ multiling_noko_value(org[:name], "name", xml)
113
+ default_org && a = multiling_docattr(node, "subdivision", LANGS) and
114
+ multiling_noko_value(a, "subdivision", xml)
115
+ abbr = org[:abbr]
116
+ abbr ||= org_abbrev[name_str]
117
+ default_org && b = node.attr("subdivision-abbr") and abbr = b
118
+ abbr and xml.abbreviation abbr
119
+ # is_pub && node and org_address(node, org) # should refactor into struct, like abbr
120
+ end
121
+
36
122
  def metadata_copyright(node, xml)
37
- pub = node.attr("copyright-holder") || node.attr("publisher") || "JIS"
38
- csv_split(pub)&.each do |p|
123
+ pub, default = metadata_contrib_extract(node, "copyright-holder", nil)
124
+ if default
125
+ pub, default = metadata_contrib_extract(node, "publisher", JIS_HASH)
126
+ end
127
+
128
+ pub&.each do |p|
39
129
  xml.copyright do |c|
40
130
  c.from (node.attr("copyright-year") || Date.today.year)
41
131
  c.owner do |owner|
42
132
  owner.organization do |o|
43
- organization(o, p, true, node,
44
- !node.attr("copyright-holder") ||
45
- node.attr("publisher"))
133
+ organization(o, p, true, node, default)
46
134
  end
47
135
  end
48
136
  end
@@ -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.2.3 -->
20
+ <!-- VERSION v1.2.4 -->
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">
@@ -2068,6 +2068,9 @@
2068
2068
  </define>
2069
2069
  <define name="termdefinition">
2070
2070
  <element name="definition">
2071
+ <optional>
2072
+ <attribute name="type"/>
2073
+ </optional>
2071
2074
  <choice>
2072
2075
  <ref name="verbaldefinition"/>
2073
2076
  <ref name="nonverbalrep"/>
@@ -1,6 +1,6 @@
1
1
  module Metanorma
2
2
  module JIS
3
- VERSION = "0.1.0".freeze
3
+ VERSION = "0.1.1".freeze
4
4
  end
5
5
  end
6
6
 
@@ -30,9 +30,7 @@ Gem::Specification.new do |spec|
30
30
  spec.test_files = `git ls-files -- {spec}/*`.split("\n")
31
31
  spec.required_ruby_version = Gem::Requirement.new(">= 2.7.0")
32
32
 
33
- spec.add_dependency "metanorma-iso", "~> 2.5.0"
34
- #spec.add_dependency "relaton-bipm", "~> 1.14.8"
35
- #spec.add_dependency "relaton-iho", "~> 1.14.3"
33
+ spec.add_dependency "metanorma-iso", "~> 2.5.1"
36
34
  spec.add_dependency "pubid-jis"
37
35
 
38
36
  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.1.0
4
+ version: 0.1.1
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-08-07 00:00:00.000000000 Z
11
+ date: 2023-08-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: metanorma-iso
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 2.5.0
19
+ version: 2.5.1
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.5.0
26
+ version: 2.5.1
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: pubid-jis
29
29
  requirement: !ruby/object:Gem::Requirement