metanorma-iho 0.0.3 → 0.1.0
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/asciidoctor/iho/biblio.rng +1 -1
- data/lib/asciidoctor/iho/converter.rb +5 -1
- data/lib/asciidoctor/iho/isodoc.rng +427 -0
- data/lib/asciidoctor/iho/reqt.rng +23 -0
- data/lib/isodoc/iho/base_convert.rb +4 -48
- data/lib/isodoc/iho/iho.specification.xsl +615 -182
- data/lib/isodoc/iho/iho.standard.xsl +615 -182
- data/lib/isodoc/iho/pdf_convert.rb +0 -13
- data/lib/isodoc/iho/presentation_xml_convert.rb +11 -0
- data/lib/isodoc/iho/xref.rb +64 -0
- data/lib/metanorma-iho.rb +1 -0
- data/lib/metanorma/iho/processor.rb +6 -4
- data/lib/metanorma/iho/version.rb +1 -1
- data/metanorma-iho.gemspec +2 -2
- metadata +12 -11
@@ -30,9 +30,22 @@
|
|
30
30
|
<data type="boolean"/>
|
31
31
|
</attribute>
|
32
32
|
</optional>
|
33
|
+
<optional>
|
34
|
+
<attribute name="number"/>
|
35
|
+
</optional>
|
33
36
|
<optional>
|
34
37
|
<attribute name="subsequence"/>
|
35
38
|
</optional>
|
39
|
+
<optional>
|
40
|
+
<attribute name="keep-with-next">
|
41
|
+
<data type="boolean"/>
|
42
|
+
</attribute>
|
43
|
+
</optional>
|
44
|
+
<optional>
|
45
|
+
<attribute name="keep-lines-together">
|
46
|
+
<data type="boolean"/>
|
47
|
+
</attribute>
|
48
|
+
</optional>
|
36
49
|
<attribute name="id">
|
37
50
|
<data type="ID"/>
|
38
51
|
</attribute>
|
@@ -141,6 +154,16 @@
|
|
141
154
|
<data type="boolean"/>
|
142
155
|
</attribute>
|
143
156
|
</optional>
|
157
|
+
<optional>
|
158
|
+
<attribute name="keep-with-next">
|
159
|
+
<data type="boolean"/>
|
160
|
+
</attribute>
|
161
|
+
</optional>
|
162
|
+
<optional>
|
163
|
+
<attribute name="keep-lines-together">
|
164
|
+
<data type="boolean"/>
|
165
|
+
</attribute>
|
166
|
+
</optional>
|
144
167
|
<oneOrMore>
|
145
168
|
<ref name="BasicBlock"/>
|
146
169
|
</oneOrMore>
|
@@ -1,3 +1,5 @@
|
|
1
|
+
require_relative "xref"
|
2
|
+
|
1
3
|
module IsoDoc
|
2
4
|
module IHO
|
3
5
|
module BaseConvert
|
@@ -5,46 +7,8 @@ module IsoDoc
|
|
5
7
|
@meta = Metadata.new(lang, script, labels)
|
6
8
|
end
|
7
9
|
|
8
|
-
def
|
9
|
-
|
10
|
-
l10n("<b>#{lbl} #{num}</b>")
|
11
|
-
end
|
12
|
-
|
13
|
-
def annex_names(clause, num)
|
14
|
-
appendix_names(clause, num)
|
15
|
-
lbl = clause["obligation"] == "informative" ? @appendix_lbl : @annex_lbl
|
16
|
-
@anchors[clause["id"]] =
|
17
|
-
{ label: annex_name_lbl(clause, num), type: "clause",
|
18
|
-
xref: "#{lbl} #{num}", level: 1 }
|
19
|
-
if a = single_annex_special_section(clause)
|
20
|
-
annex_names1(a, "#{num}", 1)
|
21
|
-
else
|
22
|
-
clause.xpath(ns("./clause | ./references | ./terms | ./definitions")).
|
23
|
-
each_with_index do |c, i|
|
24
|
-
annex_names1(c, "#{num}.#{i + 1}", 2)
|
25
|
-
end
|
26
|
-
end
|
27
|
-
hierarchical_asset_names(clause, num)
|
28
|
-
end
|
29
|
-
|
30
|
-
def back_anchor_names(docxml)
|
31
|
-
super
|
32
|
-
docxml.xpath(ns("//annex[@obligation = 'informative']")).each_with_index do |c, i|
|
33
|
-
annex_names(c, i + 1)
|
34
|
-
end
|
35
|
-
docxml.xpath(ns("//annex[not(@obligation = 'informative')]")).each_with_index do |c, i|
|
36
|
-
annex_names(c, (65 + i + (i > 7 ? 1 : 0)).chr.to_s)
|
37
|
-
end
|
38
|
-
end
|
39
|
-
|
40
|
-
def annex_names1(clause, num, level)
|
41
|
-
lbl = clause.at("./ancestor::xmlns:annex/@obligation").text == "informative" ? @appendix_lbl : @annex_lbl
|
42
|
-
@anchors[clause["id"]] =
|
43
|
-
{ label: num, xref: "#{lbl} #{num}",
|
44
|
-
level: level, type: "clause" }
|
45
|
-
clause.xpath(ns("./clause | ./references | ./terms | ./definitions")).each_with_index do |c, i|
|
46
|
-
annex_names1(c, "#{num}.#{i + 1}", level + 1)
|
47
|
-
end
|
10
|
+
def xref_init(lang, script, klass, labels, options)
|
11
|
+
@xrefs = Xref.new(lang, script, klass, labels, options)
|
48
12
|
end
|
49
13
|
|
50
14
|
# terms not defined in standoc
|
@@ -56,14 +20,6 @@ module IsoDoc
|
|
56
20
|
end
|
57
21
|
end
|
58
22
|
|
59
|
-
def appendix_names(clause, num)
|
60
|
-
clause.xpath(ns("./appendix")).each_with_index do |c, i|
|
61
|
-
@anchors[c["id"]] = anchor_struct(i + 1, nil, @appendix_lbl, "clause")
|
62
|
-
@anchors[c["id"]][:level] = 2
|
63
|
-
@anchors[c["id"]][:container] = clause["id"]
|
64
|
-
end
|
65
|
-
end
|
66
|
-
|
67
23
|
def info(isoxml, out)
|
68
24
|
@meta.series isoxml, out
|
69
25
|
@meta.commentperiod isoxml, out
|
@@ -125,46 +125,9 @@
|
|
125
125
|
<fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd-landscape"/>
|
126
126
|
</fo:repeatable-page-master-alternatives>
|
127
127
|
</fo:page-sequence-master>
|
128
|
-
|
129
|
-
|
130
128
|
</fo:layout-master-set>
|
131
129
|
|
132
|
-
<
|
133
|
-
<pdf:catalog xmlns:pdf="http://xmlgraphics.apache.org/fop/extensions/pdf">
|
134
|
-
<pdf:dictionary type="normal" key="ViewerPreferences">
|
135
|
-
<pdf:boolean key="DisplayDocTitle">true</pdf:boolean>
|
136
|
-
</pdf:dictionary>
|
137
|
-
</pdf:catalog>
|
138
|
-
<x:xmpmeta xmlns:x="adobe:ns:meta/">
|
139
|
-
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
|
140
|
-
<rdf:Description xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:pdf="http://ns.adobe.com/pdf/1.3/" rdf:about="">
|
141
|
-
<!-- Dublin Core properties go here -->
|
142
|
-
<dc:title>
|
143
|
-
<xsl:choose>
|
144
|
-
<xsl:when test="normalize-space($title-en) != ''">
|
145
|
-
<xsl:value-of select="$title-en"/>
|
146
|
-
</xsl:when>
|
147
|
-
<xsl:otherwise> </xsl:otherwise>
|
148
|
-
</xsl:choose>
|
149
|
-
</dc:title>
|
150
|
-
<dc:creator><xsl:value-of select="/iho:iho-standard/iho:bibdata/iho:contributor[iho:role/@type='author']/iho:organization/iho:name"/></dc:creator>
|
151
|
-
<dc:description>
|
152
|
-
<xsl:variable name="abstract">
|
153
|
-
<xsl:copy-of select="/iho:iho-standard/iho:bibliography/iho:references/iho:bibitem/iho:abstract//text()"/>
|
154
|
-
</xsl:variable>
|
155
|
-
<xsl:value-of select="normalize-space($abstract)"/>
|
156
|
-
</dc:description>
|
157
|
-
<pdf:Keywords>
|
158
|
-
<xsl:call-template name="insertKeywords"/>
|
159
|
-
</pdf:Keywords>
|
160
|
-
</rdf:Description>
|
161
|
-
<rdf:Description xmlns:xmp="http://ns.adobe.com/xap/1.0/" rdf:about="">
|
162
|
-
<!-- XMP properties go here -->
|
163
|
-
<xmp:CreatorTool/>
|
164
|
-
</rdf:Description>
|
165
|
-
</rdf:RDF>
|
166
|
-
</x:xmpmeta>
|
167
|
-
</fo:declarations>
|
130
|
+
<xsl:call-template name="addPDFUAmeta"/>
|
168
131
|
|
169
132
|
<!-- =========================== -->
|
170
133
|
<!-- Cover Page -->
|
@@ -258,6 +221,11 @@
|
|
258
221
|
<fo:block-container margin-right="-12.7mm">
|
259
222
|
<fo:block-container margin-right="0mm">
|
260
223
|
<fo:block color="rgb(14, 36, 133)" margin-bottom="15.5pt">
|
224
|
+
<xsl:variable name="title-toc">
|
225
|
+
<xsl:call-template name="getTitle">
|
226
|
+
<xsl:with-param name="name" select="'title-toc'"/>
|
227
|
+
</xsl:call-template>
|
228
|
+
</xsl:variable>
|
261
229
|
<xsl:value-of select="$title-toc"/>
|
262
230
|
</fo:block>
|
263
231
|
<xsl:if test="$debug = 'true'">
|
@@ -421,10 +389,20 @@
|
|
421
389
|
<xsl:variable name="section">
|
422
390
|
<xsl:choose>
|
423
391
|
<xsl:when test="@obligation = 'informative'">
|
392
|
+
<xsl:variable name="title-appendix">
|
393
|
+
<xsl:call-template name="getTitle">
|
394
|
+
<xsl:with-param name="name" select="'title-appendix'"/>
|
395
|
+
</xsl:call-template>
|
396
|
+
</xsl:variable>
|
424
397
|
<xsl:value-of select="$title-appendix"/>
|
425
398
|
<xsl:number format="1" level="any" count="iho:annex[@obligation = 'informative']"/>
|
426
399
|
</xsl:when>
|
427
400
|
<xsl:otherwise>
|
401
|
+
<xsl:variable name="title-annex">
|
402
|
+
<xsl:call-template name="getTitle">
|
403
|
+
<xsl:with-param name="name" select="'title-annex'"/>
|
404
|
+
</xsl:call-template>
|
405
|
+
</xsl:variable>
|
428
406
|
<xsl:value-of select="$title-annex"/>
|
429
407
|
<xsl:number format="A" level="any" count="iho:annex[not(@obligation = 'informative')]"/>
|
430
408
|
</xsl:otherwise>
|
@@ -517,7 +495,12 @@
|
|
517
495
|
<xsl:param name="sectionNum"/>
|
518
496
|
<xsl:variable name="annex-id" select="ancestor::iho:annex/@id"/>
|
519
497
|
<item level="" id="{@id}" display="false" type="table">
|
520
|
-
<xsl:attribute name="section">
|
498
|
+
<xsl:attribute name="section">
|
499
|
+
<xsl:variable name="title-table">
|
500
|
+
<xsl:call-template name="getTitle">
|
501
|
+
<xsl:with-param name="name" select="'title-table'"/>
|
502
|
+
</xsl:call-template>
|
503
|
+
</xsl:variable>
|
521
504
|
<xsl:value-of select="$title-table"/>
|
522
505
|
<xsl:call-template name="getTableNumber"/>
|
523
506
|
</xsl:attribute>
|
@@ -528,7 +511,12 @@
|
|
528
511
|
<xsl:template match="iho:formula" mode="contents">
|
529
512
|
<item level="" id="{@id}" display="false">
|
530
513
|
<xsl:attribute name="section">
|
531
|
-
<xsl:
|
514
|
+
<xsl:variable name="title-formula">
|
515
|
+
<xsl:call-template name="getTitle">
|
516
|
+
<xsl:with-param name="name" select="'title-formula'"/>
|
517
|
+
</xsl:call-template>
|
518
|
+
</xsl:variable>
|
519
|
+
<xsl:value-of select="$title-formula"/><xsl:number format="(A.1)" level="multiple" count="iho:annex | iho:formula"/>
|
532
520
|
</xsl:attribute>
|
533
521
|
</item>
|
534
522
|
</xsl:template>
|
@@ -562,6 +550,11 @@
|
|
562
550
|
|
563
551
|
|
564
552
|
<xsl:template match="/iho:iho-standard/iho:bibdata/iho:edition">
|
553
|
+
<xsl:variable name="title-edition">
|
554
|
+
<xsl:call-template name="getTitle">
|
555
|
+
<xsl:with-param name="name" select="'title-edition'"/>
|
556
|
+
</xsl:call-template>
|
557
|
+
</xsl:variable>
|
565
558
|
<xsl:value-of select="$title-edition"/>
|
566
559
|
<xsl:apply-templates/>
|
567
560
|
</xsl:template>
|
@@ -914,6 +907,11 @@
|
|
914
907
|
</xsl:template>
|
915
908
|
|
916
909
|
<xsl:template name="getFigureNumber">
|
910
|
+
<xsl:variable name="title-figure">
|
911
|
+
<xsl:call-template name="getTitle">
|
912
|
+
<xsl:with-param name="name" select="'title-figure'"/>
|
913
|
+
</xsl:call-template>
|
914
|
+
</xsl:variable>
|
917
915
|
<xsl:choose>
|
918
916
|
<xsl:when test="ancestor::iho:annex">
|
919
917
|
<xsl:choose>
|
@@ -953,6 +951,11 @@
|
|
953
951
|
</xsl:if>
|
954
952
|
<xsl:variable name="claims_id" select="ancestor::iho:clause[1]/@id"/>
|
955
953
|
<fo:inline font-size="11pt" padding-right="2mm">
|
954
|
+
<xsl:variable name="title-note">
|
955
|
+
<xsl:call-template name="getTitle">
|
956
|
+
<xsl:with-param name="name" select="'title-note'"/>
|
957
|
+
</xsl:call-template>
|
958
|
+
</xsl:variable>
|
956
959
|
<xsl:value-of select="$title-note"/>
|
957
960
|
<xsl:if test="count(ancestor::iho:clause[1]//iho:note) > 1">
|
958
961
|
<xsl:number count="iho:note[ancestor::iho:clause[@id = $claims_id]]" level="any"/>
|
@@ -1003,7 +1006,14 @@
|
|
1003
1006
|
<fo:block margin-bottom="12pt">
|
1004
1007
|
<!-- Example:[SOURCE: [3]] -->
|
1005
1008
|
<fo:basic-link internal-destination="{iho:origin/@bibitemid}" fox:alt-text="{iho:origin/@citeas}">
|
1006
|
-
<xsl:text>[
|
1009
|
+
<xsl:text>[</xsl:text>
|
1010
|
+
<xsl:variable name="title-source">
|
1011
|
+
<xsl:call-template name="getTitle">
|
1012
|
+
<xsl:with-param name="name" select="'title-source'"/>
|
1013
|
+
</xsl:call-template>
|
1014
|
+
</xsl:variable>
|
1015
|
+
<xsl:value-of select="$title-source"/>
|
1016
|
+
<xsl:text>: </xsl:text>
|
1007
1017
|
<fo:inline color="blue" text-decoration="underline"><xsl:value-of select="iho:origin/@citeas"/></fo:inline>
|
1008
1018
|
|
1009
1019
|
<xsl:apply-templates select="iho:origin/iho:localityStack"/>
|
@@ -1017,8 +1027,8 @@
|
|
1017
1027
|
<xsl:template match="iho:admonition">
|
1018
1028
|
<fo:block-container border="0.5pt solid rgb(79, 129, 189)" color="rgb(79, 129, 189)" margin-left="16mm" margin-right="16mm" margin-bottom="12pt">
|
1019
1029
|
<fo:block-container margin-left="0mm" margin-right="0mm" padding="2mm" padding-top="3mm">
|
1020
|
-
<fo:block font-size="11pt" margin-bottom="6pt" font-weight="bold" font-style="italic" text-align="center">
|
1021
|
-
<xsl:value-of select="
|
1030
|
+
<fo:block font-size="11pt" margin-bottom="6pt" font-weight="bold" font-style="italic" text-align="center">
|
1031
|
+
<xsl:value-of select="java:toUpperCase(java:java.lang.String.new(@type))"/>
|
1022
1032
|
</fo:block>
|
1023
1033
|
<fo:block font-style="italic">
|
1024
1034
|
<xsl:apply-templates/>
|
@@ -1027,6 +1037,12 @@
|
|
1027
1037
|
</fo:block-container>
|
1028
1038
|
</xsl:template>
|
1029
1039
|
|
1040
|
+
<xsl:template match="iho:formula">
|
1041
|
+
<fo:block id="{@id}">
|
1042
|
+
<xsl:apply-templates/>
|
1043
|
+
</fo:block>
|
1044
|
+
</xsl:template>
|
1045
|
+
|
1030
1046
|
<xsl:template match="iho:formula/iho:dt/iho:stem">
|
1031
1047
|
<fo:inline>
|
1032
1048
|
<xsl:apply-templates/>
|
@@ -1034,7 +1050,7 @@
|
|
1034
1050
|
</xsl:template>
|
1035
1051
|
|
1036
1052
|
<xsl:template match="iho:formula/iho:stem">
|
1037
|
-
<fo:block
|
1053
|
+
<fo:block margin-top="6pt" margin-bottom="12pt" text-align="center">
|
1038
1054
|
<xsl:apply-templates/>
|
1039
1055
|
</fo:block>
|
1040
1056
|
</xsl:template>
|
@@ -1059,7 +1075,7 @@
|
|
1059
1075
|
|
1060
1076
|
<xsl:template match="iho:source">
|
1061
1077
|
<fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}">
|
1062
|
-
<xsl:value-of select="@citeas" disable-output-escaping="yes"
|
1078
|
+
<xsl:value-of select="@citeas"/> <!-- disable-output-escaping="yes" -->
|
1063
1079
|
<xsl:apply-templates select="iho:localityStack"/>
|
1064
1080
|
</fo:basic-link>
|
1065
1081
|
</xsl:template>
|
@@ -1080,6 +1096,11 @@
|
|
1080
1096
|
<xsl:variable name="level" select="xalan:nodeset($contents)//item[@id =$target]/@level"/>
|
1081
1097
|
<xsl:choose>
|
1082
1098
|
<xsl:when test="$type = 'clause' and $root != 'annex' and $level = 1 and normalize-space(.) = ''"><!-- and not (ancestor::annex) -->
|
1099
|
+
<xsl:variable name="title-clause">
|
1100
|
+
<xsl:call-template name="getTitle">
|
1101
|
+
<xsl:with-param name="name" select="'title-clause'"/>
|
1102
|
+
</xsl:call-template>
|
1103
|
+
</xsl:variable>
|
1083
1104
|
<xsl:value-of select="$title-clause"/>
|
1084
1105
|
</xsl:when>
|
1085
1106
|
<xsl:when test="$type = 'li'">
|
@@ -1116,10 +1137,20 @@
|
|
1116
1137
|
<fo:block id="{@id}" font-size="13pt" font-weight="bold" text-align="center" margin-bottom="12pt" keep-with-next="always">
|
1117
1138
|
<xsl:choose>
|
1118
1139
|
<xsl:when test="@obligation = 'informative'">
|
1140
|
+
<xsl:variable name="title-appendix">
|
1141
|
+
<xsl:call-template name="getTitle">
|
1142
|
+
<xsl:with-param name="name" select="'title-appendix'"/>
|
1143
|
+
</xsl:call-template>
|
1144
|
+
</xsl:variable>
|
1119
1145
|
<xsl:value-of select="$title-appendix"/>
|
1120
1146
|
<xsl:number format="1" level="any" count="iho:annex[@obligation = 'informative']"/>
|
1121
1147
|
</xsl:when>
|
1122
1148
|
<xsl:otherwise>
|
1149
|
+
<xsl:variable name="title-annex">
|
1150
|
+
<xsl:call-template name="getTitle">
|
1151
|
+
<xsl:with-param name="name" select="'title-annex'"/>
|
1152
|
+
</xsl:call-template>
|
1153
|
+
</xsl:variable>
|
1123
1154
|
<xsl:value-of select="$title-annex"/>
|
1124
1155
|
<xsl:number format="A" level="any" count="iho:annex[not(@obligation = 'informative')]"/>
|
1125
1156
|
</xsl:otherwise>
|
@@ -1180,13 +1211,13 @@
|
|
1180
1211
|
<xsl:number level="any" count="iho:bibitem/iho:note"/>
|
1181
1212
|
</xsl:variable>
|
1182
1213
|
<fo:inline font-size="8pt" keep-with-previous.within-line="always" baseline-shift="30%"> <!--85% vertical-align="super"-->
|
1183
|
-
<fo:basic-link internal-destination="
|
1214
|
+
<fo:basic-link internal-destination="{generate-id()}" fox:alt-text="footnote {$number}">
|
1184
1215
|
<xsl:value-of select="$number"/><xsl:text>)</xsl:text>
|
1185
1216
|
</fo:basic-link>
|
1186
1217
|
</fo:inline>
|
1187
1218
|
<fo:footnote-body>
|
1188
1219
|
<fo:block font-size="10pt" margin-bottom="4pt" start-indent="0pt">
|
1189
|
-
<fo:inline id="
|
1220
|
+
<fo:inline id="{generate-id()}" keep-with-next.within-line="always" alignment-baseline="hanging" padding-right="3mm"><!-- font-size="60%" -->
|
1190
1221
|
<xsl:value-of select="$number"/><xsl:text>)</xsl:text>
|
1191
1222
|
</fo:inline>
|
1192
1223
|
<xsl:apply-templates/>
|
@@ -1199,7 +1230,12 @@
|
|
1199
1230
|
<fo:block font-size="11pt" margin-top="8pt" margin-bottom="12pt">
|
1200
1231
|
<xsl:variable name="claims_id" select="ancestor::iho:clause[1]/@id"/>
|
1201
1232
|
<fo:block margin-bottom="12pt" font-weight="bold">
|
1202
|
-
<fo:inline padding-right="5mm">
|
1233
|
+
<fo:inline padding-right="5mm">
|
1234
|
+
<xsl:variable name="title-example">
|
1235
|
+
<xsl:call-template name="getTitle">
|
1236
|
+
<xsl:with-param name="name" select="'title-example'"/>
|
1237
|
+
</xsl:call-template>
|
1238
|
+
</xsl:variable>
|
1203
1239
|
<xsl:value-of select="$title-example"/>
|
1204
1240
|
<xsl:choose>
|
1205
1241
|
<xsl:when test="iho:name">
|
@@ -1245,7 +1281,7 @@
|
|
1245
1281
|
</xsl:if>
|
1246
1282
|
<xsl:choose>
|
1247
1283
|
<xsl:when test="@citeas and normalize-space(text()) = ''">
|
1248
|
-
<xsl:value-of select="@citeas" disable-output-escaping="yes"
|
1284
|
+
<xsl:value-of select="@citeas"/> <!-- disable-output-escaping="yes" -->
|
1249
1285
|
</xsl:when>
|
1250
1286
|
<xsl:when test="@bibitemid and normalize-space(text()) = ''">
|
1251
1287
|
<xsl:value-of select="//iho:bibitem[@id = current()/@bibitemid]/iho:docidentifier"/>
|
@@ -1268,7 +1304,7 @@
|
|
1268
1304
|
|
1269
1305
|
<xsl:template match="iho:term">
|
1270
1306
|
<xsl:param name="sectionNum"/>
|
1271
|
-
<fo:block margin-bottom="10pt">
|
1307
|
+
<fo:block id="{@id}" margin-bottom="10pt">
|
1272
1308
|
<xsl:apply-templates>
|
1273
1309
|
<xsl:with-param name="sectionNum" select="$sectionNum"/>
|
1274
1310
|
</xsl:apply-templates>
|
@@ -1279,7 +1315,7 @@
|
|
1279
1315
|
<xsl:param name="sectionNum"/>
|
1280
1316
|
<fo:block line-height="1.1">
|
1281
1317
|
<fo:block font-weight="bold" keep-with-next="always">
|
1282
|
-
<fo:inline
|
1318
|
+
<fo:inline>
|
1283
1319
|
<xsl:variable name="section">
|
1284
1320
|
<xsl:call-template name="getSection">
|
1285
1321
|
<xsl:with-param name="sectionNum" select="$sectionNum"/>
|
@@ -1302,7 +1338,12 @@
|
|
1302
1338
|
</xsl:template>
|
1303
1339
|
|
1304
1340
|
<xsl:template match="iho:deprecates">
|
1305
|
-
<
|
1341
|
+
<xsl:variable name="title-deprecated">
|
1342
|
+
<xsl:call-template name="getTitle">
|
1343
|
+
<xsl:with-param name="name" select="'title-deprecated'"/>
|
1344
|
+
</xsl:call-template>
|
1345
|
+
</xsl:variable>
|
1346
|
+
<fo:block><xsl:value-of select="$title-deprecated"/>: <xsl:apply-templates/></fo:block>
|
1306
1347
|
</xsl:template>
|
1307
1348
|
|
1308
1349
|
<xsl:template match="iho:definition[preceding-sibling::iho:domain]">
|
@@ -1322,7 +1363,12 @@
|
|
1322
1363
|
<xsl:template match="iho:termexample">
|
1323
1364
|
<fo:block font-size="10pt" margin-top="8pt" margin-bottom="8pt" text-align="justify">
|
1324
1365
|
<fo:inline padding-right="5mm">
|
1325
|
-
<xsl:
|
1366
|
+
<xsl:variable name="title-example">
|
1367
|
+
<xsl:call-template name="getTitle">
|
1368
|
+
<xsl:with-param name="name" select="'title-example'"/>
|
1369
|
+
</xsl:call-template>
|
1370
|
+
</xsl:variable>
|
1371
|
+
<xsl:value-of select="$title-example"/>
|
1326
1372
|
<xsl:if test="count(ancestor::iho:term[1]//iho:termexample) > 1">
|
1327
1373
|
<xsl:number/>
|
1328
1374
|
</xsl:if>
|
@@ -1342,10 +1388,14 @@
|
|
1342
1388
|
</xsl:template>
|
1343
1389
|
|
1344
1390
|
<xsl:template match="iho:termnote">
|
1345
|
-
<fo:block font-size="10pt" margin-top="8pt" margin-bottom="8pt" text-align="justify">
|
1346
|
-
<xsl:
|
1347
|
-
<xsl:
|
1348
|
-
|
1391
|
+
<fo:block font-size="10pt" margin-top="8pt" margin-bottom="8pt" text-align="justify">
|
1392
|
+
<xsl:variable name="num"><xsl:number/></xsl:variable>
|
1393
|
+
<xsl:variable name="title-note-to-entry">
|
1394
|
+
<xsl:call-template name="getTitle">
|
1395
|
+
<xsl:with-param name="name" select="'title-note-to-entry'"/>
|
1396
|
+
</xsl:call-template>
|
1397
|
+
</xsl:variable>
|
1398
|
+
<xsl:value-of select="java:replaceAll(java:java.lang.String.new($title-note-to-entry),'#',$num)"/>
|
1349
1399
|
<xsl:apply-templates/>
|
1350
1400
|
</fo:block>
|
1351
1401
|
</xsl:template>
|
@@ -1358,15 +1408,32 @@
|
|
1358
1408
|
</xsl:if> -->
|
1359
1409
|
</xsl:template>
|
1360
1410
|
|
1361
|
-
|
1362
|
-
<xsl:text>, modified — </xsl:text>
|
1363
|
-
<xsl:apply-templates/>
|
1364
|
-
</xsl:template>
|
1411
|
+
|
1365
1412
|
<xsl:template match="iho:modification/iho:p">
|
1366
1413
|
<fo:inline><xsl:apply-templates/></fo:inline>
|
1367
1414
|
</xsl:template>
|
1368
1415
|
|
1369
1416
|
<xsl:template match="iho:locality">
|
1417
|
+
<xsl:variable name="title-clause">
|
1418
|
+
<xsl:call-template name="getTitle">
|
1419
|
+
<xsl:with-param name="name" select="'title-clause'"/>
|
1420
|
+
</xsl:call-template>
|
1421
|
+
</xsl:variable>
|
1422
|
+
<xsl:variable name="title-annex">
|
1423
|
+
<xsl:call-template name="getTitle">
|
1424
|
+
<xsl:with-param name="name" select="'title-annex'"/>
|
1425
|
+
</xsl:call-template>
|
1426
|
+
</xsl:variable>
|
1427
|
+
<xsl:variable name="title-appendix">
|
1428
|
+
<xsl:call-template name="getTitle">
|
1429
|
+
<xsl:with-param name="name" select="'title-appendix'"/>
|
1430
|
+
</xsl:call-template>
|
1431
|
+
</xsl:variable>
|
1432
|
+
<xsl:variable name="title-table">
|
1433
|
+
<xsl:call-template name="getTitle">
|
1434
|
+
<xsl:with-param name="name" select="'title-table'"/>
|
1435
|
+
</xsl:call-template>
|
1436
|
+
</xsl:variable>
|
1370
1437
|
<xsl:choose>
|
1371
1438
|
<xsl:when test="ancestor::iho:termsource"/>
|
1372
1439
|
<xsl:when test="@type ='clause' and ancestor::iho:eref"/>
|
@@ -1424,38 +1491,6 @@
|
|
1424
1491
|
</fo:static-content>
|
1425
1492
|
</xsl:template>
|
1426
1493
|
|
1427
|
-
<xsl:template name="getId">
|
1428
|
-
<xsl:choose>
|
1429
|
-
<xsl:when test="../@id">
|
1430
|
-
<xsl:value-of select="../@id"/>
|
1431
|
-
</xsl:when>
|
1432
|
-
<xsl:otherwise>
|
1433
|
-
<xsl:value-of select="text()"/>
|
1434
|
-
</xsl:otherwise>
|
1435
|
-
</xsl:choose>
|
1436
|
-
</xsl:template>
|
1437
|
-
|
1438
|
-
<xsl:template name="getLevel">
|
1439
|
-
<xsl:variable name="level_total" select="count(ancestor::*)"/>
|
1440
|
-
<xsl:variable name="level">
|
1441
|
-
<xsl:choose>
|
1442
|
-
<xsl:when test="ancestor::iho:preface">
|
1443
|
-
<xsl:value-of select="$level_total - 2"/>
|
1444
|
-
</xsl:when>
|
1445
|
-
<xsl:when test="ancestor::iho:sections">
|
1446
|
-
<xsl:value-of select="$level_total - 2"/>
|
1447
|
-
</xsl:when>
|
1448
|
-
<xsl:when test="ancestor::iho:bibliography">
|
1449
|
-
<xsl:value-of select="$level_total - 2"/>
|
1450
|
-
</xsl:when>
|
1451
|
-
<xsl:when test="local-name(ancestor::*[1]) = 'annex'">1</xsl:when>
|
1452
|
-
<xsl:otherwise>
|
1453
|
-
<xsl:value-of select="$level_total - 1"/>
|
1454
|
-
</xsl:otherwise>
|
1455
|
-
</xsl:choose>
|
1456
|
-
</xsl:variable>
|
1457
|
-
<xsl:value-of select="$level"/>
|
1458
|
-
</xsl:template>
|
1459
1494
|
|
1460
1495
|
<xsl:template name="getSection">
|
1461
1496
|
<xsl:param name="sectionNum"/>
|
@@ -1475,7 +1510,7 @@
|
|
1475
1510
|
</xsl:when>
|
1476
1511
|
<xsl:when test="$level >= 2">
|
1477
1512
|
<xsl:variable name="num">
|
1478
|
-
<xsl:
|
1513
|
+
<xsl:call-template name="getSubSection"/>
|
1479
1514
|
</xsl:variable>
|
1480
1515
|
<xsl:value-of select="concat($sectionNum, $num)"/><xsl:text>.</xsl:text>
|
1481
1516
|
</xsl:when>
|
@@ -1501,9 +1536,19 @@
|
|
1501
1536
|
<xsl:when test="$level = 1">
|
1502
1537
|
<xsl:choose>
|
1503
1538
|
<xsl:when test="ancestor::iho:annex/@obligation = 'informative'">
|
1539
|
+
<xsl:variable name="title-appendix">
|
1540
|
+
<xsl:call-template name="getTitle">
|
1541
|
+
<xsl:with-param name="name" select="'title-appendix'"/>
|
1542
|
+
</xsl:call-template>
|
1543
|
+
</xsl:variable>
|
1504
1544
|
<xsl:value-of select="$title-appendix"/>
|
1505
1545
|
</xsl:when>
|
1506
1546
|
<xsl:otherwise>
|
1547
|
+
<xsl:variable name="title-annex">
|
1548
|
+
<xsl:call-template name="getTitle">
|
1549
|
+
<xsl:with-param name="name" select="'title-annex'"/>
|
1550
|
+
</xsl:call-template>
|
1551
|
+
</xsl:variable>
|
1507
1552
|
<xsl:value-of select="$title-annex"/>
|
1508
1553
|
</xsl:otherwise>
|
1509
1554
|
</xsl:choose>
|
@@ -1663,44 +1708,185 @@
|
|
1663
1708
|
<xsl:text>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</xsl:text>
|
1664
1709
|
</xsl:variable>
|
1665
1710
|
|
1666
|
-
<xsl:variable name="
|
1711
|
+
<xsl:variable name="titles" select="xalan:nodeset($titles_)"/><xsl:variable name="titles_">
|
1667
1712
|
|
1668
|
-
|
1713
|
+
<title-table lang="en">Table </title-table>
|
1714
|
+
<title-table lang="fr">Tableau </title-table>
|
1715
|
+
|
1716
|
+
<title-table lang="zh">Table </title-table>
|
1669
1717
|
|
1670
1718
|
|
1671
|
-
|
1719
|
+
|
1720
|
+
<title-note lang="en">NOTE </title-note>
|
1721
|
+
<title-note lang="fr">NOTE </title-note>
|
1672
1722
|
|
1673
|
-
<
|
1723
|
+
<title-note lang="zh">NOTE </title-note>
|
1674
1724
|
|
1675
1725
|
|
1676
|
-
</xsl:variable><xsl:variable name="title-figure">
|
1677
1726
|
|
1678
|
-
|
1727
|
+
<title-figure lang="en">Figure </title-figure>
|
1728
|
+
<title-figure lang="fr">Figure </title-figure>
|
1679
1729
|
|
1730
|
+
<title-figure lang="zh">Figure </title-figure>
|
1680
1731
|
|
1681
|
-
</xsl:variable><xsl:variable name="title-example">
|
1682
1732
|
|
1683
|
-
<xsl:text>EXAMPLE </xsl:text>
|
1684
1733
|
|
1734
|
+
<title-example lang="en">EXAMPLE </title-example>
|
1735
|
+
<title-example lang="fr">EXEMPLE </title-example>
|
1685
1736
|
|
1686
|
-
|
1737
|
+
<title-example lang="zh">EXAMPLE </title-example>
|
1687
1738
|
|
1688
|
-
<xsl:text>Annex </xsl:text>
|
1689
1739
|
|
1690
1740
|
|
1691
|
-
|
1692
|
-
<
|
1693
|
-
|
1741
|
+
<title-example-xref lang="en">Example </title-example-xref>
|
1742
|
+
<title-example-xref lang="fr">Exemple </title-example-xref>
|
1743
|
+
|
1744
|
+
<title-section lang="en">Section </title-section>
|
1745
|
+
<title-section lang="fr">Section </title-section>
|
1746
|
+
|
1747
|
+
<title-inequality lang="en">Inequality </title-inequality>
|
1748
|
+
<title-inequality lang="fr">Inequality </title-inequality>
|
1749
|
+
|
1750
|
+
<title-equation lang="en">Equation </title-equation>
|
1751
|
+
<title-equation lang="fr">Equation </title-equation>
|
1752
|
+
|
1753
|
+
<title-annex lang="en">Annex </title-annex>
|
1754
|
+
<title-annex lang="fr">Annexe </title-annex>
|
1755
|
+
|
1756
|
+
<title-annex lang="zh">Annex </title-annex>
|
1757
|
+
|
1758
|
+
|
1759
|
+
|
1760
|
+
<title-appendix lang="en">Appendix </title-appendix>
|
1761
|
+
<title-appendix lang="fr">Appendix </title-appendix>
|
1762
|
+
|
1763
|
+
<title-clause lang="en">Clause </title-clause>
|
1764
|
+
<title-clause lang="fr">Article </title-clause>
|
1694
1765
|
|
1695
|
-
<
|
1766
|
+
<title-clause lang="zh">Clause </title-clause>
|
1696
1767
|
|
1697
1768
|
|
1698
|
-
</xsl:variable><xsl:variable name="title-edition">
|
1699
|
-
<xsl:text>Edition </xsl:text>
|
1700
|
-
</xsl:variable><xsl:variable name="title-toc">
|
1701
|
-
Contents
|
1702
1769
|
|
1703
|
-
|
1770
|
+
<title-edition lang="en">
|
1771
|
+
|
1772
|
+
<xsl:text>Edition </xsl:text>
|
1773
|
+
|
1774
|
+
|
1775
|
+
</title-edition>
|
1776
|
+
|
1777
|
+
<title-formula lang="en">Formula </title-formula>
|
1778
|
+
<title-formula lang="fr">Formula </title-formula>
|
1779
|
+
|
1780
|
+
<title-toc lang="en">
|
1781
|
+
|
1782
|
+
<xsl:text>Contents</xsl:text>
|
1783
|
+
|
1784
|
+
|
1785
|
+
|
1786
|
+
</title-toc>
|
1787
|
+
<title-toc lang="fr">Sommaire</title-toc>
|
1788
|
+
|
1789
|
+
<title-toc lang="zh">Contents</title-toc>
|
1790
|
+
|
1791
|
+
|
1792
|
+
|
1793
|
+
<title-page lang="en">Page</title-page>
|
1794
|
+
<title-page lang="fr">Page</title-page>
|
1795
|
+
|
1796
|
+
<title-key lang="en">Key</title-key>
|
1797
|
+
<title-key lang="fr">Légende</title-key>
|
1798
|
+
|
1799
|
+
<title-where lang="en">where</title-where>
|
1800
|
+
<title-where lang="fr">où</title-where>
|
1801
|
+
|
1802
|
+
<title-descriptors lang="en">Descriptors</title-descriptors>
|
1803
|
+
|
1804
|
+
<title-part lang="en">
|
1805
|
+
|
1806
|
+
|
1807
|
+
</title-part>
|
1808
|
+
<title-part lang="fr">
|
1809
|
+
|
1810
|
+
|
1811
|
+
</title-part>
|
1812
|
+
<title-part lang="zh">第 # 部分:</title-part>
|
1813
|
+
|
1814
|
+
<title-note-to-entry lang="en">Note # to entry: </title-note-to-entry>
|
1815
|
+
<title-note-to-entry lang="fr">Note # à l'article: </title-note-to-entry>
|
1816
|
+
|
1817
|
+
<title-note-to-entry lang="zh">Note # to entry: </title-note-to-entry>
|
1818
|
+
|
1819
|
+
|
1820
|
+
|
1821
|
+
<title-modified lang="en">modified</title-modified>
|
1822
|
+
<title-modified lang="fr">modifiée</title-modified>
|
1823
|
+
|
1824
|
+
<title-modified lang="zh">modified</title-modified>
|
1825
|
+
|
1826
|
+
|
1827
|
+
|
1828
|
+
<title-source lang="en">SOURCE</title-source>
|
1829
|
+
|
1830
|
+
<title-keywords lang="en">Keywords</title-keywords>
|
1831
|
+
|
1832
|
+
<title-deprecated lang="en">DEPRECATED</title-deprecated>
|
1833
|
+
<title-deprecated lang="fr">DEPRECATED</title-deprecated>
|
1834
|
+
|
1835
|
+
<title-submitting-organizations lang="en">Submitting Organizations</title-submitting-organizations>
|
1836
|
+
|
1837
|
+
<title-list-tables lang="en">List of Tables</title-list-tables>
|
1838
|
+
|
1839
|
+
<title-list-figures lang="en">List of Figures</title-list-figures>
|
1840
|
+
|
1841
|
+
<title-recommendation lang="en">Recommendation </title-recommendation>
|
1842
|
+
|
1843
|
+
<title-acknowledgements lang="en">Acknowledgements</title-acknowledgements>
|
1844
|
+
|
1845
|
+
<title-abstract lang="en">Abstract</title-abstract>
|
1846
|
+
|
1847
|
+
<title-summary lang="en">Summary</title-summary>
|
1848
|
+
|
1849
|
+
<title-in lang="en">in </title-in>
|
1850
|
+
|
1851
|
+
<title-box lang="en">Box </title-box>
|
1852
|
+
|
1853
|
+
<title-partly-supercedes lang="en">Partly Supercedes </title-partly-supercedes>
|
1854
|
+
<title-partly-supercedes lang="zh">部分代替 </title-partly-supercedes>
|
1855
|
+
|
1856
|
+
<title-completion-date lang="en">Completion date for this manuscript</title-completion-date>
|
1857
|
+
<title-completion-date lang="zh">本稿完成日期</title-completion-date>
|
1858
|
+
|
1859
|
+
<title-issuance-date lang="en">Issuance Date: #</title-issuance-date>
|
1860
|
+
<title-issuance-date lang="zh"># 发布</title-issuance-date>
|
1861
|
+
|
1862
|
+
<title-implementation-date lang="en">Implementation Date: #</title-implementation-date>
|
1863
|
+
<title-implementation-date lang="zh"># 实施</title-implementation-date>
|
1864
|
+
|
1865
|
+
<title-obligation-normative lang="en">normative</title-obligation-normative>
|
1866
|
+
<title-obligation-normative lang="zh">规范性附录</title-obligation-normative>
|
1867
|
+
|
1868
|
+
<title-caution lang="en">CAUTION</title-caution>
|
1869
|
+
<title-caution lang="zh">注意</title-caution>
|
1870
|
+
|
1871
|
+
<title-warning lang="en">WARNING</title-warning>
|
1872
|
+
<title-warning lang="zh">警告</title-warning>
|
1873
|
+
|
1874
|
+
<title-amendment lang="en">AMENDMENT</title-amendment>
|
1875
|
+
</xsl:variable><xsl:template name="getTitle">
|
1876
|
+
<xsl:param name="name"/>
|
1877
|
+
<xsl:variable name="lang">
|
1878
|
+
<xsl:call-template name="getLang"/>
|
1879
|
+
</xsl:variable>
|
1880
|
+
<xsl:variable name="title_" select="$titles/*[local-name() = $name][@lang = $lang]"/>
|
1881
|
+
<xsl:choose>
|
1882
|
+
<xsl:when test="normalize-space($title_) != ''">
|
1883
|
+
<xsl:value-of select="$title_"/>
|
1884
|
+
</xsl:when>
|
1885
|
+
<xsl:otherwise>
|
1886
|
+
<xsl:value-of select="$titles/*[local-name() = $name][@lang = 'en']"/>
|
1887
|
+
</xsl:otherwise>
|
1888
|
+
</xsl:choose>
|
1889
|
+
</xsl:template><xsl:variable name="lower">abcdefghijklmnopqrstuvwxyz</xsl:variable><xsl:variable name="upper">ABCDEFGHIJKLMNOPQRSTUVWXYZ</xsl:variable><xsl:variable name="en_chars" select="concat($lower,$upper,',.`1234567890-=~!@#$%^*()_+[]{}\|?/')"/><xsl:variable name="linebreak" select="'
'"/><xsl:attribute-set name="link-style">
|
1704
1890
|
|
1705
1891
|
<xsl:attribute name="color">blue</xsl:attribute>
|
1706
1892
|
<xsl:attribute name="text-decoration">underline</xsl:attribute>
|
@@ -1772,7 +1958,11 @@
|
|
1772
1958
|
<xsl:attribute name="font-weight">normal</xsl:attribute>
|
1773
1959
|
<xsl:attribute name="font-size">11pt</xsl:attribute>
|
1774
1960
|
|
1775
|
-
|
1961
|
+
<xsl:variable name="title-table">
|
1962
|
+
<xsl:call-template name="getTitle">
|
1963
|
+
<xsl:with-param name="name" select="'title-table'"/>
|
1964
|
+
</xsl:call-template>
|
1965
|
+
</xsl:variable>
|
1776
1966
|
<xsl:value-of select="$title-table"/>
|
1777
1967
|
|
1778
1968
|
<xsl:call-template name="getTableNumber"/>
|
@@ -1864,9 +2054,9 @@
|
|
1864
2054
|
|
1865
2055
|
|
1866
2056
|
|
1867
|
-
|
1868
|
-
|
1869
|
-
|
2057
|
+
<xsl:attribute name="margin-left">0mm</xsl:attribute>
|
2058
|
+
<xsl:attribute name="margin-right">0mm</xsl:attribute>
|
2059
|
+
|
1870
2060
|
<xsl:for-each select="xalan:nodeset($colwidths)//column">
|
1871
2061
|
<xsl:choose>
|
1872
2062
|
<xsl:when test=". = 1 or . = 0">
|
@@ -1877,7 +2067,16 @@
|
|
1877
2067
|
</xsl:otherwise>
|
1878
2068
|
</xsl:choose>
|
1879
2069
|
</xsl:for-each>
|
1880
|
-
|
2070
|
+
|
2071
|
+
<xsl:choose>
|
2072
|
+
<xsl:when test="not(*[local-name()='tbody']) and *[local-name()='thead']">
|
2073
|
+
<xsl:apply-templates select="*[local-name()='thead']" mode="process_tbody"/>
|
2074
|
+
</xsl:when>
|
2075
|
+
<xsl:otherwise>
|
2076
|
+
<xsl:apply-templates/>
|
2077
|
+
</xsl:otherwise>
|
2078
|
+
</xsl:choose>
|
2079
|
+
|
1881
2080
|
</fo:table>
|
1882
2081
|
|
1883
2082
|
|
@@ -2026,6 +2225,10 @@
|
|
2026
2225
|
|
2027
2226
|
<xsl:apply-templates/>
|
2028
2227
|
</fo:table-header>
|
2228
|
+
</xsl:template><xsl:template match="*[local-name()='thead']" mode="process_tbody">
|
2229
|
+
<fo:table-body>
|
2230
|
+
<xsl:apply-templates/>
|
2231
|
+
</fo:table-body>
|
2029
2232
|
</xsl:template><xsl:template match="*[local-name()='tfoot']"/><xsl:template match="*[local-name()='tfoot']" mode="process">
|
2030
2233
|
<xsl:apply-templates/>
|
2031
2234
|
</xsl:template><xsl:template name="insertTableFooter">
|
@@ -2197,6 +2400,11 @@
|
|
2197
2400
|
|
2198
2401
|
<xsl:attribute name="font-size">11pt</xsl:attribute>
|
2199
2402
|
|
2403
|
+
<xsl:variable name="title-note">
|
2404
|
+
<xsl:call-template name="getTitle">
|
2405
|
+
<xsl:with-param name="name" select="'title-note'"/>
|
2406
|
+
</xsl:call-template>
|
2407
|
+
</xsl:variable>
|
2200
2408
|
<xsl:value-of select="$title-note"/>
|
2201
2409
|
|
2202
2410
|
<xsl:variable name="id" select="ancestor::*[local-name() = 'table'][1]/@id"/>
|
@@ -2277,6 +2485,36 @@
|
|
2277
2485
|
</fn>
|
2278
2486
|
</xsl:for-each>
|
2279
2487
|
</xsl:variable>
|
2488
|
+
|
2489
|
+
<!-- current hierarchy is 'figure' element -->
|
2490
|
+
<xsl:variable name="following_dl_colwidths">
|
2491
|
+
<xsl:if test="*[local-name() = 'dl']"><!-- if there is a 'dl', then set the same columns width as for 'dl' -->
|
2492
|
+
<xsl:variable name="html-table">
|
2493
|
+
<xsl:variable name="ns" select="substring-before(name(/*), '-')"/>
|
2494
|
+
<xsl:element name="{$ns}:table">
|
2495
|
+
<xsl:for-each select="*[local-name() = 'dl'][1]">
|
2496
|
+
<tbody>
|
2497
|
+
<xsl:apply-templates mode="dl"/>
|
2498
|
+
</tbody>
|
2499
|
+
</xsl:for-each>
|
2500
|
+
</xsl:element>
|
2501
|
+
</xsl:variable>
|
2502
|
+
|
2503
|
+
<xsl:call-template name="calculate-column-widths">
|
2504
|
+
<xsl:with-param name="cols-count" select="2"/>
|
2505
|
+
<xsl:with-param name="table" select="$html-table"/>
|
2506
|
+
</xsl:call-template>
|
2507
|
+
|
2508
|
+
</xsl:if>
|
2509
|
+
</xsl:variable>
|
2510
|
+
|
2511
|
+
|
2512
|
+
<xsl:variable name="maxlength_dt">
|
2513
|
+
<xsl:for-each select="*[local-name() = 'dl'][1]">
|
2514
|
+
<xsl:call-template name="getMaxLength_dt"/>
|
2515
|
+
</xsl:for-each>
|
2516
|
+
</xsl:variable>
|
2517
|
+
|
2280
2518
|
<xsl:if test="xalan:nodeset($references)//fn">
|
2281
2519
|
<fo:block>
|
2282
2520
|
<fo:table width="95%" table-layout="fixed">
|
@@ -2284,8 +2522,19 @@
|
|
2284
2522
|
<xsl:attribute name="font-size">10pt</xsl:attribute>
|
2285
2523
|
|
2286
2524
|
</xsl:if>
|
2287
|
-
<
|
2288
|
-
|
2525
|
+
<xsl:choose>
|
2526
|
+
<!-- if there 'dl', then set same columns width -->
|
2527
|
+
<xsl:when test="xalan:nodeset($following_dl_colwidths)//column">
|
2528
|
+
<xsl:call-template name="setColumnWidth_dl">
|
2529
|
+
<xsl:with-param name="colwidths" select="$following_dl_colwidths"/>
|
2530
|
+
<xsl:with-param name="maxlength_dt" select="$maxlength_dt"/>
|
2531
|
+
</xsl:call-template>
|
2532
|
+
</xsl:when>
|
2533
|
+
<xsl:otherwise>
|
2534
|
+
<fo:table-column column-width="15%"/>
|
2535
|
+
<fo:table-column column-width="85%"/>
|
2536
|
+
</xsl:otherwise>
|
2537
|
+
</xsl:choose>
|
2289
2538
|
<fo:table-body>
|
2290
2539
|
<xsl:for-each select="xalan:nodeset($references)//fn">
|
2291
2540
|
<xsl:variable name="reference" select="@reference"/>
|
@@ -2346,6 +2595,11 @@
|
|
2346
2595
|
|
2347
2596
|
<fo:block margin-bottom="12pt" text-align="left">
|
2348
2597
|
|
2598
|
+
<xsl:variable name="title-where">
|
2599
|
+
<xsl:call-template name="getTitle">
|
2600
|
+
<xsl:with-param name="name" select="'title-where'"/>
|
2601
|
+
</xsl:call-template>
|
2602
|
+
</xsl:variable>
|
2349
2603
|
<xsl:value-of select="$title-where"/><xsl:text> </xsl:text>
|
2350
2604
|
<xsl:apply-templates select="*[local-name()='dt']/*"/>
|
2351
2605
|
<xsl:text/>
|
@@ -2359,14 +2613,24 @@
|
|
2359
2613
|
|
2360
2614
|
|
2361
2615
|
|
2616
|
+
<xsl:variable name="title-where">
|
2617
|
+
<xsl:call-template name="getTitle">
|
2618
|
+
<xsl:with-param name="name" select="'title-where'"/>
|
2619
|
+
</xsl:call-template>
|
2620
|
+
</xsl:variable>
|
2362
2621
|
<xsl:value-of select="$title-where"/>
|
2363
2622
|
</fo:block>
|
2364
2623
|
</xsl:when>
|
2365
2624
|
<xsl:when test="$parent = 'figure' and (not(../@class) or ../@class !='pseudocode')">
|
2366
|
-
<fo:block font-weight="bold" text-align="left" margin-bottom="12pt">
|
2625
|
+
<fo:block font-weight="bold" text-align="left" margin-bottom="12pt" keep-with-next="always">
|
2367
2626
|
|
2368
2627
|
|
2369
2628
|
|
2629
|
+
<xsl:variable name="title-key">
|
2630
|
+
<xsl:call-template name="getTitle">
|
2631
|
+
<xsl:with-param name="name" select="'title-key'"/>
|
2632
|
+
</xsl:call-template>
|
2633
|
+
</xsl:variable>
|
2370
2634
|
<xsl:value-of select="$title-key"/>
|
2371
2635
|
</fo:block>
|
2372
2636
|
</xsl:when>
|
@@ -2385,25 +2649,8 @@
|
|
2385
2649
|
|
2386
2650
|
|
2387
2651
|
|
2388
|
-
|
2389
|
-
|
2390
|
-
<!-- create virtual html table for dl/[dt and dd] -->
|
2391
|
-
<xsl:variable name="html-table">
|
2392
|
-
<xsl:variable name="ns" select="substring-before(name(/*), '-')"/>
|
2393
|
-
<xsl:element name="{$ns}:table">
|
2394
|
-
<tbody>
|
2395
|
-
<xsl:apply-templates mode="dl"/>
|
2396
|
-
</tbody>
|
2397
|
-
</xsl:element>
|
2398
|
-
</xsl:variable>
|
2399
|
-
<!-- html-table<xsl:copy-of select="$html-table"/> -->
|
2400
|
-
<xsl:variable name="colwidths">
|
2401
|
-
<xsl:call-template name="calculate-column-widths">
|
2402
|
-
<xsl:with-param name="cols-count" select="2"/>
|
2403
|
-
<xsl:with-param name="table" select="$html-table"/>
|
2404
|
-
</xsl:call-template>
|
2405
|
-
</xsl:variable>
|
2406
|
-
<!-- colwidths=<xsl:value-of select="$colwidths"/> -->
|
2652
|
+
<xsl:attribute name="margin-left">-3.5mm</xsl:attribute>
|
2653
|
+
|
2407
2654
|
|
2408
2655
|
<fo:table width="95%" table-layout="fixed">
|
2409
2656
|
|
@@ -2416,42 +2663,30 @@
|
|
2416
2663
|
|
2417
2664
|
</xsl:when>
|
2418
2665
|
</xsl:choose>
|
2419
|
-
|
2420
|
-
|
2421
|
-
|
2422
|
-
|
2423
|
-
|
2424
|
-
|
2425
|
-
|
2426
|
-
|
2427
|
-
|
2428
|
-
|
2429
|
-
|
2430
|
-
|
2431
|
-
|
2432
|
-
|
2433
|
-
|
2434
|
-
|
2435
|
-
|
2436
|
-
|
2437
|
-
|
2438
|
-
|
2439
|
-
|
2440
|
-
|
2441
|
-
|
2442
|
-
|
2443
|
-
</xsl:when>
|
2444
|
-
<xsl:otherwise>
|
2445
|
-
<fo:table-column column-width="proportional-column-width({.})"/>
|
2446
|
-
</xsl:otherwise>
|
2447
|
-
</xsl:choose>
|
2448
|
-
</xsl:for-each>
|
2449
|
-
</xsl:otherwise>
|
2450
|
-
</xsl:choose>
|
2451
|
-
<!-- <fo:table-column column-width="15%"/>
|
2452
|
-
<fo:table-column column-width="85%"/> -->
|
2453
|
-
</xsl:otherwise>
|
2454
|
-
</xsl:choose>
|
2666
|
+
<!-- create virtual html table for dl/[dt and dd] -->
|
2667
|
+
<xsl:variable name="html-table">
|
2668
|
+
<xsl:variable name="ns" select="substring-before(name(/*), '-')"/>
|
2669
|
+
<xsl:element name="{$ns}:table">
|
2670
|
+
<tbody>
|
2671
|
+
<xsl:apply-templates mode="dl"/>
|
2672
|
+
</tbody>
|
2673
|
+
</xsl:element>
|
2674
|
+
</xsl:variable>
|
2675
|
+
<!-- html-table<xsl:copy-of select="$html-table"/> -->
|
2676
|
+
<xsl:variable name="colwidths">
|
2677
|
+
<xsl:call-template name="calculate-column-widths">
|
2678
|
+
<xsl:with-param name="cols-count" select="2"/>
|
2679
|
+
<xsl:with-param name="table" select="$html-table"/>
|
2680
|
+
</xsl:call-template>
|
2681
|
+
</xsl:variable>
|
2682
|
+
<!-- colwidths=<xsl:value-of select="$colwidths"/> -->
|
2683
|
+
<xsl:variable name="maxlength_dt">
|
2684
|
+
<xsl:call-template name="getMaxLength_dt"/>
|
2685
|
+
</xsl:variable>
|
2686
|
+
<xsl:call-template name="setColumnWidth_dl">
|
2687
|
+
<xsl:with-param name="colwidths" select="$colwidths"/>
|
2688
|
+
<xsl:with-param name="maxlength_dt" select="$maxlength_dt"/>
|
2689
|
+
</xsl:call-template>
|
2455
2690
|
<fo:table-body>
|
2456
2691
|
<xsl:apply-templates>
|
2457
2692
|
<xsl:with-param name="key_iso" select="normalize-space($key_iso)"/>
|
@@ -2461,6 +2696,60 @@
|
|
2461
2696
|
</fo:block>
|
2462
2697
|
</fo:block>
|
2463
2698
|
</xsl:if>
|
2699
|
+
</xsl:template><xsl:template name="setColumnWidth_dl">
|
2700
|
+
<xsl:param name="colwidths"/>
|
2701
|
+
<xsl:param name="maxlength_dt"/>
|
2702
|
+
<xsl:choose>
|
2703
|
+
<xsl:when test="ancestor::*[local-name()='dl']"><!-- second level, i.e. inlined table -->
|
2704
|
+
<fo:table-column column-width="50%"/>
|
2705
|
+
<fo:table-column column-width="50%"/>
|
2706
|
+
</xsl:when>
|
2707
|
+
<xsl:otherwise>
|
2708
|
+
<xsl:choose>
|
2709
|
+
<xsl:when test="normalize-space($maxlength_dt) != '' and number($maxlength_dt) <= 2"> <!-- if dt contains short text like t90, a, etc -->
|
2710
|
+
<fo:table-column column-width="5%"/>
|
2711
|
+
<fo:table-column column-width="95%"/>
|
2712
|
+
</xsl:when>
|
2713
|
+
<xsl:when test="normalize-space($maxlength_dt) != '' and number($maxlength_dt) <= 5"> <!-- if dt contains short text like t90, a, etc -->
|
2714
|
+
<fo:table-column column-width="10%"/>
|
2715
|
+
<fo:table-column column-width="90%"/>
|
2716
|
+
</xsl:when>
|
2717
|
+
<!-- <xsl:when test="xalan:nodeset($colwidths)/column[1] div xalan:nodeset($colwidths)/column[2] > 1.7">
|
2718
|
+
<fo:table-column column-width="60%"/>
|
2719
|
+
<fo:table-column column-width="40%"/>
|
2720
|
+
</xsl:when> -->
|
2721
|
+
<xsl:when test="xalan:nodeset($colwidths)/column[1] div xalan:nodeset($colwidths)/column[2] > 1.3">
|
2722
|
+
<fo:table-column column-width="50%"/>
|
2723
|
+
<fo:table-column column-width="50%"/>
|
2724
|
+
</xsl:when>
|
2725
|
+
<xsl:when test="xalan:nodeset($colwidths)/column[1] div xalan:nodeset($colwidths)/column[2] > 0.5">
|
2726
|
+
<fo:table-column column-width="40%"/>
|
2727
|
+
<fo:table-column column-width="60%"/>
|
2728
|
+
</xsl:when>
|
2729
|
+
<xsl:otherwise>
|
2730
|
+
<xsl:for-each select="xalan:nodeset($colwidths)//column">
|
2731
|
+
<xsl:choose>
|
2732
|
+
<xsl:when test=". = 1 or . = 0">
|
2733
|
+
<fo:table-column column-width="proportional-column-width(2)"/>
|
2734
|
+
</xsl:when>
|
2735
|
+
<xsl:otherwise>
|
2736
|
+
<fo:table-column column-width="proportional-column-width({.})"/>
|
2737
|
+
</xsl:otherwise>
|
2738
|
+
</xsl:choose>
|
2739
|
+
</xsl:for-each>
|
2740
|
+
</xsl:otherwise>
|
2741
|
+
</xsl:choose>
|
2742
|
+
<!-- <fo:table-column column-width="15%"/>
|
2743
|
+
<fo:table-column column-width="85%"/> -->
|
2744
|
+
</xsl:otherwise>
|
2745
|
+
</xsl:choose>
|
2746
|
+
</xsl:template><xsl:template name="getMaxLength_dt">
|
2747
|
+
<xsl:for-each select="*[local-name()='dt']">
|
2748
|
+
<xsl:sort select="string-length(normalize-space(.))" data-type="number" order="descending"/>
|
2749
|
+
<xsl:if test="position() = 1">
|
2750
|
+
<xsl:value-of select="string-length(normalize-space(.))"/>
|
2751
|
+
</xsl:if>
|
2752
|
+
</xsl:for-each>
|
2464
2753
|
</xsl:template><xsl:template match="*[local-name()='dl']/*[local-name()='note']">
|
2465
2754
|
<xsl:param name="key_iso"/>
|
2466
2755
|
|
@@ -2477,6 +2766,11 @@
|
|
2477
2766
|
<xsl:if test="normalize-space($key_iso) = 'true'">
|
2478
2767
|
<xsl:attribute name="margin-top">0</xsl:attribute>
|
2479
2768
|
</xsl:if>
|
2769
|
+
<xsl:variable name="title-note">
|
2770
|
+
<xsl:call-template name="getTitle">
|
2771
|
+
<xsl:with-param name="name" select="'title-note'"/>
|
2772
|
+
</xsl:call-template>
|
2773
|
+
</xsl:variable>
|
2480
2774
|
<xsl:value-of select="$title-note"/>
|
2481
2775
|
</fo:block>
|
2482
2776
|
</fo:table-cell>
|
@@ -2521,7 +2815,11 @@
|
|
2521
2815
|
|
2522
2816
|
|
2523
2817
|
<xsl:apply-templates/>
|
2524
|
-
|
2818
|
+
<!-- <xsl:if test="$namespace = 'gb'">
|
2819
|
+
<xsl:if test="ancestor::*[local-name()='formula']">
|
2820
|
+
<xsl:text>—</xsl:text>
|
2821
|
+
</xsl:if>
|
2822
|
+
</xsl:if> -->
|
2525
2823
|
</fo:block>
|
2526
2824
|
</fo:table-cell>
|
2527
2825
|
<fo:table-cell>
|
@@ -2577,7 +2875,8 @@
|
|
2577
2875
|
</xsl:template><xsl:template name="recursiveSmallCaps">
|
2578
2876
|
<xsl:param name="text"/>
|
2579
2877
|
<xsl:variable name="char" select="substring($text,1,1)"/>
|
2580
|
-
<xsl:variable name="upperCase" select="translate($char, $lower, $upper)"/>
|
2878
|
+
<!-- <xsl:variable name="upperCase" select="translate($char, $lower, $upper)"/> -->
|
2879
|
+
<xsl:variable name="upperCase" select="java:toUpperCase(java:java.lang.String.new($char))"/>
|
2581
2880
|
<xsl:choose>
|
2582
2881
|
<xsl:when test="$char=$upperCase">
|
2583
2882
|
<fo:inline font-size="{100 div 0.75}%">
|
@@ -2860,18 +3159,28 @@
|
|
2860
3159
|
<xsl:choose>
|
2861
3160
|
<xsl:when test="contains($str2, ' ')">
|
2862
3161
|
<xsl:variable name="substr" select="substring-before($str2, ' ')"/>
|
2863
|
-
<xsl:value-of select="translate(substring($substr, 1, 1), $lower, $upper)"/>
|
2864
|
-
<xsl:value-of select="substring($substr, 2)"/>
|
3162
|
+
<!-- <xsl:value-of select="translate(substring($substr, 1, 1), $lower, $upper)"/>
|
3163
|
+
<xsl:value-of select="substring($substr, 2)"/> -->
|
3164
|
+
<xsl:call-template name="capitalize">
|
3165
|
+
<xsl:with-param name="str" select="$substr"/>
|
3166
|
+
</xsl:call-template>
|
2865
3167
|
<xsl:text> </xsl:text>
|
2866
3168
|
<xsl:call-template name="capitalizeWords">
|
2867
3169
|
<xsl:with-param name="str" select="substring-after($str2, ' ')"/>
|
2868
3170
|
</xsl:call-template>
|
2869
3171
|
</xsl:when>
|
2870
3172
|
<xsl:otherwise>
|
2871
|
-
<xsl:value-of select="translate(substring($str2, 1, 1), $lower, $upper)"/>
|
2872
|
-
<xsl:value-of select="substring($str2, 2)"/>
|
3173
|
+
<!-- <xsl:value-of select="translate(substring($str2, 1, 1), $lower, $upper)"/>
|
3174
|
+
<xsl:value-of select="substring($str2, 2)"/> -->
|
3175
|
+
<xsl:call-template name="capitalize">
|
3176
|
+
<xsl:with-param name="str" select="$str2"/>
|
3177
|
+
</xsl:call-template>
|
2873
3178
|
</xsl:otherwise>
|
2874
3179
|
</xsl:choose>
|
3180
|
+
</xsl:template><xsl:template name="capitalize">
|
3181
|
+
<xsl:param name="str"/>
|
3182
|
+
<xsl:value-of select="java:toUpperCase(java:java.lang.String.new(substring($str, 1, 1)))"/>
|
3183
|
+
<xsl:value-of select="substring($str, 2)"/>
|
2875
3184
|
</xsl:template><xsl:template match="mathml:math">
|
2876
3185
|
<fo:inline font-family="STIX2Math">
|
2877
3186
|
<fo:instream-foreign-object fox:alt-text="Math">
|
@@ -2929,6 +3238,11 @@
|
|
2929
3238
|
<fo:inline id="{@id}"/>
|
2930
3239
|
</xsl:template><xsl:template match="*[local-name()='appendix']">
|
2931
3240
|
<fo:block id="{@id}" xsl:use-attribute-sets="appendix-style">
|
3241
|
+
<xsl:variable name="title-appendix">
|
3242
|
+
<xsl:call-template name="getTitle">
|
3243
|
+
<xsl:with-param name="name" select="'title-appendix'"/>
|
3244
|
+
</xsl:call-template>
|
3245
|
+
</xsl:variable>
|
2932
3246
|
<fo:inline padding-right="5mm"><xsl:value-of select="$title-appendix"/> <xsl:number/></fo:inline>
|
2933
3247
|
<xsl:apply-templates select="*[local-name()='title']" mode="process"/>
|
2934
3248
|
</fo:block>
|
@@ -2938,6 +3252,11 @@
|
|
2938
3252
|
</xsl:template><xsl:template match="*[local-name()='appendix']//*[local-name()='example']">
|
2939
3253
|
<fo:block xsl:use-attribute-sets="appendix-example-style">
|
2940
3254
|
<xsl:variable name="claims_id" select="ancestor::*[local-name()='clause'][1]/@id"/>
|
3255
|
+
<xsl:variable name="title-example">
|
3256
|
+
<xsl:call-template name="getTitle">
|
3257
|
+
<xsl:with-param name="name" select="'title-example'"/>
|
3258
|
+
</xsl:call-template>
|
3259
|
+
</xsl:variable>
|
2941
3260
|
<xsl:value-of select="$title-example"/>
|
2942
3261
|
<xsl:if test="count(ancestor::*[local-name()='clause'][1]//*[local-name()='example']) > 1">
|
2943
3262
|
<xsl:number count="*[local-name()='example'][ancestor::*[local-name()='clause'][@id = $claims_id]]" level="any"/><xsl:text> </xsl:text>
|
@@ -2968,6 +3287,17 @@
|
|
2968
3287
|
<xsl:if test="not(preceding-sibling::*[local-name() = 'p'])"><xsl:value-of select="$callout"/></xsl:if>
|
2969
3288
|
<xsl:apply-templates/>
|
2970
3289
|
</fo:inline>
|
3290
|
+
</xsl:template><xsl:template match="*[local-name() = 'modification']">
|
3291
|
+
<xsl:variable name="title-modified">
|
3292
|
+
<xsl:call-template name="getTitle">
|
3293
|
+
<xsl:with-param name="name" select="'title-modified'"/>
|
3294
|
+
</xsl:call-template>
|
3295
|
+
</xsl:variable>
|
3296
|
+
<xsl:choose>
|
3297
|
+
<xsl:when test="$lang = 'zh'"><xsl:text>、</xsl:text><xsl:value-of select="$title-modified"/><xsl:text>—</xsl:text></xsl:when>
|
3298
|
+
<xsl:otherwise><xsl:text>, </xsl:text><xsl:value-of select="$title-modified"/><xsl:text> — </xsl:text></xsl:otherwise>
|
3299
|
+
</xsl:choose>
|
3300
|
+
<xsl:apply-templates/>
|
2971
3301
|
</xsl:template><xsl:template name="convertDate">
|
2972
3302
|
<xsl:param name="date"/>
|
2973
3303
|
<xsl:param name="format" select="'short'"/>
|
@@ -3032,4 +3362,107 @@
|
|
3032
3362
|
<xsl:when test="position() != last()"><xsl:value-of select="$charDelim"/></xsl:when>
|
3033
3363
|
<xsl:otherwise><xsl:value-of select="$charAtEnd"/></xsl:otherwise>
|
3034
3364
|
</xsl:choose>
|
3365
|
+
</xsl:template><xsl:template name="addPDFUAmeta">
|
3366
|
+
<fo:declarations>
|
3367
|
+
<pdf:catalog xmlns:pdf="http://xmlgraphics.apache.org/fop/extensions/pdf">
|
3368
|
+
<pdf:dictionary type="normal" key="ViewerPreferences">
|
3369
|
+
<pdf:boolean key="DisplayDocTitle">true</pdf:boolean>
|
3370
|
+
</pdf:dictionary>
|
3371
|
+
</pdf:catalog>
|
3372
|
+
<x:xmpmeta xmlns:x="adobe:ns:meta/">
|
3373
|
+
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
|
3374
|
+
<rdf:Description xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:pdf="http://ns.adobe.com/pdf/1.3/" rdf:about="">
|
3375
|
+
<!-- Dublin Core properties go here -->
|
3376
|
+
<dc:title>
|
3377
|
+
<xsl:variable name="title">
|
3378
|
+
|
3379
|
+
|
3380
|
+
<xsl:value-of select="/*/*[local-name() = 'bibdata']/*[local-name() = 'title'][@language = 'en']"/>
|
3381
|
+
|
3382
|
+
|
3383
|
+
|
3384
|
+
</xsl:variable>
|
3385
|
+
<xsl:choose>
|
3386
|
+
<xsl:when test="normalize-space($title) != ''">
|
3387
|
+
<xsl:value-of select="$title"/>
|
3388
|
+
</xsl:when>
|
3389
|
+
<xsl:otherwise>
|
3390
|
+
<xsl:text> </xsl:text>
|
3391
|
+
</xsl:otherwise>
|
3392
|
+
</xsl:choose>
|
3393
|
+
</dc:title>
|
3394
|
+
<dc:creator>
|
3395
|
+
|
3396
|
+
<xsl:value-of select="/*/*[local-name() = 'bibdata']/*[local-name() = 'contributor'][*[local-name() = 'role']/@type='author']/*[local-name() = 'organization']/*[local-name() = 'name']"/>
|
3397
|
+
|
3398
|
+
|
3399
|
+
</dc:creator>
|
3400
|
+
<dc:description>
|
3401
|
+
<xsl:variable name="abstract">
|
3402
|
+
|
3403
|
+
<xsl:copy-of select="/*/*[local-name() = 'bibliography']/*[local-name() = 'references']/*[local-name() = 'bibitem']/*[local-name() = 'abstract']//text()"/>
|
3404
|
+
|
3405
|
+
|
3406
|
+
|
3407
|
+
|
3408
|
+
</xsl:variable>
|
3409
|
+
<xsl:value-of select="normalize-space($abstract)"/>
|
3410
|
+
</dc:description>
|
3411
|
+
<pdf:Keywords>
|
3412
|
+
<xsl:call-template name="insertKeywords"/>
|
3413
|
+
</pdf:Keywords>
|
3414
|
+
</rdf:Description>
|
3415
|
+
<rdf:Description xmlns:xmp="http://ns.adobe.com/xap/1.0/" rdf:about="">
|
3416
|
+
<!-- XMP properties go here -->
|
3417
|
+
<xmp:CreatorTool/>
|
3418
|
+
</rdf:Description>
|
3419
|
+
</rdf:RDF>
|
3420
|
+
</x:xmpmeta>
|
3421
|
+
</fo:declarations>
|
3422
|
+
</xsl:template><xsl:template name="getId">
|
3423
|
+
<xsl:choose>
|
3424
|
+
<xsl:when test="../@id">
|
3425
|
+
<xsl:value-of select="../@id"/>
|
3426
|
+
</xsl:when>
|
3427
|
+
<xsl:otherwise>
|
3428
|
+
<!-- <xsl:value-of select="concat(local-name(..), '_', text())"/> -->
|
3429
|
+
<xsl:value-of select="concat(generate-id(..), '_', text())"/>
|
3430
|
+
</xsl:otherwise>
|
3431
|
+
</xsl:choose>
|
3432
|
+
</xsl:template><xsl:template name="getLevel">
|
3433
|
+
<xsl:variable name="level_total" select="count(ancestor::*)"/>
|
3434
|
+
<xsl:variable name="level">
|
3435
|
+
<xsl:choose>
|
3436
|
+
<xsl:when test="ancestor::*[local-name() = 'preface']">
|
3437
|
+
<xsl:value-of select="$level_total - 2"/>
|
3438
|
+
</xsl:when>
|
3439
|
+
<xsl:when test="ancestor::*[local-name() = 'sections']">
|
3440
|
+
<xsl:value-of select="$level_total - 2"/>
|
3441
|
+
</xsl:when>
|
3442
|
+
<xsl:when test="ancestor::*[local-name() = 'bibliography']">
|
3443
|
+
<xsl:value-of select="$level_total - 2"/>
|
3444
|
+
</xsl:when>
|
3445
|
+
<xsl:when test="local-name(ancestor::*[1]) = 'annex'">1</xsl:when>
|
3446
|
+
<xsl:otherwise>
|
3447
|
+
<xsl:value-of select="$level_total - 1"/>
|
3448
|
+
</xsl:otherwise>
|
3449
|
+
</xsl:choose>
|
3450
|
+
</xsl:variable>
|
3451
|
+
<xsl:value-of select="$level"/>
|
3452
|
+
</xsl:template><xsl:template name="getSubSection">
|
3453
|
+
<xsl:number format=".1" level="multiple" count="*[local-name() = 'clause']/*[local-name() = 'clause'] | *[local-name() = 'clause']/*[local-name() = 'terms'] | *[local-name() = 'terms']/*[local-name() = 'term'] | *[local-name() = 'clause']/*[local-name() = 'term'] | *[local-name() = 'terms']/*[local-name() = 'clause'] | *[local-name() = 'terms']/*[local-name() = 'definitions'] | *[local-name() = 'definitions']/*[local-name() = 'clause'] | *[local-name() = 'clause']/*[local-name() = 'definitions'] | *[local-name() = 'definitions']/*[local-name() = 'definitions'] | *[local-name() = 'clause']/*[local-name() = 'references']"/>
|
3454
|
+
</xsl:template><xsl:template name="split">
|
3455
|
+
<xsl:param name="pText" select="."/>
|
3456
|
+
<xsl:param name="sep" select="','"/>
|
3457
|
+
<xsl:if test="string-length($pText) >0">
|
3458
|
+
<item>
|
3459
|
+
<xsl:value-of select="normalize-space(substring-before(concat($pText, ','), $sep))"/>
|
3460
|
+
</item>
|
3461
|
+
<xsl:call-template name="split">
|
3462
|
+
<xsl:with-param name="pText" select="substring-after($pText, $sep)"/>
|
3463
|
+
<xsl:with-param name="sep" select="$sep"/>
|
3464
|
+
</xsl:call-template>
|
3465
|
+
</xsl:if>
|
3466
|
+
</xsl:template><xsl:template name="getDocumentId">
|
3467
|
+
<xsl:call-template name="getLang"/><xsl:value-of select="//*[local-name() = 'p'][1]/@id"/>
|
3035
3468
|
</xsl:template></xsl:stylesheet>
|