metanorma-jis 0.3.5 → 0.3.6
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/html2doc/lists.rb +1 -1
- data/lib/isodoc/jis/base_convert.rb +1 -1
- data/lib/isodoc/jis/figure.rb +1 -1
- data/lib/isodoc/jis/html_convert.rb +1 -1
- data/lib/isodoc/jis/i18n.rb +1 -1
- data/lib/isodoc/jis/init.rb +2 -2
- data/lib/isodoc/jis/jis.international-standard.xsl +85 -22
- data/lib/isodoc/jis/metadata.rb +1 -1
- data/lib/isodoc/jis/pdf_convert.rb +1 -1
- data/lib/isodoc/jis/presentation_section.rb +1 -1
- data/lib/isodoc/jis/presentation_xml_convert.rb +1 -1
- data/lib/isodoc/jis/table.rb +1 -1
- data/lib/isodoc/jis/word_cleanup.rb +2 -2
- data/lib/isodoc/jis/word_convert.rb +1 -1
- data/lib/isodoc/jis/xref.rb +1 -1
- data/lib/metanorma/jis/biblio-standoc.rng +13 -0
- data/lib/metanorma/jis/biblio.rng +19 -12
- data/lib/metanorma/jis/cleanup.rb +2 -2
- data/lib/metanorma/jis/converter.rb +11 -11
- data/lib/metanorma/jis/front.rb +2 -2
- data/lib/metanorma/jis/processor.rb +6 -6
- data/lib/metanorma/jis/relaton-jis.rng +1 -0
- data/lib/metanorma/jis/validate.rb +2 -2
- data/lib/metanorma/jis/version.rb +2 -2
- data/lib/metanorma/jis.rb +1 -1
- data/lib/metanorma-jis.rb +1 -1
- data/lib/relaton/render-jis/general.rb +2 -2
- data/lib/relaton/render-jis/parse.rb +1 -1
- data/metanorma-jis.gemspec +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e0390d5e28376c6e536985c4f658e4e939eb12931602991a787b01fe832c6f8f
|
4
|
+
data.tar.gz: 599457fe99595bec1161f38217eca0ef96eab8ba1a401a4b6e6ba3ddda01f5db
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d24345a27eb6dde003eadf90254a267c86ca19bfbd16a9e94093e7389a5ffc843bc05db82389480a01d387456f7e23247efb34fc0c46a2f3095ff7bef1d289ce
|
7
|
+
data.tar.gz: bccf625290d0f44d49d024fe409b1d4e1c01849bef810ecbdd5571f3f6753691d5dc6b877327c781e6f10e9516f07c1f1739bca8eb2b658d264594524dad4a9e
|
data/lib/html2doc/lists.rb
CHANGED
data/lib/isodoc/jis/figure.rb
CHANGED
data/lib/isodoc/jis/i18n.rb
CHANGED
data/lib/isodoc/jis/init.rb
CHANGED
@@ -3,7 +3,7 @@ require_relative "metadata"
|
|
3
3
|
require_relative "i18n"
|
4
4
|
|
5
5
|
module IsoDoc
|
6
|
-
module
|
6
|
+
module Jis
|
7
7
|
module Init
|
8
8
|
def metadata_init(lang, script, locale, labels)
|
9
9
|
@meta = Metadata.new(lang, script, locale, labels)
|
@@ -21,7 +21,7 @@ module IsoDoc
|
|
21
21
|
end
|
22
22
|
|
23
23
|
def bibrenderer(options = {})
|
24
|
-
::Relaton::Render::
|
24
|
+
::Relaton::Render::Jis::General.new(options.merge(language: @lang,
|
25
25
|
i18nhash: @i18n.get))
|
26
26
|
end
|
27
27
|
|
@@ -5096,7 +5096,8 @@
|
|
5096
5096
|
</xsl:choose>
|
5097
5097
|
</xsl:variable>
|
5098
5098
|
<xsl:variable name="current_fn_number_text">
|
5099
|
-
|
5099
|
+
|
5100
|
+
<xsl:value-of select="$current_fn_number"/>
|
5100
5101
|
|
5101
5102
|
<fo:inline font-weight="normal">)</fo:inline>
|
5102
5103
|
|
@@ -5134,8 +5135,10 @@
|
|
5134
5135
|
|
5135
5136
|
<xsl:call-template name="insert_basic_link">
|
5136
5137
|
<xsl:with-param name="element">
|
5137
|
-
<fo:basic-link internal-destination="{$ref_id}" fox:alt-text="footnote {$current_fn_number}" role="Lbl"
|
5138
|
-
<
|
5138
|
+
<fo:basic-link internal-destination="{$ref_id}" fox:alt-text="footnote {$current_fn_number}"> <!-- note: role="Lbl" removed in https://github.com/metanorma/mn2pdf/issues/291 -->
|
5139
|
+
<fo:inline role="Lbl"> <!-- need for https://github.com/metanorma/metanorma-iso/issues/1003 -->
|
5140
|
+
<xsl:copy-of select="$current_fn_number_text"/>
|
5141
|
+
</fo:inline>
|
5139
5142
|
</fo:basic-link>
|
5140
5143
|
</xsl:with-param>
|
5141
5144
|
</xsl:call-template>
|
@@ -5427,7 +5430,7 @@
|
|
5427
5430
|
|
5428
5431
|
<xsl:call-template name="refine_fn-reference-style"/>
|
5429
5432
|
|
5430
|
-
<fo:basic-link internal-destination="{@reference}_{ancestor::*[@id][1]/@id}" fox:alt-text="{@reference}"> <!-- @reference | ancestor::*[local-name()='clause'][1]/@id-->
|
5433
|
+
<fo:basic-link internal-destination="{@reference}_{ancestor::*[@id][1]/@id}" fox:alt-text="footnote {@reference}"> <!-- @reference | ancestor::*[local-name()='clause'][1]/@id-->
|
5431
5434
|
<xsl:if test="ancestor::*[local-name()='table'][1]/@id"> <!-- for footnotes in tables -->
|
5432
5435
|
<xsl:attribute name="internal-destination">
|
5433
5436
|
<xsl:value-of select="concat(@reference, '_', ancestor::*[local-name()='table'][1]/@id)"/>
|
@@ -6436,9 +6439,19 @@
|
|
6436
6439
|
</fo:inline>
|
6437
6440
|
</xsl:template>
|
6438
6441
|
|
6439
|
-
<xsl:template match="text()[ancestor::*[local-name()='smallcap']]">
|
6442
|
+
<xsl:template match="text()[ancestor::*[local-name()='smallcap']]" name="smallcaps">
|
6443
|
+
<xsl:param name="txt"/>
|
6440
6444
|
<!-- <xsl:variable name="text" select="normalize-space(.)"/> --> <!-- https://github.com/metanorma/metanorma-iso/issues/1115 -->
|
6441
|
-
<xsl:variable name="text"
|
6445
|
+
<xsl:variable name="text">
|
6446
|
+
<xsl:choose>
|
6447
|
+
<xsl:when test="$txt != ''">
|
6448
|
+
<xsl:value-of select="$txt"/>
|
6449
|
+
</xsl:when>
|
6450
|
+
<xsl:otherwise>
|
6451
|
+
<xsl:value-of select="."/>
|
6452
|
+
</xsl:otherwise>
|
6453
|
+
</xsl:choose>
|
6454
|
+
</xsl:variable>
|
6442
6455
|
<xsl:variable name="ratio_">
|
6443
6456
|
0.75
|
6444
6457
|
</xsl:variable>
|
@@ -7888,9 +7901,12 @@
|
|
7888
7901
|
<xsl:apply-templates/>
|
7889
7902
|
</xsl:when>
|
7890
7903
|
<xsl:otherwise>
|
7904
|
+
<xsl:variable name="alt_text">
|
7905
|
+
<xsl:call-template name="getAltText"/>
|
7906
|
+
</xsl:variable>
|
7891
7907
|
<xsl:call-template name="insert_basic_link">
|
7892
7908
|
<xsl:with-param name="element">
|
7893
|
-
<fo:basic-link external-destination="{$target}" fox:alt-text="{$
|
7909
|
+
<fo:basic-link external-destination="{$target}" fox:alt-text="{$alt_text}">
|
7894
7910
|
<xsl:if test="$isLinkToEmbeddedFile = 'true'">
|
7895
7911
|
<xsl:attribute name="role">Annot</xsl:attribute>
|
7896
7912
|
</xsl:if>
|
@@ -7917,6 +7933,14 @@
|
|
7917
7933
|
</fo:inline>
|
7918
7934
|
</xsl:template> <!-- link -->
|
7919
7935
|
|
7936
|
+
<xsl:template name="getAltText">
|
7937
|
+
<xsl:choose>
|
7938
|
+
<xsl:when test="normalize-space(.) = ''"><xsl:value-of select="@target"/></xsl:when>
|
7939
|
+
<xsl:otherwise><xsl:value-of select="normalize-space(translate(normalize-space(), ' —', ' -'))"/></xsl:otherwise>
|
7940
|
+
<!-- <xsl:otherwise><xsl:value-of select="@target"/></xsl:otherwise> -->
|
7941
|
+
</xsl:choose>
|
7942
|
+
</xsl:template>
|
7943
|
+
|
7920
7944
|
<!-- ======================== -->
|
7921
7945
|
<!-- Appendix processing -->
|
7922
7946
|
<!-- ======================== -->
|
@@ -7947,7 +7971,7 @@
|
|
7947
7971
|
<xsl:template match="*[local-name() = 'callout']">
|
7948
7972
|
<xsl:choose>
|
7949
7973
|
<xsl:when test="normalize-space(@target) = ''"><<xsl:apply-templates/>></xsl:when>
|
7950
|
-
<xsl:otherwise><fo:basic-link internal-destination="{@target}" fox:alt-text="{
|
7974
|
+
<xsl:otherwise><fo:basic-link internal-destination="{@target}" fox:alt-text="{normalize-space()}"><<xsl:apply-templates/>></fo:basic-link></xsl:otherwise>
|
7951
7975
|
</xsl:choose>
|
7952
7976
|
</xsl:template>
|
7953
7977
|
|
@@ -7976,7 +8000,10 @@
|
|
7976
8000
|
<xsl:template match="*[local-name() = 'xref']">
|
7977
8001
|
<xsl:call-template name="insert_basic_link">
|
7978
8002
|
<xsl:with-param name="element">
|
7979
|
-
<
|
8003
|
+
<xsl:variable name="alt_text">
|
8004
|
+
<xsl:call-template name="getAltText"/>
|
8005
|
+
</xsl:variable>
|
8006
|
+
<fo:basic-link internal-destination="{@target}" fox:alt-text="{$alt_text}" xsl:use-attribute-sets="xref-style">
|
7980
8007
|
<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'])">
|
7981
8008
|
<xsl:attribute name="keep-together.within-line">always</xsl:attribute>
|
7982
8009
|
</xsl:if>
|
@@ -10449,12 +10476,14 @@
|
|
10449
10476
|
|
10450
10477
|
<xsl:when test="contains(normalize-space($fo_element), 'list')">
|
10451
10478
|
|
10452
|
-
<xsl:variable name="
|
10479
|
+
<xsl:variable name="provisional_distance_between_starts_">
|
10453
10480
|
<xsl:value-of select="10 + $text_indent"/>
|
10454
10481
|
</xsl:variable>
|
10455
|
-
<xsl:variable name="
|
10482
|
+
<xsl:variable name="provisional_distance_between_starts" select="normalize-space($provisional_distance_between_starts_)"/>
|
10483
|
+
<xsl:variable name="indent_">
|
10456
10484
|
<xsl:value-of select="$text_indent"/>
|
10457
10485
|
</xsl:variable>
|
10486
|
+
<xsl:variable name="indent" select="normalize-space($indent_)"/>
|
10458
10487
|
|
10459
10488
|
<fo:list-block provisional-distance-between-starts="{$provisional_distance_between_starts}mm">
|
10460
10489
|
<fo:list-item>
|
@@ -11171,14 +11200,17 @@
|
|
11171
11200
|
</xsl:when>
|
11172
11201
|
<xsl:when test="local-name(..) = 'ol' and @label"> <!-- for ordered lists 'ol', and if there is @label, for instance label="1.1.2" -->
|
11173
11202
|
|
11174
|
-
<xsl:variable name="
|
11203
|
+
<xsl:variable name="type" select="../@type"/>
|
11175
11204
|
|
11176
|
-
|
11205
|
+
<xsl:variable name="label">
|
11177
11206
|
|
11178
11207
|
<xsl:variable name="style_prefix_">
|
11179
11208
|
<xsl:if test="$type = 'roman'">
|
11180
11209
|
<!-- Example: (i) -->
|
11181
11210
|
</xsl:if>
|
11211
|
+
<xsl:if test="$type = 'alphabet'">
|
11212
|
+
|
11213
|
+
</xsl:if>
|
11182
11214
|
</xsl:variable>
|
11183
11215
|
<xsl:variable name="style_prefix" select="normalize-space($style_prefix_)"/>
|
11184
11216
|
|
@@ -11204,13 +11236,15 @@
|
|
11204
11236
|
<xsl:if test="$style_prefix != '' and not(starts-with(@label, $style_prefix))">
|
11205
11237
|
<xsl:value-of select="$style_prefix"/>
|
11206
11238
|
</xsl:if>
|
11239
|
+
|
11207
11240
|
<xsl:value-of select="@label"/>
|
11241
|
+
|
11208
11242
|
<xsl:if test="not(java:endsWith(java:java.lang.String.new(@label),$style_suffix))">
|
11209
11243
|
<xsl:value-of select="$style_suffix"/>
|
11210
11244
|
</xsl:if>
|
11211
11245
|
</xsl:variable>
|
11212
11246
|
|
11213
|
-
|
11247
|
+
<xsl:value-of select="normalize-space($label)"/>
|
11214
11248
|
|
11215
11249
|
</xsl:when>
|
11216
11250
|
<xsl:otherwise> <!-- for ordered lists 'ol' -->
|
@@ -13533,7 +13567,8 @@
|
|
13533
13567
|
<xsl:variable name="description" select="normalize-space($bibitem_attachment/*[local-name() = 'formattedref'])"/>
|
13534
13568
|
<xsl:variable name="filename" select="java:org.metanorma.fop.Util.getFilenameFromPath(@name)"/>
|
13535
13569
|
<!-- Todo: need update -->
|
13536
|
-
<xsl:variable name="afrelationship" select="normalize-space($bibitem_attachment//*[local-name() = '
|
13570
|
+
<xsl:variable name="afrelationship" select="normalize-space($bibitem_attachment//*[local-name() = 'classification'][@type = 'pdf-AFRelationship'])"/>
|
13571
|
+
<xsl:variable name="volatile" select="normalize-space($bibitem_attachment//*[local-name() = 'classification'][@type = 'pdf-volatile'])"/>
|
13537
13572
|
|
13538
13573
|
<pdf:embedded-file filename="{$filename}" link-as-file-annotation="true">
|
13539
13574
|
<xsl:attribute name="src">
|
@@ -13554,6 +13589,9 @@
|
|
13554
13589
|
<xsl:if test="$afrelationship != ''">
|
13555
13590
|
<xsl:attribute name="afrelationship"><xsl:value-of select="$afrelationship"/></xsl:attribute>
|
13556
13591
|
</xsl:if>
|
13592
|
+
<xsl:if test="$volatile != ''">
|
13593
|
+
<xsl:attribute name="volatile"><xsl:value-of select="$volatile"/></xsl:attribute>
|
13594
|
+
</xsl:if>
|
13557
13595
|
</pdf:embedded-file>
|
13558
13596
|
</xsl:for-each>
|
13559
13597
|
<!-- references to external attachments (no binary-encoded within the Metanorma XML file) -->
|
@@ -13564,14 +13602,18 @@
|
|
13564
13602
|
<xsl:variable name="url" select="concat('url(file:///',$basepath, $attachment_path, ')')"/>
|
13565
13603
|
<xsl:variable name="description" select="normalize-space(*[local-name() = 'formattedref'])"/>
|
13566
13604
|
<!-- Todo: need update -->
|
13567
|
-
|
13605
|
+
<xsl:variable name="afrelationship" select="normalize-space(.//*[local-name() = 'classification'][@type = 'pdf-AFRelationship'])"/>
|
13606
|
+
<xsl:variable name="volatile" select="normalize-space(.//*[local-name() = 'classification'][@type = 'pdf-volatile'])"/>
|
13568
13607
|
<pdf:embedded-file src="{$url}" filename="{$attachment_name}" link-as-file-annotation="true">
|
13569
13608
|
<xsl:if test="$description != ''">
|
13570
13609
|
<xsl:attribute name="description"><xsl:value-of select="$description"/></xsl:attribute>
|
13571
13610
|
</xsl:if>
|
13572
13611
|
<xsl:if test="$afrelationship != ''">
|
13573
|
-
|
13574
|
-
|
13612
|
+
<xsl:attribute name="afrelationship"><xsl:value-of select="$afrelationship"/></xsl:attribute>
|
13613
|
+
</xsl:if>
|
13614
|
+
<xsl:if test="$volatile != ''">
|
13615
|
+
<xsl:attribute name="volatile"><xsl:value-of select="$volatile"/></xsl:attribute>
|
13616
|
+
</xsl:if>
|
13575
13617
|
</pdf:embedded-file>
|
13576
13618
|
</xsl:for-each>
|
13577
13619
|
</xsl:if>
|
@@ -13618,10 +13660,31 @@
|
|
13618
13660
|
<xsl:value-of select="$level_total - 2"/>
|
13619
13661
|
</xsl:when>
|
13620
13662
|
<xsl:when test="ancestor::*[local-name() = 'sections'] and self::*[local-name() = 'title']">
|
13621
|
-
|
13663
|
+
<!-- determine 'depth' depends on upper clause with title/@depth -->
|
13664
|
+
<!-- <xsl:message>title=<xsl:value-of select="."/></xsl:message> -->
|
13665
|
+
<xsl:variable name="clause_with_depth_depth" select="ancestor::*[local-name() = 'clause'][*[local-name() = 'title']/@depth][1]/*[local-name() = 'title']/@depth"/>
|
13666
|
+
<!-- <xsl:message>clause_with_depth_depth=<xsl:value-of select="$clause_with_depth_depth"/></xsl:message> -->
|
13667
|
+
<xsl:variable name="clause_with_depth_level" select="count(ancestor::*[local-name() = 'clause'][*[local-name() = 'title']/@depth][1]/ancestor::*)"/>
|
13668
|
+
<!-- <xsl:message>clause_with_depth_level=<xsl:value-of select="$clause_with_depth_level"/></xsl:message> -->
|
13669
|
+
<xsl:variable name="curr_level" select="count(ancestor::*) - 1"/>
|
13670
|
+
<!-- <xsl:message>curr_level=<xsl:value-of select="$curr_level"/></xsl:message> -->
|
13671
|
+
<!-- <xsl:variable name="upper_clause_depth" select="normalize-space(ancestor::*[local-name() = 'clause'][2]/*[local-name() = 'title']/@depth)"/> -->
|
13672
|
+
<xsl:variable name="curr_clause_depth" select="number($clause_with_depth_depth) + (number($curr_level) - number($clause_with_depth_level)) "/>
|
13673
|
+
<!-- <xsl:message>curr_clause_depth=<xsl:value-of select="$curr_clause_depth"/></xsl:message> -->
|
13622
13674
|
<xsl:choose>
|
13623
|
-
<xsl:when test="string(number($
|
13624
|
-
<xsl:value-of select="number($
|
13675
|
+
<xsl:when test="string(number($curr_clause_depth)) != 'NaN'">
|
13676
|
+
<xsl:value-of select="number($curr_clause_depth)"/>
|
13677
|
+
</xsl:when>
|
13678
|
+
<xsl:otherwise>
|
13679
|
+
<xsl:value-of select="$level_total - 2"/>
|
13680
|
+
</xsl:otherwise>
|
13681
|
+
</xsl:choose>
|
13682
|
+
</xsl:when>
|
13683
|
+
<xsl:when test="ancestor::*[local-name() = 'sections'] and self::*[local-name() = 'name'] and parent::*[local-name() = 'term']">
|
13684
|
+
<xsl:variable name="upper_terms_depth" select="normalize-space(ancestor::*[local-name() = 'terms'][1]/*[local-name() = 'title']/@depth)"/>
|
13685
|
+
<xsl:choose>
|
13686
|
+
<xsl:when test="string(number($upper_terms_depth)) != 'NaN'">
|
13687
|
+
<xsl:value-of select="number($upper_terms_depth + 1)"/>
|
13625
13688
|
</xsl:when>
|
13626
13689
|
<xsl:otherwise>
|
13627
13690
|
<xsl:value-of select="$level_total - 2"/>
|
@@ -13629,7 +13692,7 @@
|
|
13629
13692
|
</xsl:choose>
|
13630
13693
|
</xsl:when>
|
13631
13694
|
<xsl:when test="ancestor::*[local-name() = 'sections']">
|
13632
|
-
<xsl:variable name="upper_clause_depth" select="normalize-space(ancestor::*[local-name() = 'clause'][1]/*[local-name() = 'title']/@depth)"/>
|
13695
|
+
<xsl:variable name="upper_clause_depth" select="normalize-space(ancestor::*[local-name() = 'clause' or local-name() = 'terms'][1]/*[local-name() = 'title']/@depth)"/>
|
13633
13696
|
<xsl:choose>
|
13634
13697
|
<xsl:when test="string(number($upper_clause_depth)) != 'NaN'">
|
13635
13698
|
<xsl:value-of select="number($upper_clause_depth + 1)"/>
|
data/lib/isodoc/jis/metadata.rb
CHANGED
data/lib/isodoc/jis/table.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
require_relative "../../html2doc/lists"
|
2
2
|
|
3
3
|
module IsoDoc
|
4
|
-
module
|
4
|
+
module Jis
|
5
5
|
class WordConvert < IsoDoc::Iso::WordConvert
|
6
6
|
def word_cleanup(docxml)
|
7
7
|
word_note_cleanup(docxml)
|
@@ -65,7 +65,7 @@ module IsoDoc
|
|
65
65
|
def to_word1(result, filename, dir, header)
|
66
66
|
result or return
|
67
67
|
result = from_xhtml(result).gsub(/-DOUBLE_HYPHEN_ESCAPE-/, "--")
|
68
|
-
::Html2Doc::
|
68
|
+
::Html2Doc::Jis.new(
|
69
69
|
filename: filename, imagedir: @localdir,
|
70
70
|
stylesheet: @wordstylesheet&.path,
|
71
71
|
header_file: header&.path, dir: dir,
|
data/lib/isodoc/jis/xref.rb
CHANGED
@@ -72,6 +72,9 @@ standards defining organization, and that is rendered in a distinct manner</a:do
|
|
72
72
|
from other documents in the same doctype</a:documentation>
|
73
73
|
</ref>
|
74
74
|
</optional>
|
75
|
+
<ref name="flavor">
|
76
|
+
<a:documentation>Flavour of Metanorma used to process this document</a:documentation>
|
77
|
+
</ref>
|
75
78
|
<optional>
|
76
79
|
<ref name="editorialgroup">
|
77
80
|
<a:documentation>Groups associated with the production of the standards document, typically within
|
@@ -113,6 +116,16 @@ a standards definition organization</a:documentation>
|
|
113
116
|
<define name="DocumentSubtype">
|
114
117
|
<text/>
|
115
118
|
</define>
|
119
|
+
<define name="flavor">
|
120
|
+
<element name="flavor">
|
121
|
+
<ref name="MetanormaFlavor"/>
|
122
|
+
</element>
|
123
|
+
</define>
|
124
|
+
<define name="MetanormaFlavor">
|
125
|
+
<a:documentation>This is in fact an enum, as of this writing: standoc iso generic ietf ieee itu nist ogc csa cc iho ribose jis iec bsi bipm plateau.
|
126
|
+
However we prefer not to hardcode it, given ongoing extension.</a:documentation>
|
127
|
+
<text/>
|
128
|
+
</define>
|
116
129
|
<define name="editorialgroup">
|
117
130
|
<a:documentation>A group associated with the production of the standards document, typically within
|
118
131
|
a standards definition organization</a:documentation>
|
@@ -1382,18 +1382,7 @@ Applies whether the resource has already been created or not, and whether it is
|
|
1382
1382
|
<define name="bdate">
|
1383
1383
|
<a:documentation>Significant date in the lifecycle of the bibliographic item, including its production and its access</a:documentation>
|
1384
1384
|
<element name="date">
|
1385
|
-
<
|
1386
|
-
<a:documentation>The phase of the production of or access to a bibliographic item</a:documentation>
|
1387
|
-
<choice>
|
1388
|
-
<ref name="BibliographicDateType"/>
|
1389
|
-
<text/>
|
1390
|
-
</choice>
|
1391
|
-
</attribute>
|
1392
|
-
<optional>
|
1393
|
-
<attribute name="text">
|
1394
|
-
<a:documentation>An optional textual description of the date, especially when a Gregorian date is not applicable</a:documentation>
|
1395
|
-
</attribute>
|
1396
|
-
</optional>
|
1385
|
+
<ref name="bDateAttributes"/>
|
1397
1386
|
<optional>
|
1398
1387
|
<choice>
|
1399
1388
|
<group>
|
@@ -1416,6 +1405,20 @@ Applies whether the resource has already been created or not, and whether it is
|
|
1416
1405
|
</optional>
|
1417
1406
|
</element>
|
1418
1407
|
</define>
|
1408
|
+
<define name="bDateAttributes">
|
1409
|
+
<attribute name="type">
|
1410
|
+
<a:documentation>The phase of the production of or access to a bibliographic item</a:documentation>
|
1411
|
+
<choice>
|
1412
|
+
<ref name="BibliographicDateType"/>
|
1413
|
+
<text/>
|
1414
|
+
</choice>
|
1415
|
+
</attribute>
|
1416
|
+
<optional>
|
1417
|
+
<attribute name="text">
|
1418
|
+
<a:documentation>An optional textual description of the date, especially when a Gregorian date is not applicable</a:documentation>
|
1419
|
+
</attribute>
|
1420
|
+
</optional>
|
1421
|
+
</define>
|
1419
1422
|
<define name="docidentifier">
|
1420
1423
|
<a:documentation>An identifier of a bibliographic item in an international standard scheme</a:documentation>
|
1421
1424
|
<element name="docidentifier">
|
@@ -1884,6 +1887,10 @@ Detailed in https://www.relaton.org/model/relations/</a:documentation>
|
|
1884
1887
|
<value>hasAnnotation</value>
|
1885
1888
|
<value>draftOf</value>
|
1886
1889
|
<value>hasDraft</value>
|
1890
|
+
<value>preliminaryDraftOf</value>
|
1891
|
+
<value>hasPreliminaryDraft</value>
|
1892
|
+
<value>revisionDraftOf</value>
|
1893
|
+
<value>hasRevisionDraft</value>
|
1887
1894
|
<value>editionOf</value>
|
1888
1895
|
<value>hasEdition</value>
|
1889
1896
|
<value>updates</value>
|
@@ -5,8 +5,8 @@ require_relative "validate"
|
|
5
5
|
require_relative "cleanup"
|
6
6
|
|
7
7
|
module Metanorma
|
8
|
-
module
|
9
|
-
class Converter <
|
8
|
+
module Jis
|
9
|
+
class Converter < Iso::Converter
|
10
10
|
XML_ROOT_TAG = "jis-standard".freeze
|
11
11
|
XML_NAMESPACE = "https://www.metanorma.org/ns/jis".freeze
|
12
12
|
|
@@ -48,17 +48,17 @@ module Metanorma
|
|
48
48
|
|
49
49
|
def html_converter(node)
|
50
50
|
if node.nil?
|
51
|
-
IsoDoc::
|
51
|
+
IsoDoc::Jis::HtmlConvert.new({})
|
52
52
|
else
|
53
|
-
IsoDoc::
|
53
|
+
IsoDoc::Jis::HtmlConvert.new(html_extract_attributes(node))
|
54
54
|
end
|
55
55
|
end
|
56
56
|
|
57
57
|
def doc_converter(node)
|
58
58
|
if node.nil?
|
59
|
-
IsoDoc::
|
59
|
+
IsoDoc::Jis::WordConvert.new({})
|
60
60
|
else
|
61
|
-
IsoDoc::
|
61
|
+
IsoDoc::Jis::WordConvert.new(doc_extract_attributes(node))
|
62
62
|
end
|
63
63
|
end
|
64
64
|
|
@@ -66,19 +66,19 @@ module Metanorma
|
|
66
66
|
return if node.attr("no-pdf")
|
67
67
|
|
68
68
|
if node.nil?
|
69
|
-
IsoDoc::
|
69
|
+
IsoDoc::Jis::PdfConvert.new({})
|
70
70
|
else
|
71
|
-
IsoDoc::
|
71
|
+
IsoDoc::Jis::PdfConvert.new(pdf_extract_attributes(node))
|
72
72
|
end
|
73
73
|
end
|
74
74
|
|
75
75
|
def presentation_xml_converter(node)
|
76
76
|
if node.nil?
|
77
|
-
IsoDoc::
|
77
|
+
IsoDoc::Jis::PresentationXMLConvert.new({})
|
78
78
|
else
|
79
|
-
IsoDoc::
|
79
|
+
IsoDoc::Jis::PresentationXMLConvert
|
80
80
|
.new(doc_extract_attributes(node)
|
81
|
-
.merge(output_formats: ::Metanorma::
|
81
|
+
.merge(output_formats: ::Metanorma::Jis::Processor.new
|
82
82
|
.output_formats))
|
83
83
|
end
|
84
84
|
end
|
data/lib/metanorma/jis/front.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
require "metanorma/processor"
|
2
2
|
|
3
3
|
module Metanorma
|
4
|
-
module
|
4
|
+
module Jis
|
5
5
|
class Processor < Metanorma::Processor
|
6
6
|
|
7
7
|
def initialize # rubocop:disable Lint/MissingSuper
|
@@ -31,20 +31,20 @@ module Metanorma
|
|
31
31
|
end
|
32
32
|
|
33
33
|
def version
|
34
|
-
"Metanorma::
|
34
|
+
"Metanorma::Jis #{Metanorma::Jis::VERSION}"
|
35
35
|
end
|
36
36
|
|
37
37
|
def output(xml, inname, outname, format, options = {})
|
38
38
|
options_preprocess(options)
|
39
39
|
case format
|
40
40
|
when :html
|
41
|
-
IsoDoc::
|
41
|
+
IsoDoc::Jis::HtmlConvert.new(options).convert(inname, xml, nil, outname)
|
42
42
|
when :doc
|
43
|
-
IsoDoc::
|
43
|
+
IsoDoc::Jis::WordConvert.new(options).convert(inname, xml, nil, outname)
|
44
44
|
when :pdf
|
45
|
-
IsoDoc::
|
45
|
+
IsoDoc::Jis::PdfConvert.new(options).convert(inname, xml, nil, outname)
|
46
46
|
when :presentation
|
47
|
-
IsoDoc::
|
47
|
+
IsoDoc::Jis::PresentationXMLConvert.new(options).convert(inname, xml, nil, outname)
|
48
48
|
else
|
49
49
|
super
|
50
50
|
end
|
data/lib/metanorma/jis.rb
CHANGED
data/lib/metanorma-jis.rb
CHANGED
@@ -5,7 +5,7 @@ require_relative "parse"
|
|
5
5
|
|
6
6
|
module Relaton
|
7
7
|
module Render
|
8
|
-
module
|
8
|
+
module Jis
|
9
9
|
class General < ::Relaton::Render::Iso::General
|
10
10
|
def config_loc
|
11
11
|
YAML.load_file(File.join(File.dirname(__FILE__), "config.yml"))
|
@@ -13,7 +13,7 @@ module Relaton
|
|
13
13
|
|
14
14
|
def klass_initialize(_options)
|
15
15
|
super
|
16
|
-
@parseklass = Relaton::Render::
|
16
|
+
@parseklass = Relaton::Render::Jis::Parse
|
17
17
|
end
|
18
18
|
|
19
19
|
def render1(doc)
|
data/metanorma-jis.gemspec
CHANGED
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.3.
|
4
|
+
version: 0.3.6
|
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-10-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: japanese_calendar
|