metanorma-jis 0.1.0 → 0.1.1

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 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