metanorma-jis 0.0.6 → 0.0.7
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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 574989410bb84b64ddf0f8d84a69835f2279d2127c305a1bd41176f58fb380c7
|
4
|
+
data.tar.gz: 0175b5c4a42e1a88ce815d34a88da818054fa90336a8452decc2392ecf8652c4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 82be9f3e0d0f86c80b1ab7c8ec8fccc535a675a2213bb4491ba7ee8bcd34ac0acb2cac908963462678fa8a310cda82fef4c2d20d59f02c0d7ee62b2802b46fb3
|
7
|
+
data.tar.gz: a1bc7aa00489850f3ded8328f3cd2ce9d46438557ad6b9c977ed839806f6cec7a9ed77ab9bc5c551be6a07ff14642fb4498b60656954461178ff6c47acb45545
|
@@ -1011,9 +1011,19 @@
|
|
1011
1011
|
<xsl:call-template name="append_add-style"/>
|
1012
1012
|
</xsl:if>
|
1013
1013
|
|
1014
|
-
<xsl:variable name="
|
1014
|
+
<xsl:variable name="list_item_label_">
|
1015
1015
|
<xsl:call-template name="getListItemFormat"/>
|
1016
1016
|
</xsl:variable>
|
1017
|
+
|
1018
|
+
<xsl:variable name="list_item_label">
|
1019
|
+
<xsl:choose>
|
1020
|
+
<xsl:when test="(../@type = 'arabic' or ../@type = 'alphabet' or ../@type = 'alphabetic' or ../@type = 'roman') and not(java:endsWith(java:java.lang.String.new($list_item_label_),')'))">
|
1021
|
+
<xsl:value-of select="concat($list_item_label_, ')')"/>
|
1022
|
+
</xsl:when>
|
1023
|
+
<xsl:otherwise><xsl:value-of select="$list_item_label_"/></xsl:otherwise>
|
1024
|
+
</xsl:choose>
|
1025
|
+
</xsl:variable>
|
1026
|
+
|
1017
1027
|
<xsl:choose>
|
1018
1028
|
<xsl:when test="contains($list_item_label, ')')">
|
1019
1029
|
<xsl:value-of select="substring-before($list_item_label,')')"/>
|
@@ -3236,7 +3246,7 @@
|
|
3236
3246
|
</xsl:attribute>
|
3237
3247
|
</xsl:for-each>
|
3238
3248
|
|
3239
|
-
<xsl:variable name="isNoteOrFnExist" select="./*[local-name()='note'] or .//*[local-name()='fn'][local-name(..) != 'name'] or ./*[local-name()='source']"/>
|
3249
|
+
<xsl:variable name="isNoteOrFnExist" select="./*[local-name()='note'] or ./*[local-name()='example'] or .//*[local-name()='fn'][local-name(..) != 'name'] or ./*[local-name()='source']"/>
|
3240
3250
|
<xsl:if test="$isNoteOrFnExist = 'true'">
|
3241
3251
|
<xsl:attribute name="border-bottom">0pt solid black</xsl:attribute> <!-- set 0pt border, because there is a separete table below for footer -->
|
3242
3252
|
</xsl:if>
|
@@ -3280,7 +3290,7 @@
|
|
3280
3290
|
<xsl:apply-templates select="*[local-name()='thead']" mode="process_tbody"/>
|
3281
3291
|
</xsl:when>
|
3282
3292
|
<xsl:otherwise>
|
3283
|
-
<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() = 'p') 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 -->
|
3293
|
+
<xsl:apply-templates select="node()[not(local-name() = 'name') and not(local-name() = 'note') and not(local-name() = 'example') and not(local-name() = 'dl') and not(local-name() = 'source') and not(local-name() = 'p') 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 -->
|
3284
3294
|
</xsl:otherwise>
|
3285
3295
|
</xsl:choose>
|
3286
3296
|
|
@@ -3778,7 +3788,7 @@
|
|
3778
3788
|
<xsl:param name="colwidths"/>
|
3779
3789
|
<xsl:param name="colgroup"/>
|
3780
3790
|
|
3781
|
-
<xsl:variable name="isNoteOrFnExist" select="../*[local-name()='note'] or ../*[local-name()='dl'] or ..//*[local-name()='fn'][local-name(..) != 'name'] or ../*[local-name()='source'] or ../*[local-name()='p']"/>
|
3791
|
+
<xsl:variable name="isNoteOrFnExist" select="../*[local-name()='note'] or ../*[local-name()='example'] or ../*[local-name()='dl'] or ..//*[local-name()='fn'][local-name(..) != 'name'] or ../*[local-name()='source'] or ../*[local-name()='p']"/>
|
3782
3792
|
|
3783
3793
|
<xsl:variable name="isNoteOrFnExistShowAfterTable">
|
3784
3794
|
|
@@ -3851,6 +3861,7 @@
|
|
3851
3861
|
<xsl:apply-templates select="../*[local-name()='p']"/>
|
3852
3862
|
<xsl:apply-templates select="../*[local-name()='dl']"/>
|
3853
3863
|
<xsl:apply-templates select="../*[local-name()='note']"/>
|
3864
|
+
<xsl:apply-templates select="../*[local-name()='example']"/>
|
3854
3865
|
<xsl:apply-templates select="../*[local-name()='source']"/>
|
3855
3866
|
|
3856
3867
|
<xsl:variable name="isDisplayRowSeparator">
|
@@ -3859,7 +3870,7 @@
|
|
3859
3870
|
|
3860
3871
|
<!-- horizontal row separator -->
|
3861
3872
|
<xsl:if test="normalize-space($isDisplayRowSeparator) = 'true'">
|
3862
|
-
<xsl:if test="../*[local-name()='note'] and normalize-space($table_fn_block) != ''">
|
3873
|
+
<xsl:if test="(../*[local-name()='note'] or ../*[local-name()='example']) and normalize-space($table_fn_block) != ''">
|
3863
3874
|
<fo:block-container border-top="0.5pt solid black" padding-left="1mm" padding-right="1mm">
|
3864
3875
|
|
3865
3876
|
<xsl:call-template name="setBordersTableArray"/>
|
@@ -4120,13 +4131,13 @@
|
|
4120
4131
|
</fo:table-cell>
|
4121
4132
|
</xsl:template> <!-- td -->
|
4122
4133
|
|
4123
|
-
<xsl:template match="*[local-name()='table']/*[local-name()='note']" priority="2">
|
4134
|
+
<xsl:template match="*[local-name()='table']/*[local-name()='note' or local-name() = 'example']" priority="2">
|
4124
4135
|
|
4125
4136
|
<fo:block xsl:use-attribute-sets="table-note-style">
|
4126
4137
|
|
4127
4138
|
<xsl:call-template name="refine_table-note-style"/>
|
4128
4139
|
|
4129
|
-
<!-- Table's note name (NOTE, for example) -->
|
4140
|
+
<!-- Table's note/example name (NOTE, for example) -->
|
4130
4141
|
<fo:inline xsl:use-attribute-sets="table-note-name-style">
|
4131
4142
|
|
4132
4143
|
<xsl:call-template name="refine_table-note-name-style"/>
|
@@ -4140,7 +4151,7 @@
|
|
4140
4151
|
|
4141
4152
|
</xsl:template> <!-- table/note -->
|
4142
4153
|
|
4143
|
-
<xsl:template match="*[local-name()='table']/*[local-name()='note']/*[local-name()='p']" priority="2">
|
4154
|
+
<xsl:template match="*[local-name()='table']/*[local-name()='note' or local-name()='example']/*[local-name()='p']" priority="2">
|
4144
4155
|
<xsl:apply-templates/>
|
4145
4156
|
</xsl:template>
|
4146
4157
|
|
@@ -5222,10 +5233,15 @@
|
|
5222
5233
|
<!-- ========================= -->
|
5223
5234
|
<xsl:template match="*[local-name()='em']">
|
5224
5235
|
<fo:inline font-style="italic">
|
5236
|
+
<xsl:call-template name="refine_italic_style"/>
|
5225
5237
|
<xsl:apply-templates/>
|
5226
5238
|
</fo:inline>
|
5227
5239
|
</xsl:template>
|
5228
5240
|
|
5241
|
+
<xsl:template name="refine_italic_style">
|
5242
|
+
|
5243
|
+
</xsl:template>
|
5244
|
+
|
5229
5245
|
<xsl:template match="*[local-name()='strong'] | *[local-name()='b']">
|
5230
5246
|
<xsl:param name="split_keep-within-line"/>
|
5231
5247
|
<fo:inline font-weight="bold">
|
@@ -9083,6 +9099,12 @@
|
|
9083
9099
|
|
9084
9100
|
</xsl:template>
|
9085
9101
|
|
9102
|
+
<xsl:template match="*[local-name() = 'table']/*[local-name() = 'example']/*[local-name() = 'name']">
|
9103
|
+
<fo:inline xsl:use-attribute-sets="example-name-style">
|
9104
|
+
<xsl:apply-templates/>
|
9105
|
+
</fo:inline>
|
9106
|
+
</xsl:template>
|
9107
|
+
|
9086
9108
|
<xsl:template match="*[local-name() = 'example']/*[local-name() = 'p']">
|
9087
9109
|
<xsl:param name="fo_element">block</xsl:param>
|
9088
9110
|
|
@@ -9648,6 +9670,9 @@
|
|
9648
9670
|
<xsl:otherwise><xsl:call-template name="setULLabel"/></xsl:otherwise>
|
9649
9671
|
</xsl:choose>
|
9650
9672
|
</xsl:when>
|
9673
|
+
<xsl:when test="local-name(..) = 'ol' and @label"> <!-- for ordered lists 'ol', and if there is @label, for instance label="1.1.2" -->
|
9674
|
+
<xsl:value-of select="@label"/>
|
9675
|
+
</xsl:when>
|
9651
9676
|
<xsl:otherwise> <!-- for ordered lists 'ol' -->
|
9652
9677
|
|
9653
9678
|
<!-- Example: for BSI <?list-start 2?> -->
|
@@ -9705,10 +9730,10 @@
|
|
9705
9730
|
<xsl:when test="$type = 'arabic'">
|
9706
9731
|
1)
|
9707
9732
|
</xsl:when>
|
9708
|
-
<xsl:when test="$type = 'alphabet'">
|
9733
|
+
<xsl:when test="$type = 'alphabet' or $type = 'alphabetic'">
|
9709
9734
|
a)
|
9710
9735
|
</xsl:when>
|
9711
|
-
<xsl:when test="$type = 'alphabet_upper'">
|
9736
|
+
<xsl:when test="$type = 'alphabet_upper' or $type = 'alphabetic_upper'">
|
9712
9737
|
A.
|
9713
9738
|
</xsl:when>
|
9714
9739
|
<xsl:when test="$type = 'roman'">
|
data/lib/isodoc/jis/xref.rb
CHANGED
@@ -1,6 +1,19 @@
|
|
1
1
|
module IsoDoc
|
2
2
|
module JIS
|
3
3
|
class Counter < IsoDoc::XrefGen::Counter
|
4
|
+
def ol_type(list, depth)
|
5
|
+
return list["type"].to_sym if list["type"]
|
6
|
+
return :alphabet if depth == 1
|
7
|
+
|
8
|
+
:arabic
|
9
|
+
end
|
10
|
+
|
11
|
+
def listlabel(_list, depth)
|
12
|
+
case depth
|
13
|
+
when 1 then (96 + @num).chr.to_s
|
14
|
+
else @num.to_s
|
15
|
+
end
|
16
|
+
end
|
4
17
|
end
|
5
18
|
|
6
19
|
class Xref < IsoDoc::Iso::Xref
|
@@ -53,6 +66,35 @@ module IsoDoc
|
|
53
66
|
title: clause_title(clause), level: level, type: "clause",
|
54
67
|
elem: @labels["clause"] }
|
55
68
|
end
|
69
|
+
|
70
|
+
def list_item_anchor_names(list, list_anchor, depth, prev_label,
|
71
|
+
refer_list)
|
72
|
+
c = Counter.new(list["start"] ? list["start"].to_i - 1 : 0)
|
73
|
+
list.xpath(ns("./li")).each do |li|
|
74
|
+
bare_label, label = list_item_value(li, c, depth,
|
75
|
+
{ list_anchor: list_anchor, prev_label: prev_label, refer_list: refer_list })
|
76
|
+
li["id"] and @anchors[li["id"]] =
|
77
|
+
{ label: bare_label, bare_xref: "#{bare_label})",
|
78
|
+
xref: "#{label})", type: "listitem", refer_list:
|
79
|
+
refer_list, container: list_anchor[:container] }
|
80
|
+
(li.xpath(ns(".//ol")) - li.xpath(ns(".//ol//ol"))).each do |ol|
|
81
|
+
list_item_anchor_names(ol, list_anchor, depth + 1, label, false)
|
82
|
+
end
|
83
|
+
end
|
84
|
+
end
|
85
|
+
|
86
|
+
def list_item_value(entry, counter, depth, opts)
|
87
|
+
label1 = counter.increment(entry).listlabel(entry.parent, depth)
|
88
|
+
if depth > 2
|
89
|
+
base = opts[:prev_label].match(/^(.*?)([0-9.]+)$/) # a) 1.1.1
|
90
|
+
label1 = "#{base[2]}.#{label1}"
|
91
|
+
[label1, list_item_anchor_label(label1, opts[:list_anchor],
|
92
|
+
base[1].sub(/[^a-z0-9]*$/, ""), opts[:refer_list])]
|
93
|
+
else
|
94
|
+
[label1, list_item_anchor_label(label1, opts[:list_anchor], opts[:prev_label],
|
95
|
+
opts[:refer_list])]
|
96
|
+
end
|
97
|
+
end
|
56
98
|
end
|
57
99
|
end
|
58
100
|
end
|
@@ -1012,6 +1012,7 @@
|
|
1012
1012
|
<ref name="del"/>
|
1013
1013
|
<ref name="span"/>
|
1014
1014
|
<ref name="erefstack"/>
|
1015
|
+
<ref name="date_inline"/>
|
1015
1016
|
</choice>
|
1016
1017
|
</define>
|
1017
1018
|
<define name="add">
|
@@ -1053,6 +1054,23 @@
|
|
1053
1054
|
</oneOrMore>
|
1054
1055
|
</element>
|
1055
1056
|
</define>
|
1057
|
+
<define name="date_inline">
|
1058
|
+
<element name="date">
|
1059
|
+
<attribute name="value"/>
|
1060
|
+
<optional>
|
1061
|
+
<attribute name="format"/>
|
1062
|
+
</optional>
|
1063
|
+
<optional>
|
1064
|
+
<attribute name="language"/>
|
1065
|
+
</optional>
|
1066
|
+
<optional>
|
1067
|
+
<attribute name="script"/>
|
1068
|
+
</optional>
|
1069
|
+
<optional>
|
1070
|
+
<attribute name="locale"/>
|
1071
|
+
</optional>
|
1072
|
+
</element>
|
1073
|
+
</define>
|
1056
1074
|
<define name="concept">
|
1057
1075
|
<element name="concept">
|
1058
1076
|
<optional>
|
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.0.
|
4
|
+
version: 0.0.7
|
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-05
|
11
|
+
date: 2023-06-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: metanorma-iso
|