isodoc 2.1.1 → 2.1.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (64) hide show
  1. checksums.yaml +4 -4
  2. data/isodoc.gemspec +4 -1
  3. data/lib/isodoc/base_style/blocks.scss +7 -0
  4. data/lib/isodoc/function/inline.rb +2 -0
  5. data/lib/isodoc/function/lists.rb +24 -9
  6. data/lib/isodoc/function/to_word_html.rb +1 -0
  7. data/lib/isodoc/function/utils.rb +17 -7
  8. data/lib/isodoc/gem_tasks.rb +19 -10
  9. data/lib/isodoc/i18n.rb +19 -0
  10. data/lib/isodoc/metadata.rb +2 -2
  11. data/lib/isodoc/presentation_function/inline.rb +11 -4
  12. data/lib/isodoc/presentation_function/xrefs.rb +22 -6
  13. data/lib/isodoc/presentation_xml_convert.rb +1 -0
  14. data/lib/isodoc/version.rb +1 -1
  15. data/lib/isodoc/word_function/body.rb +6 -3
  16. data/lib/isodoc/xref/xref_gen.rb +4 -4
  17. metadata +3 -50
  18. data/.github/workflows/rake.yml +0 -15
  19. data/.github/workflows/release.yml +0 -24
  20. data/.hound.yml +0 -5
  21. data/.oss-guides.rubocop.yml +0 -1077
  22. data/.rubocop.yml +0 -10
  23. data/Rakefile +0 -8
  24. data/bin/rspec +0 -17
  25. data/spec/assets/header.html +0 -7
  26. data/spec/assets/html.scss +0 -20
  27. data/spec/assets/html_override.css +0 -1
  28. data/spec/assets/htmlcover.html +0 -4
  29. data/spec/assets/htmlintro.html +0 -5
  30. data/spec/assets/i18n.yaml +0 -41
  31. data/spec/assets/iso.xml +0 -8
  32. data/spec/assets/odf.emf +0 -0
  33. data/spec/assets/odf.svg +0 -1
  34. data/spec/assets/odf1.svg +0 -4
  35. data/spec/assets/outputtest/a.xml +0 -66
  36. data/spec/assets/outputtest/iso.international-standard.xsl +0 -3011
  37. data/spec/assets/rice_image1 +0 -0
  38. data/spec/assets/rice_image1.png +0 -0
  39. data/spec/assets/scripts.html +0 -3
  40. data/spec/assets/scripts_override.html +0 -3
  41. data/spec/assets/std.css +0 -2
  42. data/spec/assets/word.css +0 -2
  43. data/spec/assets/word_override.css +0 -1
  44. data/spec/assets/wordcover.html +0 -3
  45. data/spec/assets/wordintro.html +0 -4
  46. data/spec/isodoc/blocks_spec.rb +0 -2934
  47. data/spec/isodoc/cleanup_spec.rb +0 -1056
  48. data/spec/isodoc/footnotes_spec.rb +0 -264
  49. data/spec/isodoc/form_spec.rb +0 -160
  50. data/spec/isodoc/i18n_spec.rb +0 -1201
  51. data/spec/isodoc/inline_spec.rb +0 -2301
  52. data/spec/isodoc/lists_spec.rb +0 -469
  53. data/spec/isodoc/metadata_spec.rb +0 -401
  54. data/spec/isodoc/postproc_spec.rb +0 -2938
  55. data/spec/isodoc/presentation_xml_spec.rb +0 -1476
  56. data/spec/isodoc/ref_spec.rb +0 -955
  57. data/spec/isodoc/section_spec.rb +0 -2123
  58. data/spec/isodoc/table_spec.rb +0 -588
  59. data/spec/isodoc/terms_spec.rb +0 -712
  60. data/spec/isodoc/utils_spec.rb +0 -57
  61. data/spec/isodoc/xref_numbering_spec.rb +0 -378
  62. data/spec/isodoc/xref_spec.rb +0 -1837
  63. data/spec/isodoc/xslfo_convert_spec.rb +0 -103
  64. data/spec/spec_helper.rb +0 -88
@@ -1,3011 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?><xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:iso="http://riboseinc.com/isoxml" xmlns:mathml="http://www.w3.org/1998/Math/MathML" xmlns:xalan="http://xml.apache.org/xalan" xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" version="1.0">
2
-
3
- <xsl:output method="xml" encoding="UTF-8" indent="no"/>
4
-
5
-
6
-
7
-
8
-
9
- <xsl:variable name="pageWidth" select="'210mm'"/>
10
- <xsl:variable name="pageHeight" select="'297mm'"/>
11
-
12
- <xsl:variable name="copyrightText" select="concat('© ISO ', iso:iso-standard/iso:bibdata/iso:copyright/iso:from ,' – All rights reserved')"/>
13
-
14
- <xsl:variable name="lang-1st-letter_tmp" select="substring-before(substring-after(/iso:iso-standard/iso:bibdata/iso:docidentifier[@type = 'iso-with-lang'], '('), ')')"/>
15
- <xsl:variable name="lang-1st-letter" select="concat('(', $lang-1st-letter_tmp , ')')"/>
16
-
17
- <xsl:variable name="ISOname" select="concat(/iso:iso-standard/iso:bibdata/iso:docidentifier, ':', /iso:iso-standard/iso:bibdata/iso:copyright/iso:from , $lang-1st-letter)"/>
18
-
19
- <!-- Information and documentation — Codes for transcription systems -->
20
- <xsl:variable name="title-en" select="/iso:iso-standard/iso:bibdata/iso:title[@language = 'en' and @type = 'main']"/>
21
- <xsl:variable name="title-fr" select="/iso:iso-standard/iso:bibdata/iso:title[@language = 'fr' and @type = 'main']"/>
22
- <xsl:variable name="title-intro" select="/iso:iso-standard/iso:bibdata/iso:title[@language = 'en' and @type = 'title-intro']"/>
23
- <xsl:variable name="title-main" select="/iso:iso-standard/iso:bibdata/iso:title[@language = 'en' and @type = 'title-main']"/>
24
- <xsl:variable name="part" select="/iso:iso-standard/iso:bibdata/iso:ext/iso:structuredidentifier/iso:project-number/@part"/>
25
- <xsl:variable name="title-part" select="/iso:iso-standard/iso:bibdata/iso:title[@language = 'en' and @type = 'title-part']"/>
26
-
27
- <!--
28
- <status>
29
- <stage>30</stage>
30
- <substage>92</substage>
31
- </status>
32
- The <stage> and <substage> values are well defined,
33
- as the International Harmonized Stage Codes (https://www.iso.org/stage-codes.html):
34
- stage 60 means published, everything before is a Draft (90 means withdrawn, but the document doesn't change anymore) -->
35
- <xsl:variable name="isPublished">
36
- <xsl:variable name="stage" select="number(/iso:iso-standard/iso:bibdata/iso:status/iso:stage)"/>
37
- <xsl:choose>
38
- <xsl:when test="string($stage) = 'NaN'">false</xsl:when>
39
- <xsl:when test="$stage &gt;=60">true</xsl:when>
40
- <xsl:otherwise>false</xsl:otherwise>
41
- </xsl:choose>
42
- </xsl:variable>
43
-
44
- <!-- Example:
45
- <item level="1" id="Foreword" display="true">Foreword</item>
46
- <item id="term-script" display="false">3.2</item>
47
- -->
48
- <xsl:variable name="contents">
49
- <contents>
50
- <xsl:apply-templates select="/iso:iso-standard/iso:preface/node()" mode="contents"/>
51
- <!-- <xsl:with-param name="sectionNum" select="'0'"/>
52
- </xsl:apply-templates> -->
53
- <xsl:apply-templates select="/iso:iso-standard/iso:sections/iso:clause[1]" mode="contents"> <!-- [@id = '_scope'] -->
54
- <xsl:with-param name="sectionNum" select="'1'"/>
55
- </xsl:apply-templates>
56
- <xsl:apply-templates select="/iso:iso-standard/iso:bibliography/iso:references[1]" mode="contents"> <!-- [@id = '_normative_references'] -->
57
- <xsl:with-param name="sectionNum" select="'2'"/>
58
- </xsl:apply-templates>
59
- <xsl:apply-templates select="/iso:iso-standard/iso:sections/*[position() &gt; 1]" mode="contents"> <!-- @id != '_scope' -->
60
- <xsl:with-param name="sectionNumSkew" select="'1'"/>
61
- </xsl:apply-templates>
62
- <xsl:apply-templates select="/iso:iso-standard/iso:annex" mode="contents"/>
63
- <xsl:apply-templates select="/iso:iso-standard/iso:bibliography/iso:references[position() &gt; 1]" mode="contents"/> <!-- @id = '_bibliography' -->
64
-
65
- <xsl:apply-templates select="//iso:figure" mode="contents"/>
66
-
67
- <xsl:apply-templates select="//iso:table" mode="contents"/>
68
-
69
- </contents>
70
- </xsl:variable>
71
-
72
- <xsl:variable name="lang">
73
- <xsl:call-template name="getLang"/>
74
- </xsl:variable>
75
-
76
- <xsl:template match="/">
77
- <fo:root font-family="Cambria, Times New Roman, Cambria Math, HanSans" font-size="11pt" xml:lang="{$lang}"> <!-- alternatives: SimSun -->
78
- <fo:layout-master-set>
79
- <!-- cover page -->
80
- <fo:simple-page-master master-name="cover-page" page-width="{$pageWidth}" page-height="{$pageHeight}">
81
- <fo:region-body margin-top="25.4mm" margin-bottom="25.4mm" margin-left="31.7mm" margin-right="31.7mm"/>
82
- <fo:region-before region-name="cover-page-header" extent="25.4mm"/>
83
- <fo:region-after/>
84
- <fo:region-start region-name="cover-left-region" extent="31.7mm"/>
85
- <fo:region-end region-name="cover-right-region" extent="31.7mm"/>
86
- </fo:simple-page-master>
87
- <fo:simple-page-master master-name="cover-page-published" page-width="{$pageWidth}" page-height="{$pageHeight}">
88
- <fo:region-body margin-top="12.7mm" margin-bottom="40mm" margin-left="78mm" margin-right="18.5mm"/>
89
- <fo:region-before region-name="cover-page-header" extent="12.7mm"/>
90
- <fo:region-after region-name="cover-page-footer" extent="40mm" display-align="after"/>
91
- <fo:region-start region-name="cover-left-region" extent="78mm"/>
92
- <fo:region-end region-name="cover-right-region" extent="18.5mm"/>
93
- </fo:simple-page-master>
94
- <!-- contents pages -->
95
- <!-- first page -->
96
- <!-- <fo:simple-page-master master-name="odd" page-width="{$pageWidth}" page-height="{$pageHeight}">
97
- <fo:region-body margin-top="27.4mm" margin-bottom="13mm" margin-left="19mm" margin-right="19mm"/>
98
- <fo:region-before region-name="header-first" extent="27.4mm"/>
99
- <fo:region-after region-name="footer-odd" extent="13mm"/>
100
- <fo:region-start region-name="left-region" extent="19mm"/>
101
- <fo:region-end region-name="right-region" extent="19mm"/>
102
- </fo:simple-page-master> -->
103
- <!-- odd pages -->
104
- <fo:simple-page-master master-name="odd" page-width="{$pageWidth}" page-height="{$pageHeight}">
105
- <fo:region-body margin-top="27.4mm" margin-bottom="13mm" margin-left="19mm" margin-right="19mm"/>
106
- <fo:region-before region-name="header-odd" extent="27.4mm"/> <!-- display-align="center" -->
107
- <fo:region-after region-name="footer-odd" extent="13mm"/>
108
- <fo:region-start region-name="left-region" extent="19mm"/>
109
- <fo:region-end region-name="right-region" extent="19mm"/>
110
- </fo:simple-page-master>
111
- <!-- even pages -->
112
- <fo:simple-page-master master-name="even" page-width="{$pageWidth}" page-height="{$pageHeight}">
113
- <fo:region-body margin-top="27.4mm" margin-bottom="13mm" margin-left="19mm" margin-right="19mm"/>
114
- <fo:region-before region-name="header-even" extent="27.4mm"/> <!-- display-align="center" -->
115
- <fo:region-after region-name="footer-even" extent="13mm"/>
116
- <fo:region-start region-name="left-region" extent="19mm"/>
117
- <fo:region-end region-name="right-region" extent="19mm"/>
118
- </fo:simple-page-master>
119
- <fo:page-sequence-master master-name="document">
120
- <fo:repeatable-page-master-alternatives>
121
- <!-- <fo:conditional-page-master-reference page-position="first" master-reference="first-page"/> -->
122
- <fo:conditional-page-master-reference odd-or-even="even" master-reference="even"/>
123
- <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd"/>
124
- </fo:repeatable-page-master-alternatives>
125
- </fo:page-sequence-master>
126
-
127
- <fo:simple-page-master master-name="last-page" page-width="{$pageWidth}" page-height="{$pageHeight}">
128
- <fo:region-body margin-top="27.4mm" margin-bottom="13mm" margin-left="19mm" margin-right="19mm"/>
129
- <fo:region-before/>
130
- <fo:region-after region-name="last-page-footer" extent="13mm"/>
131
- <fo:region-start region-name="left-region" extent="19mm"/>
132
- <fo:region-end region-name="right-region" extent="19mm"/>
133
- </fo:simple-page-master>
134
- </fo:layout-master-set>
135
-
136
- <fo:declarations>
137
- <pdf:catalog xmlns:pdf="http://xmlgraphics.apache.org/fop/extensions/pdf">
138
- <pdf:dictionary type="normal" key="ViewerPreferences">
139
- <pdf:boolean key="DisplayDocTitle">true</pdf:boolean>
140
- </pdf:dictionary>
141
- </pdf:catalog>
142
- <x:xmpmeta xmlns:x="adobe:ns:meta/">
143
- <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
144
- <rdf:Description xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:pdf="http://ns.adobe.com/pdf/1.3/" rdf:about="">
145
- <!-- Dublin Core properties go here -->
146
- <dc:title><xsl:value-of select="$title-en"/></dc:title>
147
- <dc:creator><xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:contributor[iso:role/@type='author']/iso:organization/iso:name"/></dc:creator>
148
- <dc:description>
149
- <xsl:variable name="abstract">
150
- <xsl:copy-of select="/iso:iso-standard/iso:bibliography/iso:references/iso:bibitem/iso:abstract//text()"/>
151
- </xsl:variable>
152
- <xsl:value-of select="normalize-space($abstract)"/>
153
- </dc:description>
154
- <pdf:Keywords/>
155
- </rdf:Description>
156
- <rdf:Description xmlns:xmp="http://ns.adobe.com/xap/1.0/" rdf:about="">
157
- <!-- XMP properties go here -->
158
- <xmp:CreatorTool/>
159
- </rdf:Description>
160
- </rdf:RDF>
161
- </x:xmpmeta>
162
- </fo:declarations>
163
-
164
- <!-- cover page -->
165
- <xsl:choose>
166
- <xsl:when test="$isPublished = 'true'">
167
- <fo:page-sequence master-reference="cover-page-published" force-page-count="no-force">
168
- <fo:static-content flow-name="cover-page-footer" font-size="10pt">
169
- <fo:table table-layout="fixed" width="100%" border-top="1mm double black" margin-bottom="3mm">
170
- <fo:table-column column-width="50%"/>
171
- <fo:table-column column-width="50%"/>
172
- <fo:table-body>
173
- <fo:table-row height="32mm">
174
- <fo:table-cell display-align="center">
175
- <fo:block text-align="left">
176
- <fo:external-graphic src="{concat('data:image/png;base64,', normalize-space($Image-ISO-Logo))}" width="21mm" content-height="21mm" content-width="scale-to-fit" scaling="uniform" fox:alt-text="Image {@alt}"/>
177
- </fo:block>
178
- </fo:table-cell>
179
- <fo:table-cell display-align="center">
180
- <fo:block text-align="right">
181
- <fo:block>Reference number</fo:block>
182
- <fo:block><xsl:value-of select="$ISOname"/></fo:block>
183
- <fo:block> </fo:block>
184
- <fo:block> </fo:block>
185
- <fo:block><fo:inline font-size="9pt">©</fo:inline><xsl:value-of select="concat(' ISO ', iso:iso-standard/iso:bibdata/iso:copyright/iso:from)"/></fo:block>
186
- </fo:block>
187
- </fo:table-cell>
188
- </fo:table-row>
189
- </fo:table-body>
190
- </fo:table>
191
- </fo:static-content>
192
- <fo:flow flow-name="xsl-region-body">
193
- <fo:block-container>
194
- <fo:table table-layout="fixed" width="100%" font-size="24pt" line-height="1" margin-bottom="35mm">
195
- <fo:table-column column-width="60%"/>
196
- <fo:table-column column-width="40%"/>
197
- <fo:table-body>
198
- <fo:table-row>
199
- <fo:table-cell>
200
- <fo:block text-align="left">
201
- <xsl:variable name="doctype" select="/iso:iso-standard/iso:bibdata/iso:ext/iso:doctype"/>
202
- <xsl:value-of select="translate(translate($doctype,'-',' '), $lower,$upper)"/>
203
- </fo:block>
204
- </fo:table-cell>
205
- <fo:table-cell>
206
- <fo:block text-align="right" font-weight="bold" margin-bottom="13mm">
207
- <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:docidentifier[@type = 'iso']"/>
208
- </fo:block>
209
- </fo:table-cell>
210
- </fo:table-row>
211
- <fo:table-row>
212
- <fo:table-cell number-columns-spanned="2" font-size="10pt" line-height="1.2">
213
- <fo:block text-align="right">
214
- <xsl:variable name="edition" select="/iso:iso-standard/iso:bibdata/iso:edition"/>
215
- <xsl:choose>
216
- <xsl:when test="$edition = 1">First</xsl:when>
217
- <xsl:when test="$edition = 2">Second</xsl:when>
218
- <xsl:when test="$edition = 3">Third</xsl:when>
219
- <xsl:otherwise><xsl:value-of select="$edition"/></xsl:otherwise>
220
- </xsl:choose>
221
- <xsl:text> edition</xsl:text>
222
- <xsl:value-of select="$linebreak"/>
223
- <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:version/iso:revision-date"/></fo:block>
224
- </fo:table-cell>
225
- </fo:table-row>
226
- </fo:table-body>
227
- </fo:table>
228
-
229
- <fo:block-container border-top="1mm double black" line-height="1.1">
230
- <fo:block margin-right="40mm">
231
- <fo:block font-size="18pt" font-weight="bold" margin-top="12pt">
232
- <xsl:value-of select="$title-intro"/>
233
- <xsl:text> — </xsl:text>
234
- <xsl:value-of select="$title-main"/>
235
- <xsl:if test="$part != ''">
236
- <xsl:text> — </xsl:text>
237
- <fo:block font-weight="normal" margin-top="6pt">
238
- <xsl:text>Part </xsl:text><xsl:value-of select="$part"/>
239
- <xsl:text>:</xsl:text>
240
- </fo:block>
241
- </xsl:if>
242
- <xsl:value-of select="$title-part"/>
243
- </fo:block>
244
-
245
- <fo:block font-size="9pt"><xsl:value-of select="$linebreak"/></fo:block>
246
- <fo:block font-size="11pt" font-style="italic" line-height="1.5">
247
- <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:title[@language = 'fr' and @type = 'title-intro']"/>
248
- <xsl:text> — </xsl:text>
249
- <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:title[@language = 'fr' and @type = 'title-main']"/>
250
- <xsl:if test="$part != ''">
251
- <xsl:text> — </xsl:text>
252
- <xsl:text>Partie </xsl:text>
253
- <xsl:value-of select="$part"/>
254
- <xsl:text>:</xsl:text>
255
- </xsl:if>
256
- <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:title[@language = 'fr' and @type = 'title-part']"/>
257
- </fo:block>
258
- </fo:block>
259
- </fo:block-container>
260
- </fo:block-container>
261
- </fo:flow>
262
- </fo:page-sequence>
263
- </xsl:when>
264
- <xsl:otherwise>
265
- <fo:page-sequence master-reference="cover-page" force-page-count="no-force">
266
- <fo:static-content flow-name="cover-page-header" font-size="10pt">
267
- <fo:block-container height="24mm" display-align="before">
268
- <fo:block padding-top="12.5mm">
269
- <xsl:value-of select="$copyrightText"/>
270
- </fo:block>
271
- </fo:block-container>
272
- </fo:static-content>
273
- <fo:flow flow-name="xsl-region-body">
274
- <fo:block-container text-align="right">
275
- <xsl:choose>
276
- <xsl:when test="/iso:iso-standard/iso:bibdata/iso:docidentifier[@type = 'iso-tc']">
277
- <!-- 17301 -->
278
- <fo:block font-size="14pt" font-weight="bold" margin-bottom="12pt">
279
- <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:docidentifier[@type = 'iso-tc']"/>
280
- </fo:block>
281
- <!-- Date: 2016-05-01 -->
282
- <fo:block margin-bottom="12pt">
283
- <xsl:text>Date: </xsl:text><xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:version/iso:revision-date"/>
284
- </fo:block>
285
-
286
- <!-- ISO/CD 17301-1(E) -->
287
- <fo:block margin-bottom="12pt">
288
- <xsl:value-of select="concat(/iso:iso-standard/iso:bibdata/iso:docidentifier, $lang-1st-letter)"/>
289
- </fo:block>
290
- </xsl:when>
291
- <xsl:otherwise>
292
- <fo:block font-size="14pt" font-weight="bold" margin-bottom="12pt">
293
- <!-- ISO/WD 24229(E) -->
294
- <xsl:value-of select="concat(/iso:iso-standard/iso:bibdata/iso:docidentifier, $lang-1st-letter)"/>
295
- </fo:block>
296
-
297
- </xsl:otherwise>
298
- </xsl:choose>
299
-
300
- <!-- ISO/TC 46/WG 3 -->
301
- <!-- <fo:block margin-bottom="12pt">
302
- <xsl:value-of select="concat('ISO/', /iso:iso-standard/iso:bibdata/iso:ext/iso:editorialgroup/iso:technical-committee/@type, ' ',
303
- /iso:iso-standard/iso:bibdata/iso:ext/iso:editorialgroup/iso:technical-committee/@number, '/',
304
- /iso:iso-standard/iso:bibdata/iso:ext/iso:editorialgroup/iso:workgroup/@type, ' ',
305
- /iso:iso-standard/iso:bibdata/iso:ext/iso:editorialgroup/iso:workgroup/@number)"/>
306
- -->
307
- <!-- ISO/TC 34/SC 4/WG 3 -->
308
- <fo:block margin-bottom="12pt">
309
- <xsl:text>ISO</xsl:text>
310
- <xsl:for-each select="/iso:iso-standard/iso:bibdata/iso:ext/iso:editorialgroup/iso:technical-committee[@number]">
311
- <xsl:text>/TC </xsl:text><xsl:value-of select="@number"/>
312
- </xsl:for-each>
313
- <xsl:for-each select="/iso:iso-standard/iso:bibdata/iso:ext/iso:editorialgroup/iso:subcommittee[@number]">
314
- <xsl:text>/SC </xsl:text>
315
- <xsl:value-of select="@number"/>
316
- </xsl:for-each>
317
- <xsl:for-each select="/iso:iso-standard/iso:bibdata/iso:ext/iso:editorialgroup/iso:workgroup[@number]">
318
- <xsl:text>/WG </xsl:text>
319
- <xsl:value-of select="@number"/>
320
- </xsl:for-each>
321
- </fo:block>
322
-
323
- <!-- Secretariat: AFNOR -->
324
-
325
- <fo:block margin-bottom="100pt">
326
- <xsl:text>Secretariat: </xsl:text>
327
- <xsl:choose>
328
- <xsl:when test="/iso:iso-standard/iso:bibdata/iso:ext/iso:editorialgroup/iso:secretariat">
329
- <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:ext/iso:editorialgroup/iso:secretariat"/>
330
- </xsl:when>
331
- <xsl:otherwise>XXXX</xsl:otherwise>
332
- </xsl:choose>
333
- </fo:block>
334
-
335
-
336
-
337
- </fo:block-container>
338
- <fo:block-container font-size="16pt">
339
- <!-- Information and documentation — Codes for transcription systems -->
340
- <fo:block font-weight="bold">
341
- <xsl:value-of select="$title-intro"/>
342
- <xsl:text> — </xsl:text>
343
- <xsl:value-of select="$title-main"/>
344
- <xsl:if test="$part != ''">
345
- <xsl:text> — </xsl:text>
346
- <fo:block font-weight="normal" margin-top="6pt">
347
- <xsl:text>Part </xsl:text><xsl:value-of select="$part"/>
348
- <xsl:text>:</xsl:text>
349
- </fo:block>
350
- </xsl:if>
351
- <xsl:value-of select="$title-part"/>
352
- </fo:block>
353
-
354
- <fo:block font-size="12pt"><xsl:value-of select="$linebreak"/></fo:block>
355
- <fo:block>
356
- <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:title[@language = 'fr' and @type = 'title-intro']"/>
357
- <xsl:text> — </xsl:text>
358
- <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:title[@language = 'fr' and @type = 'title-main']"/>
359
- <xsl:if test="$part != ''">
360
- <xsl:text> — </xsl:text>
361
- <fo:block margin-top="6pt" font-weight="normal">
362
- <xsl:text>Partie </xsl:text><xsl:value-of select="$part"/>
363
- <xsl:text>:</xsl:text>
364
- </fo:block>
365
- </xsl:if>
366
- <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:title[@language = 'fr' and @type = 'title-part']"/>
367
- </fo:block>
368
- </fo:block-container>
369
- <fo:block font-size="11pt" margin-bottom="8pt"><xsl:value-of select="$linebreak"/></fo:block>
370
- <fo:block-container font-size="40pt" text-align="center" margin-bottom="12pt" border="0.5pt solid black">
371
- <xsl:variable name="stage" select="substring-after(substring-before(/iso:iso-standard/iso:bibdata/iso:docidentifier[@type = 'iso'], ' '), '/')"/>
372
- <fo:block padding-top="2mm"><xsl:value-of select="$stage"/><xsl:text> stage</xsl:text></fo:block>
373
- </fo:block-container>
374
- <fo:block><xsl:value-of select="$linebreak"/></fo:block>
375
-
376
- <xsl:if test="/iso:iso-standard/iso:boilerplate/iso:license-statement">
377
- <fo:block-container font-size="10pt" margin-top="12pt" margin-bottom="6pt" border="0.5pt solid black">
378
- <fo:block padding-top="1mm">
379
- <xsl:apply-templates select="/iso:iso-standard/iso:boilerplate/iso:license-statement"/>
380
- </fo:block>
381
- </fo:block-container>
382
- </xsl:if>
383
- </fo:flow>
384
- </fo:page-sequence>
385
- </xsl:otherwise>
386
- </xsl:choose>
387
-
388
- <fo:page-sequence master-reference="document" format="i" force-page-count="no-force">
389
- <xsl:call-template name="insertHeaderFooter">
390
- <xsl:with-param name="font-weight">normal</xsl:with-param>
391
- </xsl:call-template>
392
- <fo:flow flow-name="xsl-region-body" line-height="115%">
393
- <xsl:if test="/iso:iso-standard/iso:boilerplate/iso:copyright-statement">
394
-
395
- <fo:block-container height="250mm" display-align="after">
396
- <fo:block margin-bottom="3mm">
397
- <fo:external-graphic src="{concat('data:image/png;base64,', normalize-space($Image-Attention))}" width="14mm" content-height="13mm" content-width="scale-to-fit" scaling="uniform" fox:alt-text="Image {@alt}"/>
398
- <fo:inline padding-left="6mm" font-size="12pt" font-weight="bold">COPYRIGHT PROTECTED DOCUMENT</fo:inline>
399
- </fo:block>
400
- <fo:block line-height="90%">
401
- <fo:block font-size="9pt" text-align="justify">
402
- <xsl:apply-templates select="/iso:iso-standard/iso:boilerplate/iso:copyright-statement"/>
403
- </fo:block>
404
- </fo:block>
405
- </fo:block-container>
406
- <fo:block break-after="page"/>
407
- </xsl:if>
408
-
409
- <fo:block-container font-weight="bold">
410
-
411
- <fo:block text-align-last="justify" font-size="16pt" margin-top="10pt" margin-bottom="18pt">
412
- <fo:inline font-size="16pt" font-weight="bold">Contents</fo:inline>
413
- <fo:inline keep-together.within-line="always">
414
- <fo:leader leader-pattern="space"/>
415
- <fo:inline font-weight="normal" font-size="10pt">Page</fo:inline>
416
- </fo:inline>
417
- </fo:block>
418
-
419
- <xsl:text disable-output-escaping="yes">&lt;!--</xsl:text>
420
- DEBUG
421
- contents=<xsl:copy-of select="xalan:nodeset($contents)"/>
422
- <xsl:text disable-output-escaping="yes">--&gt;</xsl:text>
423
-
424
- <xsl:variable name="margin-left">12</xsl:variable>
425
- <xsl:for-each select="xalan:nodeset($contents)//item[@display = 'true'][not(@level = 2 and starts-with(@section, '0'))]"><!-- skip clause from preface -->
426
-
427
- <fo:block>
428
- <xsl:if test="@level = 1">
429
- <xsl:attribute name="margin-top">5pt</xsl:attribute>
430
- </xsl:if>
431
- <fo:list-block>
432
- <xsl:attribute name="margin-left"><xsl:value-of select="$margin-left * (@level - 1)"/>mm</xsl:attribute>
433
- <xsl:if test="@level &gt;= 2">
434
- <xsl:attribute name="font-weight">normal</xsl:attribute>
435
- </xsl:if>
436
- <xsl:attribute name="provisional-distance-between-starts">
437
- <xsl:choose>
438
- <!-- skip 0 section without subsections -->
439
- <xsl:when test="@level &gt;= 3"><xsl:value-of select="$margin-left * 1.2"/>mm</xsl:when>
440
- <xsl:when test="@section != '' and not(@display-section = 'false')"><xsl:value-of select="$margin-left"/>mm</xsl:when>
441
- <xsl:otherwise>0mm</xsl:otherwise>
442
- </xsl:choose>
443
- </xsl:attribute>
444
- <fo:list-item>
445
- <fo:list-item-label end-indent="label-end()">
446
- <fo:block>
447
- <xsl:if test="@section and not(@display-section = 'false')"> <!-- output below -->
448
- <xsl:value-of select="@section"/>
449
- </xsl:if>
450
- </fo:block>
451
- </fo:list-item-label>
452
- <fo:list-item-body start-indent="body-start()">
453
- <fo:block text-align-last="justify" margin-left="12mm" text-indent="-12mm">
454
- <fo:basic-link internal-destination="{@id}" fox:alt-text="{text()}">
455
- <xsl:if test="@section and @display-section = 'false'">
456
- <xsl:value-of select="@section"/><xsl:text> </xsl:text>
457
- </xsl:if>
458
- <xsl:if test="@addon != ''">
459
- <fo:inline font-weight="normal">(<xsl:value-of select="@addon"/>)</fo:inline>
460
- </xsl:if>
461
- <xsl:text> </xsl:text><xsl:value-of select="text()"/>
462
- <fo:inline keep-together.within-line="always">
463
- <fo:leader font-size="9pt" font-weight="normal" leader-pattern="dots"/>
464
- <fo:inline><fo:page-number-citation ref-id="{@id}"/></fo:inline>
465
- </fo:inline>
466
- </fo:basic-link>
467
- </fo:block>
468
- </fo:list-item-body>
469
- </fo:list-item>
470
- </fo:list-block>
471
- </fo:block>
472
-
473
- </xsl:for-each>
474
- </fo:block-container>
475
- <!-- Foreword, Introduction -->
476
- <xsl:apply-templates select="/iso:iso-standard/iso:preface/node()"/>
477
-
478
- </fo:flow>
479
- </fo:page-sequence>
480
-
481
- <!-- BODY -->
482
- <fo:page-sequence master-reference="document" initial-page-number="1" force-page-count="no-force">
483
- <fo:static-content flow-name="xsl-footnote-separator">
484
- <fo:block>
485
- <fo:leader leader-pattern="rule" leader-length="30%"/>
486
- </fo:block>
487
- </fo:static-content>
488
- <xsl:call-template name="insertHeaderFooter"/>
489
- <fo:flow flow-name="xsl-region-body">
490
-
491
- <fo:block-container absolute-position="fixed" left="19mm" top="13mm" height="9mm" width="172mm" border-top="0.5mm solid black" border-bottom="0.5mm solid black" display-align="center" background-color="white">
492
- <fo:block text-align-last="justify" font-size="12pt" font-weight="bold">
493
- <xsl:variable name="doctype" select="/iso:iso-standard/iso:bibdata/iso:ext/iso:doctype"/>
494
- <fo:inline><xsl:value-of select="translate(translate($doctype,'-',' '), $lower,$upper)"/></fo:inline>
495
- <fo:inline keep-together.within-line="always">
496
- <fo:leader leader-pattern="space"/>
497
- <fo:inline><xsl:value-of select="$ISOname"/></fo:inline>
498
- </fo:inline>
499
- </fo:block>
500
- </fo:block-container>
501
-
502
-
503
- <fo:block-container>
504
- <!-- Information and documentation — Codes for transcription systems -->
505
- <!-- <fo:block font-size="16pt" font-weight="bold" margin-bottom="18pt">
506
- <xsl:value-of select="$title-en"/>
507
- </fo:block>
508
- -->
509
- <fo:block font-size="18pt" font-weight="bold" margin-top="12pt" margin-bottom="18pt">
510
- <fo:block>
511
- <xsl:value-of select="$title-intro"/>
512
- <xsl:text> — </xsl:text>
513
- <xsl:value-of select="$title-main"/>
514
- <xsl:if test="$part != ''">
515
- <xsl:text> — </xsl:text>
516
- <fo:block font-weight="normal" margin-top="12pt">
517
- <xsl:text>Part </xsl:text><xsl:value-of select="$part"/>
518
- <xsl:text>:</xsl:text>
519
- </fo:block>
520
- </xsl:if>
521
- </fo:block>
522
- <fo:block>
523
- <xsl:value-of select="$title-part"/>
524
- </fo:block>
525
- </fo:block>
526
-
527
-
528
- </fo:block-container>
529
- <!-- Clause(s) -->
530
- <fo:block>
531
-
532
- <xsl:apply-templates select="/iso:iso-standard/iso:sections/iso:clause[1]"> <!-- Scope -->
533
- <xsl:with-param name="sectionNum" select="'1'"/>
534
- </xsl:apply-templates>
535
-
536
- <fo:block space-before="27pt"> </fo:block>
537
- <!-- Normative references -->
538
- <xsl:apply-templates select="/iso:iso-standard/iso:bibliography/iso:references[1]">
539
- <xsl:with-param name="sectionNum" select="'2'"/>
540
- </xsl:apply-templates>
541
-
542
- <fo:block space-before="18pt"> </fo:block>
543
- <!-- main sections -->
544
- <xsl:apply-templates select="/iso:iso-standard/iso:sections/*[position() &gt; 1]">
545
- <xsl:with-param name="sectionNumSkew" select="'1'"/>
546
- </xsl:apply-templates>
547
-
548
- <!-- Annex(s) -->
549
- <xsl:apply-templates select="/iso:iso-standard/iso:annex"/>
550
-
551
- <!-- Bibliography -->
552
- <xsl:apply-templates select="/iso:iso-standard/iso:bibliography/iso:references[position() &gt; 1]"/>
553
-
554
- <fo:block id="lastBlock" font-size="1pt"> </fo:block>
555
- </fo:block>
556
-
557
- </fo:flow>
558
- </fo:page-sequence>
559
-
560
- <xsl:if test="$isPublished = 'true'">
561
- <fo:page-sequence master-reference="last-page" force-page-count="no-force">
562
- <fo:static-content flow-name="last-page-footer" font-size="10pt">
563
- <fo:block font-size="9pt"><xsl:value-of select="$copyrightText"/></fo:block>
564
- </fo:static-content>
565
- <fo:flow flow-name="xsl-region-body">
566
- <fo:block-container height="252mm" display-align="after">
567
- <fo:block-container border-top="1mm double black">
568
- <fo:block font-size="12pt" font-weight="bold" padding-top="3mm" padding-bottom="1mm">ICS  67.060</fo:block>
569
- <fo:block font-size="9pt">Price based on <fo:page-number-citation ref-id="lastBlock"/> pages</fo:block>
570
- </fo:block-container>
571
- </fo:block-container>
572
- </fo:flow>
573
- </fo:page-sequence>
574
- </xsl:if>
575
- </fo:root>
576
- </xsl:template>
577
-
578
- <!-- for pass the paremeter 'sectionNum' over templates, like 'tunnel' parameter in XSLT 2.0 -->
579
- <xsl:template match="node()">
580
- <xsl:param name="sectionNum"/>
581
- <xsl:param name="sectionNumSkew"/>
582
- <xsl:apply-templates>
583
- <xsl:with-param name="sectionNum" select="$sectionNum"/>
584
- <xsl:with-param name="sectionNumSkew" select="$sectionNumSkew"/>
585
- </xsl:apply-templates>
586
- </xsl:template>
587
-
588
- <!-- ============================= -->
589
- <!-- CONTENTS -->
590
- <!-- ============================= -->
591
- <xsl:template match="node()" mode="contents">
592
- <xsl:param name="sectionNum"/>
593
- <xsl:param name="sectionNumSkew"/>
594
- <xsl:apply-templates mode="contents">
595
- <xsl:with-param name="sectionNum" select="$sectionNum"/>
596
- <xsl:with-param name="sectionNumSkew" select="$sectionNumSkew"/>
597
- </xsl:apply-templates>
598
- </xsl:template>
599
-
600
-
601
- <!-- calculate main section number (1,2,3) and pass it deep into templates -->
602
- <!-- it's necessary, because there is itu:bibliography/itu:references from other section, but numbering should be sequental -->
603
- <xsl:template match="iso:iso-standard/iso:sections/*" mode="contents">
604
- <xsl:param name="sectionNum"/>
605
- <xsl:param name="sectionNumSkew" select="0"/>
606
- <xsl:variable name="sectionNum_">
607
- <xsl:choose>
608
- <xsl:when test="$sectionNum"><xsl:value-of select="$sectionNum"/></xsl:when>
609
- <xsl:when test="$sectionNumSkew != 0">
610
- <xsl:variable name="number"><xsl:number count="*"/></xsl:variable> <!-- iso:sections/iso:clause | iso:sections/iso:terms -->
611
- <xsl:value-of select="$number + $sectionNumSkew"/>
612
- </xsl:when>
613
- <xsl:otherwise>
614
- <xsl:number count="*"/>
615
- </xsl:otherwise>
616
- </xsl:choose>
617
- </xsl:variable>
618
- <xsl:apply-templates mode="contents">
619
- <xsl:with-param name="sectionNum" select="$sectionNum_"/>
620
- </xsl:apply-templates>
621
- </xsl:template>
622
-
623
- <!-- Any node with title element - clause, definition, annex,... -->
624
- <xsl:template match="iso:title | iso:preferred" mode="contents">
625
- <xsl:param name="sectionNum"/>
626
- <!-- sectionNum=<xsl:value-of select="$sectionNum"/> -->
627
- <xsl:variable name="id">
628
- <xsl:call-template name="getId"/>
629
- </xsl:variable>
630
-
631
- <xsl:variable name="level">
632
- <xsl:call-template name="getLevel"/>
633
- </xsl:variable>
634
-
635
- <xsl:variable name="section">
636
- <xsl:call-template name="getSection">
637
- <xsl:with-param name="sectionNum" select="$sectionNum"/>
638
- </xsl:call-template>
639
- </xsl:variable>
640
-
641
- <xsl:variable name="display">
642
- <xsl:choose>
643
- <xsl:when test="ancestor::iso:bibitem">false</xsl:when>
644
- <xsl:when test="ancestor::iso:term">false</xsl:when>
645
- <xsl:when test="ancestor::iso:annex and $level &gt;= 2">false</xsl:when>
646
- <xsl:when test="$level &lt;= 3">true</xsl:when>
647
- <xsl:otherwise>false</xsl:otherwise>
648
- </xsl:choose>
649
- </xsl:variable>
650
-
651
- <xsl:variable name="display-section">
652
- <xsl:choose>
653
- <xsl:when test="ancestor::iso:annex">false</xsl:when>
654
- <xsl:otherwise>true</xsl:otherwise>
655
- </xsl:choose>
656
- </xsl:variable>
657
-
658
- <xsl:variable name="type">
659
- <xsl:value-of select="local-name(..)"/>
660
- </xsl:variable>
661
-
662
- <xsl:variable name="root">
663
- <xsl:choose>
664
- <xsl:when test="ancestor::iso:annex">annex</xsl:when>
665
- </xsl:choose>
666
- </xsl:variable>
667
-
668
- <item id="{$id}" level="{$level}" section="{$section}" display-section="{$display-section}" display="{$display}" type="{$type}" root="{$root}">
669
- <xsl:attribute name="addon">
670
- <xsl:if test="local-name(..) = 'annex'"><xsl:value-of select="../@obligation"/></xsl:if>
671
- </xsl:attribute>
672
- <xsl:value-of select="."/>
673
- </item>
674
-
675
- <xsl:apply-templates mode="contents">
676
- <xsl:with-param name="sectionNum" select="$sectionNum"/>
677
- </xsl:apply-templates>
678
-
679
- </xsl:template>
680
-
681
-
682
- <xsl:template match="iso:figure" mode="contents">
683
- <item level="" id="{@id}" display="false">
684
- <xsl:attribute name="section">
685
- <xsl:text>Figure </xsl:text><xsl:number format="A.1-1" level="multiple" count="iso:annex | iso:figure"/>
686
- </xsl:attribute>
687
- </item>
688
- </xsl:template>
689
-
690
-
691
- <xsl:template match="iso:table" mode="contents">
692
- <xsl:param name="sectionNum"/>
693
- <xsl:variable name="annex-id" select="ancestor::iso:annex/@id"/>
694
- <item level="" id="{@id}" display="false" type="table">
695
- <xsl:attribute name="section">
696
- <xsl:text>Table </xsl:text>
697
- <xsl:choose>
698
- <xsl:when test="ancestor::*[local-name()='executivesummary']"> <!-- NIST -->
699
- <xsl:text>ES-</xsl:text><xsl:number format="1" count="*[local-name()='executivesummary']//*[local-name()='table']"/>
700
- </xsl:when>
701
- <xsl:when test="ancestor::*[local-name()='annex']">
702
- <xsl:number format="A-" count="iso:annex"/>
703
- <xsl:number format="1" level="any" count="iso:table[ancestor::iso:annex[@id = $annex-id]]"/>
704
- </xsl:when>
705
- <xsl:otherwise>
706
- <!-- <xsl:number format="1"/> -->
707
- <xsl:number format="1" level="any" count="*[local-name()='sections']//*[local-name()='table']"/>
708
- </xsl:otherwise>
709
- </xsl:choose>
710
- </xsl:attribute>
711
- <xsl:value-of select="iso:name/text()"/>
712
- </item>
713
- </xsl:template>
714
-
715
-
716
-
717
- <xsl:template match="iso:formula" mode="contents">
718
- <item level="" id="{@id}" display="false">
719
- <xsl:attribute name="section">
720
- <xsl:text>Formula (</xsl:text><xsl:number format="A.1" level="multiple" count="iso:annex | iso:formula"/><xsl:text>)</xsl:text>
721
- </xsl:attribute>
722
- </item>
723
- </xsl:template>
724
- <!-- ============================= -->
725
- <!-- ============================= -->
726
-
727
-
728
- <xsl:template match="iso:license-statement//iso:title">
729
- <fo:block text-align="center" font-weight="bold">
730
- <xsl:apply-templates/>
731
- </fo:block>
732
- </xsl:template>
733
-
734
- <xsl:template match="iso:license-statement//iso:p">
735
- <fo:block margin-left="1.5mm" margin-right="1.5mm">
736
- <xsl:if test="following-sibling::iso:p">
737
- <xsl:attribute name="margin-top">6pt</xsl:attribute>
738
- <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
739
- </xsl:if>
740
- <xsl:apply-templates/>
741
- </fo:block>
742
- </xsl:template>
743
-
744
- <!-- <fo:block margin-bottom="12pt">© ISO 2019, Published in Switzerland.</fo:block>
745
- <fo:block font-size="10pt" margin-bottom="12pt">All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or utilized otherwise in any form or by any means, electronic or mechanical, including photocopying, or posting on the internet or an intranet, without prior written permission. Permission can be requested from either ISO at the address below or ISO’s member body in the country of the requester.</fo:block>
746
- <fo:block font-size="10pt" text-indent="7.1mm">
747
- <fo:block>ISO copyright office</fo:block>
748
- <fo:block>Ch. de Blandonnet 8 • CP 401</fo:block>
749
- <fo:block>CH-1214 Vernier, Geneva, Switzerland</fo:block>
750
- <fo:block>Tel. + 41 22 749 01 11</fo:block>
751
- <fo:block>Fax + 41 22 749 09 47</fo:block>
752
- <fo:block>copyright@iso.org</fo:block>
753
- <fo:block>www.iso.org</fo:block>
754
- </fo:block> -->
755
-
756
- <xsl:template match="iso:copyright-statement//iso:p">
757
- <fo:block>
758
- <xsl:if test="preceding-sibling::iso:p">
759
- <!-- <xsl:attribute name="font-size">10pt</xsl:attribute> -->
760
- </xsl:if>
761
- <xsl:if test="following-sibling::iso:p">
762
- <!-- <xsl:attribute name="margin-bottom">12pt</xsl:attribute> -->
763
- <xsl:attribute name="margin-bottom">3pt</xsl:attribute>
764
- </xsl:if>
765
- <xsl:if test="not(following-sibling::iso:p)">
766
- <!-- <xsl:attribute name="margin-left">7.1mm</xsl:attribute> -->
767
- <xsl:attribute name="margin-left">4mm</xsl:attribute>
768
- </xsl:if>
769
- <xsl:apply-templates/>
770
- </fo:block>
771
- </xsl:template>
772
-
773
- <!-- Foreword, Introduction -->
774
- <xsl:template match="iso:iso-standard/iso:preface/*">
775
- <fo:block break-after="page"/>
776
- <xsl:apply-templates/>
777
- </xsl:template>
778
-
779
-
780
-
781
- <!-- clause, terms, clause, ...-->
782
- <xsl:template match="iso:iso-standard/iso:sections/*">
783
- <xsl:param name="sectionNum"/>
784
- <xsl:param name="sectionNumSkew" select="0"/>
785
- <fo:block>
786
- <xsl:variable name="pos"><xsl:number count="iso:sections/iso:clause | iso:sections/iso:terms"/></xsl:variable>
787
- <xsl:if test="$pos &gt;= 2">
788
- <xsl:attribute name="space-before">18pt</xsl:attribute>
789
- </xsl:if>
790
- <!-- pos=<xsl:value-of select="$pos" /> -->
791
- <xsl:variable name="sectionNum_">
792
- <xsl:choose>
793
- <xsl:when test="$sectionNum"><xsl:value-of select="$sectionNum"/></xsl:when>
794
- <xsl:when test="$sectionNumSkew != 0">
795
- <xsl:variable name="number"><xsl:number count="iso:sections/iso:clause | iso:sections/iso:terms"/></xsl:variable>
796
- <xsl:value-of select="$number + $sectionNumSkew"/>
797
- </xsl:when>
798
- </xsl:choose>
799
- </xsl:variable>
800
- <xsl:if test="not(iso:title)">
801
- <fo:block margin-top="3pt" margin-bottom="12pt">
802
- <xsl:value-of select="$sectionNum_"/><xsl:number format=".1 " level="multiple" count="iso:clause"/>
803
- </fo:block>
804
- </xsl:if>
805
- <xsl:apply-templates>
806
- <xsl:with-param name="sectionNum" select="$sectionNum_"/>
807
- </xsl:apply-templates>
808
- </fo:block>
809
- </xsl:template>
810
-
811
-
812
-
813
- <xsl:template match="iso:clause//iso:clause[not(iso:title)]">
814
- <xsl:param name="sectionNum"/>
815
- <xsl:variable name="section">
816
- <xsl:call-template name="getSection">
817
- <xsl:with-param name="sectionNum" select="$sectionNum"/>
818
- </xsl:call-template>
819
- </xsl:variable>
820
-
821
- <fo:block margin-top="3pt"><!-- margin-bottom="6pt" -->
822
- <fo:inline font-weight="bold" padding-right="3mm">
823
- <xsl:value-of select="$section"/><!-- <xsl:number format=".1 " level="multiple" count="iso:clause/iso:clause" /> -->
824
- </fo:inline>
825
- <xsl:apply-templates>
826
- <xsl:with-param name="sectionNum" select="$sectionNum"/>
827
- <xsl:with-param name="inline" select="'true'"/>
828
- </xsl:apply-templates>
829
- </fo:block>
830
- </xsl:template>
831
-
832
-
833
- <xsl:template match="iso:title">
834
- <xsl:param name="sectionNum"/>
835
-
836
- <xsl:variable name="parent-name" select="local-name(..)"/>
837
- <xsl:variable name="references_num_current">
838
- <xsl:number level="any" count="iso:references"/>
839
- </xsl:variable>
840
-
841
- <xsl:variable name="id">
842
- <xsl:call-template name="getId"/>
843
- </xsl:variable>
844
-
845
- <xsl:variable name="level">
846
- <xsl:call-template name="getLevel"/>
847
- </xsl:variable>
848
-
849
- <xsl:variable name="section">
850
- <xsl:call-template name="getSection">
851
- <xsl:with-param name="sectionNum" select="$sectionNum"/>
852
- </xsl:call-template>
853
- </xsl:variable>
854
-
855
- <xsl:variable name="font-size">
856
- <xsl:choose>
857
- <xsl:when test="ancestor::iso:annex and $level = 2">13pt</xsl:when>
858
- <xsl:when test="ancestor::iso:annex and $level = 3">11pt</xsl:when>
859
- <xsl:when test="ancestor::iso:preface">16pt</xsl:when>
860
- <xsl:when test="$level = 2">12pt</xsl:when>
861
- <xsl:when test="$level &gt;= 3">11pt</xsl:when>
862
- <xsl:otherwise>13pt</xsl:otherwise>
863
- </xsl:choose>
864
- </xsl:variable>
865
-
866
- <xsl:variable name="element-name">
867
- <xsl:choose>
868
- <xsl:when test="../@inline-header = 'true'">fo:inline</xsl:when>
869
- <xsl:otherwise>fo:block</xsl:otherwise>
870
- </xsl:choose>
871
- </xsl:variable>
872
-
873
- <xsl:choose>
874
- <xsl:when test="$parent-name = 'annex'">
875
- <fo:block id="{$id}" font-size="16pt" font-weight="bold" text-align="center" margin-bottom="12pt" keep-with-next="always">
876
- <xsl:value-of select="$section"/>
877
- <xsl:if test=" ../@obligation">
878
- <xsl:value-of select="$linebreak"/>
879
- <fo:inline font-weight="normal">(<xsl:value-of select="../@obligation"/>)</fo:inline>
880
- </xsl:if>
881
- <fo:block margin-top="18pt" margin-bottom="48pt"><xsl:apply-templates/></fo:block>
882
- </fo:block>
883
- </xsl:when>
884
- <xsl:when test="$parent-name = 'references' and $references_num_current != 1"> <!-- Bibliography -->
885
- <fo:block id="{$id}" font-size="16pt" font-weight="bold" text-align="center" margin-top="6pt" margin-bottom="36pt" keep-with-next="always">
886
- <xsl:apply-templates/>
887
- </fo:block>
888
- </xsl:when>
889
-
890
- <xsl:otherwise>
891
- <xsl:element name="{$element-name}">
892
- <xsl:attribute name="id"><xsl:value-of select="$id"/></xsl:attribute>
893
- <xsl:attribute name="font-size"><xsl:value-of select="$font-size"/></xsl:attribute>
894
- <xsl:attribute name="font-weight">bold</xsl:attribute>
895
- <xsl:attribute name="margin-top"> <!-- margin-top -->
896
- <xsl:choose>
897
- <xsl:when test="ancestor::iso:preface">8pt</xsl:when>
898
- <xsl:when test="$level = 2 and ancestor::annex">18pt</xsl:when>
899
- <xsl:when test="$level = '' or $level = 1">6pt</xsl:when><!-- 13.5pt -->
900
- <xsl:otherwise>12pt</xsl:otherwise>
901
- </xsl:choose>
902
- </xsl:attribute>
903
- <xsl:attribute name="margin-bottom">
904
- <xsl:choose>
905
- <xsl:when test="ancestor::iso:preface">18pt</xsl:when>
906
- <xsl:otherwise>12pt</xsl:otherwise>
907
- </xsl:choose>
908
- </xsl:attribute>
909
- <xsl:attribute name="keep-with-next">always</xsl:attribute>
910
-
911
-
912
- <!-- DEBUG level=<xsl:value-of select="$level"/>x -->
913
- <!-- section=<xsl:value-of select="$sectionNum"/> -->
914
- <!-- <xsl:if test="$sectionNum"> -->
915
- <xsl:value-of select="$section"/>
916
- <xsl:if test="$section != ''">
917
- <xsl:choose>
918
- <xsl:when test="$level = 2">
919
- <fo:inline padding-right="2mm"> </fo:inline>
920
- </xsl:when>
921
- <xsl:otherwise>
922
- <fo:inline padding-right="3mm"> </fo:inline>
923
- </xsl:otherwise>
924
- </xsl:choose>
925
- </xsl:if>
926
-
927
- <xsl:apply-templates/>
928
- </xsl:element>
929
-
930
- <xsl:if test="$element-name = 'fo:inline' and not(following-sibling::iso:p)">
931
- <fo:block> <!-- margin-bottom="12pt" -->
932
- <xsl:value-of select="$linebreak"/>
933
- </fo:block>
934
- </xsl:if>
935
- </xsl:otherwise>
936
- </xsl:choose>
937
-
938
- </xsl:template>
939
-
940
-
941
-
942
- <xsl:template match="iso:p">
943
- <xsl:param name="inline" select="'false'"/>
944
- <xsl:variable name="previous-element" select="local-name(preceding-sibling::*[1])"/>
945
- <xsl:variable name="element-name">
946
- <xsl:choose>
947
- <xsl:when test="$inline = 'true'">fo:inline</xsl:when>
948
- <xsl:when test="../@inline-header = 'true' and $previous-element = 'title'">fo:inline</xsl:when> <!-- first paragraph after inline title -->
949
- <xsl:when test="local-name(..) = 'admonition'">fo:inline</xsl:when>
950
- <xsl:otherwise>fo:block</xsl:otherwise>
951
- </xsl:choose>
952
- </xsl:variable>
953
- <xsl:element name="{$element-name}">
954
- <xsl:attribute name="text-align">
955
- <xsl:choose>
956
- <!-- <xsl:when test="ancestor::iso:preface">justify</xsl:when> -->
957
- <xsl:when test="@align"><xsl:value-of select="@align"/></xsl:when>
958
- <xsl:otherwise>justify</xsl:otherwise><!-- left -->
959
- </xsl:choose>
960
- </xsl:attribute>
961
- <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
962
- <xsl:apply-templates/>
963
- </xsl:element>
964
- <xsl:if test="$element-name = 'fo:inline' and not($inline = 'true') and not(local-name(..) = 'admonition')">
965
- <fo:block margin-bottom="12pt">
966
- <xsl:if test="ancestor::iso:annex">
967
- <xsl:attribute name="margin-bottom">0</xsl:attribute>
968
- </xsl:if>
969
- <xsl:value-of select="$linebreak"/>
970
- </fo:block>
971
- </xsl:if>
972
- <xsl:if test="$inline = 'true'">
973
- <fo:block> </fo:block>
974
- </xsl:if>
975
- </xsl:template>
976
-
977
- <!--
978
- <fn reference="1">
979
- <p id="_8e5cf917-f75a-4a49-b0aa-1714cb6cf954">Formerly denoted as 15 % (m/m).</p>
980
- </fn>
981
- -->
982
- <xsl:template match="iso:p/iso:fn" priority="2">
983
- <fo:footnote>
984
- <xsl:variable name="number">
985
- <xsl:number level="any" count="iso:p/iso:fn"/>
986
- </xsl:variable>
987
- <fo:inline font-size="80%" keep-with-previous.within-line="always" vertical-align="super">
988
- <fo:basic-link internal-destination="footnote_{@reference}" fox:alt-text="footnote {@reference}">
989
- <!-- <xsl:value-of select="@reference"/> -->
990
- <xsl:value-of select="$number + count(//iso:bibitem/iso:note)"/><xsl:text>)</xsl:text>
991
- </fo:basic-link>
992
- </fo:inline>
993
- <fo:footnote-body>
994
- <fo:block font-size="10pt" margin-bottom="12pt">
995
- <fo:inline id="footnote_{@reference}" keep-with-next.within-line="always" padding-right="3mm"> <!-- font-size="60%" alignment-baseline="hanging" -->
996
- <xsl:value-of select="$number + count(//iso:bibitem/iso:note)"/><xsl:text>)</xsl:text>
997
- </fo:inline>
998
- <xsl:for-each select="iso:p">
999
- <xsl:apply-templates/>
1000
- </xsl:for-each>
1001
- </fo:block>
1002
- </fo:footnote-body>
1003
- </fo:footnote>
1004
- </xsl:template>
1005
-
1006
- <xsl:template match="iso:p/iso:fn/iso:p">
1007
- <xsl:apply-templates/>
1008
- </xsl:template>
1009
-
1010
- <xsl:template match="iso:review">
1011
- <!-- comment 2019-11-29 -->
1012
- <!-- <fo:block font-weight="bold">Review:</fo:block>
1013
- <xsl:apply-templates /> -->
1014
- </xsl:template>
1015
-
1016
- <xsl:template match="text()">
1017
- <xsl:value-of select="."/>
1018
- </xsl:template>
1019
-
1020
-
1021
-
1022
- <xsl:template match="iso:image">
1023
- <fo:block-container text-align="center">
1024
- <fo:block>
1025
- <fo:external-graphic src="{@src}" fox:alt-text="Image {@alt}"/>
1026
- </fo:block>
1027
- <fo:block font-weight="bold" margin-top="12pt" margin-bottom="12pt">Figure <xsl:number format="1" level="any"/></fo:block>
1028
- </fo:block-container>
1029
-
1030
- </xsl:template>
1031
-
1032
- <xsl:template match="iso:figure">
1033
- <xsl:variable name="title">
1034
- <xsl:text>Figure </xsl:text>
1035
- </xsl:variable>
1036
-
1037
- <fo:block-container id="{@id}">
1038
- <fo:block>
1039
- <xsl:apply-templates/>
1040
- </fo:block>
1041
- <xsl:call-template name="fn_display_figure"/>
1042
- <xsl:for-each select="iso:note//iso:p">
1043
- <xsl:call-template name="note"/>
1044
- </xsl:for-each>
1045
- <fo:block font-weight="bold" text-align="center" margin-top="12pt" margin-bottom="12pt" keep-with-previous="always">
1046
-
1047
- <xsl:choose>
1048
- <xsl:when test="ancestor::iso:annex">
1049
- <xsl:choose>
1050
- <xsl:when test="local-name(..) = 'figure'">
1051
- <xsl:number format="a) "/>
1052
- </xsl:when>
1053
- <xsl:otherwise>
1054
- <xsl:value-of select="$title"/><xsl:number format="A.1-1" level="multiple" count="iso:annex | iso:figure"/>
1055
- </xsl:otherwise>
1056
- </xsl:choose>
1057
-
1058
- </xsl:when>
1059
- <xsl:otherwise>
1060
- <xsl:value-of select="$title"/><xsl:number format="1" level="any"/>
1061
- </xsl:otherwise>
1062
- </xsl:choose>
1063
- <xsl:if test="iso:name">
1064
- <xsl:if test="not(local-name(..) = 'figure')">
1065
- <xsl:text> — </xsl:text>
1066
- </xsl:if>
1067
- <xsl:value-of select="iso:name"/>
1068
- </xsl:if>
1069
- </fo:block>
1070
- </fo:block-container>
1071
- </xsl:template>
1072
-
1073
- <xsl:template match="iso:figure/iso:name"/>
1074
- <xsl:template match="iso:figure/iso:fn" priority="2"/>
1075
- <xsl:template match="iso:figure/iso:note"/>
1076
-
1077
-
1078
- <xsl:template match="iso:figure/iso:image">
1079
- <fo:block text-align="center">
1080
- <fo:external-graphic src="{@src}" content-width="100%" content-height="scale-to-fit" scaling="uniform" fox:alt-text="Image {@alt}"/> <!-- content-width="75%" -->
1081
- </fo:block>
1082
- </xsl:template>
1083
-
1084
-
1085
-
1086
-
1087
- <xsl:template match="iso:bibitem">
1088
- <fo:block id="{@id}" margin-bottom="6pt"> <!-- 12 pt -->
1089
- <!-- iso:docidentifier -->
1090
- <xsl:if test="iso:docidentifier">
1091
- <xsl:choose>
1092
- <xsl:when test="iso:docidentifier/@type = 'metanorma'"/>
1093
- <xsl:otherwise><fo:inline><xsl:value-of select="iso:docidentifier"/></fo:inline></xsl:otherwise>
1094
- </xsl:choose>
1095
- </xsl:if>
1096
- <xsl:apply-templates select="iso:note"/>
1097
- <xsl:if test="iso:docidentifier">, </xsl:if>
1098
- <fo:inline font-style="italic">
1099
- <xsl:choose>
1100
- <xsl:when test="iso:title[@type = 'main' and @language = 'en']">
1101
- <xsl:value-of select="iso:title[@type = 'main' and @language = 'en']"/>
1102
- </xsl:when>
1103
- <xsl:otherwise>
1104
- <xsl:value-of select="iso:title"/>
1105
- </xsl:otherwise>
1106
- </xsl:choose>
1107
- </fo:inline>
1108
- </fo:block>
1109
- </xsl:template>
1110
-
1111
-
1112
- <xsl:template match="iso:bibitem/iso:note">
1113
- <fo:footnote>
1114
- <xsl:variable name="number">
1115
- <xsl:number level="any" count="iso:bibitem/iso:note"/>
1116
- </xsl:variable>
1117
- <fo:inline font-size="85%" keep-with-previous.within-line="always" vertical-align="super"> <!--60% -->
1118
- <fo:basic-link internal-destination="footnote_{../@id}" fox:alt-text="footnote {$number}">
1119
- <xsl:value-of select="$number"/><xsl:text>)</xsl:text>
1120
- </fo:basic-link>
1121
- </fo:inline>
1122
- <fo:footnote-body>
1123
- <fo:block font-size="10pt" margin-bottom="12pt">
1124
- <fo:inline id="footnote_{../@id}" keep-with-next.within-line="always" alignment-baseline="hanging" padding-right="9mm"><!-- font-size="60%" -->
1125
- <xsl:value-of select="$number"/><xsl:text>)</xsl:text>
1126
- </fo:inline>
1127
- <xsl:apply-templates/>
1128
- </fo:block>
1129
- </fo:footnote-body>
1130
- </fo:footnote>
1131
- </xsl:template>
1132
-
1133
-
1134
-
1135
- <xsl:template match="iso:ul | iso:ol">
1136
- <fo:list-block provisional-distance-between-starts="7mm">
1137
- <xsl:apply-templates/>
1138
- </fo:list-block>
1139
- </xsl:template>
1140
-
1141
- <xsl:template match="iso:li">
1142
- <fo:list-item>
1143
- <fo:list-item-label end-indent="label-end()">
1144
- <fo:block>
1145
- <xsl:choose>
1146
- <xsl:when test="local-name(..) = 'ul'">—</xsl:when> <!-- dash -->
1147
- <xsl:otherwise> <!-- for ordered lists -->
1148
- <xsl:choose>
1149
- <xsl:when test="../@type = 'arabic'">
1150
- <xsl:number format="a)"/>
1151
- </xsl:when>
1152
- <xsl:when test="../@type = 'alphabet'">
1153
- <xsl:number format="a)"/>
1154
- </xsl:when>
1155
- <xsl:otherwise>
1156
- <xsl:number format="1."/>
1157
- </xsl:otherwise>
1158
- </xsl:choose>
1159
- </xsl:otherwise>
1160
- </xsl:choose>
1161
- </fo:block>
1162
- </fo:list-item-label>
1163
- <fo:list-item-body start-indent="body-start()">
1164
- <xsl:apply-templates/>
1165
- </fo:list-item-body>
1166
- </fo:list-item>
1167
- </xsl:template>
1168
-
1169
- <xsl:template match="iso:link">
1170
- <fo:inline>
1171
- <fo:basic-link external-destination="{@target}" color="blue" text-decoration="underline" fox:alt-text="{@target}">
1172
- <xsl:choose>
1173
- <xsl:when test="normalize-space(.) = ''">
1174
- <xsl:value-of select="@target"/>
1175
- </xsl:when>
1176
- <xsl:otherwise>
1177
- <xsl:apply-templates/>
1178
- </xsl:otherwise>
1179
- </xsl:choose>
1180
- </fo:basic-link>
1181
- </fo:inline>
1182
- </xsl:template>
1183
-
1184
- <xsl:template match="iso:preferred">
1185
- <xsl:param name="sectionNum"/>
1186
- <fo:block line-height="1.1">
1187
- <fo:block font-weight="bold" keep-with-next="always">
1188
- <fo:inline id="{../@id}">
1189
- <xsl:value-of select="$sectionNum"/>.<xsl:number count="iso:term"/>
1190
- </fo:inline>
1191
- </fo:block>
1192
- <fo:block font-weight="bold" keep-with-next="always">
1193
- <xsl:apply-templates/>
1194
- </fo:block>
1195
- </fo:block>
1196
- </xsl:template>
1197
-
1198
- <xsl:template match="iso:admitted">
1199
- <fo:block>
1200
- <xsl:apply-templates/>
1201
- </fo:block>
1202
- </xsl:template>
1203
-
1204
- <xsl:template match="iso:deprecates">
1205
- <fo:block>DEPRECATED: <xsl:apply-templates/></fo:block>
1206
- </xsl:template>
1207
-
1208
- <xsl:template match="iso:definition[preceding-sibling::iso:domain]">
1209
- <xsl:apply-templates/>
1210
- </xsl:template>
1211
- <xsl:template match="iso:definition[preceding-sibling::iso:domain]/iso:p">
1212
- <fo:inline> <xsl:apply-templates/></fo:inline>
1213
- <fo:block> </fo:block>
1214
- </xsl:template>
1215
-
1216
- <xsl:template match="iso:definition">
1217
- <fo:block margin-bottom="6pt">
1218
- <xsl:apply-templates/>
1219
- </fo:block>
1220
- </xsl:template>
1221
-
1222
- <xsl:template match="iso:termsource">
1223
- <fo:block margin-bottom="8pt" keep-with-previous="always">
1224
- <!-- Example: [SOURCE: ISO 5127:2017, 3.1.6.02] -->
1225
- <fo:basic-link internal-destination="{iso:origin/@bibitemid}" fox:alt-text="{iso:origin/@citeas}">
1226
- <xsl:text>[SOURCE: </xsl:text>
1227
- <xsl:value-of select="iso:origin/@citeas"/>
1228
- <xsl:if test="iso:origin/iso:locality/iso:referenceFrom">
1229
- <xsl:text>, </xsl:text><xsl:value-of select="iso:origin/iso:locality/iso:referenceFrom"/>
1230
- </xsl:if>
1231
- </fo:basic-link>
1232
- <xsl:apply-templates select="iso:modification"/>
1233
- <xsl:text>]</xsl:text>
1234
- </fo:block>
1235
- </xsl:template>
1236
-
1237
- <xsl:template match="iso:modification">
1238
- <xsl:text>, modified — </xsl:text>
1239
- <xsl:apply-templates/>
1240
- </xsl:template>
1241
- <xsl:template match="iso:modification/iso:p">
1242
- <fo:inline><xsl:apply-templates/></fo:inline>
1243
- </xsl:template>
1244
-
1245
- <xsl:template match="iso:termnote">
1246
- <fo:block font-size="10pt" margin-bottom="12pt">
1247
- <xsl:text>Note </xsl:text>
1248
- <xsl:number/>
1249
- <xsl:text> to entry: </xsl:text>
1250
- <xsl:apply-templates/>
1251
- </fo:block>
1252
- </xsl:template>
1253
-
1254
- <xsl:template match="iso:termnote/iso:p">
1255
- <fo:inline><xsl:apply-templates/></fo:inline>
1256
- </xsl:template>
1257
-
1258
- <xsl:template match="iso:domain">
1259
- <fo:inline>&lt;<xsl:apply-templates/>&gt;</fo:inline>
1260
- </xsl:template>
1261
-
1262
-
1263
- <xsl:template match="iso:termexample">
1264
- <fo:block font-size="10pt" margin-bottom="12pt">
1265
- <fo:inline padding-right="10mm">EXAMPLE</fo:inline>
1266
- <xsl:apply-templates/>
1267
- </fo:block>
1268
- </xsl:template>
1269
-
1270
- <xsl:template match="iso:termexample/iso:p">
1271
- <fo:inline><xsl:apply-templates/></fo:inline>
1272
- </xsl:template>
1273
-
1274
-
1275
- <xsl:template match="iso:annex">
1276
- <fo:block break-after="page"/>
1277
- <xsl:apply-templates/>
1278
- </xsl:template>
1279
-
1280
-
1281
- <!-- <xsl:template match="iso:references[@id = '_bibliography']"> -->
1282
- <xsl:template match="iso:references[position() &gt; 1]">
1283
- <fo:block break-after="page"/>
1284
- <xsl:apply-templates/>
1285
- </xsl:template>
1286
-
1287
-
1288
- <!-- Example: [1] ISO 9:1995, Information and documentation – Transliteration of Cyrillic characters into Latin characters – Slavic and non-Slavic languages -->
1289
- <!-- <xsl:template match="iso:references[@id = '_bibliography']/iso:bibitem"> -->
1290
- <xsl:template match="iso:references[position() &gt; 1]/iso:bibitem">
1291
- <fo:list-block margin-bottom="6pt" provisional-distance-between-starts="12mm">
1292
- <fo:list-item>
1293
- <fo:list-item-label end-indent="label-end()">
1294
- <fo:block>
1295
- <fo:inline id="{@id}">
1296
- <xsl:number format="[1]"/>
1297
- </fo:inline>
1298
- </fo:block>
1299
- </fo:list-item-label>
1300
- <fo:list-item-body start-indent="body-start()">
1301
- <fo:block>
1302
- <xsl:if test="iso:docidentifier">
1303
- <xsl:choose>
1304
- <xsl:when test="iso:docidentifier/@type = 'metanorma'"/>
1305
- <xsl:otherwise><fo:inline><xsl:value-of select="iso:docidentifier"/>, </fo:inline></xsl:otherwise>
1306
- </xsl:choose>
1307
- </xsl:if>
1308
- <xsl:choose>
1309
- <xsl:when test="iso:title[@type = 'main' and @language = 'en']">
1310
- <xsl:apply-templates select="iso:title[@type = 'main' and @language = 'en']"/>
1311
- </xsl:when>
1312
- <xsl:otherwise>
1313
- <xsl:apply-templates select="iso:title"/>
1314
- </xsl:otherwise>
1315
- </xsl:choose>
1316
- <xsl:apply-templates select="iso:formattedref"/>
1317
- </fo:block>
1318
- </fo:list-item-body>
1319
- </fo:list-item>
1320
- </fo:list-block>
1321
- </xsl:template>
1322
-
1323
- <!-- <xsl:template match="iso:references[@id = '_bibliography']/iso:bibitem" mode="contents"/> -->
1324
- <xsl:template match="iso:references[position() &gt; 1]/iso:bibitem" mode="contents"/>
1325
-
1326
- <!-- <xsl:template match="iso:references[@id = '_bibliography']/iso:bibitem/iso:title"> -->
1327
- <xsl:template match="iso:references[position() &gt; 1]/iso:bibitem/iso:title">
1328
- <fo:inline font-style="italic">
1329
- <xsl:apply-templates/>
1330
- </fo:inline>
1331
- </xsl:template>
1332
-
1333
- <xsl:template match="iso:quote">
1334
- <fo:block margin-top="12pt" margin-left="12mm" margin-right="12mm">
1335
- <xsl:apply-templates select=".//iso:p"/>
1336
- </fo:block>
1337
- <fo:block text-align="right">
1338
- <!-- — ISO, ISO 7301:2011, Clause 1 -->
1339
- <xsl:text>— </xsl:text><xsl:value-of select="iso:author"/>
1340
- <xsl:if test="iso:source">
1341
- <xsl:text>, </xsl:text>
1342
- <xsl:apply-templates select="iso:source"/>
1343
- </xsl:if>
1344
- </fo:block>
1345
- </xsl:template>
1346
-
1347
- <xsl:template match="iso:source">
1348
- <fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}">
1349
- <xsl:value-of select="@citeas" disable-output-escaping="yes"/>
1350
- <xsl:if test="iso:locality">
1351
- <xsl:text>, </xsl:text>
1352
- <xsl:apply-templates select="iso:locality"/>
1353
- </xsl:if>
1354
- </fo:basic-link>
1355
- </xsl:template>
1356
-
1357
- <xsl:template match="iso:appendix">
1358
- <fo:block font-size="12pt" font-weight="bold" margin-top="12pt" margin-bottom="12pt">
1359
- <fo:inline padding-right="5mm">Appendix <xsl:number/></fo:inline>
1360
- <xsl:apply-templates select="iso:title" mode="process"/>
1361
- </fo:block>
1362
- <xsl:apply-templates/>
1363
- </xsl:template>
1364
-
1365
- <xsl:template match="iso:appendix//iso:example">
1366
- <fo:block font-size="10pt" margin-bottom="12pt">
1367
- <xsl:text>EXAMPLE</xsl:text>
1368
- <xsl:if test="iso:name">
1369
- <xsl:text> — </xsl:text><xsl:apply-templates select="iso:name" mode="process"/>
1370
- </xsl:if>
1371
- </fo:block>
1372
- <xsl:apply-templates/>
1373
- </xsl:template>
1374
-
1375
- <xsl:template match="iso:appendix//iso:example/iso:name"/>
1376
- <xsl:template match="iso:appendix//iso:example/iso:name" mode="process">
1377
- <fo:inline><xsl:apply-templates/></fo:inline>
1378
- </xsl:template>
1379
-
1380
- <!-- <xsl:template match="iso:callout/text()">
1381
- <fo:basic-link internal-destination="{@target}"><fo:inline>&lt;<xsl:apply-templates />&gt;</fo:inline></fo:basic-link>
1382
- </xsl:template> -->
1383
- <xsl:template match="iso:callout">
1384
- <fo:basic-link internal-destination="{@target}" fox:alt-text="{@target}">&lt;<xsl:apply-templates/>&gt;</fo:basic-link>
1385
- </xsl:template>
1386
-
1387
- <xsl:template match="iso:annotation">
1388
- <fo:block>
1389
-
1390
- </fo:block>
1391
- <xsl:apply-templates/>
1392
- </xsl:template>
1393
-
1394
- <xsl:template match="iso:annotation/text()"/>
1395
-
1396
- <xsl:template match="iso:annotation/iso:p">
1397
- <xsl:variable name="annotation-id" select="../@id"/>
1398
- <xsl:variable name="callout" select="//*[@target = $annotation-id]/text()"/>
1399
- <fo:block id="{$annotation-id}">
1400
- <xsl:value-of select="concat('&lt;', $callout, '&gt; ')"/>
1401
- <xsl:apply-templates/>
1402
- </fo:block>
1403
- </xsl:template>
1404
-
1405
-
1406
- <xsl:template match="iso:appendix/iso:title"/>
1407
- <xsl:template match="iso:appendix/iso:title" mode="process">
1408
- <fo:inline><xsl:apply-templates/></fo:inline>
1409
- </xsl:template>
1410
-
1411
- <xsl:template match="mathml:math">
1412
- <!-- <fo:inline font-size="12pt" color="red">
1413
- MathML issue! <xsl:apply-templates />
1414
- </fo:inline> -->
1415
- <fo:instream-foreign-object fox:alt-text="Math">
1416
- <xsl:copy-of select="."/>
1417
- </fo:instream-foreign-object>
1418
- </xsl:template>
1419
-
1420
- <xsl:template match="iso:xref">
1421
- <xsl:variable name="target" select="normalize-space(@target)"/>
1422
- <fo:basic-link internal-destination="{$target}" fox:alt-text="{$target}">
1423
- <xsl:variable name="section" select="xalan:nodeset($contents)//item[@id = $target]/@section"/>
1424
- <xsl:if test="not(starts-with($section, 'Figure') or starts-with($section, 'Table'))">
1425
- <xsl:attribute name="color">blue</xsl:attribute>
1426
- <xsl:attribute name="text-decoration">underline</xsl:attribute>
1427
- </xsl:if>
1428
- <xsl:variable name="type" select="xalan:nodeset($contents)//item[@id = $target]/@type"/>
1429
- <xsl:variable name="root" select="xalan:nodeset($contents)//item[@id =$target]/@root"/>
1430
- <xsl:choose>
1431
- <xsl:when test="$type = 'clause' and $root != 'annex'">Clause </xsl:when><!-- and not (ancestor::annex) -->
1432
- <xsl:otherwise/> <!-- <xsl:value-of select="$type"/> -->
1433
- </xsl:choose>
1434
- <xsl:value-of select="$section"/>
1435
- </fo:basic-link>
1436
- </xsl:template>
1437
-
1438
- <xsl:template match="iso:sourcecode">
1439
- <fo:block font-family="Courier New" font-size="9pt" margin-bottom="12pt">
1440
- <xsl:choose>
1441
- <xsl:when test="@lang = 'en'"/>
1442
- <xsl:otherwise>
1443
- <xsl:attribute name="white-space">pre</xsl:attribute>
1444
- </xsl:otherwise>
1445
- </xsl:choose>
1446
- <xsl:apply-templates/>
1447
- </fo:block>
1448
- </xsl:template>
1449
-
1450
- <xsl:template match="iso:example/iso:p">
1451
- <fo:block font-size="10pt">
1452
- <fo:inline padding-right="9mm">EXAMPLE</fo:inline>
1453
- <xsl:apply-templates/>
1454
- </fo:block>
1455
- </xsl:template>
1456
-
1457
- <xsl:template match="iso:note/iso:p" name="note">
1458
- <fo:block font-size="10pt" margin-bottom="12pt">
1459
- <fo:inline padding-right="6mm">NOTE</fo:inline>
1460
- <xsl:apply-templates/>
1461
- </fo:block>
1462
- </xsl:template>
1463
-
1464
- <!-- <eref type="inline" bibitemid="ISO20483" citeas="ISO 20483:2013"><locality type="annex"><referenceFrom>C</referenceFrom></locality></eref> -->
1465
- <xsl:template match="iso:eref">
1466
- <fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}"> <!-- font-size="9pt" color="blue" vertical-align="super" -->
1467
- <xsl:if test="@type = 'footnote'">
1468
- <xsl:attribute name="keep-together.within-line">always</xsl:attribute>
1469
- <xsl:attribute name="font-size">80%</xsl:attribute>
1470
- <xsl:attribute name="keep-with-previous.within-line">always</xsl:attribute>
1471
- <xsl:attribute name="vertical-align">super</xsl:attribute>
1472
- </xsl:if>
1473
- <xsl:if test="@type = 'inline'">
1474
- <xsl:attribute name="color">blue</xsl:attribute>
1475
- <xsl:attribute name="text-decoration">underline</xsl:attribute>
1476
- </xsl:if>
1477
- <!-- <xsl:if test="@type = 'inline'">
1478
- <xsl:attribute name="text-decoration">underline</xsl:attribute>
1479
- </xsl:if> -->
1480
- <xsl:value-of select="@citeas" disable-output-escaping="yes"/>
1481
- <xsl:if test="iso:locality">
1482
- <xsl:text>, </xsl:text>
1483
- <!-- <xsl:choose>
1484
- <xsl:when test="iso:locality/@type = 'section'">Section </xsl:when>
1485
- <xsl:when test="iso:locality/@type = 'clause'">Clause </xsl:when>
1486
- <xsl:otherwise></xsl:otherwise>
1487
- </xsl:choose> -->
1488
- <xsl:apply-templates select="iso:locality"/>
1489
- </xsl:if>
1490
- </fo:basic-link>
1491
- </xsl:template>
1492
-
1493
- <xsl:template match="iso:locality">
1494
- <xsl:choose>
1495
- <xsl:when test="@type ='clause'">Clause </xsl:when>
1496
- <xsl:when test="@type ='annex'">Annex </xsl:when>
1497
- <xsl:otherwise><xsl:value-of select="@type"/></xsl:otherwise>
1498
- </xsl:choose>
1499
- <xsl:text> </xsl:text><xsl:value-of select="iso:referenceFrom"/>
1500
- </xsl:template>
1501
-
1502
- <xsl:template match="iso:admonition">
1503
- <fo:block margin-bottom="12pt" font-weight="bold"> <!-- text-align="center" -->
1504
- <xsl:value-of select="translate(@type, $lower, $upper)"/>
1505
- <xsl:text> — </xsl:text>
1506
- <xsl:apply-templates/>
1507
- </fo:block>
1508
- </xsl:template>
1509
-
1510
- <xsl:template match="iso:formula/iso:dt/iso:stem">
1511
- <fo:inline>
1512
- <xsl:apply-templates/>
1513
- </fo:inline>
1514
- </xsl:template>
1515
-
1516
- <xsl:template match="iso:formula/iso:stem">
1517
- <fo:block id="{../@id}" margin-top="6pt" margin-bottom="12pt">
1518
- <fo:table table-layout="fixed" width="100%">
1519
- <fo:table-column column-width="95%"/>
1520
- <fo:table-column column-width="5%"/>
1521
- <fo:table-body>
1522
- <fo:table-row>
1523
- <fo:table-cell display-align="center">
1524
- <fo:block text-align="left" margin-left="5mm">
1525
- <xsl:apply-templates/>
1526
- </fo:block>
1527
- </fo:table-cell>
1528
- <fo:table-cell display-align="center">
1529
- <fo:block text-align="right">
1530
- <xsl:choose>
1531
- <xsl:when test="ancestor::iso:annex">
1532
- <xsl:text>(</xsl:text><xsl:number format="A.1" level="multiple" count="iso:annex | iso:formula"/><xsl:text>)</xsl:text>
1533
- </xsl:when>
1534
- <xsl:otherwise> <!-- not(ancestor::iso:annex) -->
1535
- <!-- <xsl:text>(</xsl:text><xsl:number level="any" count="iso:formula"/><xsl:text>)</xsl:text> -->
1536
- </xsl:otherwise>
1537
- </xsl:choose>
1538
- </fo:block>
1539
- </fo:table-cell>
1540
- </fo:table-row>
1541
- </fo:table-body>
1542
- </fo:table>
1543
- <fo:inline keep-together.within-line="always">
1544
- </fo:inline>
1545
- </fo:block>
1546
- </xsl:template>
1547
-
1548
-
1549
- <xsl:template match="iso:br" priority="2">
1550
- <!-- <fo:block>&#xA0;</fo:block> -->
1551
- <xsl:value-of select="$linebreak"/>
1552
- </xsl:template>
1553
-
1554
- <xsl:template name="insertHeaderFooter">
1555
- <xsl:param name="font-weight" select="'bold'"/>
1556
- <fo:static-content flow-name="header-even">
1557
- <fo:block-container height="24mm" display-align="before">
1558
- <fo:block font-size="12pt" font-weight="bold" padding-top="12.5mm"><xsl:value-of select="$ISOname"/></fo:block>
1559
- </fo:block-container>
1560
- </fo:static-content>
1561
- <fo:static-content flow-name="footer-even">
1562
- <fo:block-container> <!-- display-align="after" -->
1563
- <fo:table table-layout="fixed" width="100%">
1564
- <fo:table-column column-width="50%"/>
1565
- <fo:table-column column-width="50%"/>
1566
- <fo:table-body>
1567
- <fo:table-row>
1568
- <fo:table-cell padding-top="0mm" font-size="11pt" font-weight="{$font-weight}">
1569
- <fo:block><fo:page-number/></fo:block>
1570
- </fo:table-cell>
1571
- <fo:table-cell padding-top="0mm" font-size="9pt">
1572
- <fo:block text-align="right"><xsl:value-of select="$copyrightText"/></fo:block>
1573
- </fo:table-cell>
1574
- </fo:table-row>
1575
- </fo:table-body>
1576
- </fo:table>
1577
- </fo:block-container>
1578
- </fo:static-content>
1579
- <fo:static-content flow-name="header-odd">
1580
- <fo:block-container height="24mm" display-align="before">
1581
- <fo:block font-size="12pt" font-weight="bold" text-align="right" padding-top="12.5mm"><xsl:value-of select="$ISOname"/></fo:block>
1582
- </fo:block-container>
1583
- </fo:static-content>
1584
- <fo:static-content flow-name="footer-odd">
1585
- <fo:block-container> <!-- display-align="after" -->
1586
- <fo:table table-layout="fixed" width="100%">
1587
- <fo:table-column column-width="50%"/>
1588
- <fo:table-column column-width="50%"/>
1589
- <fo:table-body>
1590
- <fo:table-row>
1591
- <fo:table-cell padding-top="0mm" font-size="9pt">
1592
- <fo:block><xsl:value-of select="$copyrightText"/></fo:block>
1593
- </fo:table-cell>
1594
- <fo:table-cell padding-top="0mm" font-size="11pt" font-weight="{$font-weight}">
1595
- <fo:block text-align="right"><fo:page-number/></fo:block>
1596
- </fo:table-cell>
1597
- </fo:table-row>
1598
- </fo:table-body>
1599
- </fo:table>
1600
- </fo:block-container>
1601
- </fo:static-content>
1602
- </xsl:template>
1603
-
1604
- <xsl:template name="getId">
1605
- <xsl:choose>
1606
- <xsl:when test="../@id">
1607
- <xsl:value-of select="../@id"/>
1608
- </xsl:when>
1609
- <xsl:otherwise>
1610
- <xsl:value-of select="text()"/>
1611
- </xsl:otherwise>
1612
- </xsl:choose>
1613
- </xsl:template>
1614
-
1615
- <xsl:template name="getLevel">
1616
- <xsl:variable name="level_total" select="count(ancestor::*)"/>
1617
- <xsl:variable name="level">
1618
- <xsl:choose>
1619
- <xsl:when test="ancestor::iso:preface">
1620
- <xsl:value-of select="$level_total - 2"/>
1621
- </xsl:when>
1622
- <xsl:when test="ancestor::iso:sections">
1623
- <xsl:value-of select="$level_total - 2"/>
1624
- </xsl:when>
1625
- <xsl:when test="ancestor::iso:bibliography">
1626
- <xsl:value-of select="$level_total - 2"/>
1627
- </xsl:when>
1628
- <xsl:when test="local-name(ancestor::*[1]) = 'annex'">1</xsl:when>
1629
- <xsl:otherwise>
1630
- <xsl:value-of select="$level_total - 1"/>
1631
- </xsl:otherwise>
1632
- </xsl:choose>
1633
- </xsl:variable>
1634
- <xsl:value-of select="$level"/>
1635
- </xsl:template>
1636
-
1637
- <xsl:template name="getSection">
1638
- <xsl:param name="sectionNum"/>
1639
- <xsl:variable name="level">
1640
- <xsl:call-template name="getLevel"/>
1641
- </xsl:variable>
1642
- <xsl:variable name="section">
1643
- <xsl:choose>
1644
- <xsl:when test="ancestor::iso:bibliography">
1645
- <xsl:value-of select="$sectionNum"/>
1646
- </xsl:when>
1647
- <xsl:when test="ancestor::iso:sections">
1648
- <!-- 1, 2, 3, 4, ... from main section (not annex, bibliography, ...) -->
1649
- <xsl:choose>
1650
- <xsl:when test="$level = 1">
1651
- <xsl:value-of select="$sectionNum"/>
1652
- </xsl:when>
1653
- <xsl:when test="$level &gt;= 2">
1654
- <xsl:variable name="num">
1655
- <xsl:number format=".1" level="multiple" count="iso:clause/iso:clause | iso:clause/iso:terms | iso:terms/iso:term | iso:clause/iso:term"/>
1656
- </xsl:variable>
1657
- <xsl:value-of select="concat($sectionNum, $num)"/>
1658
- </xsl:when>
1659
- <xsl:otherwise>
1660
- <!-- z<xsl:value-of select="$sectionNum"/>z -->
1661
- </xsl:otherwise>
1662
- </xsl:choose>
1663
- </xsl:when>
1664
- <!-- <xsl:when test="ancestor::iso:annex[@obligation = 'informative']">
1665
- <xsl:choose>
1666
- <xsl:when test="$level = 1">
1667
- <xsl:text>Annex </xsl:text>
1668
- <xsl:number format="I" level="any" count="iso:annex[@obligation = 'informative']"/>
1669
- </xsl:when>
1670
- <xsl:otherwise>
1671
- <xsl:number format="I.1" level="multiple" count="iso:annex[@obligation = 'informative'] | iso:clause"/>
1672
- </xsl:otherwise>
1673
- </xsl:choose>
1674
- </xsl:when> -->
1675
- <xsl:when test="ancestor::iso:annex">
1676
- <xsl:choose>
1677
- <xsl:when test="$level = 1">
1678
- <xsl:text>Annex </xsl:text>
1679
- <xsl:choose>
1680
- <xsl:when test="count(//iso:annex) = 1">
1681
- <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:ext/iso:structuredidentifier/iso:annexid"/>
1682
- </xsl:when>
1683
- <xsl:otherwise>
1684
- <xsl:number format="A" level="any" count="iso:annex"/>
1685
- </xsl:otherwise>
1686
- </xsl:choose>
1687
- </xsl:when>
1688
- <xsl:otherwise>
1689
- <xsl:choose>
1690
- <xsl:when test="count(//iso:annex) = 1">
1691
- <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:ext/iso:structuredidentifier/iso:annexid"/><xsl:number format=".1" level="multiple" count="iso:clause"/>
1692
- </xsl:when>
1693
- <xsl:otherwise>
1694
- <xsl:number format="A.1" level="multiple" count="iso:annex | iso:clause"/>
1695
- </xsl:otherwise>
1696
- </xsl:choose>
1697
- </xsl:otherwise>
1698
- </xsl:choose>
1699
- </xsl:when>
1700
- <xsl:when test="ancestor::iso:preface"> <!-- if preface and there is clause(s) -->
1701
- <xsl:choose>
1702
- <xsl:when test="$level = 1 and ..//iso:clause">0</xsl:when>
1703
- <xsl:when test="$level &gt;= 2">
1704
- <xsl:variable name="num">
1705
- <xsl:number format=".1" level="multiple" count="iso:clause"/>
1706
- </xsl:variable>
1707
- <xsl:value-of select="concat('0', $num)"/>
1708
- </xsl:when>
1709
- <xsl:otherwise>
1710
- <!-- z<xsl:value-of select="$sectionNum"/>z -->
1711
- </xsl:otherwise>
1712
- </xsl:choose>
1713
- </xsl:when>
1714
- <xsl:otherwise>
1715
- </xsl:otherwise>
1716
- </xsl:choose>
1717
- </xsl:variable>
1718
- <xsl:value-of select="$section"/>
1719
- </xsl:template>
1720
-
1721
- <xsl:variable name="Image-ISO-Logo">
1722
- <xsl:text>
1723
- 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
- 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
- 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
- 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
- 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
- MiizZ8/mdE5yj4uLi2AwMijHjx/ndM6MGYaGYHJnaAgmd4aGYHJnaAgmd4aGYHJnaAgmd4aG
1729
- ILlfuXLlLwYjg3L9+nVO5yR3FrzHyMCw4D2GFmFyZ2gIJneGhmByZ2gIJneGhmByZ2gIJneG
1730
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- vl2zZg2kQ2JJDY6HhITcu3ePcuv1V6xYMUrWkyVLll69el29epVyqARO9O2339I53gPH4OnT
1741
- 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
- EaYqXLBgAeUTgIa2SZMm8GutHC1KSkpC/Z6enlSvALgKpnqSxMTEIUOG5M+fn7IK8Pf3P3ny
1743
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- PChXrhwl63TZsmWTaQkEBARQGZ1O5ndARXIH7du35/JDu3JsOTB37ly8rlwpMGLECErQ8+rV
1768
- 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
- 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
- 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
- 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
- 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
- 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
- jIoGIzkaNGhgdgoND+wKKqbT8V6/HCyQO/j111+5UuD333+no+Y4duyYYZQTTHO889JfVzng
1775
- 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
- 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
- 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
- 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
- 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
- 3kJ/F2bJ0aNHqbAMoHih8QaPX3qNg9u3b5ctW5Z7mnaCowbvHT9+XBg+FxwcTAny2Lx5Mz9w
1781
- A1auXEkJesfOz89PmMqTM2fOFi1aQFIwZ/39/emoThcbG0uFZYOfniurVO5AOFNy27ZtsL9x
1782
- Sc2bNzca+Idr7tGjBx9aDgunY8eOlKbTFShQQNGyHLhxYVwv/jY1M9nOcSS5o7MWztXGkzY7
1783
- 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
- +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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- +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
- nQ6msPR4pATw6qgWnU46lg+W0pEjRzZt2hQSEvLLL7+gYIsWLWD9w5jBe8sbvrD1K1euDEvG
1795
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- +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
- 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
- hBsqZQCmTJlC96YGWpH7nTt31B1UKlq0aNeuXadNmxYaGjpz5swRI0a0a9fO09PTpp/zzcpd
1815
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- BWqNZAuxcis4krsqO+9JjEPhUdH1qoEFcrfYO1SF/Pnz9+jRIzY2VumgrFkSEhLoHKpy7949
1829
- OoEVLFq0iKpTj7x581LtBuzZs4eEaIA4eG/Lli1c+2ENEkG1SKXrVQML5A6TmgqnKyVKlIDJ
1830
- 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
- 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
- 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
- XlS7cjQk97dv3xZ9v0e7HZIjR44xY8Yo3fTCFtbCX3/9RbVbzdixY6lS9fD396falaMhuYPQ
1834
- 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
- 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
- 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
- pNoNQJdIWkwNvxca3Zuc4D2zSGyUZVdyBxcuXLDdzlsqkjlz5qVLl9JFG7B7927KpypUuxrY
1838
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- AwcGDRqU7sOxDRo0oGv677+DBw/SUfXIlCmTBYuHGbJx40aqUT3QuZmK9z1//jw9QgM0F7wn
1847
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- N+WwPTlz5rTRfmNGUWvZSiZ3C8mSJct33303e/bs06dPm9qtgCcpKWnevHlqTa40tWocrE3K
1859
- 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
- 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
- qGKcOGBydzDwa9MtmaZ///6U25FBP2b9cIcIJndHonnz5nQ/ksB1/vbbb6mMwzJ37ly6H/Ug
1862
- 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
- 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
- H300e/ZsunobwOTuAHh5eVm8biPX79ti9rnq5MmTJyoqiq7bNjC52zvlypWz/mNcTEyMLZZ8
1865
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- QQMvL68CBQooml85evRoCzbSEe4rDxNL6Ry1X375hQrr+5+HDx9SgiPgGHIHY8eOpd9YH914
1888
- 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
- 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
- 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
- 4sWLK1asgO8rNOpEQPf16tWDHCWW6Lh69arQrlNqsv/5559C+23RokWU4Dg4jNwBHKwKFSrQ
1892
- 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
- hvtbBLqanj17ooehYu9B8bJly1Imna5JkyaKrv/MmTPCsI+ff/6ZEhwKR5I7uHHjBv9dAjRs
1894
- 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
- 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
- xYoVpb+O4xl//PHHlFuna9OmjaKffv369UJ3EH4b+nSjRgIe8MCBA0WDU7Ar+C2qq1WrRkdl
1897
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- OTvEseUO4IcJ7Xg4UobrPUCO8EdF/hP0PXLkSOHe6jgif6m6rl27UjEl26pYIPcuXbpwRaDd
1905
- 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
- 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
- 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
- pEmiiVyVK1cWzeCF4oVznoDMGI6hQ4dSAZ2uf//+dFQSpXLnwy8gejlN7Lt373r27MkVASjF
1909
- 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
- Rj/gwMcVberSq1cvs5960KIXLlyYyw9hybFuFcl99erVXGbQt29fOmqalJQU4TwLJycn9HuU
1911
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- qAF4DYQTevFOSu80zXPx4sW6detSMT1w4h1x8roFZGS5c2zdurVAgQL0YPXkypVr5syZZteZ
1920
- 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
- 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
- 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
- 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
- 34O2k7dVrMfoml7z5s0TzvVHfzJgwACzM3Y2bdpkOAO0UaNGwr2rNIKG5A5gVIwfP56fccVT
1925
- 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
- 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
- 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
- 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
- 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
- +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
- K0O1wZE1OpsAFwn75Pvvvxd1AgCW26BBgxxr8SPboXW5c8AyhnkjHJvkyZcvX8+ePdFv8MNM
1932
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
1946
- </xsl:text>
1947
- </xsl:variable>
1948
-
1949
- <xsl:variable name="Image-Attention">
1950
- <xsl:text>
1951
- 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
- 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
- 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
- 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
- 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
- 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
- +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
- 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
- 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
- 0on0cr569WqTJk18VlxI9uzZs3XrVjhv37597dq199xzD2vBV9aFo2vVqlWuc9qQXs6zZs2C
1961
- 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
- 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
- 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
- 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
- 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
- Pn3++edQEkNKE0KyNzWk9EGDBqkvIJPfd999586dc+OmDinmzPlUo0YN/3waNWrUvn37tmzZ
1967
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- ++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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- HMzJMgVINk1gZghkcjsZnu4irJKhunXrFvkZ0OArKSUA4os8whtWK4jD8Xbi/6QwIc7QK168
1993
- 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
- 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
- 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
- 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
- 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
- RkIEpo+UBAjPeOUaBmQRyTV8ctbngNw4nzhxwv9hHYG3uzlZs0oAZocJodppALJ+DMQtSoeQ
1999
- 52YWyf9+KcEgjaAqpb3MGVBjtmrVyhHIAblx5gphP+IyKLefyNU6Al9vshkngTBu3749lgEC
2000
- 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
- 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
- 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
- +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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- /d/zILuFV3MTBKua0qomhOoAvtJgn0yQbBogpcFpQ5jG9BEhUvpVARmO7dq141QOOF++fJk0
2021
- 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
- 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
2023
- </xsl:text>
2024
- </xsl:variable>
2025
- <xsl:variable xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" name="lower">abcdefghijklmnopqrstuvwxyz</xsl:variable><xsl:variable xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" name="upper">ABCDEFGHIJKLMNOPQRSTUVWXYZ</xsl:variable><xsl:variable xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" name="en_chars" select="concat($lower,$upper,',.`1234567890-=~!@#$%^*()_+[]{}\|?/')"/><xsl:variable xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" name="linebreak" select="'&#8232;'"/><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="text()">
2026
- <xsl:value-of select="."/>
2027
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='br']">
2028
- <xsl:value-of select="$linebreak"/>
2029
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='td']//text() | *[local-name()='th']//text()" priority="1">
2030
- <xsl:call-template name="add-zero-spaces"/>
2031
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='table']">
2032
-
2033
- <xsl:variable name="simple-table">
2034
- <!-- <xsl:copy> -->
2035
- <xsl:call-template name="getSimpleTable"/>
2036
- <!-- </xsl:copy> -->
2037
- </xsl:variable>
2038
-
2039
- <!-- DEBUG -->
2040
- <!-- SourceTable=<xsl:copy-of select="current()"/>EndSourceTable -->
2041
- <!-- Simpletable=<xsl:copy-of select="$simple-table"/>EndSimpltable -->
2042
-
2043
- <!-- <xsl:variable name="namespace" select="substring-before(name(/*), '-')"/> -->
2044
-
2045
-
2046
- <fo:block space-before="6pt"> </fo:block>
2047
-
2048
- <xsl:choose>
2049
- <xsl:when test="@unnumbered = 'true'"/>
2050
- <xsl:otherwise>
2051
-
2052
-
2053
-
2054
- <fo:block font-weight="bold" text-align="center" margin-bottom="6pt" keep-with-next="always">
2055
-
2056
-
2057
-
2058
- <xsl:text>Table </xsl:text>
2059
- <xsl:choose>
2060
- <xsl:when test="ancestor::*[local-name()='executivesummary']"> <!-- NIST -->
2061
- <xsl:text>ES-</xsl:text><xsl:number format="1" count="*[local-name()='executivesummary']//*[local-name()='table'][not(@unnumbered) or @unnumbered != 'true']"/>
2062
- </xsl:when>
2063
- <xsl:when test="ancestor::*[local-name()='annex']">
2064
-
2065
- <xsl:number format="A." count="*[local-name()='annex']"/><xsl:number format="1"/>
2066
-
2067
-
2068
-
2069
-
2070
-
2071
-
2072
- </xsl:when>
2073
- <xsl:otherwise>
2074
- <!-- <xsl:number format="1"/> -->
2075
- <xsl:number format="A." count="*[local-name()='annex']"/>
2076
- <!-- <xsl:number format="1" level="any" count="*[local-name()='sections']//*[local-name()='table'][not(@unnumbered) or @unnumbered != 'true']"/> -->
2077
- <xsl:number format="1" level="any" count="//*[local-name()='table'] [not(ancestor::*[local-name()='annex']) and not(ancestor::*[local-name()='executivesummary'])] [not(@unnumbered) or @unnumbered != 'true']"/>
2078
- </xsl:otherwise>
2079
- </xsl:choose>
2080
- <xsl:if test="*[local-name()='name']">
2081
-
2082
-
2083
- <xsl:text> — </xsl:text>
2084
-
2085
- <xsl:apply-templates select="*[local-name()='name']" mode="process"/>
2086
- </xsl:if>
2087
- </fo:block>
2088
-
2089
-
2090
- <xsl:call-template name="fn_name_display"/>
2091
- </xsl:otherwise>
2092
- </xsl:choose>
2093
-
2094
- <xsl:variable name="cols-count" select="count(xalan:nodeset($simple-table)//tr[1]/td)"/>
2095
-
2096
- <!-- <xsl:variable name="cols-count">
2097
- <xsl:choose>
2098
- <xsl:when test="*[local-name()='thead']">
2099
- <xsl:call-template name="calculate-columns-numbers">
2100
- <xsl:with-param name="table-row" select="*[local-name()='thead']/*[local-name()='tr'][1]"/>
2101
- </xsl:call-template>
2102
- </xsl:when>
2103
- <xsl:otherwise>
2104
- <xsl:call-template name="calculate-columns-numbers">
2105
- <xsl:with-param name="table-row" select="*[local-name()='tbody']/*[local-name()='tr'][1]"/>
2106
- </xsl:call-template>
2107
- </xsl:otherwise>
2108
- </xsl:choose>
2109
- </xsl:variable> -->
2110
- <!-- cols-count=<xsl:copy-of select="$cols-count"/> -->
2111
- <!-- cols-count2=<xsl:copy-of select="$cols-count2"/> -->
2112
-
2113
-
2114
-
2115
- <xsl:variable name="colwidths">
2116
- <xsl:call-template name="calculate-column-widths">
2117
- <xsl:with-param name="cols-count" select="$cols-count"/>
2118
- <xsl:with-param name="table" select="$simple-table"/>
2119
- </xsl:call-template>
2120
- </xsl:variable>
2121
-
2122
- <xsl:variable name="colwidths2">
2123
- <xsl:call-template name="calculate-column-widths">
2124
- <xsl:with-param name="cols-count" select="$cols-count"/>
2125
- </xsl:call-template>
2126
- </xsl:variable>
2127
-
2128
- <!-- cols-count=<xsl:copy-of select="$cols-count"/>
2129
- colwidthsNew=<xsl:copy-of select="$colwidths"/>
2130
- colwidthsOld=<xsl:copy-of select="$colwidths2"/>z -->
2131
-
2132
- <xsl:variable name="margin-left">
2133
- <xsl:choose>
2134
- <xsl:when test="sum(xalan:nodeset($colwidths)//column) &gt; 75">15</xsl:when>
2135
- <xsl:otherwise>0</xsl:otherwise>
2136
- </xsl:choose>
2137
- </xsl:variable>
2138
-
2139
- <fo:block-container margin-left="-{$margin-left}mm" margin-right="-{$margin-left}mm">
2140
-
2141
-
2142
-
2143
- <fo:table id="{@id}" table-layout="fixed" width="100%" margin-left="{$margin-left}mm" margin-right="{$margin-left}mm">
2144
-
2145
- <xsl:attribute name="border">1.5pt solid black</xsl:attribute>
2146
-
2147
-
2148
-
2149
-
2150
-
2151
- <xsl:attribute name="font-size">10pt</xsl:attribute>
2152
-
2153
-
2154
- <xsl:for-each select="xalan:nodeset($colwidths)//column">
2155
- <xsl:choose>
2156
- <xsl:when test=". = 1">
2157
- <fo:table-column column-width="proportional-column-width(2)"/>
2158
- </xsl:when>
2159
- <xsl:otherwise>
2160
- <fo:table-column column-width="proportional-column-width({.})"/>
2161
- </xsl:otherwise>
2162
- </xsl:choose>
2163
- </xsl:for-each>
2164
- <xsl:apply-templates/>
2165
- </fo:table>
2166
- </fo:block-container>
2167
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='table']/*[local-name()='name']"/><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='table']/*[local-name()='name']" mode="process">
2168
- <xsl:apply-templates/>
2169
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" name="calculate-columns-numbers">
2170
- <xsl:param name="table-row"/>
2171
- <xsl:variable name="columns-count" select="count($table-row/*)"/>
2172
- <xsl:variable name="sum-colspans" select="sum($table-row/*/@colspan)"/>
2173
- <xsl:variable name="columns-with-colspan" select="count($table-row/*[@colspan])"/>
2174
- <xsl:value-of select="$columns-count + $sum-colspans - $columns-with-colspan"/>
2175
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" name="calculate-column-widths">
2176
- <xsl:param name="table"/>
2177
- <xsl:param name="cols-count"/>
2178
- <xsl:param name="curr-col" select="1"/>
2179
- <xsl:param name="width" select="0"/>
2180
-
2181
- <xsl:if test="$curr-col &lt;= $cols-count">
2182
- <xsl:variable name="widths">
2183
- <xsl:choose>
2184
- <xsl:when test="not($table)">
2185
- <xsl:for-each select="*[local-name()='thead']//*[local-name()='tr']">
2186
- <xsl:variable name="words">
2187
- <xsl:call-template name="tokenize">
2188
- <xsl:with-param name="text" select="translate(*[local-name()='th'][$curr-col],'- —:', ' ')"/>
2189
- </xsl:call-template>
2190
- </xsl:variable>
2191
- <xsl:variable name="max_length">
2192
- <xsl:call-template name="max_length">
2193
- <xsl:with-param name="words" select="xalan:nodeset($words)"/>
2194
- </xsl:call-template>
2195
- </xsl:variable>
2196
- <width>
2197
- <xsl:value-of select="$max_length"/>
2198
- </width>
2199
- </xsl:for-each>
2200
- <xsl:for-each select="*[local-name()='tbody']//*[local-name()='tr']">
2201
- <xsl:variable name="words">
2202
- <xsl:call-template name="tokenize">
2203
- <xsl:with-param name="text" select="translate(*[local-name()='td'][$curr-col],'- —:', ' ')"/>
2204
- </xsl:call-template>
2205
- </xsl:variable>
2206
- <xsl:variable name="max_length">
2207
- <xsl:call-template name="max_length">
2208
- <xsl:with-param name="words" select="xalan:nodeset($words)"/>
2209
- </xsl:call-template>
2210
- </xsl:variable>
2211
- <width>
2212
- <xsl:value-of select="$max_length"/>
2213
- </width>
2214
-
2215
- </xsl:for-each>
2216
- </xsl:when>
2217
- <xsl:otherwise>
2218
- <xsl:for-each select="xalan:nodeset($table)//tr">
2219
- <xsl:variable name="words">
2220
- <xsl:call-template name="tokenize">
2221
- <xsl:with-param name="text" select="translate(td[$curr-col],'- —:', ' ')"/>
2222
- </xsl:call-template>
2223
- </xsl:variable>
2224
- <xsl:variable name="max_length">
2225
- <xsl:call-template name="max_length">
2226
- <xsl:with-param name="words" select="xalan:nodeset($words)"/>
2227
- </xsl:call-template>
2228
- </xsl:variable>
2229
- <width>
2230
- <xsl:variable name="divider">
2231
- <xsl:choose>
2232
- <xsl:when test="td[$curr-col]/@divide">
2233
- <xsl:value-of select="td[$curr-col]/@divide"/>
2234
- </xsl:when>
2235
- <xsl:otherwise>1</xsl:otherwise>
2236
- </xsl:choose>
2237
- </xsl:variable>
2238
- <xsl:value-of select="$max_length div $divider"/>
2239
- </width>
2240
-
2241
- </xsl:for-each>
2242
-
2243
- </xsl:otherwise>
2244
- </xsl:choose>
2245
- </xsl:variable>
2246
-
2247
-
2248
- <column>
2249
- <xsl:for-each select="xalan:nodeset($widths)//width">
2250
- <xsl:sort select="." data-type="number" order="descending"/>
2251
- <xsl:if test="position()=1">
2252
- <xsl:value-of select="."/>
2253
- </xsl:if>
2254
- </xsl:for-each>
2255
- </column>
2256
- <xsl:call-template name="calculate-column-widths">
2257
- <xsl:with-param name="cols-count" select="$cols-count"/>
2258
- <xsl:with-param name="curr-col" select="$curr-col +1"/>
2259
- <xsl:with-param name="table" select="$table"/>
2260
- </xsl:call-template>
2261
- </xsl:if>
2262
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='table2']"/><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='thead']"/><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='thead']" mode="process">
2263
- <!-- <fo:table-header font-weight="bold">
2264
- <xsl:apply-templates />
2265
- </fo:table-header> -->
2266
- <xsl:apply-templates/>
2267
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='tfoot']"/><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='tfoot']" mode="process">
2268
- <xsl:apply-templates/>
2269
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='tbody']">
2270
- <xsl:variable name="cols-count">
2271
- <xsl:choose>
2272
- <xsl:when test="../*[local-name()='thead']">
2273
- <!-- <xsl:value-of select="count(../*[local-name()='thead']/*[local-name()='tr']/*[local-name()='th'])"/> -->
2274
- <xsl:call-template name="calculate-columns-numbers">
2275
- <xsl:with-param name="table-row" select="../*[local-name()='thead']/*[local-name()='tr'][1]"/>
2276
- </xsl:call-template>
2277
- </xsl:when>
2278
- <xsl:otherwise>
2279
- <!-- <xsl:value-of select="count(./*[local-name()='tr'][1]/*[local-name()='td'])"/> -->
2280
- <xsl:call-template name="calculate-columns-numbers">
2281
- <xsl:with-param name="table-row" select="./*[local-name()='tr'][1]"/>
2282
- </xsl:call-template>
2283
- </xsl:otherwise>
2284
- </xsl:choose>
2285
- </xsl:variable>
2286
-
2287
- <fo:table-body>
2288
- <xsl:apply-templates select="../*[local-name()='thead']" mode="process"/>
2289
- <xsl:apply-templates/>
2290
- <xsl:apply-templates select="../*[local-name()='tfoot']" mode="process"/>
2291
- <!-- if there are note(s) or fn(s) then create footer row -->
2292
- <xsl:if test="../*[local-name()='note'] or ..//*[local-name()='fn'][local-name(..) != 'name']">
2293
- <fo:table-row>
2294
- <fo:table-cell border="solid black 1pt" padding-left="1mm" padding-right="1mm" padding-top="1mm" number-columns-spanned="{$cols-count}">
2295
-
2296
- <xsl:attribute name="border-top">solid black 0pt</xsl:attribute>
2297
-
2298
-
2299
- <!-- fn will be processed inside 'note' processing -->
2300
- <xsl:apply-templates select="../*[local-name()='note']" mode="process"/>
2301
- <!-- fn processing -->
2302
- <xsl:call-template name="fn_display"/>
2303
-
2304
- </fo:table-cell>
2305
- </fo:table-row>
2306
-
2307
- </xsl:if>
2308
- </fo:table-body>
2309
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='tr']">
2310
- <xsl:variable name="parent-name" select="local-name(..)"/>
2311
- <!-- <xsl:variable name="namespace" select="substring-before(name(/*), '-')"/> -->
2312
- <fo:table-row min-height="4mm">
2313
- <xsl:if test="$parent-name = 'thead'">
2314
- <xsl:attribute name="font-weight">bold</xsl:attribute>
2315
-
2316
-
2317
-
2318
- <xsl:choose>
2319
- <xsl:when test="position() = 1">
2320
- <xsl:attribute name="border-top">solid black 1.5pt</xsl:attribute>
2321
- <xsl:attribute name="border-bottom">solid black 1pt</xsl:attribute>
2322
- </xsl:when>
2323
- <xsl:when test="position() = last()">
2324
- <xsl:attribute name="border-top">solid black 1pt</xsl:attribute>
2325
- <xsl:attribute name="border-bottom">solid black 1.5pt</xsl:attribute>
2326
- </xsl:when>
2327
- <xsl:otherwise>
2328
- <xsl:attribute name="border-top">solid black 1pt</xsl:attribute>
2329
- <xsl:attribute name="border-bottom">solid black 1pt</xsl:attribute>
2330
- </xsl:otherwise>
2331
- </xsl:choose>
2332
-
2333
-
2334
- </xsl:if>
2335
- <xsl:if test="$parent-name = 'tfoot'">
2336
-
2337
- <xsl:attribute name="font-size">9pt</xsl:attribute>
2338
- <xsl:attribute name="border-left">solid black 1pt</xsl:attribute>
2339
- <xsl:attribute name="border-right">solid black 1pt</xsl:attribute>
2340
-
2341
- </xsl:if>
2342
- <xsl:apply-templates/>
2343
- </fo:table-row>
2344
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='th']">
2345
- <fo:table-cell text-align="{@align}" font-weight="bold" border="solid black 1pt" padding-left="1mm" display-align="center">
2346
-
2347
- <xsl:attribute name="padding-top">1mm</xsl:attribute>
2348
-
2349
-
2350
-
2351
-
2352
-
2353
- <xsl:if test="@colspan">
2354
- <xsl:attribute name="number-columns-spanned">
2355
- <xsl:value-of select="@colspan"/>
2356
- </xsl:attribute>
2357
- </xsl:if>
2358
- <xsl:if test="@rowspan">
2359
- <xsl:attribute name="number-rows-spanned">
2360
- <xsl:value-of select="@rowspan"/>
2361
- </xsl:attribute>
2362
- </xsl:if>
2363
- <fo:block>
2364
- <xsl:apply-templates/>
2365
- </fo:block>
2366
- </fo:table-cell>
2367
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='td']">
2368
- <fo:table-cell text-align="{@align}" display-align="center" border="solid black 1pt" padding-left="1mm">
2369
- <!-- and ancestor::*[local-name() = 'thead'] -->
2370
- <xsl:attribute name="padding-top">0.5mm</xsl:attribute>
2371
-
2372
-
2373
-
2374
- <xsl:if test="ancestor::*[local-name() = 'tfoot']">
2375
- <xsl:attribute name="border">solid black 0</xsl:attribute>
2376
- </xsl:if>
2377
-
2378
-
2379
-
2380
- <xsl:if test="@colspan">
2381
- <xsl:attribute name="number-columns-spanned">
2382
- <xsl:value-of select="@colspan"/>
2383
- </xsl:attribute>
2384
- </xsl:if>
2385
- <xsl:if test="@rowspan">
2386
- <xsl:attribute name="number-rows-spanned">
2387
- <xsl:value-of select="@rowspan"/>
2388
- </xsl:attribute>
2389
- </xsl:if>
2390
- <fo:block>
2391
- <xsl:apply-templates/>
2392
- </fo:block>
2393
- <!-- <xsl:choose>
2394
- <xsl:when test="count(*) = 1 and *[local-name() = 'p']">
2395
- <xsl:apply-templates />
2396
- </xsl:when>
2397
- <xsl:otherwise>
2398
- <fo:block>
2399
- <xsl:apply-templates />
2400
- </fo:block>
2401
- </xsl:otherwise>
2402
- </xsl:choose> -->
2403
-
2404
-
2405
- </fo:table-cell>
2406
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='table']/*[local-name()='note']"/><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='table']/*[local-name()='note']" mode="process">
2407
-
2408
-
2409
- <fo:block font-size="10pt" margin-bottom="12pt">
2410
-
2411
- <xsl:attribute name="font-size">9pt</xsl:attribute>
2412
- <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
2413
-
2414
- <fo:inline padding-right="2mm">
2415
- <xsl:text>NOTE </xsl:text>
2416
-
2417
-
2418
- <xsl:number format="1 "/>
2419
-
2420
- </fo:inline>
2421
- <xsl:apply-templates mode="process"/>
2422
- </fo:block>
2423
-
2424
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='table']/*[local-name()='note']/*[local-name()='p']" mode="process">
2425
- <xsl:apply-templates/>
2426
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" name="fn_display">
2427
- <xsl:variable name="references">
2428
- <xsl:for-each select="..//*[local-name()='fn'][local-name(..) != 'name']">
2429
- <fn reference="{@reference}" id="{@reference}_{ancestor::*[@id][1]/@id}">
2430
-
2431
- <xsl:apply-templates/>
2432
- </fn>
2433
- </xsl:for-each>
2434
- </xsl:variable>
2435
- <xsl:for-each select="xalan:nodeset($references)//fn">
2436
- <xsl:variable name="reference" select="@reference"/>
2437
- <xsl:if test="not(preceding-sibling::*[@reference = $reference])"> <!-- only unique reference puts in note-->
2438
- <fo:block margin-bottom="12pt">
2439
-
2440
- <xsl:attribute name="font-size">9pt</xsl:attribute>
2441
- <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
2442
-
2443
- <fo:inline font-size="80%" padding-right="5mm" id="{@id}">
2444
-
2445
-
2446
- <xsl:attribute name="alignment-baseline">hanging</xsl:attribute>
2447
-
2448
-
2449
-
2450
- <xsl:value-of select="@reference"/>
2451
-
2452
- </fo:inline>
2453
- <fo:inline>
2454
-
2455
- <xsl:apply-templates/>
2456
- </fo:inline>
2457
- </fo:block>
2458
- </xsl:if>
2459
- </xsl:for-each>
2460
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" name="fn_name_display">
2461
- <!-- <xsl:variable name="references">
2462
- <xsl:for-each select="*[local-name()='name']//*[local-name()='fn']">
2463
- <fn reference="{@reference}" id="{@reference}_{ancestor::*[@id][1]/@id}">
2464
- <xsl:apply-templates />
2465
- </fn>
2466
- </xsl:for-each>
2467
- </xsl:variable>
2468
- $references=<xsl:copy-of select="$references"/> -->
2469
- <xsl:for-each select="*[local-name()='name']//*[local-name()='fn']">
2470
- <xsl:variable name="reference" select="@reference"/>
2471
- <fo:block id="{@reference}_{ancestor::*[@id][1]/@id}"><xsl:value-of select="@reference"/></fo:block>
2472
- <fo:block margin-bottom="12pt">
2473
- <xsl:apply-templates/>
2474
- </fo:block>
2475
- </xsl:for-each>
2476
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" name="fn_display_figure">
2477
- <xsl:variable name="key_iso">
2478
- true <!-- and (not(@class) or @class !='pseudocode') -->
2479
- </xsl:variable>
2480
- <xsl:variable name="references">
2481
- <xsl:for-each select=".//*[local-name()='fn']">
2482
- <fn reference="{@reference}" id="{@reference}_{ancestor::*[@id][1]/@id}">
2483
- <xsl:apply-templates/>
2484
- </fn>
2485
- </xsl:for-each>
2486
- </xsl:variable>
2487
- <xsl:if test="xalan:nodeset($references)//fn">
2488
- <fo:block>
2489
- <fo:table width="95%" table-layout="fixed">
2490
- <xsl:if test="normalize-space($key_iso) = 'true'">
2491
- <xsl:attribute name="font-size">10pt</xsl:attribute>
2492
- </xsl:if>
2493
- <fo:table-column column-width="15%"/>
2494
- <fo:table-column column-width="85%"/>
2495
- <fo:table-body>
2496
- <xsl:for-each select="xalan:nodeset($references)//fn">
2497
- <xsl:variable name="reference" select="@reference"/>
2498
- <xsl:if test="not(preceding-sibling::*[@reference = $reference])"> <!-- only unique reference puts in note-->
2499
- <fo:table-row>
2500
- <fo:table-cell>
2501
- <fo:block>
2502
- <fo:inline font-size="80%" padding-right="5mm" vertical-align="super" id="{@id}">
2503
-
2504
- <xsl:value-of select="@reference"/>
2505
- </fo:inline>
2506
- </fo:block>
2507
- </fo:table-cell>
2508
- <fo:table-cell>
2509
- <fo:block text-align="justify" margin-bottom="12pt">
2510
-
2511
- <xsl:if test="normalize-space($key_iso) = 'true'">
2512
- <xsl:attribute name="margin-bottom">0</xsl:attribute>
2513
- </xsl:if>
2514
-
2515
- <xsl:apply-templates/>
2516
- </fo:block>
2517
- </fo:table-cell>
2518
- </fo:table-row>
2519
- </xsl:if>
2520
- </xsl:for-each>
2521
- </fo:table-body>
2522
- </fo:table>
2523
- </fo:block>
2524
- </xsl:if>
2525
-
2526
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='fn']">
2527
- <!-- <xsl:variable name="namespace" select="substring-before(name(/*), '-')"/> -->
2528
- <fo:inline font-size="80%" keep-with-previous.within-line="always">
2529
-
2530
- <xsl:if test="ancestor::*[local-name()='td']">
2531
- <xsl:attribute name="font-weight">normal</xsl:attribute>
2532
- <!-- <xsl:attribute name="alignment-baseline">hanging</xsl:attribute> -->
2533
- <xsl:attribute name="baseline-shift">15%</xsl:attribute>
2534
- </xsl:if>
2535
-
2536
-
2537
-
2538
- <fo:basic-link internal-destination="{@reference}_{ancestor::*[@id][1]/@id}" fox:alt-text="{@reference}"> <!-- @reference | ancestor::*[local-name()='clause'][1]/@id-->
2539
- <xsl:value-of select="@reference"/>
2540
- </fo:basic-link>
2541
- </fo:inline>
2542
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='fn']/*[local-name()='p']">
2543
- <fo:inline>
2544
- <xsl:apply-templates/>
2545
- </fo:inline>
2546
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='dl']">
2547
- <xsl:variable name="parent" select="local-name(..)"/>
2548
-
2549
- <xsl:variable name="key_iso">
2550
-
2551
- <xsl:if test="$parent = 'figure' or $parent = 'formula'">true</xsl:if>
2552
- <!-- and (not(../@class) or ../@class !='pseudocode') -->
2553
- </xsl:variable>
2554
-
2555
- <xsl:choose>
2556
- <xsl:when test="$parent = 'formula' and count(*[local-name()='dt']) = 1"> <!-- only one component -->
2557
-
2558
-
2559
- <fo:block margin-bottom="12pt" text-align="left">
2560
-
2561
- <xsl:attribute name="margin-bottom">0</xsl:attribute>
2562
-
2563
- <xsl:text>where </xsl:text>
2564
- <xsl:apply-templates select="*[local-name()='dt']/*"/>
2565
- <xsl:text/>
2566
- <xsl:apply-templates select="*[local-name()='dd']/*" mode="inline"/>
2567
- </fo:block>
2568
-
2569
- </xsl:when>
2570
- <xsl:when test="$parent = 'formula'"> <!-- a few components -->
2571
- <fo:block margin-bottom="12pt" text-align="left">
2572
-
2573
- <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
2574
-
2575
-
2576
-
2577
- <xsl:text>where</xsl:text>
2578
- </fo:block>
2579
- </xsl:when>
2580
- <xsl:when test="$parent = 'figure' and (not(../@class) or ../@class !='pseudocode')">
2581
- <fo:block font-weight="bold" text-align="left" margin-bottom="12pt">
2582
-
2583
- <xsl:attribute name="font-size">10pt</xsl:attribute>
2584
- <xsl:attribute name="margin-bottom">0</xsl:attribute>
2585
-
2586
- <xsl:text>Key</xsl:text>
2587
- </fo:block>
2588
- </xsl:when>
2589
- </xsl:choose>
2590
-
2591
- <!-- a few components -->
2592
- <xsl:if test="not($parent = 'formula' and count(*[local-name()='dt']) = 1)">
2593
- <fo:block>
2594
-
2595
- <xsl:if test="$parent = 'formula'">
2596
- <xsl:attribute name="margin-left">4mm</xsl:attribute>
2597
- </xsl:if>
2598
-
2599
-
2600
-
2601
-
2602
- <fo:block>
2603
-
2604
-
2605
- <!-- create virtual html table for dl/[dt and dd] -->
2606
- <xsl:variable name="html-table">
2607
- <xsl:variable name="ns" select="substring-before(name(/*), '-')"/>
2608
- <xsl:element name="{$ns}:table">
2609
- <tbody>
2610
- <xsl:apply-templates mode="dl"/>
2611
- </tbody>
2612
- </xsl:element>
2613
- </xsl:variable>
2614
- <!-- html-table<xsl:copy-of select="$html-table"/> -->
2615
- <xsl:variable name="colwidths">
2616
- <xsl:call-template name="calculate-column-widths">
2617
- <xsl:with-param name="cols-count" select="2"/>
2618
- <xsl:with-param name="table" select="$html-table"/>
2619
- </xsl:call-template>
2620
- </xsl:variable>
2621
- <!-- colwidths=<xsl:value-of select="$colwidths"/> -->
2622
-
2623
- <fo:table width="95%" table-layout="fixed">
2624
- <xsl:choose>
2625
- <xsl:when test="normalize-space($key_iso) = 'true' and $parent = 'formula'">
2626
- <!-- <xsl:attribute name="font-size">11pt</xsl:attribute> -->
2627
- </xsl:when>
2628
- <xsl:when test="normalize-space($key_iso) = 'true'">
2629
- <xsl:attribute name="font-size">10pt</xsl:attribute>
2630
- </xsl:when>
2631
- </xsl:choose>
2632
- <xsl:choose>
2633
- <xsl:when test="ancestor::*[local-name()='dl']"><!-- second level, i.e. inlined table -->
2634
- <fo:table-column column-width="50%"/>
2635
- <fo:table-column column-width="50%"/>
2636
- </xsl:when>
2637
- <xsl:otherwise>
2638
- <xsl:choose>
2639
- <!-- <xsl:when test="xalan:nodeset($colwidths)/column[1] div xalan:nodeset($colwidths)/column[2] &gt; 1.7">
2640
- <fo:table-column column-width="60%"/>
2641
- <fo:table-column column-width="40%"/>
2642
- </xsl:when> -->
2643
- <xsl:when test="xalan:nodeset($colwidths)/column[1] div xalan:nodeset($colwidths)/column[2] &gt; 1.3">
2644
- <fo:table-column column-width="50%"/>
2645
- <fo:table-column column-width="50%"/>
2646
- </xsl:when>
2647
- <xsl:when test="xalan:nodeset($colwidths)/column[1] div xalan:nodeset($colwidths)/column[2] &gt; 0.5">
2648
- <fo:table-column column-width="40%"/>
2649
- <fo:table-column column-width="60%"/>
2650
- </xsl:when>
2651
- <xsl:otherwise>
2652
- <xsl:for-each select="xalan:nodeset($colwidths)//column">
2653
- <xsl:choose>
2654
- <xsl:when test=". = 1">
2655
- <fo:table-column column-width="proportional-column-width(2)"/>
2656
- </xsl:when>
2657
- <xsl:otherwise>
2658
- <fo:table-column column-width="proportional-column-width({.})"/>
2659
- </xsl:otherwise>
2660
- </xsl:choose>
2661
- </xsl:for-each>
2662
- </xsl:otherwise>
2663
- </xsl:choose>
2664
- <!-- <fo:table-column column-width="15%"/>
2665
- <fo:table-column column-width="85%"/> -->
2666
- </xsl:otherwise>
2667
- </xsl:choose>
2668
- <fo:table-body>
2669
- <xsl:apply-templates>
2670
- <xsl:with-param name="key_iso" select="normalize-space($key_iso)"/>
2671
- </xsl:apply-templates>
2672
- </fo:table-body>
2673
- </fo:table>
2674
- </fo:block>
2675
- </fo:block>
2676
- </xsl:if>
2677
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='dl']/*[local-name()='note']">
2678
- <xsl:param name="key_iso"/>
2679
-
2680
- <!-- <tr>
2681
- <td>NOTE</td>
2682
- <td>
2683
- <xsl:apply-templates />
2684
- </td>
2685
- </tr>
2686
- -->
2687
- <fo:table-row>
2688
- <fo:table-cell>
2689
- <fo:block margin-top="6pt">
2690
- <xsl:if test="normalize-space($key_iso) = 'true'">
2691
- <xsl:attribute name="margin-top">0</xsl:attribute>
2692
- </xsl:if>
2693
- NOTE
2694
- </fo:block>
2695
- </fo:table-cell>
2696
- <fo:table-cell>
2697
- <fo:block>
2698
- <xsl:apply-templates/>
2699
- </fo:block>
2700
- </fo:table-cell>
2701
- </fo:table-row>
2702
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='dt']" mode="dl">
2703
- <tr>
2704
- <td>
2705
- <xsl:apply-templates/>
2706
- </td>
2707
- <td>
2708
-
2709
-
2710
- <xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]" mode="process"/>
2711
-
2712
- </td>
2713
- </tr>
2714
-
2715
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='dt']">
2716
- <xsl:param name="key_iso"/>
2717
-
2718
- <fo:table-row>
2719
- <fo:table-cell>
2720
- <fo:block margin-top="6pt">
2721
- <xsl:if test="normalize-space($key_iso) = 'true'">
2722
- <xsl:attribute name="margin-top">0</xsl:attribute>
2723
-
2724
- </xsl:if>
2725
-
2726
- <xsl:apply-templates/>
2727
- </fo:block>
2728
- </fo:table-cell>
2729
- <fo:table-cell>
2730
- <fo:block>
2731
-
2732
-
2733
-
2734
- <xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]" mode="process"/>
2735
-
2736
- </fo:block>
2737
- </fo:table-cell>
2738
- </fo:table-row>
2739
-
2740
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='dd']" mode="dl"/><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='dd']" mode="dl_process">
2741
- <xsl:apply-templates/>
2742
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='dd']"/><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='dd']" mode="process">
2743
- <xsl:apply-templates/>
2744
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='dd']/*[local-name()='p']" mode="inline">
2745
- <fo:inline><xsl:apply-templates/></fo:inline>
2746
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='em']">
2747
- <fo:inline font-style="italic">
2748
- <xsl:apply-templates/>
2749
- </fo:inline>
2750
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='strong']">
2751
- <fo:inline font-weight="bold">
2752
- <xsl:apply-templates/>
2753
- </fo:inline>
2754
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='sup']">
2755
- <fo:inline font-size="80%" vertical-align="super">
2756
- <xsl:apply-templates/>
2757
- </fo:inline>
2758
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='sub']">
2759
- <fo:inline font-size="80%" vertical-align="sub">
2760
- <xsl:apply-templates/>
2761
- </fo:inline>
2762
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='tt']">
2763
- <fo:inline font-family="Courier New" font-size="10pt">
2764
- <xsl:apply-templates/>
2765
- </fo:inline>
2766
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='del']">
2767
- <fo:inline font-size="10pt" color="red" text-decoration="line-through">
2768
- <xsl:apply-templates/>
2769
- </fo:inline>
2770
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="text()[ancestor::*[local-name()='smallcap']]">
2771
- <xsl:variable name="text" select="normalize-space(.)"/>
2772
- <fo:inline font-size="75%">
2773
- <xsl:if test="string-length($text) &gt; 0">
2774
- <xsl:call-template name="recursiveSmallCaps">
2775
- <xsl:with-param name="text" select="$text"/>
2776
- </xsl:call-template>
2777
- </xsl:if>
2778
- </fo:inline>
2779
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" name="recursiveSmallCaps">
2780
- <xsl:param name="text"/>
2781
- <xsl:variable name="char" select="substring($text,1,1)"/>
2782
- <xsl:variable name="upperCase" select="translate($char, $lower, $upper)"/>
2783
- <xsl:choose>
2784
- <xsl:when test="$char=$upperCase">
2785
- <fo:inline font-size="{100 div 0.75}%">
2786
- <xsl:value-of select="$upperCase"/>
2787
- </fo:inline>
2788
- </xsl:when>
2789
- <xsl:otherwise>
2790
- <xsl:value-of select="$upperCase"/>
2791
- </xsl:otherwise>
2792
- </xsl:choose>
2793
- <xsl:if test="string-length($text) &gt; 1">
2794
- <xsl:call-template name="recursiveSmallCaps">
2795
- <xsl:with-param name="text" select="substring($text,2)"/>
2796
- </xsl:call-template>
2797
- </xsl:if>
2798
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" name="tokenize">
2799
- <xsl:param name="text"/>
2800
- <xsl:param name="separator" select="' '"/>
2801
- <xsl:choose>
2802
- <xsl:when test="not(contains($text, $separator))">
2803
- <word>
2804
- <xsl:variable name="str_no_en_chars" select="normalize-space(translate($text, $en_chars, ''))"/>
2805
- <xsl:variable name="len_str_no_en_chars" select="string-length($str_no_en_chars)"/>
2806
- <xsl:variable name="len_str_tmp" select="string-length(normalize-space($text))"/>
2807
- <xsl:variable name="len_str">
2808
- <xsl:choose>
2809
- <xsl:when test="normalize-space(translate($text, $upper, '')) = ''"> <!-- english word in CAPITAL letters -->
2810
- <xsl:value-of select="$len_str_tmp * 1.5"/>
2811
- </xsl:when>
2812
- <xsl:otherwise>
2813
- <xsl:value-of select="$len_str_tmp"/>
2814
- </xsl:otherwise>
2815
- </xsl:choose>
2816
- </xsl:variable>
2817
-
2818
- <!-- <xsl:if test="$len_str_no_en_chars div $len_str &gt; 0.8">
2819
- <xsl:message>
2820
- div=<xsl:value-of select="$len_str_no_en_chars div $len_str"/>
2821
- len_str=<xsl:value-of select="$len_str"/>
2822
- len_str_no_en_chars=<xsl:value-of select="$len_str_no_en_chars"/>
2823
- </xsl:message>
2824
- </xsl:if> -->
2825
- <!-- <len_str_no_en_chars><xsl:value-of select="$len_str_no_en_chars"/></len_str_no_en_chars>
2826
- <len_str><xsl:value-of select="$len_str"/></len_str> -->
2827
- <xsl:choose>
2828
- <xsl:when test="$len_str_no_en_chars div $len_str &gt; 0.8"> <!-- means non-english string -->
2829
- <xsl:value-of select="$len_str - $len_str_no_en_chars"/>
2830
- </xsl:when>
2831
- <xsl:otherwise>
2832
- <xsl:value-of select="$len_str"/>
2833
- </xsl:otherwise>
2834
- </xsl:choose>
2835
- </word>
2836
- </xsl:when>
2837
- <xsl:otherwise>
2838
- <word>
2839
- <xsl:value-of select="string-length(normalize-space(substring-before($text, $separator)))"/>
2840
- </word>
2841
- <xsl:call-template name="tokenize">
2842
- <xsl:with-param name="text" select="substring-after($text, $separator)"/>
2843
- </xsl:call-template>
2844
- </xsl:otherwise>
2845
- </xsl:choose>
2846
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" name="max_length">
2847
- <xsl:param name="words"/>
2848
- <xsl:for-each select="$words//word">
2849
- <xsl:sort select="." data-type="number" order="descending"/>
2850
- <xsl:if test="position()=1">
2851
- <xsl:value-of select="."/>
2852
- </xsl:if>
2853
- </xsl:for-each>
2854
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" name="add-zero-spaces">
2855
- <xsl:param name="text" select="."/>
2856
- <xsl:variable name="zero-space-after-chars">-</xsl:variable>
2857
- <xsl:variable name="zero-space-after-dot">.</xsl:variable>
2858
- <xsl:variable name="zero-space-after-colon">:</xsl:variable>
2859
- <xsl:variable name="zero-space">​</xsl:variable>
2860
- <xsl:choose>
2861
- <xsl:when test="contains($text, $zero-space-after-chars)">
2862
- <xsl:value-of select="substring-before($text, $zero-space-after-chars)"/>
2863
- <xsl:value-of select="$zero-space-after-chars"/>
2864
- <xsl:value-of select="$zero-space"/>
2865
- <xsl:call-template name="add-zero-spaces">
2866
- <xsl:with-param name="text" select="substring-after($text, $zero-space-after-chars)"/>
2867
- </xsl:call-template>
2868
- </xsl:when>
2869
- <xsl:when test="contains($text, $zero-space-after-dot)">
2870
- <xsl:value-of select="substring-before($text, $zero-space-after-dot)"/>
2871
- <xsl:value-of select="$zero-space-after-dot"/>
2872
- <xsl:value-of select="$zero-space"/>
2873
- <xsl:call-template name="add-zero-spaces">
2874
- <xsl:with-param name="text" select="substring-after($text, $zero-space-after-dot)"/>
2875
- </xsl:call-template>
2876
- </xsl:when>
2877
- <xsl:when test="contains($text, $zero-space-after-colon)">
2878
- <xsl:value-of select="substring-before($text, $zero-space-after-colon)"/>
2879
- <xsl:value-of select="$zero-space-after-colon"/>
2880
- <xsl:value-of select="$zero-space"/>
2881
- <xsl:call-template name="add-zero-spaces">
2882
- <xsl:with-param name="text" select="substring-after($text, $zero-space-after-colon)"/>
2883
- </xsl:call-template>
2884
- </xsl:when>
2885
- <xsl:otherwise>
2886
- <xsl:value-of select="$text"/>
2887
- </xsl:otherwise>
2888
- </xsl:choose>
2889
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" name="getSimpleTable">
2890
- <xsl:variable name="simple-table">
2891
-
2892
- <!-- Step 1. colspan processing -->
2893
- <xsl:variable name="simple-table-colspan">
2894
- <tbody>
2895
- <xsl:apply-templates mode="simple-table-colspan"/>
2896
- </tbody>
2897
- </xsl:variable>
2898
-
2899
- <!-- Step 2. rowspan processing -->
2900
- <xsl:variable name="simple-table-rowspan">
2901
- <xsl:apply-templates select="xalan:nodeset($simple-table-colspan)" mode="simple-table-rowspan"/>
2902
- </xsl:variable>
2903
-
2904
- <xsl:copy-of select="xalan:nodeset($simple-table-rowspan)"/>
2905
-
2906
- <!-- <xsl:choose>
2907
- <xsl:when test="current()//*[local-name()='th'][@colspan] or current()//*[local-name()='td'][@colspan] ">
2908
-
2909
- </xsl:when>
2910
- <xsl:otherwise>
2911
- <xsl:copy-of select="current()"/>
2912
- </xsl:otherwise>
2913
- </xsl:choose> -->
2914
- </xsl:variable>
2915
- <xsl:copy-of select="$simple-table"/>
2916
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='thead'] | *[local-name()='tbody']" mode="simple-table-colspan">
2917
- <xsl:apply-templates mode="simple-table-colspan"/>
2918
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='fn']" mode="simple-table-colspan"/><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='th'] | *[local-name()='td']" mode="simple-table-colspan">
2919
- <xsl:choose>
2920
- <xsl:when test="@colspan">
2921
- <xsl:variable name="td">
2922
- <xsl:element name="td">
2923
- <xsl:attribute name="divide"><xsl:value-of select="@colspan"/></xsl:attribute>
2924
- <xsl:apply-templates select="@*" mode="simple-table-colspan"/>
2925
- <xsl:apply-templates mode="simple-table-colspan"/>
2926
- </xsl:element>
2927
- </xsl:variable>
2928
- <xsl:call-template name="repeatNode">
2929
- <xsl:with-param name="count" select="@colspan"/>
2930
- <xsl:with-param name="node" select="$td"/>
2931
- </xsl:call-template>
2932
- </xsl:when>
2933
- <xsl:otherwise>
2934
- <xsl:element name="td">
2935
- <xsl:apply-templates select="@*" mode="simple-table-colspan"/>
2936
- <xsl:apply-templates mode="simple-table-colspan"/>
2937
- </xsl:element>
2938
- </xsl:otherwise>
2939
- </xsl:choose>
2940
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="@colspan" mode="simple-table-colspan"/><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='tr']" mode="simple-table-colspan">
2941
- <xsl:element name="tr">
2942
- <xsl:apply-templates select="@*" mode="simple-table-colspan"/>
2943
- <xsl:apply-templates mode="simple-table-colspan"/>
2944
- </xsl:element>
2945
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="@*|node()" mode="simple-table-colspan">
2946
- <xsl:copy>
2947
- <xsl:apply-templates select="@*|node()" mode="simple-table-colspan"/>
2948
- </xsl:copy>
2949
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" name="repeatNode">
2950
- <xsl:param name="count"/>
2951
- <xsl:param name="node"/>
2952
-
2953
- <xsl:if test="$count &gt; 0">
2954
- <xsl:call-template name="repeatNode">
2955
- <xsl:with-param name="count" select="$count - 1"/>
2956
- <xsl:with-param name="node" select="$node"/>
2957
- </xsl:call-template>
2958
- <xsl:copy-of select="$node"/>
2959
- </xsl:if>
2960
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="@*|node()" mode="simple-table-rowspan">
2961
- <xsl:copy>
2962
- <xsl:apply-templates select="@*|node()" mode="simple-table-rowspan"/>
2963
- </xsl:copy>
2964
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="tbody" mode="simple-table-rowspan">
2965
- <xsl:copy>
2966
- <xsl:copy-of select="tr[1]"/>
2967
- <xsl:apply-templates select="tr[2]" mode="simple-table-rowspan">
2968
- <xsl:with-param name="previousRow" select="tr[1]"/>
2969
- </xsl:apply-templates>
2970
- </xsl:copy>
2971
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="tr" mode="simple-table-rowspan">
2972
- <xsl:param name="previousRow"/>
2973
- <xsl:variable name="currentRow" select="."/>
2974
-
2975
- <xsl:variable name="normalizedTDs">
2976
- <xsl:for-each select="xalan:nodeset($previousRow)//td">
2977
- <xsl:choose>
2978
- <xsl:when test="@rowspan &gt; 1">
2979
- <xsl:copy>
2980
- <xsl:attribute name="rowspan">
2981
- <xsl:value-of select="@rowspan - 1"/>
2982
- </xsl:attribute>
2983
- <xsl:copy-of select="@*[not(name() = 'rowspan')]"/>
2984
- <xsl:copy-of select="node()"/>
2985
- </xsl:copy>
2986
- </xsl:when>
2987
- <xsl:otherwise>
2988
- <xsl:copy-of select="$currentRow/td[1 + count(current()/preceding-sibling::td[not(@rowspan) or (@rowspan = 1)])]"/>
2989
- </xsl:otherwise>
2990
- </xsl:choose>
2991
- </xsl:for-each>
2992
- </xsl:variable>
2993
-
2994
- <xsl:variable name="newRow">
2995
- <xsl:copy>
2996
- <xsl:copy-of select="$currentRow/@*"/>
2997
- <xsl:copy-of select="xalan:nodeset($normalizedTDs)"/>
2998
- </xsl:copy>
2999
- </xsl:variable>
3000
- <xsl:copy-of select="$newRow"/>
3001
-
3002
- <xsl:apply-templates select="following-sibling::tr[1]" mode="simple-table-rowspan">
3003
- <xsl:with-param name="previousRow" select="$newRow"/>
3004
- </xsl:apply-templates>
3005
- </xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" name="getLang">
3006
- <xsl:variable name="language" select="//*[local-name()='bibdata']//*[local-name()='language']"/>
3007
- <xsl:choose>
3008
- <xsl:when test="$language = 'English'">en</xsl:when>
3009
- <xsl:otherwise><xsl:value-of select="$language"/></xsl:otherwise>
3010
- </xsl:choose>
3011
- </xsl:template></xsl:stylesheet>