metanorma-un 0.3.6 → 0.3.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,3520 @@
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:un="https://www.metanorma.org/ns/un" xmlns:mathml="http://www.w3.org/1998/Math/MathML" xmlns:xalan="http://xml.apache.org/xalan" xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" xmlns:barcode="http://barcode4j.krysalis.org/ns" version="1.0">
2
+
3
+ <xsl:output version="1.0" 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="contents">
13
+ <contents>
14
+ <xsl:apply-templates select="/un:un-standard/un:sections/*" mode="contents"/>
15
+ <xsl:apply-templates select="/un:un-standard/un:annex" mode="contents"/>
16
+ </contents>
17
+ </xsl:variable>
18
+
19
+ <xsl:variable name="lang">
20
+ <xsl:call-template name="getLang"/>
21
+ </xsl:variable>
22
+
23
+ <xsl:variable name="title" select="/un:un-standard/un:bibdata/un:title[@language = 'en' and @type = 'main']"/>
24
+
25
+ <xsl:variable name="id" select="/un:un-standard/un:bibdata/un:ext/un:session/un:id"/>
26
+
27
+ <xsl:template match="/">
28
+ <fo:root font-family="Times New Roman, STIX2Math, HanSans" font-size="10pt" xml:lang="{$lang}">
29
+ <fo:layout-master-set>
30
+ <!-- Cover page -->
31
+ <fo:simple-page-master master-name="cover-page" page-width="{$pageWidth}" page-height="{$pageHeight}">
32
+ <fo:region-body margin-top="17.5mm" margin-bottom="10mm" margin-left="20mm" margin-right="20mm"/>
33
+ <fo:region-before extent="17.5mm"/>
34
+ <fo:region-after extent="10mm"/>
35
+ <fo:region-start extent="20mm"/>
36
+ <fo:region-end extent="20mm"/>
37
+ </fo:simple-page-master>
38
+
39
+ <!-- Document odd pages -->
40
+ <fo:simple-page-master master-name="odd" page-width="{$pageWidth}" page-height="{$pageHeight}">
41
+ <fo:region-body margin-top="30mm" margin-bottom="40mm" margin-left="40mm" margin-right="40mm"/>
42
+ <fo:region-before region-name="header-odd" extent="26mm"/>
43
+ <fo:region-after region-name="footer-odd" extent="40mm"/>
44
+ <fo:region-start region-name="left-region" extent="40mm"/>
45
+ <fo:region-end region-name="right-region" extent="40mm"/>
46
+ </fo:simple-page-master>
47
+ <!-- Document even pages -->
48
+ <fo:simple-page-master master-name="even" page-width="{$pageWidth}" page-height="{$pageHeight}">
49
+ <fo:region-body margin-top="30mm" margin-bottom="40mm" margin-left="40mm" margin-right="40mm"/>
50
+ <fo:region-before region-name="header-even" extent="26mm"/>
51
+ <fo:region-after region-name="footer-even" extent="40mm"/>
52
+ <fo:region-start region-name="left-region" extent="40mm"/>
53
+ <fo:region-end region-name="right-region" extent="40mm"/>
54
+ </fo:simple-page-master>
55
+ <fo:page-sequence-master master-name="document">
56
+ <fo:repeatable-page-master-alternatives>
57
+ <fo:conditional-page-master-reference odd-or-even="even" master-reference="even"/>
58
+ <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd"/>
59
+ </fo:repeatable-page-master-alternatives>
60
+ </fo:page-sequence-master>
61
+ </fo:layout-master-set>
62
+
63
+ <fo:declarations>
64
+ <pdf:catalog xmlns:pdf="http://xmlgraphics.apache.org/fop/extensions/pdf">
65
+ <pdf:dictionary type="normal" key="ViewerPreferences">
66
+ <pdf:boolean key="DisplayDocTitle">true</pdf:boolean>
67
+ </pdf:dictionary>
68
+ </pdf:catalog>
69
+ <x:xmpmeta xmlns:x="adobe:ns:meta/">
70
+ <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
71
+ <rdf:Description xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:pdf="http://ns.adobe.com/pdf/1.3/" rdf:about="">
72
+ <!-- Dublin Core properties go here -->
73
+ <dc:title>
74
+ <xsl:choose>
75
+ <xsl:when test="$title != ''">
76
+ <xsl:value-of select="$title"/>
77
+ </xsl:when>
78
+ <xsl:otherwise>
79
+ <xsl:text> </xsl:text>
80
+ </xsl:otherwise>
81
+ </xsl:choose>
82
+ </dc:title>
83
+ <dc:creator/>
84
+ <dc:description>
85
+ <xsl:variable name="abstract">
86
+ <xsl:copy-of select="/un:un-standard/un:preface/un:abstract//text()"/>
87
+ </xsl:variable>
88
+ <xsl:value-of select="normalize-space($abstract)"/>
89
+ </dc:description>
90
+ <pdf:Keywords/>
91
+ </rdf:Description>
92
+ <rdf:Description xmlns:xmp="http://ns.adobe.com/xap/1.0/" rdf:about="">
93
+ <!-- XMP properties go here -->
94
+ <xmp:CreatorTool/>
95
+ </rdf:Description>
96
+ </rdf:RDF>
97
+ </x:xmpmeta>
98
+ </fo:declarations>
99
+
100
+ <!-- Cover Page -->
101
+ <fo:page-sequence master-reference="cover-page" force-page-count="no-force">
102
+ <fo:flow flow-name="xsl-region-body">
103
+ <fo:block-container border-bottom="0.5pt solid black" margin-bottom="6pt">
104
+ <fo:block text-align-last="justify">
105
+ <fo:inline padding-right="22mm"> </fo:inline>
106
+ <fo:inline font-size="14pt" baseline-shift="15%"><xsl:value-of select="/un:un-standard/un:bibdata/un:contributor/un:organization/un:name"/></fo:inline>
107
+ <fo:inline keep-together.within-line="always">
108
+ <fo:leader leader-pattern="space"/>
109
+ <fo:inline font-size="20pt"><xsl:value-of select="substring-before($id, '/')"/></fo:inline>
110
+ <fo:inline font-size="10pt">/<xsl:value-of select="substring-after($id, '/')"/></fo:inline>
111
+ </fo:inline>
112
+ </fo:block>
113
+ </fo:block-container>
114
+ <fo:block-container height="48mm">
115
+ <fo:block>
116
+ <fo:table table-layout="fixed" width="100%">
117
+ <fo:table-column column-width="22mm"/>
118
+ <fo:table-column column-width="98mm"/>
119
+ <fo:table-column column-width="50mm"/>
120
+ <fo:table-body>
121
+ <fo:table-row>
122
+ <fo:table-cell padding-left="0.5mm">
123
+ <fo:block>
124
+ <fo:external-graphic src="{concat('data:image/png;base64,', normalize-space($Image-Logo))}" width="28mm" content-height="scale-to-fit" scaling="uniform" fox:alt-text="Image Front"/>
125
+ </fo:block>
126
+ </fo:table-cell>
127
+ <fo:table-cell>
128
+ <fo:block font-size="20pt" font-weight="bold">Economic and Social Council</fo:block>
129
+ </fo:table-cell>
130
+ <fo:table-cell font-size="10pt">
131
+ <fo:block margin-top="8pt">
132
+ <xsl:text>Distr.: </xsl:text><xsl:value-of select="/un:un-standard/un:bibdata/un:ext/un:distribution"/>
133
+ </fo:block>
134
+ <fo:block margin-bottom="12pt">
135
+ <xsl:call-template name="formatDate">
136
+ <xsl:with-param name="date" select="/un:un-standard/un:bibdata/un:version/un:revision-date"/>
137
+ </xsl:call-template>
138
+ </fo:block>
139
+ <fo:block>
140
+ <xsl:text>Original: </xsl:text>
141
+ <xsl:call-template name="getLanguage">
142
+ <xsl:with-param name="lang" select="/un:un-standard/un:bibdata/un:language"/>
143
+ </xsl:call-template>
144
+ </fo:block>
145
+ </fo:table-cell>
146
+ </fo:table-row>
147
+ </fo:table-body>
148
+ </fo:table>
149
+ </fo:block>
150
+ </fo:block-container>
151
+ <!-- <fo:block margin-bottom="24pt">&#xA0;</fo:block> -->
152
+ <fo:block-container font-weight="bold" border-top="1.5pt solid black">
153
+ <fo:block font-size="14pt" padding-top="0.5mm" margin-top="6pt" margin-bottom="6pt">Economic Commission for Europe</fo:block>
154
+ <fo:block font-size="12pt" margin-bottom="6pt">UNECE Executive Committee</fo:block>
155
+ <fo:block font-size="12pt" margin-bottom="6pt"><xsl:value-of select="/un:un-standard/un:bibdata/un:ext/un:editorialgroup/un:committee"/></fo:block>
156
+ <fo:block font-size="10pt">
157
+ <fo:block font-weight="bold">
158
+ <!-- Example: 24 -> Twenty-fourth session -->
159
+ <xsl:call-template name="number-to-words">
160
+ <xsl:with-param name="number" select="/un:un-standard/un:bibdata/un:ext/un:session/un:number"/>
161
+ <xsl:with-param name="first" select="'true'"/>
162
+ </xsl:call-template>
163
+ <xsl:text>session</xsl:text>
164
+ </fo:block>
165
+ <fo:block font-weight="normal">
166
+ <xsl:value-of select="/un:un-standard/un:bibdata/un:ext/un:session/un:date"/>
167
+ </fo:block>
168
+ <fo:block font-weight="normal">
169
+ <xsl:text>Item 1 of the </xsl:text><xsl:value-of select="translate(/un:un-standard/un:sections/un:clause[1]/un:title, $upper, $lower)"/>
170
+ </fo:block>
171
+ <fo:block>
172
+ <xsl:value-of select="translate(/un:un-standard/un:sections/un:clause[1]/un:ol[1]/un:li[1]/un:p[1], '.', '')"/>
173
+ </fo:block>
174
+ <fo:block><xsl:value-of select="$title"/></fo:block>
175
+ </fo:block>
176
+ </fo:block-container>
177
+
178
+ <!-- <xsl:apply-templates select="/un:un-standard/un:preface/un:foreword"/> -->
179
+
180
+ <fo:block-container font-weight="bold" margin-left="20mm" margin-top="10pt">
181
+ <fo:block margin-left="-20mm">
182
+ <fo:block font-size="17pt" margin-bottom="16pt">
183
+ <xsl:value-of select="$title"/>
184
+ </fo:block>
185
+ <fo:block font-size="14pt" margin-bottom="16pt">
186
+ <xsl:value-of select="/un:un-standard/un:bibdata/un:title[@language = 'en' and @type = 'subtitle']"/>
187
+ </fo:block>
188
+ <xsl:if test="/un:un-standard/un:bibdata/un:ext/un:session/un:collaborator">
189
+ <fo:block font-size="14pt" margin-bottom="22pt">
190
+ <xsl:text>Developed in Collaboration with the </xsl:text><xsl:value-of select="/un:un-standard/un:bibdata/un:ext/un:session/un:collaborator"/>
191
+ </fo:block>
192
+ </xsl:if>
193
+ </fo:block>
194
+ </fo:block-container>
195
+
196
+ <xsl:apply-templates select="/un:un-standard/un:preface/un:abstract"/>
197
+
198
+ <xsl:variable name="charsToRemove" select="concat($upper, $lower, '.()~!@#$%^*-+')"/>
199
+ <xsl:variable name="code" select="translate(/un:un-standard/un:bibdata/un:docidentifier, $charsToRemove,'')"/>
200
+
201
+ <fo:block-container absolute-position="fixed" left="20mm" top="258mm" width="30mm" text-align="center">
202
+ <fo:block font-size="10pt" text-align="left">
203
+ <xsl:value-of select="/un:un-standard/un:bibdata/un:docidentifier"/>
204
+ </fo:block>
205
+
206
+ <fo:block padding-top="1mm">
207
+ <fo:instream-foreign-object fox:alt-text="Barcode">
208
+ <barcode:barcode message="{$code}">
209
+ <barcode:code39>
210
+ <barcode:height>8.5mm</barcode:height>
211
+ <barcode:module-width>0.24mm</barcode:module-width>
212
+ <barcode:human-readable>
213
+ <barcode:placement>none</barcode:placement>
214
+ <!--<barcode:pattern>* _ _ _ _ _ _ _ _ _ *</barcode:pattern>
215
+ <barcode:font-name>Arial</barcode:font-name>
216
+ <barcode:font-size>9.7pt</barcode:font-size> -->
217
+ </barcode:human-readable>
218
+ </barcode:code39>
219
+ </barcode:barcode>
220
+ </fo:instream-foreign-object>
221
+ </fo:block>
222
+ <fo:block padding-top="-0.8mm" text-align="left" font-family="Arial" font-size="8pt" letter-spacing="1.8mm">
223
+ <xsl:value-of select="concat('*', $code, '*')"/>
224
+ </fo:block>
225
+ </fo:block-container>
226
+
227
+ <fo:block-container absolute-position="fixed" left="143mm" top="262mm">
228
+ <fo:block>
229
+ <fo:external-graphic src="{concat('data:image/png;base64,', normalize-space($Image-Recycle))}" width="26mm" content-height="scale-to-fit" scaling="uniform" fox:alt-text="Recycle"/>
230
+ </fo:block>
231
+ </fo:block-container>
232
+ <fo:block-container absolute-position="fixed" left="170mm" top="253mm">
233
+ <fo:block>
234
+ <fo:instream-foreign-object fox:alt-text="Barcode">
235
+ <barcode:barcode message="{concat('http://undocs.org/', /un:un-standard/un:bibdata/un:ext/un:session/un:id)}">
236
+ <barcode:qr>
237
+ <barcode:module-width>0.55mm</barcode:module-width>
238
+ <barcode:ec-level>M</barcode:ec-level>
239
+ </barcode:qr>
240
+ </barcode:barcode>
241
+ </fo:instream-foreign-object>
242
+ </fo:block>
243
+ </fo:block-container>
244
+
245
+ </fo:flow>
246
+ </fo:page-sequence>
247
+ <!-- End Cover Page -->
248
+
249
+
250
+ <!-- Document Pages -->
251
+ <fo:page-sequence master-reference="document" initial-page-number="2" format="1" force-page-count="no-force" line-height="115%">
252
+ <fo:static-content flow-name="xsl-footnote-separator">
253
+ <fo:block-container margin-left="-8mm">
254
+ <fo:block margin-left="8mm">
255
+ <fo:leader leader-pattern="rule" leader-length="20%"/>
256
+ </fo:block>
257
+ </fo:block-container>
258
+ </fo:static-content>
259
+ <xsl:call-template name="insertHeaderFooter"/>
260
+ <fo:flow flow-name="xsl-region-body">
261
+
262
+ <xsl:text disable-output-escaping="yes">&lt;!--</xsl:text>
263
+ DEBUG
264
+ contents=<xsl:copy-of select="xalan:nodeset($contents)"/>
265
+ <xsl:text disable-output-escaping="yes">--&gt;</xsl:text>
266
+
267
+ <fo:block>
268
+ <xsl:apply-templates select="/un:un-standard/un:sections/*"/>
269
+ <xsl:apply-templates select="/un:un-standard/un:annex"/>
270
+ </fo:block>
271
+
272
+ <fo:block-container margin-left="50mm" width="30mm" border-bottom="0.5pt solid black" margin-top="12pt" keep-with-previous="always">
273
+ <fo:block> </fo:block>
274
+ </fo:block-container>
275
+
276
+ </fo:flow>
277
+ </fo:page-sequence>
278
+ <!-- End Document Pages -->
279
+
280
+ </fo:root>
281
+ </xsl:template>
282
+
283
+ <!-- ============================= -->
284
+ <!-- CONTENTS -->
285
+ <!-- ============================= -->
286
+ <xsl:template match="node()" mode="contents">
287
+ <xsl:apply-templates mode="contents"/>
288
+ </xsl:template>
289
+
290
+ <xsl:template match="un:un-standard/un:sections/*" mode="contents">
291
+ <xsl:apply-templates mode="contents"/>
292
+ </xsl:template>
293
+
294
+
295
+ <!-- Any node with title element - clause, definition, annex,... -->
296
+ <xsl:template match="un:title | un:preferred" mode="contents">
297
+ <xsl:variable name="id">
298
+ <xsl:choose>
299
+ <xsl:when test="../@id">
300
+ <xsl:value-of select="../@id"/>
301
+ </xsl:when>
302
+ <xsl:otherwise>
303
+ <xsl:value-of select="text()"/>
304
+ </xsl:otherwise>
305
+ </xsl:choose>
306
+ </xsl:variable>
307
+
308
+ <xsl:variable name="level">
309
+ <xsl:call-template name="getLevel"/>
310
+ </xsl:variable>
311
+
312
+ <!-- <xsl:message>
313
+ level=<xsl:value-of select="$level"/>=<xsl:value-of select="."/>
314
+ </xsl:message> -->
315
+
316
+ <xsl:variable name="section">
317
+ <xsl:call-template name="getSection"/>
318
+ </xsl:variable>
319
+
320
+
321
+ <xsl:variable name="type">
322
+ <xsl:value-of select="local-name(..)"/>
323
+ </xsl:variable>
324
+
325
+ <item id="{$id}" level="{$level}" section="{$section}" display="false" type="{$type}">
326
+ <xsl:if test="$type = 'clause'">
327
+ <xsl:attribute name="section">
328
+ <xsl:text>Clause </xsl:text>
329
+ <xsl:choose>
330
+ <xsl:when test="ancestor::un:sections">
331
+ <!-- 1, 2, 3, 4, ... from main section (not annex ...) -->
332
+ <xsl:choose>
333
+ <xsl:when test="$level = 1">
334
+ <xsl:number format="I" count="//un:sections/un:clause"/>
335
+ </xsl:when>
336
+ <xsl:when test="$level = 2">
337
+ <xsl:number format="I." count="//un:sections/un:clause"/>
338
+ <xsl:number format="A" count="//un:sections/un:clause/un:clause[un:title]"/>
339
+ </xsl:when>
340
+ <xsl:when test="$level &gt;= 3">
341
+ <xsl:number format="I." count="//un:sections/un:clause"/>
342
+ <xsl:number format="A." count="//un:sections/un:clause/un:clause[un:title]"/>
343
+ <xsl:number format="1" count="//un:sections/un:clause/un:clause/un:clause[un:title]"/>
344
+ </xsl:when>
345
+ <xsl:otherwise>
346
+ </xsl:otherwise>
347
+ </xsl:choose>
348
+ </xsl:when>
349
+ <xsl:when test="ancestor::un:annex">
350
+ <xsl:choose>
351
+ <xsl:when test="$level = 1">
352
+ <xsl:text>Annex </xsl:text>
353
+ <xsl:number format="A" level="any" count="un:annex"/>
354
+ </xsl:when>
355
+ <xsl:otherwise>
356
+ <xsl:variable name="annex_id" select="ancestor::un:annex/@id"/>
357
+ <xsl:number format="1." count="//un:annex[@id = $annex_id]/un:clause[un:title]"/>
358
+ </xsl:otherwise>
359
+ </xsl:choose>
360
+ </xsl:when>
361
+ <xsl:otherwise>
362
+ </xsl:otherwise>
363
+ </xsl:choose>
364
+ </xsl:attribute>
365
+
366
+ </xsl:if>
367
+ <xsl:value-of select="."/>
368
+ </item>
369
+
370
+ <xsl:apply-templates mode="contents"/>
371
+ </xsl:template>
372
+
373
+ <xsl:template match="un:bibitem" mode="contents"/>
374
+
375
+ <xsl:template match="un:references" mode="contents">
376
+ <xsl:apply-templates mode="contents"/>
377
+ </xsl:template>
378
+
379
+
380
+ <xsl:template match="un:figure" mode="contents">
381
+ <item level="" id="{@id}" type="figure">
382
+ <xsl:attribute name="section">
383
+ <xsl:text>Figure </xsl:text>
384
+ <xsl:choose>
385
+ <xsl:when test="ancestor::un:annex">
386
+ <xsl:choose>
387
+ <xsl:when test="count(//un:annex) = 1">
388
+ <xsl:value-of select="/un:un-standard/un:bibdata/un:ext/un:structuredidentifier/un:annexid"/><xsl:number format="-1" level="any" count="un:annex//un:figure"/>
389
+ </xsl:when>
390
+ <xsl:otherwise>
391
+ <xsl:number format="A.1-1" level="multiple" count="un:annex | un:figure"/>
392
+ </xsl:otherwise>
393
+ </xsl:choose>
394
+ </xsl:when>
395
+ <xsl:when test="ancestor::un:figure">
396
+ <xsl:for-each select="parent::*[1]">
397
+ <xsl:number format="1" level="any" count="un:figure[not(parent::un:figure)]"/>
398
+ </xsl:for-each>
399
+ <xsl:number format="-a" count="un:figure"/>
400
+ </xsl:when>
401
+ <xsl:otherwise>
402
+ <xsl:number format="1" level="any" count="un:figure[not(parent::un:figure)]"/>
403
+ <!-- <xsl:number format="1.1-1" level="multiple" count="un:annex | un:figure"/> -->
404
+ </xsl:otherwise>
405
+ </xsl:choose>
406
+ </xsl:attribute>
407
+ <xsl:value-of select="un:name"/>
408
+ </item>
409
+ </xsl:template>
410
+
411
+ <xsl:template match="un:table" mode="contents">
412
+ <xsl:variable name="annex-id" select="ancestor::un:annex/@id"/>
413
+ <item level="" id="{@id}" display="false" type="table">
414
+ <xsl:attribute name="section">
415
+ <xsl:text>Table </xsl:text>
416
+ <xsl:choose>
417
+ <xsl:when test="ancestor::*[local-name()='executivesummary']"> <!-- NIST -->
418
+ <xsl:text>ES-</xsl:text><xsl:number format="1" count="*[local-name()='executivesummary']//*[local-name()='table']"/>
419
+ </xsl:when>
420
+ <xsl:when test="ancestor::*[local-name()='annex']">
421
+ <xsl:number format="I." count="un:annex"/>
422
+ <xsl:number format="1" level="any" count="un:table[ancestor::un:annex[@id = $annex-id]]"/>
423
+ </xsl:when>
424
+ <xsl:otherwise>
425
+ <!-- <xsl:number format="1"/> -->
426
+ <xsl:number format="1" level="any" count="*[local-name()='sections']//*[local-name()='table']"/>
427
+ </xsl:otherwise>
428
+ </xsl:choose>
429
+ </xsl:attribute>
430
+ <xsl:apply-templates select="un:name"/>
431
+ </item>
432
+ </xsl:template>
433
+
434
+
435
+ <xsl:template match="un:formula" mode="contents">
436
+ <item level="" id="{@id}" display="false">
437
+ <xsl:attribute name="section">
438
+ <xsl:text>Formula (</xsl:text><xsl:number format="A.1" level="multiple" count="un:annex | un:formula"/><xsl:text>)</xsl:text>
439
+ </xsl:attribute>
440
+ </item>
441
+ </xsl:template>
442
+
443
+ <xsl:template match="un:example" mode="contents">
444
+ <xsl:variable name="level">
445
+ <xsl:call-template name="getLevel"/>
446
+ </xsl:variable>
447
+ <xsl:variable name="section">
448
+ <xsl:call-template name="getSection"/>
449
+ </xsl:variable>
450
+
451
+ <xsl:variable name="parent-element" select="local-name(..)"/>
452
+ <item level="" id="{@id}" display="false" type="Example" section="{$section}">
453
+ <xsl:attribute name="parent">
454
+ <xsl:choose>
455
+ <xsl:when test="$parent-element = 'clause'">Clause</xsl:when>
456
+ <xsl:otherwise/>
457
+ </xsl:choose>
458
+ </xsl:attribute>
459
+ </item>
460
+ <xsl:apply-templates mode="contents"/>
461
+ </xsl:template>
462
+
463
+ <xsl:template match="un:terms" mode="contents">
464
+ <item level="" id="{@id}" display="false" type="Terms">
465
+ <xsl:if test="ancestor::un:annex">
466
+ <xsl:attribute name="section">
467
+ <xsl:text>Appendix </xsl:text><xsl:number format="A" count="un:annex"/>
468
+ </xsl:attribute>
469
+ </xsl:if>
470
+ </item>
471
+ </xsl:template>
472
+
473
+ <xsl:template match="un:references" mode="contents">
474
+ <item level="" id="{@id}" display="false" type="References">
475
+ <xsl:if test="ancestor::un:annex">
476
+ <xsl:attribute name="section">
477
+ <xsl:text>Appendix </xsl:text><xsl:number format="A" count="un:annex"/>
478
+ </xsl:attribute>
479
+ </xsl:if>
480
+ </item>
481
+ </xsl:template>
482
+
483
+ <xsl:template match="un:admonition" mode="contents">
484
+ <item level="" id="{@id}" display="false" type="Box">
485
+ <xsl:attribute name="section">
486
+ <xsl:variable name="num">
487
+ <xsl:number/>
488
+ </xsl:variable>
489
+ <xsl:text>Box </xsl:text><xsl:value-of select="$num"/>
490
+ </xsl:attribute>
491
+ </item>
492
+ </xsl:template>
493
+
494
+ <!-- ============================= -->
495
+ <!-- ============================= -->
496
+
497
+
498
+ <!-- ============================= -->
499
+ <!-- PARAGRAPHS -->
500
+ <!-- ============================= -->
501
+
502
+ <xsl:template match="un:preface/un:abstract">
503
+ <fo:block>
504
+ <fo:table table-layout="fixed" width="100%" border="0.5pt solid black">
505
+ <fo:table-column column-width="19mm"/>
506
+ <fo:table-column column-width="134mm"/>
507
+ <fo:table-column column-width="17mm"/>
508
+ <fo:table-body>
509
+ <fo:table-row>
510
+ <fo:table-cell padding-left="6mm" padding-top="2.5mm">
511
+ <fo:block font-size="12pt" font-style="italic" margin-bottom="6pt">Summary</fo:block>
512
+ </fo:table-cell>
513
+ <fo:table-cell>
514
+ <fo:block> </fo:block>
515
+ </fo:table-cell>
516
+ <fo:table-cell>
517
+ <fo:block> </fo:block>
518
+ </fo:table-cell>
519
+ </fo:table-row>
520
+ <fo:table-row>
521
+ <fo:table-cell>
522
+ <fo:block> </fo:block>
523
+ </fo:table-cell>
524
+ <fo:table-cell text-align="justify" padding-bottom="12pt" padding-right="3mm">
525
+ <fo:block font-size="10pt" line-height="120%"><xsl:apply-templates/></fo:block>
526
+ </fo:table-cell>
527
+ <fo:table-cell>
528
+ <fo:block> </fo:block>
529
+ </fo:table-cell>
530
+ </fo:table-row>
531
+ </fo:table-body>
532
+ </fo:table>
533
+ </fo:block>
534
+ </xsl:template>
535
+
536
+ <xsl:template match="un:abstract//un:p" priority="2">
537
+ <fo:block margin-bottom="6pt">
538
+ <xsl:attribute name="text-align">
539
+ <xsl:choose>
540
+ <xsl:when test="@align"><xsl:value-of select="@align"/></xsl:when>
541
+ <xsl:otherwise>justify</xsl:otherwise>
542
+ </xsl:choose>
543
+ </xsl:attribute>
544
+ <xsl:apply-templates/>
545
+ </fo:block>
546
+ </xsl:template>
547
+
548
+ <xsl:template match="un:preface//un:p">
549
+ <fo:block margin-bottom="12pt">
550
+ <xsl:attribute name="text-align">
551
+ <xsl:choose>
552
+ <xsl:when test="@align"><xsl:value-of select="@align"/></xsl:when>
553
+ <xsl:otherwise>left</xsl:otherwise>
554
+ </xsl:choose>
555
+ </xsl:attribute>
556
+ <!-- <xsl:choose>
557
+ <xsl:when test="ancestor::un:sections">
558
+ <fo:inline padding-right="10mm"><xsl:number format="1. " level="any" count="un:sections//un:clause/un:p"/></fo:inline>
559
+ </xsl:when>
560
+ <xsl:when test="ancestor::un:annex">
561
+ <xsl:variable name="annex_id" select="ancestor::un:annex/@id"/>
562
+ <fo:inline padding-right="10mm"><xsl:number format="1. " level="any" count="un:annex[@id = $annex_id]//un:clause/un:p"/></fo:inline>
563
+ </xsl:when>
564
+ </xsl:choose> -->
565
+ <xsl:apply-templates/>
566
+ </fo:block>
567
+ </xsl:template>
568
+
569
+
570
+ <xsl:template match="un:p[ancestor::un:table]">
571
+ <fo:block>
572
+ <xsl:apply-templates/>
573
+ </fo:block>
574
+ </xsl:template>
575
+
576
+ <xsl:template match="un:p">
577
+ <fo:block-container margin-left="1mm">
578
+ <fo:block margin-left="-1mm">
579
+ <fo:list-block provisional-distance-between-starts="9mm" margin-bottom="6pt" line-height="122%">
580
+ <xsl:attribute name="text-align">
581
+ <xsl:choose>
582
+ <xsl:when test="@align"><xsl:value-of select="@align"/></xsl:when>
583
+ <xsl:otherwise>justify</xsl:otherwise>
584
+ </xsl:choose>
585
+ </xsl:attribute>
586
+ <fo:list-item>
587
+ <fo:list-item-label end-indent="label-end()">
588
+ <fo:block>
589
+ <xsl:choose>
590
+ <xsl:when test="ancestor::un:sections">
591
+ <xsl:number format="1. " level="any" count="un:sections//un:clause/un:p"/>
592
+ </xsl:when>
593
+ <xsl:when test="ancestor::un:annex">
594
+ <xsl:variable name="annex_id" select="ancestor::un:annex/@id"/>
595
+ <xsl:number format="1. " level="any" count="un:annex[@id = $annex_id]//un:p"/> <!-- //un:clause -->
596
+ </xsl:when>
597
+ </xsl:choose>
598
+ </fo:block>
599
+ </fo:list-item-label>
600
+ <fo:list-item-body text-indent="body-start()">
601
+ <fo:block>
602
+ <xsl:text> </xsl:text><xsl:apply-templates/>
603
+ </fo:block>
604
+ </fo:list-item-body>
605
+ </fo:list-item>
606
+ </fo:list-block>
607
+ </fo:block>
608
+ </fo:block-container>
609
+ </xsl:template>
610
+
611
+ <xsl:template match="text()">
612
+ <xsl:value-of select="."/>
613
+ </xsl:template>
614
+
615
+ <xsl:template match="un:title/un:fn | un:p/un:fn[not(ancestor::un:table)] | un:figure/un:name/un:fn" priority="2">
616
+ <fo:footnote keep-with-previous.within-line="always">
617
+ <xsl:variable name="number">
618
+ <xsl:number level="any" count="un:fn[not(ancestor::un:table)]"/>
619
+ </xsl:variable>
620
+ <fo:inline font-size="60%" keep-with-previous.within-line="always" vertical-align="super">
621
+ <fo:basic-link internal-destination="footnote_{@reference}_{$number}" fox:alt-text="footnote {@reference} {$number}">
622
+ <xsl:value-of select="$number + count(//un:bibitem/un:note)"/>
623
+ </fo:basic-link>
624
+ </fo:inline>
625
+ <fo:footnote-body>
626
+ <fo:block-container margin-left="-8mm">
627
+ <fo:block font-size="9pt" text-align="justify" line-height="125%" font-weight="normal" text-indent="0" margin-left="8mm">
628
+ <fo:inline id="footnote_{@reference}_{$number}" font-size="60%" keep-with-next.within-line="always" vertical-align="super" padding-right="8mm"> <!-- alignment-baseline="hanging" -->
629
+ <xsl:value-of select="$number + count(//un:bibitem/un:note)"/>
630
+ </fo:inline>
631
+ <xsl:for-each select="un:p">
632
+ <xsl:apply-templates/>
633
+ </xsl:for-each>
634
+ </fo:block>
635
+ </fo:block-container>
636
+ </fo:footnote-body>
637
+ </fo:footnote>
638
+ </xsl:template>
639
+
640
+ <xsl:template match="un:fn/un:p">
641
+ <fo:block>
642
+ <xsl:apply-templates/>
643
+ </fo:block>
644
+ </xsl:template>
645
+
646
+ <xsl:template match="un:ul | un:ol">
647
+ <fo:block-container margin-left="8mm">
648
+ <fo:list-block provisional-distance-between-starts="3mm" margin-left="-8mm">
649
+ <xsl:apply-templates/>
650
+ </fo:list-block>
651
+ <xsl:apply-templates select="./un:note" mode="process"/>
652
+ </fo:block-container>
653
+ </xsl:template>
654
+
655
+ <xsl:template match="un:ul//un:note | un:ol//un:note"/>
656
+ <xsl:template match="un:ul//un:note/un:p | un:ol//un:note/un:p" mode="process">
657
+ <fo:block font-size="11pt" margin-top="4pt">
658
+ <xsl:text>NOTE </xsl:text>
659
+ <xsl:if test="../following-sibling::un:note or ../preceding-sibling::un:note">
660
+ <xsl:number count="un:note"/><xsl:text> </xsl:text>
661
+ </xsl:if>
662
+ <xsl:text>– </xsl:text>
663
+ <xsl:apply-templates/>
664
+ </fo:block>
665
+ </xsl:template>
666
+
667
+ <xsl:template match="un:li">
668
+ <xsl:variable name="level">
669
+ <xsl:call-template name="getLevel"/>
670
+ </xsl:variable>
671
+ <fo:list-item>
672
+ <fo:list-item-label end-indent="label-end()">
673
+ <fo:block>
674
+ <xsl:choose>
675
+ <!-- <xsl:when test="local-name(..) = 'ul'">&#x2014;</xsl:when> --> <!-- dash -->
676
+ <xsl:when test="local-name(..) = 'ul'">•</xsl:when>
677
+ <xsl:otherwise> <!-- for ordered lists -->
678
+ <xsl:choose>
679
+ <xsl:when test="../@type = 'arabic'">
680
+ <xsl:number format="1."/>
681
+ </xsl:when>
682
+ <xsl:when test="../@type = 'alphabet'">
683
+ <xsl:number format="1)"/>
684
+ </xsl:when>
685
+ <xsl:when test="ancestor::*[un:annex]">
686
+ <xsl:choose>
687
+ <xsl:when test="$level = 1">
688
+ <xsl:number format="a)"/>
689
+ </xsl:when>
690
+ <xsl:when test="$level = 2">
691
+ <xsl:number format="i)"/>
692
+ </xsl:when>
693
+ <xsl:otherwise>
694
+ <xsl:number format="1.)"/>
695
+ </xsl:otherwise>
696
+ </xsl:choose>
697
+ </xsl:when>
698
+ <xsl:otherwise>
699
+ <xsl:number format="1."/>
700
+ </xsl:otherwise>
701
+ </xsl:choose>
702
+ </xsl:otherwise>
703
+ </xsl:choose>
704
+ </fo:block>
705
+ </fo:list-item-label>
706
+ <fo:list-item-body start-indent="body-start()">
707
+ <xsl:apply-templates/>
708
+ <xsl:apply-templates select=".//un:note" mode="process"/>
709
+ </fo:list-item-body>
710
+ </fo:list-item>
711
+ </xsl:template>
712
+
713
+ <xsl:template match="un:li//un:p">
714
+ <fo:block margin-bottom="6pt" line-height="122%" text-align="justify">
715
+ <xsl:apply-templates/>
716
+ </fo:block>
717
+ </xsl:template>
718
+
719
+ <xsl:template match="un:link">
720
+ <fo:basic-link external-destination="{@target}" fox:alt-text="{@target}"> <!-- color="blue" text-decoration="underline" -->
721
+ <xsl:if test="ancestor::un:fn and string-length(@target) &gt; 110">
722
+ <xsl:attribute name="font-size">8pt</xsl:attribute>
723
+ </xsl:if>
724
+ <xsl:choose>
725
+ <xsl:when test="normalize-space(.) = ''">
726
+ <xsl:value-of select="@target"/>
727
+ </xsl:when>
728
+ <xsl:otherwise>
729
+ <xsl:apply-templates/>
730
+ </xsl:otherwise>
731
+ </xsl:choose>
732
+ </fo:basic-link>
733
+ </xsl:template>
734
+
735
+ <xsl:template match="un:xref">
736
+ <xsl:variable name="section" select="xalan:nodeset($contents)//item[@id = current()/@target]/@section"/>
737
+ <xsl:variable name="type" select="xalan:nodeset($contents)//item[@id = current()/@target]/@type"/>
738
+ <fo:basic-link internal-destination="{@target}" fox:alt-text="{@target}">
739
+ <xsl:choose>
740
+ <xsl:when test="$section != ''"><xsl:value-of select="$section"/></xsl:when>
741
+ <xsl:otherwise>???</xsl:otherwise>
742
+ </xsl:choose>
743
+ </fo:basic-link>
744
+ </xsl:template>
745
+
746
+ <xsl:template match="un:admonition">
747
+ <fo:block text-align="center" font-style="italic" keep-with-next="always" margin-bottom="6pt">
748
+ <xsl:text>Box </xsl:text><xsl:number/><xsl:text>: </xsl:text><xsl:apply-templates select="un:name" mode="process"/>
749
+ </fo:block>
750
+ <fo:block-container border="0.25pt solid black" margin-left="-3mm" margin-right="-3mm" padding-top="4mm">
751
+ <fo:block id="{@id}" font-weight="bold" margin-left="6mm" margin-right="6mm" keep-with-next="always">
752
+ <xsl:text>Box </xsl:text><xsl:number/><xsl:text>: </xsl:text><xsl:apply-templates select="un:name" mode="process"/>
753
+ </fo:block>
754
+ <fo:block margin-left="5mm" margin-right="5mm">
755
+ <xsl:apply-templates/>
756
+ </fo:block>
757
+ </fo:block-container>
758
+ <fo:block margin-bottom="4pt"> </fo:block>
759
+ </xsl:template>
760
+
761
+ <xsl:template match="un:admonition/un:name"/>
762
+ <xsl:template match="un:admonition/un:name" mode="process">
763
+ <xsl:apply-templates/>
764
+ </xsl:template>
765
+
766
+ <xsl:template match="un:admonition/un:p">
767
+ <fo:block text-align="justify" margin-bottom="6pt" line-height="122%"><xsl:apply-templates/></fo:block>
768
+ </xsl:template>
769
+
770
+ <!-- ============================= -->
771
+ <!-- ============================= -->
772
+
773
+
774
+ <xsl:template match="un:un-standard/un:sections/*">
775
+ <xsl:variable name="num"><xsl:number/></xsl:variable>
776
+ <fo:block>
777
+ <xsl:if test="$num = 1">
778
+ <xsl:attribute name="margin-top">20pt</xsl:attribute>
779
+ </xsl:if>
780
+ <xsl:variable name="sectionNum"><xsl:number count="*"/></xsl:variable>
781
+ <xsl:apply-templates>
782
+ <xsl:with-param name="sectionNum" select="$sectionNum"/>
783
+ </xsl:apply-templates>
784
+ </fo:block>
785
+ <!-- -->
786
+ </xsl:template>
787
+
788
+
789
+ <xsl:template match="/un:un-standard/un:annex">
790
+ <fo:block break-after="page"/>
791
+ <xsl:variable name="num"><xsl:number/></xsl:variable>
792
+
793
+ <!-- <fo:block-container border-bottom="0.5pt solid black">
794
+ <fo:block>&#xA0;</fo:block>
795
+ </fo:block-container>
796
+ <fo:block margin-bottom="12pt">&#xA0;</fo:block> -->
797
+
798
+ <fo:block>
799
+ <xsl:if test="$num = 1">
800
+ <xsl:attribute name="margin-top">3pt</xsl:attribute>
801
+ </xsl:if>
802
+ <xsl:if test="not(un:title)">
803
+ <xsl:variable name="section">
804
+ <xsl:for-each select="*[1]">
805
+ <xsl:call-template name="getSection"/>
806
+ </xsl:for-each>
807
+ </xsl:variable>
808
+ <fo:block id="{@id}" font-size="14pt" font-weight="bold" space-before="3pt" margin-bottom="18pt" keep-with-next="always">
809
+ <xsl:value-of select="$section"/>
810
+ </fo:block>
811
+ </xsl:if>
812
+ <xsl:apply-templates/>
813
+ </fo:block>
814
+ </xsl:template>
815
+
816
+
817
+ <xsl:template match="un:title">
818
+ <xsl:variable name="id">
819
+ <xsl:choose>
820
+ <xsl:when test="../@id">
821
+ <xsl:value-of select="../@id"/>
822
+ </xsl:when>
823
+ <xsl:otherwise>
824
+ <xsl:value-of select="text()"/>
825
+ </xsl:otherwise>
826
+ </xsl:choose>
827
+ </xsl:variable>
828
+
829
+ <xsl:variable name="level">
830
+ <xsl:call-template name="getLevel"/>
831
+ </xsl:variable>
832
+
833
+ <xsl:variable name="font-size">
834
+ <xsl:choose>
835
+ <xsl:when test="$level = 1 and ancestor::un:preface">14pt</xsl:when>
836
+ <xsl:when test="$level = 1 and ancestor::un:annex">12pt</xsl:when>
837
+ <xsl:when test="$level = 2 and ancestor::un:annex">10pt</xsl:when>
838
+ <xsl:when test="$level = 1">14pt</xsl:when>
839
+ <xsl:when test="$level = 2">12pt</xsl:when>
840
+ <xsl:when test="$level = 3">10pt</xsl:when>
841
+ <xsl:otherwise>11pt</xsl:otherwise>
842
+ </xsl:choose>
843
+ </xsl:variable>
844
+
845
+ <xsl:variable name="section">
846
+ <xsl:call-template name="getSection"/>
847
+ </xsl:variable>
848
+
849
+ <xsl:choose>
850
+ <xsl:when test="ancestor::un:preface">
851
+ <fo:block id="{$id}" font-size="{$font-size}" font-weight="bold" margin-top="3pt" margin-bottom="16pt" keep-with-next="always">
852
+ <xsl:apply-templates/>
853
+ </fo:block>
854
+ </xsl:when>
855
+ <xsl:when test="ancestor::un:sections and $level = 1">
856
+ <fo:block-container margin-left="-16mm">
857
+ <fo:block id="{$id}" font-size="{$font-size}" font-weight="bold" margin-left="16mm" space-before="16pt" margin-bottom="13pt" keep-with-next="always">
858
+ <fo:table table-layout="fixed" width="100%">
859
+ <fo:table-column column-width="16mm"/>
860
+ <fo:table-column column-width="130mm"/>
861
+ <fo:table-body>
862
+ <fo:table-row>
863
+ <fo:table-cell>
864
+ <fo:block text-align="center">
865
+ <xsl:value-of select="$section"/>
866
+ </fo:block>
867
+ </fo:table-cell>
868
+ <fo:table-cell>
869
+ <fo:block>
870
+ <xsl:apply-templates/>
871
+ </fo:block>
872
+ </fo:table-cell>
873
+ </fo:table-row>
874
+ </fo:table-body>
875
+ </fo:table>
876
+ </fo:block>
877
+ </fo:block-container>
878
+ </xsl:when>
879
+ <xsl:when test="ancestor::un:sections">
880
+ <fo:block id="{$id}" font-size="{$font-size}" font-weight="bold" space-before="16pt" margin-bottom="13pt" text-indent="-8mm" keep-with-next="always">
881
+ <xsl:if test="$level = 2">
882
+ <xsl:attribute name="margin-left">1mm</xsl:attribute>
883
+ <xsl:attribute name="space-before">12pt</xsl:attribute>
884
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
885
+ </xsl:if>
886
+ <xsl:if test="$level = 3">
887
+ <xsl:attribute name="space-before">12pt</xsl:attribute>
888
+ <xsl:attribute name="margin-left">1mm</xsl:attribute>
889
+ <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
890
+ </xsl:if>
891
+ <fo:list-block provisional-distance-between-starts="8mm">
892
+ <fo:list-item>
893
+ <fo:list-item-label end-indent="label-end()">
894
+ <fo:block>
895
+ <xsl:value-of select="$section"/>
896
+ </fo:block>
897
+ </fo:list-item-label>
898
+ <fo:list-item-body start-indent="body-start()">
899
+ <fo:block>
900
+ <xsl:apply-templates/>
901
+ </fo:block>
902
+ </fo:list-item-body>
903
+ </fo:list-item>
904
+ </fo:list-block>
905
+ </fo:block>
906
+ </xsl:when>
907
+ <xsl:when test="ancestor::un:annex and $level = 1">
908
+ <fo:block id="{$id}" font-size="{$font-size}" font-weight="bold" space-before="3pt" keep-with-next="always">
909
+ <fo:block margin-bottom="18pt">
910
+ <xsl:value-of select="$section"/>
911
+ </fo:block>
912
+ <fo:block margin-bottom="12pt">
913
+ <xsl:apply-templates/>
914
+ </fo:block>
915
+ </fo:block>
916
+ </xsl:when>
917
+ <xsl:when test="ancestor::un:annex and $level &gt;= 2">
918
+ <fo:block id="{$id}" font-size="{$font-size}" font-weight="bold" margin-left="1mm" space-before="3pt" margin-bottom="6pt" keep-with-next="always">
919
+ <xsl:apply-templates/>
920
+ </fo:block>
921
+ </xsl:when>
922
+ <xsl:otherwise>
923
+ <fo:block id="{$id}" font-size="{$font-size}" font-weight="bold" text-align="left" keep-with-next="always">
924
+ <fo:inline><xsl:value-of select="$section"/></fo:inline>
925
+ <xsl:apply-templates/>
926
+ </fo:block>
927
+ </xsl:otherwise>
928
+ </xsl:choose>
929
+ </xsl:template>
930
+
931
+ <!-- ============================ -->
932
+ <!-- for further use -->
933
+ <!-- ============================ -->
934
+ <xsl:template match="un:recommendation">
935
+ <fo:block margin-left="20mm">
936
+ <fo:block font-weight="bold">
937
+ <xsl:text>Recommendation </xsl:text>
938
+ <xsl:choose>
939
+ <xsl:when test="ancestor::un:sections">
940
+ <xsl:number level="any" count="un:sections//un:recommendation"/>
941
+ </xsl:when>
942
+ <xsl:when test="ancestor::*[local-name()='annex']">
943
+ <xsl:variable name="annex-id" select="ancestor::*[local-name()='annex']/@id"/>
944
+ <xsl:number format="A-" count="un:annex"/>
945
+ <xsl:number format="1" level="any" count="un:recommendation[ancestor::un:annex[@id = $annex-id]]"/>
946
+ <!-- <xsl:number format="A-1" level="multiple" count="un:annex | un:recommendation"/> -->
947
+ </xsl:when>
948
+ </xsl:choose>
949
+ <xsl:text>:</xsl:text>
950
+ </fo:block>
951
+ <xsl:apply-templates/>
952
+ </fo:block>
953
+ </xsl:template>
954
+
955
+
956
+ <xsl:template match="un:bibitem">
957
+ <fo:block id="{@id}" margin-top="6pt" margin-left="14mm" text-indent="-14mm">
958
+ <fo:inline padding-right="5mm">[<xsl:value-of select="un:docidentifier"/>]</fo:inline><xsl:value-of select="un:docidentifier"/>
959
+ <xsl:if test="un:title">
960
+ <fo:inline font-style="italic">
961
+ <xsl:text>, </xsl:text>
962
+ <xsl:choose>
963
+ <xsl:when test="un:title[@type = 'main' and @language = 'en']">
964
+ <xsl:value-of select="un:title[@type = 'main' and @language = 'en']"/>
965
+ </xsl:when>
966
+ <xsl:otherwise>
967
+ <xsl:value-of select="un:title"/>
968
+ </xsl:otherwise>
969
+ </xsl:choose>
970
+ </fo:inline>
971
+ </xsl:if>
972
+ <xsl:apply-templates select="un:formattedref"/>
973
+ </fo:block>
974
+ </xsl:template>
975
+ <xsl:template match="un:bibitem/un:docidentifier"/>
976
+
977
+ <xsl:template match="un:bibitem/un:title"/>
978
+
979
+ <xsl:template match="un:formattedref">
980
+ <xsl:text>, </xsl:text><xsl:apply-templates/>
981
+ </xsl:template>
982
+
983
+
984
+ <xsl:template match="*[local-name()='tt']">
985
+ <xsl:variable name="element-name">
986
+ <xsl:choose>
987
+ <xsl:when test="normalize-space(ancestor::un:p[1]//text()[not(parent::un:tt)]) != ''">fo:inline</xsl:when>
988
+ <xsl:otherwise>fo:block</xsl:otherwise>
989
+ </xsl:choose>
990
+ </xsl:variable>
991
+ <xsl:element name="{$element-name}">
992
+ <xsl:attribute name="font-family">Courier</xsl:attribute>
993
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
994
+ <xsl:attribute name="text-align">center</xsl:attribute>
995
+ <xsl:apply-templates/>
996
+ </xsl:element>
997
+ </xsl:template>
998
+
999
+
1000
+ <xsl:template match="un:figure">
1001
+ <fo:block-container id="{@id}">
1002
+ <fo:block>
1003
+ <xsl:apply-templates/>
1004
+ </fo:block>
1005
+ <xsl:if test="un:name">
1006
+ <fo:block text-align="center" margin-bottom="6pt" keep-with-previous="always">
1007
+ <xsl:text>Figure </xsl:text>
1008
+ <xsl:choose>
1009
+ <xsl:when test="ancestor::un:annex">
1010
+ <xsl:choose>
1011
+ <xsl:when test="count(//un:annex) = 1">
1012
+ <xsl:value-of select="/un:un-standard/un:bibdata/un:ext/un:structuredidentifier/un:annexid"/><xsl:number format="-1" level="any" count="un:annex//un:figure"/>
1013
+ </xsl:when>
1014
+ <xsl:otherwise>
1015
+ <xsl:number format="A-1-1" level="multiple" count="un:annex | un:figure"/>
1016
+ </xsl:otherwise>
1017
+ </xsl:choose>
1018
+ </xsl:when>
1019
+ <xsl:when test="ancestor::un:figure">
1020
+ <xsl:for-each select="parent::*[1]">
1021
+ <xsl:number format="1" level="any" count="un:figure[not(parent::un:figure)]"/>
1022
+ </xsl:for-each>
1023
+ <xsl:number format="-a" count="un:figure"/>
1024
+ </xsl:when>
1025
+ <xsl:otherwise>
1026
+ <xsl:number format="1" level="any" count="un:figure[not(parent::un:figure)]"/>
1027
+ </xsl:otherwise>
1028
+ </xsl:choose>
1029
+ <xsl:if test="un:name">
1030
+ <xsl:text>: </xsl:text>
1031
+ <xsl:apply-templates select="un:name" mode="process"/>
1032
+ </xsl:if>
1033
+ </fo:block>
1034
+ </xsl:if>
1035
+
1036
+ <!-- <xsl:call-template name="fn_display_figure"/> -->
1037
+ <xsl:for-each select="un:note//un:p">
1038
+ <xsl:call-template name="note"/>
1039
+ </xsl:for-each>
1040
+ </fo:block-container>
1041
+ </xsl:template>
1042
+
1043
+ <xsl:template match="un:figure/un:name"/>
1044
+ <xsl:template match="un:figure/un:name" mode="process">
1045
+ <xsl:apply-templates/>
1046
+ </xsl:template>
1047
+ <xsl:template match="un:figure/un:fn" priority="2"/>
1048
+ <xsl:template match="un:figure/un:note"/>
1049
+
1050
+
1051
+ <xsl:template match="un:image">
1052
+ <fo:block text-align="center" margin-bottom="12pt" keep-with-next="always" border="2pt solid black">
1053
+ <fo:external-graphic src="{@src}" fox:alt-text="Image" width="100%" content-height="100%" content-width="scale-to-fit" scaling="uniform"/>
1054
+ </fo:block>
1055
+ </xsl:template>
1056
+
1057
+
1058
+ <!-- Examples:
1059
+ [b-ASM] b-ASM, http://www.eecs.umich.edu/gasm/ (accessed 20 March 2018).
1060
+ [b-Börger & Stärk] b-Börger & Stärk, Börger, E., and Stärk, R. S. (2003), Abstract State Machines: A Method for High-Level System Design and Analysis, Springer-Verlag.
1061
+ -->
1062
+ <xsl:template match="un:annex//un:bibitem">
1063
+ <fo:block id="{@id}" margin-top="6pt" margin-left="12mm" text-indent="-12mm">
1064
+ <xsl:if test="un:formattedref">
1065
+ <xsl:choose>
1066
+ <xsl:when test="un:docidentifier[@type = 'metanorma']">
1067
+ <xsl:attribute name="margin-left">0</xsl:attribute>
1068
+ <xsl:attribute name="text-indent">0</xsl:attribute>
1069
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1070
+ <!-- create list -->
1071
+ <fo:list-block>
1072
+ <fo:list-item>
1073
+ <fo:list-item-label end-indent="label-end()">
1074
+ <fo:block>
1075
+ <xsl:apply-templates select="un:docidentifier[@type = 'metanorma']" mode="process"/>
1076
+ </fo:block>
1077
+ </fo:list-item-label>
1078
+ <fo:list-item-body start-indent="body-start()">
1079
+ <fo:block margin-left="3mm">
1080
+ <xsl:apply-templates select="un:formattedref"/>
1081
+ </fo:block>
1082
+ </fo:list-item-body>
1083
+ </fo:list-item>
1084
+ </fo:list-block>
1085
+ </xsl:when>
1086
+ <xsl:otherwise>
1087
+ <xsl:apply-templates select="un:formattedref"/>
1088
+ <xsl:apply-templates select="un:docidentifier[@type != 'metanorma' or not(@type)]" mode="process"/>
1089
+ </xsl:otherwise>
1090
+ </xsl:choose>
1091
+ </xsl:if>
1092
+ <xsl:if test="un:title">
1093
+ <xsl:for-each select="un:contributor">
1094
+ <xsl:value-of select="un:organization/un:name"/>
1095
+ <xsl:if test="position() != last()">, </xsl:if>
1096
+ </xsl:for-each>
1097
+ <xsl:text> (</xsl:text>
1098
+ <xsl:variable name="date">
1099
+ <xsl:choose>
1100
+ <xsl:when test="un:date[@type='issued']">
1101
+ <xsl:value-of select="un:date[@type='issued']/un:on"/>
1102
+ </xsl:when>
1103
+ <xsl:otherwise>
1104
+ <xsl:value-of select="un:date/un:on"/>
1105
+ </xsl:otherwise>
1106
+ </xsl:choose>
1107
+ </xsl:variable>
1108
+ <xsl:value-of select="$date"/>
1109
+ <xsl:text>) </xsl:text>
1110
+ <fo:inline font-style="italic"><xsl:value-of select="un:title"/></fo:inline>
1111
+ <xsl:if test="un:contributor[un:role/@type='publisher']/un:organization/un:name">
1112
+ <xsl:text> (</xsl:text><xsl:value-of select="un:contributor[un:role/@type='publisher']/un:organization/un:name"/><xsl:text>)</xsl:text>
1113
+ </xsl:if>
1114
+ <xsl:text>, </xsl:text>
1115
+ <xsl:value-of select="$date"/>
1116
+ <xsl:text>. </xsl:text>
1117
+ <xsl:value-of select="un:docidentifier"/>
1118
+ <xsl:value-of select="$linebreak"/>
1119
+ <xsl:value-of select="un:uri"/>
1120
+ </xsl:if>
1121
+ </fo:block>
1122
+ </xsl:template>
1123
+
1124
+ <xsl:template match="un:annex//un:bibitem//un:formattedref">
1125
+ <xsl:apply-templates/>
1126
+ </xsl:template>
1127
+
1128
+ <xsl:template match="un:docidentifier[@type = 'metanorma']" mode="process">
1129
+ <xsl:apply-templates/>
1130
+ </xsl:template>
1131
+ <xsl:template match="un:docidentifier[@type != 'metanorma' or not(@type)]" mode="process">
1132
+ <xsl:text> [</xsl:text><xsl:apply-templates/><xsl:text>]</xsl:text>
1133
+ </xsl:template>
1134
+ <xsl:template match="un:docidentifier"/>
1135
+
1136
+ <xsl:template match="un:note/un:p | un:annex//un:note/un:p" name="note">
1137
+ <fo:block font-size="10pt" space-after="12pt" text-indent="0">
1138
+ <fo:inline padding-right="4mm"><xsl:text>NOTE </xsl:text>
1139
+ <xsl:if test="../following-sibling::un:note or ../preceding-sibling::un:note">
1140
+ <xsl:number count="un:note"/><xsl:text> </xsl:text>
1141
+ </xsl:if>
1142
+ </fo:inline>
1143
+ <xsl:apply-templates/>
1144
+ </fo:block>
1145
+ </xsl:template>
1146
+
1147
+ <xsl:template match="un:termnote">
1148
+ <fo:block margin-top="4pt">
1149
+ <xsl:text>NOTE </xsl:text>
1150
+ <xsl:if test="following-sibling::un:termnote or preceding-sibling::un:termnote">
1151
+ <xsl:number/><xsl:text> </xsl:text>
1152
+ </xsl:if>
1153
+ <xsl:text>– </xsl:text>
1154
+ <xsl:apply-templates/>
1155
+ </fo:block>
1156
+ </xsl:template>
1157
+
1158
+ <xsl:template match="un:termnote/un:p">
1159
+ <xsl:apply-templates/>
1160
+ </xsl:template>
1161
+
1162
+
1163
+ <xsl:template match="un:formula" name="formula">
1164
+ <fo:block id="{@id}" margin-top="6pt">
1165
+ <fo:table table-layout="fixed" width="100%">
1166
+ <fo:table-column column-width="95%"/>
1167
+ <fo:table-column column-width="5%"/>
1168
+ <fo:table-body>
1169
+ <fo:table-row>
1170
+ <fo:table-cell>
1171
+ <fo:block text-align="center">
1172
+ <xsl:if test="ancestor::un:annex">
1173
+ <xsl:attribute name="text-align">left</xsl:attribute>
1174
+ <xsl:attribute name="margin-left">7mm</xsl:attribute>
1175
+ </xsl:if>
1176
+ <xsl:apply-templates/>
1177
+ </fo:block>
1178
+ </fo:table-cell>
1179
+ <fo:table-cell> <!-- display-align="center" -->
1180
+ <fo:block text-align="right">
1181
+ <xsl:if test="not(ancestor::un:annex)">
1182
+ <xsl:text>(</xsl:text><xsl:number level="any"/><xsl:text>)</xsl:text>
1183
+ </xsl:if>
1184
+ <xsl:if test="ancestor::un:annex">
1185
+ <xsl:variable name="annex-id" select="ancestor::un:annex/@id"/>
1186
+ <xsl:text>(</xsl:text>
1187
+ <xsl:number format="A-" count="un:annex"/>
1188
+ <xsl:number format="1" level="any" count="un:formula[ancestor::un:annex[@id = $annex-id]]"/>
1189
+ <xsl:text>)</xsl:text>
1190
+ </xsl:if>
1191
+ </fo:block>
1192
+ </fo:table-cell>
1193
+ </fo:table-row>
1194
+ </fo:table-body>
1195
+ </fo:table>
1196
+ <fo:inline keep-together.within-line="always">
1197
+ </fo:inline>
1198
+ </fo:block>
1199
+ </xsl:template>
1200
+
1201
+ <xsl:template match="un:formula" mode="process">
1202
+ <xsl:call-template name="formula"/>
1203
+ </xsl:template>
1204
+
1205
+ <xsl:template match="un:example">
1206
+ <fo:block id="{@id}" font-size="10pt" font-weight="bold" margin-bottom="12pt">EXAMPLE</fo:block>
1207
+ <fo:block font-size="11pt" margin-top="12pt" margin-bottom="12pt" margin-left="15mm">
1208
+ <xsl:apply-templates/>
1209
+ </fo:block>
1210
+ </xsl:template>
1211
+ <xsl:template match="un:example/un:p">
1212
+ <xsl:variable name="num"><xsl:number/></xsl:variable>
1213
+ <fo:block margin-bottom="12pt">
1214
+ <xsl:if test="$num = 1">
1215
+ <xsl:attribute name="margin-left">5mm</xsl:attribute>
1216
+ </xsl:if>
1217
+ <xsl:apply-templates/>
1218
+ </fo:block>
1219
+ </xsl:template>
1220
+
1221
+ <xsl:template match="un:eref">
1222
+ <!-- <fo:inline color="blue"> -->
1223
+ <fo:basic-link internal-destination="{@bibitemid}" color="blue" fox:alt-text="{@citeas}">
1224
+ <xsl:if test="@type = 'footnote'">
1225
+ <xsl:attribute name="keep-together.within-line">always</xsl:attribute>
1226
+ <xsl:attribute name="font-size">80%</xsl:attribute>
1227
+ <xsl:attribute name="keep-with-previous.within-line">always</xsl:attribute>
1228
+ <xsl:attribute name="vertical-align">super</xsl:attribute>
1229
+ </xsl:if>
1230
+ <xsl:if test="@type = 'inline'">
1231
+ <xsl:attribute name="text-decoration">underline</xsl:attribute>
1232
+ </xsl:if>
1233
+ <xsl:text>[</xsl:text><xsl:value-of select="@citeas" disable-output-escaping="yes"/><xsl:text>]</xsl:text>
1234
+ <xsl:if test="un:locality">
1235
+ <xsl:text>, </xsl:text>
1236
+ <xsl:choose>
1237
+ <xsl:when test="un:locality/@type = 'section'">Section </xsl:when>
1238
+ <xsl:when test="un:locality/@type = 'clause'">Clause </xsl:when>
1239
+ <xsl:otherwise/>
1240
+ </xsl:choose>
1241
+ <xsl:apply-templates select="un:locality"/>
1242
+ </xsl:if>
1243
+ </fo:basic-link>
1244
+ <!-- </fo:inline> -->
1245
+ </xsl:template>
1246
+
1247
+
1248
+ <xsl:template match="un:terms[un:term[un:preferred and un:definition]]">
1249
+ <fo:block id="{@id}">
1250
+ <fo:table width="100%" table-layout="fixed">
1251
+ <fo:table-column column-width="22%"/>
1252
+ <fo:table-column column-width="78%"/>
1253
+ <fo:table-body>
1254
+ <xsl:apply-templates mode="table"/>
1255
+ </fo:table-body>
1256
+ </fo:table>
1257
+ </fo:block>
1258
+ </xsl:template>
1259
+ <xsl:template match="un:term" mode="table">
1260
+ <fo:table-row>
1261
+ <fo:table-cell padding-right="1mm">
1262
+ <fo:block margin-bottom="12pt">
1263
+ <xsl:apply-templates select="un:preferred"/>
1264
+ </fo:block>
1265
+ </fo:table-cell>
1266
+ <fo:table-cell>
1267
+ <fo:block margin-bottom="12pt">
1268
+ <xsl:apply-templates select="un:*[local-name(.) != 'preferred']"/>
1269
+ </fo:block>
1270
+ </fo:table-cell>
1271
+ </fo:table-row>
1272
+ </xsl:template>
1273
+ <xsl:template match="un:preferred">
1274
+ <fo:inline id="{../@id}">
1275
+ <xsl:apply-templates/>
1276
+ </fo:inline>
1277
+ </xsl:template>
1278
+ <xsl:template match="un:definition/un:p">
1279
+ <fo:block>
1280
+ <xsl:apply-templates/>
1281
+ </fo:block>
1282
+ </xsl:template>
1283
+
1284
+ <xsl:template match="un:errata">
1285
+ <!-- <row>
1286
+ <date>05-07-2013</date>
1287
+ <type>Editorial</type>
1288
+ <change>Changed CA-9 Priority Code from P1 to P2 in <xref target="tabled2"/>.</change>
1289
+ <pages>D-3</pages>
1290
+ </row>
1291
+ -->
1292
+ <fo:table table-layout="fixed" width="100%" font-size="10pt" border="1pt solid black">
1293
+ <fo:table-column column-width="20mm"/>
1294
+ <fo:table-column column-width="23mm"/>
1295
+ <fo:table-column column-width="107mm"/>
1296
+ <fo:table-column column-width="15mm"/>
1297
+ <fo:table-body>
1298
+ <fo:table-row font-family="Arial" text-align="center" font-weight="bold" background-color="black" color="white">
1299
+ <fo:table-cell border="1pt solid black"><fo:block>Date</fo:block></fo:table-cell>
1300
+ <fo:table-cell border="1pt solid black"><fo:block>Type</fo:block></fo:table-cell>
1301
+ <fo:table-cell border="1pt solid black"><fo:block>Change</fo:block></fo:table-cell>
1302
+ <fo:table-cell border="1pt solid black"><fo:block>Pages</fo:block></fo:table-cell>
1303
+ </fo:table-row>
1304
+ <xsl:apply-templates/>
1305
+ </fo:table-body>
1306
+ </fo:table>
1307
+ </xsl:template>
1308
+
1309
+ <xsl:template match="un:errata/un:row">
1310
+ <fo:table-row>
1311
+ <xsl:apply-templates/>
1312
+ </fo:table-row>
1313
+ </xsl:template>
1314
+
1315
+ <xsl:template match="un:errata/un:row/*">
1316
+ <fo:table-cell border="1pt solid black" padding-left="1mm" padding-top="0.5mm">
1317
+ <fo:block><xsl:apply-templates/></fo:block>
1318
+ </fo:table-cell>
1319
+ </xsl:template>
1320
+
1321
+ <xsl:template match="un:quote">
1322
+ <fo:block-container margin-left="7mm" margin-right="7mm">
1323
+ <xsl:apply-templates/>
1324
+ <xsl:apply-templates select="un:author" mode="process"/>
1325
+ </fo:block-container>
1326
+ </xsl:template>
1327
+
1328
+ <xsl:template match="un:quote/un:author"/>
1329
+ <xsl:template match="un:quote/un:p">
1330
+ <fo:block text-align="justify" margin-bottom="12pt">
1331
+ <xsl:apply-templates/>
1332
+ </fo:block>
1333
+ </xsl:template>
1334
+ <xsl:template match="un:quote/un:author" mode="process">
1335
+ <fo:block text-align="right" margin-left="0.5in" margin-right="0.5in">
1336
+ <fo:inline>— </fo:inline>
1337
+ <xsl:apply-templates/>
1338
+ </fo:block>
1339
+ </xsl:template>
1340
+
1341
+ <xsl:template match="un:sourcecode">
1342
+ <fo:block font-family="Courier" font-size="10pt" margin-top="6pt" margin-bottom="6pt">
1343
+ <xsl:attribute name="white-space">pre</xsl:attribute>
1344
+ <xsl:attribute name="wrap-option">wrap</xsl:attribute>
1345
+ <xsl:apply-templates/>
1346
+ </fo:block>
1347
+ </xsl:template>
1348
+
1349
+ <xsl:template match="un:references">
1350
+ <fo:block>
1351
+ <xsl:if test="not(un:title)">
1352
+ <xsl:attribute name="id"><xsl:value-of select="@id"/></xsl:attribute>
1353
+ </xsl:if>
1354
+ <xsl:apply-templates/>
1355
+ </fo:block>
1356
+ </xsl:template>
1357
+
1358
+ <xsl:template match="un:dl" priority="2">
1359
+ <fo:block line-height="122%" margin-bottom="6pt">
1360
+ <xsl:apply-templates/>
1361
+ </fo:block>
1362
+ </xsl:template>
1363
+
1364
+ <xsl:template match="un:dt" priority="2">
1365
+ <fo:block margin-bottom="6pt">
1366
+ <xsl:apply-templates/>
1367
+ <xsl:apply-templates select="following-sibling::un:dd[1]" mode="dd"/>
1368
+ </fo:block>
1369
+ </xsl:template>
1370
+
1371
+ <xsl:template match="un:dd"/>
1372
+ <xsl:template match="un:dd" mode="dd">
1373
+ <fo:inline><xsl:apply-templates/></fo:inline>
1374
+ </xsl:template>
1375
+
1376
+ <xsl:template match="un:dd//un:p">
1377
+ <fo:inline><xsl:apply-templates/></fo:inline>
1378
+ </xsl:template>
1379
+ <!-- ============================ -->
1380
+ <!-- ============================ -->
1381
+
1382
+ <xsl:template name="insertHeaderFooter">
1383
+ <fo:static-content flow-name="header-odd">
1384
+ <fo:block-container height="25mm" display-align="after" border-bottom="0.5pt solid black" margin-left="-20.5mm" margin-right="-20.5mm">
1385
+ <fo:block font-size="9pt" font-weight="bold" text-align="right" margin-left="21mm" margin-right="21mm" padding-bottom="0.5mm">
1386
+ <xsl:value-of select="$id"/>
1387
+ </fo:block>
1388
+ </fo:block-container>
1389
+ </fo:static-content>
1390
+ <fo:static-content flow-name="footer-odd">
1391
+ <fo:block-container height="40mm" margin-left="-20.5mm" margin-right="-20.5mm">
1392
+ <fo:block font-size="9pt" font-weight="bold" text-align="right" margin-left="21mm" margin-right="21mm" padding-top="12mm"><fo:page-number/></fo:block>
1393
+ </fo:block-container>
1394
+ </fo:static-content>
1395
+ <fo:static-content flow-name="header-even">
1396
+ <fo:block-container height="25mm" display-align="after" border-bottom="0.5pt solid black" margin-left="-20.5mm" margin-right="-20.5mm">
1397
+ <fo:block font-size="9pt" font-weight="bold" margin-left="21mm" margin-right="21mm" padding-bottom="0.5mm">
1398
+ <xsl:value-of select="$id"/>
1399
+ </fo:block>
1400
+ </fo:block-container>
1401
+ </fo:static-content>
1402
+ <fo:static-content flow-name="footer-even">
1403
+ <fo:block-container height="40mm" margin-left="-20.5mm" margin-right="-20.5mm">
1404
+ <fo:block font-size="9pt" font-weight="bold" margin-left="21mm" margin-right="21mm" padding-top="12mm"><fo:page-number/></fo:block>
1405
+ </fo:block-container>
1406
+ </fo:static-content>
1407
+ </xsl:template>
1408
+
1409
+
1410
+ <xsl:template name="getLevel">
1411
+ <xsl:variable name="level_total" select="count(ancestor::*)"/>
1412
+ <xsl:variable name="level">
1413
+ <xsl:choose>
1414
+ <xsl:when test="ancestor::un:preface">
1415
+ <xsl:value-of select="$level_total - 2"/>
1416
+ </xsl:when>
1417
+ <xsl:when test="ancestor::un:sections">
1418
+ <xsl:value-of select="$level_total - 2"/>
1419
+ </xsl:when>
1420
+ <xsl:when test="ancestor::un:bibliography">
1421
+ <xsl:value-of select="$level_total - 2"/>
1422
+ </xsl:when>
1423
+ <xsl:when test="local-name(ancestor::*[1]) = 'annex'">1</xsl:when>
1424
+ <xsl:otherwise>
1425
+ <xsl:value-of select="$level_total - 1"/>
1426
+ </xsl:otherwise>
1427
+ </xsl:choose>
1428
+ </xsl:variable>
1429
+ <xsl:value-of select="$level"/>
1430
+ </xsl:template>
1431
+
1432
+ <xsl:template name="getSection">
1433
+ <xsl:variable name="level">
1434
+ <xsl:call-template name="getLevel"/>
1435
+ </xsl:variable>
1436
+
1437
+ <xsl:variable name="section">
1438
+ <xsl:choose>
1439
+
1440
+ <xsl:when test="ancestor::un:sections">
1441
+ <!-- 1, 2, 3, 4, ... from main section (not annex ...) -->
1442
+ <xsl:choose>
1443
+ <xsl:when test="$level = 1">
1444
+ <xsl:number format="I." count="//un:sections/un:clause"/>
1445
+ </xsl:when>
1446
+ <xsl:when test="$level = 2">
1447
+ <xsl:number format="A." count="//un:sections/un:clause/un:clause[un:title]"/>
1448
+ </xsl:when>
1449
+ <xsl:when test="$level &gt;= 3">
1450
+ <xsl:number format="1." count="//un:sections/un:clause/un:clause/un:clause[un:title]"/>
1451
+ </xsl:when>
1452
+ <xsl:otherwise>
1453
+ </xsl:otherwise>
1454
+ </xsl:choose>
1455
+ </xsl:when>
1456
+ <xsl:when test="ancestor::un:annex">
1457
+ <xsl:choose>
1458
+ <xsl:when test="$level = 1">
1459
+ <xsl:choose>
1460
+ <xsl:when test="local-name() = 'title'">
1461
+ <xsl:text>ANNEX </xsl:text>
1462
+ <xsl:number format="A" level="any" count="un:annex"/>
1463
+ </xsl:when>
1464
+ <xsl:otherwise>Annex</xsl:otherwise>
1465
+ </xsl:choose>
1466
+ </xsl:when>
1467
+ <xsl:otherwise>
1468
+ <xsl:variable name="annex_id" select="ancestor::un:annex/@id"/>
1469
+ <xsl:number format="1." count="//un:annex[@id = $annex_id]/un:clause[un:title]"/>
1470
+ </xsl:otherwise>
1471
+ </xsl:choose>
1472
+ </xsl:when>
1473
+ <xsl:otherwise>
1474
+ </xsl:otherwise>
1475
+ </xsl:choose>
1476
+ </xsl:variable>
1477
+ <xsl:value-of select="$section"/>
1478
+ </xsl:template>
1479
+
1480
+ <xsl:template name="number-to-words">
1481
+ <xsl:param name="number"/>
1482
+ <xsl:param name="first"/>
1483
+ <xsl:if test="$number != ''">
1484
+ <xsl:variable name="words">
1485
+ <words>
1486
+ <word cardinal="1">one-</word>
1487
+ <word ordinal="1">first </word>
1488
+ <word cardinal="2">two-</word>
1489
+ <word ordinal="2">second </word>
1490
+ <word cardinal="3">three-</word>
1491
+ <word ordinal="3">third </word>
1492
+ <word cardinal="4">four-</word>
1493
+ <word ordinal="4">fourth </word>
1494
+ <word cardinal="5">five-</word>
1495
+ <word ordinal="5">fifth </word>
1496
+ <word cardinal="6">six-</word>
1497
+ <word ordinal="6">sixth </word>
1498
+ <word cardinal="7">seven-</word>
1499
+ <word ordinal="7">seventh </word>
1500
+ <word cardinal="8">eight-</word>
1501
+ <word ordinal="8">eighth </word>
1502
+ <word cardinal="9">nine-</word>
1503
+ <word ordinal="9">ninth </word>
1504
+ <word ordinal="10">tenth </word>
1505
+ <word ordinal="11">eleventh </word>
1506
+ <word ordinal="12">twelfth </word>
1507
+ <word ordinal="13">thirteenth </word>
1508
+ <word ordinal="14">fourteenth </word>
1509
+ <word ordinal="15">fifteenth </word>
1510
+ <word ordinal="16">sixteenth </word>
1511
+ <word ordinal="17">seventeenth </word>
1512
+ <word ordinal="18">eighteenth </word>
1513
+ <word ordinal="19">nineteenth </word>
1514
+ <word cardinal="20">twenty-</word>
1515
+ <word ordinal="20">twentieth </word>
1516
+ <word cardinal="30">thirty-</word>
1517
+ <word ordinal="30">thirtieth </word>
1518
+ <word cardinal="40">forty-</word>
1519
+ <word ordinal="40">fortieth </word>
1520
+ <word cardinal="50">fifty-</word>
1521
+ <word ordinal="50">fiftieth </word>
1522
+ <word cardinal="60">sixty-</word>
1523
+ <word ordinal="60">sixtieth </word>
1524
+ <word cardinal="70">seventy-</word>
1525
+ <word ordinal="70">seventieth </word>
1526
+ <word cardinal="80">eighty-</word>
1527
+ <word ordinal="80">eightieth </word>
1528
+ <word cardinal="90">ninety-</word>
1529
+ <word ordinal="90">ninetieth </word>
1530
+ <word cardinal="100">hundred-</word>
1531
+ <word ordinal="100">hundredth </word>
1532
+ </words>
1533
+ </xsl:variable>
1534
+
1535
+ <xsl:variable name="ordinal" select="xalan:nodeset($words)//word[@ordinal = $number]/text()"/>
1536
+
1537
+ <xsl:variable name="value">
1538
+ <xsl:choose>
1539
+ <xsl:when test="$ordinal != ''">
1540
+ <xsl:value-of select="$ordinal"/>
1541
+ </xsl:when>
1542
+ <xsl:otherwise>
1543
+ <xsl:choose>
1544
+ <xsl:when test="$number &lt; 100">
1545
+ <xsl:variable name="decade" select="concat(substring($number,1,1), '0')"/>
1546
+ <xsl:variable name="digit" select="substring($number,2)"/>
1547
+ <xsl:value-of select="xalan:nodeset($words)//word[@cardinal = $decade]/text()"/>
1548
+ <xsl:value-of select="xalan:nodeset($words)//word[@ordinal = $digit]/text()"/>
1549
+ </xsl:when>
1550
+ <xsl:otherwise>
1551
+ <!-- more 100 -->
1552
+ <xsl:variable name="hundred" select="substring($number,1,1)"/>
1553
+ <xsl:variable name="digits" select="number(substring($number,2))"/>
1554
+ <xsl:value-of select="xalan:nodeset($words)//word[@cardinal = $hundred]/text()"/>
1555
+ <xsl:value-of select="xalan:nodeset($words)//word[@cardinal = '100']/text()"/>
1556
+ <xsl:call-template name="number-to-words">
1557
+ <xsl:with-param name="number" select="$digits"/>
1558
+ </xsl:call-template>
1559
+ </xsl:otherwise>
1560
+ </xsl:choose>
1561
+ </xsl:otherwise>
1562
+ </xsl:choose>
1563
+ </xsl:variable>
1564
+ <xsl:choose>
1565
+ <xsl:when test="$first = 'true'">
1566
+ <xsl:value-of select="translate(substring($value, 1, 1), $lower, $upper)"/><xsl:value-of select="substring($value, 2)"/>
1567
+ </xsl:when>
1568
+ <xsl:otherwise>
1569
+ <xsl:value-of select="$value"/>
1570
+ </xsl:otherwise>
1571
+ </xsl:choose>
1572
+ </xsl:if>
1573
+ </xsl:template>
1574
+
1575
+ <!-- convert YYYY-MM-DD to (Month YYYY) -->
1576
+ <xsl:template name="formatDate">
1577
+ <xsl:param name="date"/>
1578
+ <xsl:variable name="year" select="substring($date, 1, 4)"/>
1579
+ <xsl:variable name="month" select="substring($date, 6, 2)"/>
1580
+ <xsl:variable name="day" select="number(substring($date, 9))"/>
1581
+ <xsl:variable name="monthStr">
1582
+ <xsl:choose>
1583
+ <xsl:when test="$month = '01'">January</xsl:when>
1584
+ <xsl:when test="$month = '02'">February</xsl:when>
1585
+ <xsl:when test="$month = '03'">March</xsl:when>
1586
+ <xsl:when test="$month = '04'">April</xsl:when>
1587
+ <xsl:when test="$month = '05'">May</xsl:when>
1588
+ <xsl:when test="$month = '06'">June</xsl:when>
1589
+ <xsl:when test="$month = '07'">July</xsl:when>
1590
+ <xsl:when test="$month = '08'">August</xsl:when>
1591
+ <xsl:when test="$month = '09'">September</xsl:when>
1592
+ <xsl:when test="$month = '10'">October</xsl:when>
1593
+ <xsl:when test="$month = '11'">November</xsl:when>
1594
+ <xsl:when test="$month = '12'">December</xsl:when>
1595
+ </xsl:choose>
1596
+ </xsl:variable>
1597
+ <xsl:variable name="result" select="normalize-space(concat($day, ' ', $monthStr, ' ', $year))"/>
1598
+ <xsl:value-of select="$result"/>
1599
+ </xsl:template>
1600
+
1601
+ <xsl:template name="getLanguage">
1602
+ <xsl:param name="lang"/>
1603
+ <xsl:variable name="language" select="translate($lang, $upper, $lower)"/>
1604
+ <xsl:choose>
1605
+ <xsl:when test="$language = 'en'">English</xsl:when>
1606
+ <xsl:when test="$language = 'de'">Deutsch</xsl:when>
1607
+ <xsl:when test="$language = 'cn'">Chinese</xsl:when>
1608
+ <xsl:otherwise><xsl:value-of select="$language"/></xsl:otherwise>
1609
+ </xsl:choose>
1610
+ </xsl:template>
1611
+
1612
+ <xsl:variable name="Image-Logo">
1613
+ <xsl:text>
1614
+ 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
1662
+ BY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl
1663
+ /erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz
1664
+ /GMzLdsAADsgaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7
1665
+ vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9
1666
+ ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjYtYzAxNCA3OS4x
1667
+ NTY3OTcsIDIwMTQvMDgvMjAtMDk6NTM6MDIgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5z
1668
+ OnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAg
1669
+ ICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnht
1670
+ cD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9
1671
+ Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczpw
1672
+ aG90b3Nob3A9Imh0dHA6Ly9ucy5hZG9iZS5jb20vcGhvdG9zaG9wLzEuMC8iCiAgICAgICAg
1673
+ ICAgIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIgogICAg
1674
+ ICAgICAgICB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBl
1675
+ L1Jlc291cmNlRXZlbnQjIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRv
1676
+ YmUuY29tL3RpZmYvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZXhpZj0iaHR0cDovL25zLmFk
1677
+ b2JlLmNvbS9leGlmLzEuMC8iPgogICAgICAgICA8eG1wOkNyZWF0b3JUb29sPkFkb2JlIFBo
1678
+ b3Rvc2hvcCBDQyAyMDE0IChXaW5kb3dzKTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8
1679
+ eG1wOkNyZWF0ZURhdGU+MjAyMC0wMy0yNVQyMTowNTo0MSswMzowMDwveG1wOkNyZWF0ZURh
1680
+ dGU+CiAgICAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDIwLTAzLTI1VDIxOjA3OjQzKzAzOjAw
1681
+ PC94bXA6TW9kaWZ5RGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAyMC0wMy0y
1682
+ NVQyMTowNzo0MyswMzowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPGRjOmZvcm1h
1683
+ dD5pbWFnZS9wbmc8L2RjOmZvcm1hdD4KICAgICAgICAgPHBob3Rvc2hvcDpDb2xvck1vZGU+
1684
+ MzwvcGhvdG9zaG9wOkNvbG9yTW9kZT4KICAgICAgICAgPHBob3Rvc2hvcDpJQ0NQcm9maWxl
1685
+ PnNSR0IgSUVDNjE5NjYtMi4xPC9waG90b3Nob3A6SUNDUHJvZmlsZT4KICAgICAgICAgPHht
1686
+ cE1NOkluc3RhbmNlSUQ+eG1wLmlpZDpjMTQ1NzAyOS1iYTI0LWIwNDYtYmU5NC0wOTY5ZDRk
1687
+ OGRkNTE8L3htcE1NOkluc3RhbmNlSUQ+CiAgICAgICAgIDx4bXBNTTpEb2N1bWVudElEPmFk
1688
+ b2JlOmRvY2lkOnBob3Rvc2hvcDo4NWRmOTdiMi02ZWMzLTExZWEtOGRjNC1kOTAxZWM0NGU2
1689
+ YWM8L3htcE1NOkRvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpPcmlnaW5hbERvY3VtZW50
1690
+ SUQ+eG1wLmRpZDo3NTMzOTU5ZS1hYzZjLTQwNGYtOWZlNi0wZDg0ZGNkOGRkZGQ8L3htcE1N
1691
+ Ok9yaWdpbmFsRG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOkhpc3Rvcnk+CiAgICAgICAg
1692
+ ICAgIDxyZGY6U2VxPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJl
1693
+ c291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jcmVhdGVkPC9zdEV2
1694
+ dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6
1695
+ NzUzMzk1OWUtYWM2Yy00MDRmLTlmZTYtMGQ4NGRjZDhkZGRkPC9zdEV2dDppbnN0YW5jZUlE
1696
+ PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDIwLTAzLTI1VDIxOjA1OjQxKzAz
1697
+ OjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2Vu
1698
+ dD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxNCAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdl
1699
+ bnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJk
1700
+ ZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlv
1701
+ bj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBh
1702
+ cmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdl
1703
+ L3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAg
1704
+ ICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAg
1705
+ ICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAg
1706
+ ICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6YzE0NTcwMjktYmEyNC1iMDQ2LWJl
1707
+ OTQtMDk2OWQ0ZDhkZDUxPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8
1708
+ c3RFdnQ6d2hlbj4yMDIwLTAzLTI1VDIxOjA3OjQzKzAzOjAwPC9zdEV2dDp3aGVuPgogICAg
1709
+ ICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ0Mg
1710
+ MjAxNCAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAg
1711
+ IDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRm
1712
+ OmxpPgogICAgICAgICAgICA8L3JkZjpTZXE+CiAgICAgICAgIDwveG1wTU06SGlzdG9yeT4K
1713
+ ICAgICAgICAgPHRpZmY6T3JpZW50YXRpb24+MTwvdGlmZjpPcmllbnRhdGlvbj4KICAgICAg
1714
+ ICAgPHRpZmY6WFJlc29sdXRpb24+MzAwMDAwMC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4K
1715
+ ICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+MzAwMDAwMC8xMDAwMDwvdGlmZjpZUmVzb2x1
1716
+ dGlvbj4KICAgICAgICAgPHRpZmY6UmVzb2x1dGlvblVuaXQ+MjwvdGlmZjpSZXNvbHV0aW9u
1717
+ VW5pdD4KICAgICAgICAgPGV4aWY6Q29sb3JTcGFjZT4xPC9leGlmOkNvbG9yU3BhY2U+CiAg
1718
+ ICAgICAgIDxleGlmOlBpeGVsWERpbWVuc2lvbj4yMjU8L2V4aWY6UGl4ZWxYRGltZW5zaW9u
1719
+ PgogICAgICAgICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+MTgwPC9leGlmOlBpeGVsWURpbWVu
1720
+ c2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1l
1721
+ dGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1722
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAg
1723
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1724
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAg
1725
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1726
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAg
1727
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1728
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAg
1729
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1730
+ ICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1731
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1732
+ ICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1733
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1734
+ ICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1735
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1736
+ IAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1737
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAg
1738
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1739
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAg
1740
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1741
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAg
1742
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1743
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAg
1744
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1745
+ ICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1746
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1747
+ ICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1748
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1749
+ ICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1750
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAK
1751
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1752
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAg
1753
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1754
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAg
1755
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1756
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAg
1757
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1758
+ ICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
1759
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1760
+ ICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1761
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1762
+ ICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1763
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1764
+ ICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1765
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAg
1766
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1767
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAg
1768
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1769
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAg
1770
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1771
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAg
1772
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1773
+ ICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1774
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1775
+ ICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1776
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1777
+ ICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1778
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1779
+ ICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1780
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAg
1781
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1782
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAg
1783
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1784
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAg
1785
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1786
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAg
1787
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1788
+ ICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1789
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1790
+ ICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1791
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1792
+ ICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1793
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1794
+ CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1795
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAg
1796
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1797
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAg
1798
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1799
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAg
1800
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1801
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAg
1802
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1803
+ ICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1804
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1805
+ ICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1806
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1807
+ ICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1808
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAog
1809
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1810
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAg
1811
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1812
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAg
1813
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1814
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAg
1815
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1816
+ ICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1817
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1818
+ ICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1819
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1820
+ ICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1821
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1822
+ ICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1823
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAg
1824
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1825
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAg
1826
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1827
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAg
1828
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1829
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAg
1830
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1831
+ ICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1832
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1833
+ ICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1834
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1835
+ ICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1836
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1837
+ IAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1838
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAg
1839
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1840
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAg
1841
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1842
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAg
1843
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1844
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAg
1845
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1846
+ ICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1847
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1848
+ ICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1849
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1850
+ ICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1851
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAK
1852
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1853
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAg
1854
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1855
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAg
1856
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1857
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAg
1858
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1859
+ ICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
1860
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1861
+ ICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1862
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1863
+ ICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1864
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1865
+ ICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1866
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAg
1867
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1868
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAg
1869
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1870
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAg
1871
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1872
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAg
1873
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1874
+ ICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1875
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1876
+ ICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1877
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1878
+ ICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1879
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1880
+ ICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1881
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAg
1882
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1883
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAg
1884
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1885
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAg
1886
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1887
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAg
1888
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1889
+ ICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1890
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1891
+ ICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1892
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1893
+ ICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1894
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1895
+ CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1896
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAg
1897
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1898
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAg
1899
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1900
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAg
1901
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1902
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAg
1903
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1904
+ ICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1905
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1906
+ ICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1907
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1908
+ ICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1909
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAog
1910
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1911
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAg
1912
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1913
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAg
1914
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1915
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAg
1916
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1917
+ ICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1918
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1919
+ ICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1920
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1921
+ ICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1922
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1923
+ ICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1924
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAg
1925
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1926
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAg
1927
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1928
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAg
1929
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1930
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAg
1931
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1932
+ ICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1933
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1934
+ ICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1935
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1936
+ ICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1937
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1938
+ IAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1939
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAg
1940
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1941
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAg
1942
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
1943
+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAg
1944
+ ICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4xznjNAAAAIGNIUk0AAHolAACAgwAA+f8A
1945
+ AIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAFWJSURBVHja7F1nWBVHFz50sCCxghUFFOzG2EuI
1946
+ BTti7OKnRI01xhrFEmOMRmOP3aixE1vsGmOvKMaCqNhQUBBBUBAREYTz/di5uHd2Zsu9l2LC
1947
+ eZ55Ermzs7Ozc3ZmznnPe8wgX/K6FAUAJwAoAQAFAcAaAIoAgA0A2FF13wHAKwBIJP99BQDx
1948
+ APAcADLzhzJviln+EOS62AFAZQBwBQA3UlwAoAwAlAUAWxPcI4MoYhQARAPAbQC4QcqDfAXN
1949
+ V8L/2nhXBYBGAPAZANQHgBoAYJmLfUoBgOsAcJqUQPK3fMlXwn+NlASA1gDgRYpjHu9vGgBc
1950
+ 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
2190
+ g4KC0MHBQXKdHIDc29tbdfjW8+fPsWvXrujp6SnxnZUvXx47duzIvY+Pj08WGsfLywvT09Px
2191
+ 8ePHJudGZW2V1VpTdZKYmCgZxylTpmj+UDFggUquCV9gZ+GlFYkOiXpC/e1vDlKMTiTaBQDg
2192
+ J2r5rM+40IVhDV0IQiYmscXJXA6OBsp5wiVbYBcXFx4CPtfKoUOHuArIgn/16NEDr1+/LgsN
2193
+ s7Ozw0mTJmFcXJzspBo7dizz7Pb7779nrRIHDhzAnj17opmZGXbq1AnLlCmDAIAtWrTA58+f
2194
+ 49atW7PoOs6cOWPQGLRp04bZv59++klSlw6OViPTp0+XjA8vL6NcwDcDqqaUgZZFT/iTxtCm
2195
+ JyBlaOOFDDpKXAPEWc9arRpTShcL+skSWel1WAzGSsRPVehrLl68iFFRUXkmASbLIHHy5Enm
2196
+ auft7Z21DQsMDFRMWabjtdm2bRtz68UCHyxdupQ5Ca9cuYKPHj3C5ORk3L17t6S9tLQ0CdGV
2197
+ 2rJnzx48e/asHqb2+PHjkvNX0aJFMSoqyuhVcNiwYZoVmSbrAv3UDjxhIV7+ZNS7yBmbNPiQ
2198
+ CEksHRlnxjDdj66MhvYzHItAls4Mzs1/Z9T/h1FvkYqBuEIbMRCFTLQeHh5oZ2eX69TrupVE
2199
+ F9jLorNo06aN5Bz08uVLHDBggKoPSoECBbBVq1Y4c+ZMPHnyJCYnJ2O1atX06vj5+Rl0nnzy
2200
+ 5Am2aNEC3dzccM2aNbh06VIcM2YMNm3aVBEEUKdOHYyOjsaSJUuilZUVvnz5Eh88eCBxeZiZ
2201
+ meHu3bs1923atGkSv2ZYWJimNjIyMrBixYpKNgtQafm8xajHo0IcxbF1pCjpzGPOQZPl0BzN
2202
+ ufkPDH8Ki2Njn4qBGEtvRcRGgJ07d2aFJ7HOXzlRdDjSgIAAZqiUeAXkxf9ppZ7QIYVsbGyw
2203
+ T58+WQze6enpqrlWkpOTcdmyZVmrtoODA44ZMwYDAgIwJiYmq865c+dw3bp16OvrK4nqOHr0
2204
+ qN4qM3v2bGbkB48oS+nMS591+/fvr7kdRhR9LMgzweskirO60bqwglHvD0Z7NQiahvVOvxRX
2205
+ XMOptIDT0VWMuoMUjDJqrVO6OK4MuUDfU6dOYf369XHTpk05TnBrYWGBsbGxuGrVKmZqak9P
2206
+ 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
2351
+ acuuVzKKnOsAAAAASUVORK5CYII=
2352
+ </xsl:text>
2353
+ </xsl:variable>
2354
+
2355
+ <xsl:variable name="Image-Recycle">
2356
+ <xsl:text>
2357
+ iVBORw0KGgoAAAANSUhEUgAAAJkAAAAmCAYAAADXwDkaAAAAGXRFWHRTb2Z0d2FyZQBBZG9i
2358
+ ZSBJbWFnZVJlYWR5ccllPAAAA+lpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tl
2359
+ dCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1l
2360
+ dGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUu
2361
+ Ni1jMDE0IDc5LjE1Njc5NywgMjAxNC8wOC8yMC0wOTo1MzowMiAgICAgICAgIj4gPHJkZjpS
2362
+ REYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgt
2363
+ bnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8v
2364
+ bnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2Vs
2365
+ ZW1lbnRzLzEuMS8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAv
2366
+ bW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jl
2367
+ c291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJNaWNyb3NvZnTCriBXb3JkIDIwMTYiIHht
2368
+ cE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MzM0NUVBQ0U2RUMzMTFFQUIzQjg4RDg3OEE1NEI2
2369
+ QzAiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MzM0NUVBQ0Y2RUMzMTFFQUIzQjg4RDg3
2370
+ OEE1NEI2QzAiPiA8ZGM6Y3JlYXRvcj4gPHJkZjpTZXE+IDxyZGY6bGk+RGhhbmplZTwvcmRm
2371
+ OmxpPiA8L3JkZjpTZXE+IDwvZGM6Y3JlYXRvcj4gPGRjOnRpdGxlPiA8cmRmOkFsdD4gPHJk
2372
+ ZjpsaSB4bWw6bGFuZz0ieC1kZWZhdWx0Ij4xODAxNzYzPC9yZGY6bGk+IDwvcmRmOkFsdD4g
2373
+ PC9kYzp0aXRsZT4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5p
2374
+ aWQ6MzM0NUVBQ0M2RUMzMTFFQUIzQjg4RDg3OEE1NEI2QzAiIHN0UmVmOmRvY3VtZW50SUQ9
2375
+ InhtcC5kaWQ6MzM0NUVBQ0Q2RUMzMTFFQUIzQjg4RDg3OEE1NEI2QzAiLz4gPC9yZGY6RGVz
2376
+ Y3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7t
2377
+ DS20AAAS3ElEQVR42uxcCXhU5bn+t3POZJkkBBKSycxkQcF9YXPjuuJGFRSsgFJb0Xq9el16
2378
+ 3epWl7pWa6tQq7UqFG/Veotgr9arVlxRqTxK0UurkpCZCdlYE0gyZ875/77/mUkYkkwW7X2e
2379
+ W5if539y5sy/ft/7f9/7fecMgmTL3lqquGneRxU9XlGygypSSBkdpZSy8d0XipDcDP0oJaRY
2380
+ EfWOa9vz8LktK8ps6a+UCtNcK4R5O65Ho/pQi5lhXMZN6yvC+bfwWaTu91dHAqAvGKa5JCvK
2381
+ bOm3cMNYAID9uN/vuDkXAPoKl4WDDFNsmFYdEeLoXvcLiWFMzEp5by4ABazYKpLZHRJhWH8S
2382
+ hvHgYEPB8l0pLGvFrqHFaRj7I875tKyg92IjBgC9Qbg5e+BmxkSAZQcuDhl0PMt6C4D8Oazf
2383
+ YsPyKWFaL2fFvHf7yYu0ldLkfRB3+h2ARQJoy4dgGY/RPI4b5iJuWE24c2hW0HtvKQJwPgMo
2384
+ jhuk3Uhwrc/AzWYDZJ+CpJ07hLFNZpp3wJo9nRXz3kzFTPPHqL8ftJ1hPASwPJM0aeY5AObn
2385
+ uMofPB1i1eLvPllJ773lQIBg4xBAcGAKLDW7wGm9Civ1o4Hdq7kE4PxZVsx7d0R5IsBTDzA8
2386
+ lQ6gfqzdi6j39Op7Au5tw1VlhiDhCK5TGcl8W7bs5SWgORMs01+FMG/A55xeYDrF0IlYcLf0
2387
+ lAT6vKRJfaaUBwKJN4Wwrkl9PABc7vzebWhW9ntKKRxByHYXF3FURpIZ+279qtR9qXNYlImr
2388
+ CFV5jkseJK79X549Ms2PXaWekInE4/h0mDDpLZSyWUopRIxqse6bGrOnKEVKMcG+TsIGdzP/
2389
+ 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
2467
+ </xsl:text>
2468
+ </xsl:variable>
2469
+
2470
+ <xsl:variable xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="lower">abcdefghijklmnopqrstuvwxyz</xsl:variable><xsl:variable xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="upper">ABCDEFGHIJKLMNOPQRSTUVWXYZ</xsl:variable><xsl:variable xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="en_chars" select="concat($lower,$upper,',.`1234567890-=~!@#$%^*()_+[]{}\|?/')"/><xsl:variable xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="linebreak" select="'&#8232;'"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="text()">
2471
+ <xsl:value-of select="."/>
2472
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='br']">
2473
+ <xsl:value-of select="$linebreak"/>
2474
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='td']//text() | *[local-name()='th']//text()" priority="1">
2475
+ <xsl:call-template name="add-zero-spaces"/>
2476
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='table']">
2477
+
2478
+ <xsl:variable name="simple-table">
2479
+ <!-- <xsl:copy> -->
2480
+ <xsl:call-template name="getSimpleTable"/>
2481
+ <!-- </xsl:copy> -->
2482
+ </xsl:variable>
2483
+
2484
+ <!-- DEBUG -->
2485
+ <!-- SourceTable=<xsl:copy-of select="current()"/>EndSourceTable -->
2486
+ <!-- Simpletable=<xsl:copy-of select="$simple-table"/>EndSimpltable -->
2487
+
2488
+ <!-- <xsl:variable name="namespace" select="substring-before(name(/*), '-')"/> -->
2489
+
2490
+
2491
+
2492
+ <xsl:choose>
2493
+ <xsl:when test="@unnumbered = 'true'"/>
2494
+ <xsl:otherwise>
2495
+
2496
+
2497
+
2498
+ <fo:block font-weight="bold" text-align="center" margin-bottom="6pt" keep-with-next="always">
2499
+
2500
+
2501
+
2502
+
2503
+ <xsl:attribute name="font-weight">normal</xsl:attribute>
2504
+ <xsl:attribute name="font-style">italic</xsl:attribute>
2505
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
2506
+ <xsl:attribute name="text-align">left</xsl:attribute>
2507
+
2508
+
2509
+ <xsl:text>Table </xsl:text>
2510
+ <xsl:choose>
2511
+ <xsl:when test="ancestor::*[local-name()='executivesummary']"> <!-- NIST -->
2512
+ <xsl:text>ES-</xsl:text><xsl:number format="1" count="*[local-name()='executivesummary']//*[local-name()='table'][not(@unnumbered) or @unnumbered != 'true']"/>
2513
+ </xsl:when>
2514
+ <xsl:when test="ancestor::*[local-name()='annex']">
2515
+
2516
+
2517
+
2518
+
2519
+
2520
+ <xsl:variable name="annex-id" select="ancestor::*[local-name()='annex']/@id"/>
2521
+ <xsl:number format="I." count="*[local-name()='annex']"/>
2522
+ <xsl:number format="1" level="any" count="*[local-name()='table'][not(@unnumbered) or @unnumbered != 'true'][ancestor::*[local-name()='annex'][@id = $annex-id]]"/>
2523
+
2524
+
2525
+ </xsl:when>
2526
+ <xsl:otherwise>
2527
+
2528
+
2529
+ <xsl:number format="A." count="*[local-name()='annex']"/>
2530
+ <xsl:number format="1" level="any" count="//*[local-name()='table'] [not(ancestor::*[local-name()='annex']) and not(ancestor::*[local-name()='executivesummary']) and not(ancestor::*[local-name()='bibdata'])] [not(@unnumbered) or @unnumbered != 'true']"/>
2531
+
2532
+ </xsl:otherwise>
2533
+ </xsl:choose>
2534
+ <xsl:if test="*[local-name()='name']">
2535
+
2536
+ :
2537
+
2538
+ <xsl:apply-templates select="*[local-name()='name']" mode="process"/>
2539
+ </xsl:if>
2540
+ </fo:block>
2541
+
2542
+
2543
+ <xsl:call-template name="fn_name_display"/>
2544
+
2545
+ </xsl:otherwise>
2546
+ </xsl:choose>
2547
+
2548
+ <xsl:variable name="cols-count" select="count(xalan:nodeset($simple-table)//tr[1]/td)"/>
2549
+
2550
+ <!-- <xsl:variable name="cols-count">
2551
+ <xsl:choose>
2552
+ <xsl:when test="*[local-name()='thead']">
2553
+ <xsl:call-template name="calculate-columns-numbers">
2554
+ <xsl:with-param name="table-row" select="*[local-name()='thead']/*[local-name()='tr'][1]"/>
2555
+ </xsl:call-template>
2556
+ </xsl:when>
2557
+ <xsl:otherwise>
2558
+ <xsl:call-template name="calculate-columns-numbers">
2559
+ <xsl:with-param name="table-row" select="*[local-name()='tbody']/*[local-name()='tr'][1]"/>
2560
+ </xsl:call-template>
2561
+ </xsl:otherwise>
2562
+ </xsl:choose>
2563
+ </xsl:variable> -->
2564
+ <!-- cols-count=<xsl:copy-of select="$cols-count"/> -->
2565
+ <!-- cols-count2=<xsl:copy-of select="$cols-count2"/> -->
2566
+
2567
+
2568
+
2569
+ <xsl:variable name="colwidths">
2570
+ <xsl:call-template name="calculate-column-widths">
2571
+ <xsl:with-param name="cols-count" select="$cols-count"/>
2572
+ <xsl:with-param name="table" select="$simple-table"/>
2573
+ </xsl:call-template>
2574
+ </xsl:variable>
2575
+
2576
+ <xsl:variable name="colwidths2">
2577
+ <xsl:call-template name="calculate-column-widths">
2578
+ <xsl:with-param name="cols-count" select="$cols-count"/>
2579
+ </xsl:call-template>
2580
+ </xsl:variable>
2581
+
2582
+ <!-- cols-count=<xsl:copy-of select="$cols-count"/>
2583
+ colwidthsNew=<xsl:copy-of select="$colwidths"/>
2584
+ colwidthsOld=<xsl:copy-of select="$colwidths2"/>z -->
2585
+
2586
+ <xsl:variable name="margin-left">
2587
+ <xsl:choose>
2588
+ <xsl:when test="sum(xalan:nodeset($colwidths)//column) &gt; 75">15</xsl:when>
2589
+ <xsl:otherwise>0</xsl:otherwise>
2590
+ </xsl:choose>
2591
+ </xsl:variable>
2592
+
2593
+ <fo:block-container margin-left="-{$margin-left}mm" margin-right="-{$margin-left}mm">
2594
+
2595
+
2596
+
2597
+
2598
+ <xsl:attribute name="space-after">18pt</xsl:attribute>
2599
+
2600
+
2601
+
2602
+ <fo:table id="{@id}" table-layout="fixed" width="100%" margin-left="{$margin-left}mm" margin-right="{$margin-left}mm">
2603
+
2604
+
2605
+
2606
+
2607
+
2608
+
2609
+
2610
+ <xsl:attribute name="border-top">0.5pt solid black</xsl:attribute>
2611
+ <xsl:attribute name="font-size">8pt</xsl:attribute>
2612
+
2613
+
2614
+
2615
+ <xsl:for-each select="xalan:nodeset($colwidths)//column">
2616
+ <xsl:choose>
2617
+ <xsl:when test=". = 1">
2618
+ <fo:table-column column-width="proportional-column-width(2)"/>
2619
+ </xsl:when>
2620
+ <xsl:otherwise>
2621
+ <fo:table-column column-width="proportional-column-width({.})"/>
2622
+ </xsl:otherwise>
2623
+ </xsl:choose>
2624
+ </xsl:for-each>
2625
+ <xsl:apply-templates/>
2626
+ </fo:table>
2627
+ </fo:block-container>
2628
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='table']/*[local-name()='name']"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='table']/*[local-name()='name']" mode="process">
2629
+ <xsl:apply-templates/>
2630
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="calculate-columns-numbers">
2631
+ <xsl:param name="table-row"/>
2632
+ <xsl:variable name="columns-count" select="count($table-row/*)"/>
2633
+ <xsl:variable name="sum-colspans" select="sum($table-row/*/@colspan)"/>
2634
+ <xsl:variable name="columns-with-colspan" select="count($table-row/*[@colspan])"/>
2635
+ <xsl:value-of select="$columns-count + $sum-colspans - $columns-with-colspan"/>
2636
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="calculate-column-widths">
2637
+ <xsl:param name="table"/>
2638
+ <xsl:param name="cols-count"/>
2639
+ <xsl:param name="curr-col" select="1"/>
2640
+ <xsl:param name="width" select="0"/>
2641
+
2642
+ <xsl:if test="$curr-col &lt;= $cols-count">
2643
+ <xsl:variable name="widths">
2644
+ <xsl:choose>
2645
+ <xsl:when test="not($table)">
2646
+ <xsl:for-each select="*[local-name()='thead']//*[local-name()='tr']">
2647
+ <xsl:variable name="words">
2648
+ <xsl:call-template name="tokenize">
2649
+ <xsl:with-param name="text" select="translate(*[local-name()='th'][$curr-col],'- —:', ' ')"/>
2650
+ </xsl:call-template>
2651
+ </xsl:variable>
2652
+ <xsl:variable name="max_length">
2653
+ <xsl:call-template name="max_length">
2654
+ <xsl:with-param name="words" select="xalan:nodeset($words)"/>
2655
+ </xsl:call-template>
2656
+ </xsl:variable>
2657
+ <width>
2658
+ <xsl:value-of select="$max_length"/>
2659
+ </width>
2660
+ </xsl:for-each>
2661
+ <xsl:for-each select="*[local-name()='tbody']//*[local-name()='tr']">
2662
+ <xsl:variable name="words">
2663
+ <xsl:call-template name="tokenize">
2664
+ <xsl:with-param name="text" select="translate(*[local-name()='td'][$curr-col],'- —:', ' ')"/>
2665
+ </xsl:call-template>
2666
+ </xsl:variable>
2667
+ <xsl:variable name="max_length">
2668
+ <xsl:call-template name="max_length">
2669
+ <xsl:with-param name="words" select="xalan:nodeset($words)"/>
2670
+ </xsl:call-template>
2671
+ </xsl:variable>
2672
+ <width>
2673
+ <xsl:value-of select="$max_length"/>
2674
+ </width>
2675
+
2676
+ </xsl:for-each>
2677
+ </xsl:when>
2678
+ <xsl:otherwise>
2679
+ <xsl:for-each select="xalan:nodeset($table)//tr">
2680
+ <xsl:variable name="words">
2681
+ <xsl:call-template name="tokenize">
2682
+ <xsl:with-param name="text" select="translate(td[$curr-col],'- —:', ' ')"/>
2683
+ </xsl:call-template>
2684
+ </xsl:variable>
2685
+ <xsl:variable name="max_length">
2686
+ <xsl:call-template name="max_length">
2687
+ <xsl:with-param name="words" select="xalan:nodeset($words)"/>
2688
+ </xsl:call-template>
2689
+ </xsl:variable>
2690
+ <width>
2691
+ <xsl:variable name="divider">
2692
+ <xsl:choose>
2693
+ <xsl:when test="td[$curr-col]/@divide">
2694
+ <xsl:value-of select="td[$curr-col]/@divide"/>
2695
+ </xsl:when>
2696
+ <xsl:otherwise>1</xsl:otherwise>
2697
+ </xsl:choose>
2698
+ </xsl:variable>
2699
+ <xsl:value-of select="$max_length div $divider"/>
2700
+ </width>
2701
+
2702
+ </xsl:for-each>
2703
+
2704
+ </xsl:otherwise>
2705
+ </xsl:choose>
2706
+ </xsl:variable>
2707
+
2708
+
2709
+ <column>
2710
+ <xsl:for-each select="xalan:nodeset($widths)//width">
2711
+ <xsl:sort select="." data-type="number" order="descending"/>
2712
+ <xsl:if test="position()=1">
2713
+ <xsl:value-of select="."/>
2714
+ </xsl:if>
2715
+ </xsl:for-each>
2716
+ </column>
2717
+ <xsl:call-template name="calculate-column-widths">
2718
+ <xsl:with-param name="cols-count" select="$cols-count"/>
2719
+ <xsl:with-param name="curr-col" select="$curr-col +1"/>
2720
+ <xsl:with-param name="table" select="$table"/>
2721
+ </xsl:call-template>
2722
+ </xsl:if>
2723
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='table2']"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='thead']"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='thead']" mode="process">
2724
+ <!-- <fo:table-header font-weight="bold">
2725
+ <xsl:apply-templates />
2726
+ </fo:table-header> -->
2727
+ <xsl:apply-templates/>
2728
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='tfoot']"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='tfoot']" mode="process">
2729
+ <xsl:apply-templates/>
2730
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='tbody']">
2731
+ <xsl:variable name="cols-count">
2732
+ <xsl:choose>
2733
+ <xsl:when test="../*[local-name()='thead']">
2734
+ <!-- <xsl:value-of select="count(../*[local-name()='thead']/*[local-name()='tr']/*[local-name()='th'])"/> -->
2735
+ <xsl:call-template name="calculate-columns-numbers">
2736
+ <xsl:with-param name="table-row" select="../*[local-name()='thead']/*[local-name()='tr'][1]"/>
2737
+ </xsl:call-template>
2738
+ </xsl:when>
2739
+ <xsl:otherwise>
2740
+ <!-- <xsl:value-of select="count(./*[local-name()='tr'][1]/*[local-name()='td'])"/> -->
2741
+ <xsl:call-template name="calculate-columns-numbers">
2742
+ <xsl:with-param name="table-row" select="./*[local-name()='tr'][1]"/>
2743
+ </xsl:call-template>
2744
+ </xsl:otherwise>
2745
+ </xsl:choose>
2746
+ </xsl:variable>
2747
+
2748
+ <fo:table-body>
2749
+ <xsl:apply-templates select="../*[local-name()='thead']" mode="process"/>
2750
+ <xsl:apply-templates/>
2751
+ <xsl:apply-templates select="../*[local-name()='tfoot']" mode="process"/>
2752
+ <!-- if there are note(s) or fn(s) then create footer row -->
2753
+ <xsl:if test="../*[local-name()='note'] or ..//*[local-name()='fn'][local-name(..) != 'name']">
2754
+ <fo:table-row>
2755
+ <fo:table-cell border="solid black 1pt" padding-left="1mm" padding-right="1mm" padding-top="1mm" number-columns-spanned="{$cols-count}">
2756
+
2757
+
2758
+
2759
+ <!-- fn will be processed inside 'note' processing -->
2760
+
2761
+
2762
+ <xsl:apply-templates select="../*[local-name()='note']" mode="process"/>
2763
+
2764
+ <!-- horizontal row separator -->
2765
+
2766
+
2767
+ <!-- fn processing -->
2768
+ <xsl:call-template name="fn_display"/>
2769
+
2770
+ </fo:table-cell>
2771
+ </fo:table-row>
2772
+
2773
+ </xsl:if>
2774
+ </fo:table-body>
2775
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='tr']">
2776
+ <xsl:variable name="parent-name" select="local-name(..)"/>
2777
+ <!-- <xsl:variable name="namespace" select="substring-before(name(/*), '-')"/> -->
2778
+ <fo:table-row min-height="4mm">
2779
+ <xsl:if test="$parent-name = 'thead'">
2780
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
2781
+
2782
+
2783
+
2784
+
2785
+
2786
+ </xsl:if>
2787
+ <xsl:if test="$parent-name = 'tfoot'">
2788
+
2789
+
2790
+ </xsl:if>
2791
+
2792
+ <xsl:if test="not(*[local-name()='th'])">
2793
+ <xsl:attribute name="min-height">8mm</xsl:attribute>
2794
+ </xsl:if>
2795
+
2796
+ <xsl:apply-templates/>
2797
+ </fo:table-row>
2798
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='th']">
2799
+ <fo:table-cell text-align="{@align}" font-weight="bold" border="solid black 1pt" padding-left="1mm" display-align="center">
2800
+
2801
+
2802
+
2803
+
2804
+
2805
+
2806
+
2807
+ <xsl:attribute name="display-align">center</xsl:attribute>
2808
+ <xsl:attribute name="font-style">italic</xsl:attribute>
2809
+ <xsl:attribute name="font-weight">normal</xsl:attribute>
2810
+ <xsl:attribute name="padding-top">2mm</xsl:attribute>
2811
+ <xsl:attribute name="padding-left">2mm</xsl:attribute>
2812
+ <xsl:attribute name="border">solid black 0pt</xsl:attribute>
2813
+ <xsl:attribute name="border-top">solid black 0.2pt</xsl:attribute>
2814
+ <xsl:attribute name="border-bottom">solid black 1.5pt</xsl:attribute>
2815
+
2816
+ <xsl:if test="@colspan">
2817
+ <xsl:attribute name="number-columns-spanned">
2818
+ <xsl:value-of select="@colspan"/>
2819
+ </xsl:attribute>
2820
+ </xsl:if>
2821
+ <xsl:if test="@rowspan">
2822
+ <xsl:attribute name="number-rows-spanned">
2823
+ <xsl:value-of select="@rowspan"/>
2824
+ </xsl:attribute>
2825
+ </xsl:if>
2826
+ <fo:block>
2827
+ <xsl:apply-templates/>
2828
+ </fo:block>
2829
+ </fo:table-cell>
2830
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='td']">
2831
+ <fo:table-cell text-align="{@align}" display-align="center" border="solid black 1pt" padding-left="1mm">
2832
+
2833
+
2834
+
2835
+
2836
+
2837
+
2838
+ <xsl:attribute name="display-align">before</xsl:attribute>
2839
+ <xsl:attribute name="padding-left">0mm</xsl:attribute>
2840
+ <xsl:attribute name="padding-top">2mm</xsl:attribute>
2841
+ <xsl:attribute name="padding-bottom">1mm</xsl:attribute>
2842
+ <xsl:attribute name="border">solid black 0pt</xsl:attribute>
2843
+ <xsl:attribute name="border-bottom">solid black 1.5pt</xsl:attribute>
2844
+
2845
+
2846
+ <xsl:if test="@colspan">
2847
+ <xsl:attribute name="number-columns-spanned">
2848
+ <xsl:value-of select="@colspan"/>
2849
+ </xsl:attribute>
2850
+ </xsl:if>
2851
+ <xsl:if test="@rowspan">
2852
+ <xsl:attribute name="number-rows-spanned">
2853
+ <xsl:value-of select="@rowspan"/>
2854
+ </xsl:attribute>
2855
+ </xsl:if>
2856
+ <fo:block>
2857
+ <xsl:apply-templates/>
2858
+ </fo:block>
2859
+ <!-- <xsl:choose>
2860
+ <xsl:when test="count(*) = 1 and *[local-name() = 'p']">
2861
+ <xsl:apply-templates />
2862
+ </xsl:when>
2863
+ <xsl:otherwise>
2864
+ <fo:block>
2865
+ <xsl:apply-templates />
2866
+ </fo:block>
2867
+ </xsl:otherwise>
2868
+ </xsl:choose> -->
2869
+
2870
+
2871
+ </fo:table-cell>
2872
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='table']/*[local-name()='note']"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='table']/*[local-name()='note']" mode="process">
2873
+
2874
+
2875
+ <fo:block font-size="10pt" margin-bottom="12pt">
2876
+
2877
+
2878
+ <fo:inline padding-right="2mm">
2879
+ <xsl:text>NOTE </xsl:text>
2880
+
2881
+
2882
+ <xsl:number format="1 "/>
2883
+
2884
+ </fo:inline>
2885
+ <xsl:apply-templates mode="process"/>
2886
+ </fo:block>
2887
+
2888
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='table']/*[local-name()='note']/*[local-name()='p']" mode="process">
2889
+ <xsl:apply-templates/>
2890
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="fn_display">
2891
+ <xsl:variable name="references">
2892
+ <xsl:for-each select="..//*[local-name()='fn'][local-name(..) != 'name']">
2893
+ <fn reference="{@reference}" id="{@reference}_{ancestor::*[@id][1]/@id}">
2894
+
2895
+
2896
+ <xsl:apply-templates/>
2897
+ </fn>
2898
+ </xsl:for-each>
2899
+ </xsl:variable>
2900
+ <xsl:for-each select="xalan:nodeset($references)//fn">
2901
+ <xsl:variable name="reference" select="@reference"/>
2902
+ <xsl:if test="not(preceding-sibling::*[@reference = $reference])"> <!-- only unique reference puts in note-->
2903
+ <fo:block margin-bottom="12pt">
2904
+
2905
+
2906
+ <fo:inline font-size="80%" padding-right="5mm" id="{@id}">
2907
+
2908
+ <xsl:attribute name="vertical-align">super</xsl:attribute>
2909
+
2910
+
2911
+
2912
+
2913
+
2914
+ <xsl:value-of select="@reference"/>
2915
+
2916
+ </fo:inline>
2917
+ <fo:inline>
2918
+
2919
+ <xsl:apply-templates/>
2920
+ </fo:inline>
2921
+ </fo:block>
2922
+ </xsl:if>
2923
+ </xsl:for-each>
2924
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="fn_name_display">
2925
+ <!-- <xsl:variable name="references">
2926
+ <xsl:for-each select="*[local-name()='name']//*[local-name()='fn']">
2927
+ <fn reference="{@reference}" id="{@reference}_{ancestor::*[@id][1]/@id}">
2928
+ <xsl:apply-templates />
2929
+ </fn>
2930
+ </xsl:for-each>
2931
+ </xsl:variable>
2932
+ $references=<xsl:copy-of select="$references"/> -->
2933
+ <xsl:for-each select="*[local-name()='name']//*[local-name()='fn']">
2934
+ <xsl:variable name="reference" select="@reference"/>
2935
+ <fo:block id="{@reference}_{ancestor::*[@id][1]/@id}"><xsl:value-of select="@reference"/></fo:block>
2936
+ <fo:block margin-bottom="12pt">
2937
+ <xsl:apply-templates/>
2938
+ </fo:block>
2939
+ </xsl:for-each>
2940
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="fn_display_figure">
2941
+ <xsl:variable name="key_iso">
2942
+ <!-- and (not(@class) or @class !='pseudocode') -->
2943
+ </xsl:variable>
2944
+ <xsl:variable name="references">
2945
+ <xsl:for-each select=".//*[local-name()='fn']">
2946
+ <fn reference="{@reference}" id="{@reference}_{ancestor::*[@id][1]/@id}">
2947
+ <xsl:apply-templates/>
2948
+ </fn>
2949
+ </xsl:for-each>
2950
+ </xsl:variable>
2951
+ <xsl:if test="xalan:nodeset($references)//fn">
2952
+ <fo:block>
2953
+ <fo:table width="95%" table-layout="fixed">
2954
+ <xsl:if test="normalize-space($key_iso) = 'true'">
2955
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
2956
+
2957
+ </xsl:if>
2958
+ <fo:table-column column-width="15%"/>
2959
+ <fo:table-column column-width="85%"/>
2960
+ <fo:table-body>
2961
+ <xsl:for-each select="xalan:nodeset($references)//fn">
2962
+ <xsl:variable name="reference" select="@reference"/>
2963
+ <xsl:if test="not(preceding-sibling::*[@reference = $reference])"> <!-- only unique reference puts in note-->
2964
+ <fo:table-row>
2965
+ <fo:table-cell>
2966
+ <fo:block>
2967
+ <fo:inline font-size="80%" padding-right="5mm" vertical-align="super" id="{@id}">
2968
+
2969
+ <xsl:value-of select="@reference"/>
2970
+ </fo:inline>
2971
+ </fo:block>
2972
+ </fo:table-cell>
2973
+ <fo:table-cell>
2974
+ <fo:block text-align="justify" margin-bottom="12pt">
2975
+
2976
+ <xsl:if test="normalize-space($key_iso) = 'true'">
2977
+ <xsl:attribute name="margin-bottom">0</xsl:attribute>
2978
+ </xsl:if>
2979
+
2980
+ <xsl:apply-templates/>
2981
+ </fo:block>
2982
+ </fo:table-cell>
2983
+ </fo:table-row>
2984
+ </xsl:if>
2985
+ </xsl:for-each>
2986
+ </fo:table-body>
2987
+ </fo:table>
2988
+ </fo:block>
2989
+ </xsl:if>
2990
+
2991
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='fn']">
2992
+ <!-- <xsl:variable name="namespace" select="substring-before(name(/*), '-')"/> -->
2993
+ <fo:inline font-size="80%" keep-with-previous.within-line="always">
2994
+
2995
+
2996
+
2997
+ <fo:basic-link internal-destination="{@reference}_{ancestor::*[@id][1]/@id}" fox:alt-text="{@reference}"> <!-- @reference | ancestor::*[local-name()='clause'][1]/@id-->
2998
+
2999
+ <xsl:value-of select="@reference"/>
3000
+ </fo:basic-link>
3001
+ </fo:inline>
3002
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='fn']/*[local-name()='p']">
3003
+ <fo:inline>
3004
+ <xsl:apply-templates/>
3005
+ </fo:inline>
3006
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dl']">
3007
+ <xsl:variable name="parent" select="local-name(..)"/>
3008
+
3009
+ <xsl:variable name="key_iso">
3010
+ <!-- and (not(../@class) or ../@class !='pseudocode') -->
3011
+ </xsl:variable>
3012
+
3013
+ <xsl:choose>
3014
+ <xsl:when test="$parent = 'formula' and count(*[local-name()='dt']) = 1"> <!-- only one component -->
3015
+
3016
+
3017
+ <fo:block margin-bottom="12pt" text-align="left">
3018
+
3019
+ <xsl:text>where </xsl:text>
3020
+ <xsl:apply-templates select="*[local-name()='dt']/*"/>
3021
+ <xsl:text/>
3022
+ <xsl:apply-templates select="*[local-name()='dd']/*" mode="inline"/>
3023
+ </fo:block>
3024
+
3025
+ </xsl:when>
3026
+ <xsl:when test="$parent = 'formula'"> <!-- a few components -->
3027
+ <fo:block margin-bottom="12pt" text-align="left">
3028
+
3029
+
3030
+
3031
+ <xsl:text>where</xsl:text>
3032
+ </fo:block>
3033
+ </xsl:when>
3034
+ <xsl:when test="$parent = 'figure' and (not(../@class) or ../@class !='pseudocode')">
3035
+ <fo:block font-weight="bold" text-align="left" margin-bottom="12pt">
3036
+
3037
+
3038
+ <xsl:text>Key</xsl:text>
3039
+ </fo:block>
3040
+ </xsl:when>
3041
+ </xsl:choose>
3042
+
3043
+ <!-- a few components -->
3044
+ <xsl:if test="not($parent = 'formula' and count(*[local-name()='dt']) = 1)">
3045
+ <fo:block>
3046
+
3047
+
3048
+
3049
+
3050
+ <fo:block>
3051
+
3052
+ <!-- create virtual html table for dl/[dt and dd] -->
3053
+ <xsl:variable name="html-table">
3054
+ <xsl:variable name="ns" select="substring-before(name(/*), '-')"/>
3055
+ <xsl:element name="{$ns}:table">
3056
+ <tbody>
3057
+ <xsl:apply-templates mode="dl"/>
3058
+ </tbody>
3059
+ </xsl:element>
3060
+ </xsl:variable>
3061
+ <!-- html-table<xsl:copy-of select="$html-table"/> -->
3062
+ <xsl:variable name="colwidths">
3063
+ <xsl:call-template name="calculate-column-widths">
3064
+ <xsl:with-param name="cols-count" select="2"/>
3065
+ <xsl:with-param name="table" select="$html-table"/>
3066
+ </xsl:call-template>
3067
+ </xsl:variable>
3068
+ <!-- colwidths=<xsl:value-of select="$colwidths"/> -->
3069
+
3070
+ <fo:table width="95%" table-layout="fixed">
3071
+ <xsl:choose>
3072
+ <xsl:when test="normalize-space($key_iso) = 'true' and $parent = 'formula'">
3073
+ <!-- <xsl:attribute name="font-size">11pt</xsl:attribute> -->
3074
+ </xsl:when>
3075
+ <xsl:when test="normalize-space($key_iso) = 'true'">
3076
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
3077
+
3078
+ </xsl:when>
3079
+ </xsl:choose>
3080
+ <xsl:choose>
3081
+ <xsl:when test="ancestor::*[local-name()='dl']"><!-- second level, i.e. inlined table -->
3082
+ <fo:table-column column-width="50%"/>
3083
+ <fo:table-column column-width="50%"/>
3084
+ </xsl:when>
3085
+ <xsl:otherwise>
3086
+ <xsl:choose>
3087
+ <!-- <xsl:when test="xalan:nodeset($colwidths)/column[1] div xalan:nodeset($colwidths)/column[2] &gt; 1.7">
3088
+ <fo:table-column column-width="60%"/>
3089
+ <fo:table-column column-width="40%"/>
3090
+ </xsl:when> -->
3091
+ <xsl:when test="xalan:nodeset($colwidths)/column[1] div xalan:nodeset($colwidths)/column[2] &gt; 1.3">
3092
+ <fo:table-column column-width="50%"/>
3093
+ <fo:table-column column-width="50%"/>
3094
+ </xsl:when>
3095
+ <xsl:when test="xalan:nodeset($colwidths)/column[1] div xalan:nodeset($colwidths)/column[2] &gt; 0.5">
3096
+ <fo:table-column column-width="40%"/>
3097
+ <fo:table-column column-width="60%"/>
3098
+ </xsl:when>
3099
+ <xsl:otherwise>
3100
+ <xsl:for-each select="xalan:nodeset($colwidths)//column">
3101
+ <xsl:choose>
3102
+ <xsl:when test=". = 1">
3103
+ <fo:table-column column-width="proportional-column-width(2)"/>
3104
+ </xsl:when>
3105
+ <xsl:otherwise>
3106
+ <fo:table-column column-width="proportional-column-width({.})"/>
3107
+ </xsl:otherwise>
3108
+ </xsl:choose>
3109
+ </xsl:for-each>
3110
+ </xsl:otherwise>
3111
+ </xsl:choose>
3112
+ <!-- <fo:table-column column-width="15%"/>
3113
+ <fo:table-column column-width="85%"/> -->
3114
+ </xsl:otherwise>
3115
+ </xsl:choose>
3116
+ <fo:table-body>
3117
+ <xsl:apply-templates>
3118
+ <xsl:with-param name="key_iso" select="normalize-space($key_iso)"/>
3119
+ </xsl:apply-templates>
3120
+ </fo:table-body>
3121
+ </fo:table>
3122
+ </fo:block>
3123
+ </fo:block>
3124
+ </xsl:if>
3125
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dl']/*[local-name()='note']">
3126
+ <xsl:param name="key_iso"/>
3127
+
3128
+ <!-- <tr>
3129
+ <td>NOTE</td>
3130
+ <td>
3131
+ <xsl:apply-templates />
3132
+ </td>
3133
+ </tr>
3134
+ -->
3135
+ <fo:table-row>
3136
+ <fo:table-cell>
3137
+ <fo:block margin-top="6pt">
3138
+ <xsl:if test="normalize-space($key_iso) = 'true'">
3139
+ <xsl:attribute name="margin-top">0</xsl:attribute>
3140
+ </xsl:if>
3141
+ NOTE
3142
+ </fo:block>
3143
+ </fo:table-cell>
3144
+ <fo:table-cell>
3145
+ <fo:block>
3146
+ <xsl:apply-templates/>
3147
+ </fo:block>
3148
+ </fo:table-cell>
3149
+ </fo:table-row>
3150
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dt']" mode="dl">
3151
+ <tr>
3152
+ <td>
3153
+ <xsl:apply-templates/>
3154
+ </td>
3155
+ <td>
3156
+
3157
+
3158
+ <xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]" mode="process"/>
3159
+
3160
+ </td>
3161
+ </tr>
3162
+
3163
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dt']">
3164
+ <xsl:param name="key_iso"/>
3165
+
3166
+ <fo:table-row>
3167
+ <fo:table-cell>
3168
+ <fo:block margin-top="6pt">
3169
+
3170
+ <xsl:if test="normalize-space($key_iso) = 'true'">
3171
+ <xsl:attribute name="margin-top">0</xsl:attribute>
3172
+
3173
+ </xsl:if>
3174
+
3175
+
3176
+ <xsl:apply-templates/>
3177
+ </fo:block>
3178
+ </fo:table-cell>
3179
+ <fo:table-cell>
3180
+ <fo:block>
3181
+
3182
+
3183
+
3184
+ <xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]" mode="process"/>
3185
+
3186
+ </fo:block>
3187
+ </fo:table-cell>
3188
+ </fo:table-row>
3189
+
3190
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dd']" mode="dl"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dd']" mode="dl_process">
3191
+ <xsl:apply-templates/>
3192
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dd']"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dd']" mode="process">
3193
+ <xsl:apply-templates/>
3194
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dd']/*[local-name()='p']" mode="inline">
3195
+ <fo:inline><xsl:apply-templates/></fo:inline>
3196
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='em']">
3197
+ <fo:inline font-style="italic">
3198
+ <xsl:apply-templates/>
3199
+ </fo:inline>
3200
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='strong']">
3201
+ <fo:inline font-weight="bold">
3202
+ <xsl:apply-templates/>
3203
+ </fo:inline>
3204
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='sup']">
3205
+ <fo:inline font-size="80%" vertical-align="super">
3206
+ <xsl:apply-templates/>
3207
+ </fo:inline>
3208
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='sub']">
3209
+ <fo:inline font-size="80%" vertical-align="sub">
3210
+ <xsl:apply-templates/>
3211
+ </fo:inline>
3212
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='tt']">
3213
+ <fo:inline font-family="Courier" font-size="10pt">
3214
+ <xsl:apply-templates/>
3215
+ </fo:inline>
3216
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='del']">
3217
+ <fo:inline font-size="10pt" color="red" text-decoration="line-through">
3218
+ <xsl:apply-templates/>
3219
+ </fo:inline>
3220
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="text()[ancestor::*[local-name()='smallcap']]">
3221
+ <xsl:variable name="text" select="normalize-space(.)"/>
3222
+ <fo:inline font-size="75%">
3223
+ <xsl:if test="string-length($text) &gt; 0">
3224
+ <xsl:call-template name="recursiveSmallCaps">
3225
+ <xsl:with-param name="text" select="$text"/>
3226
+ </xsl:call-template>
3227
+ </xsl:if>
3228
+ </fo:inline>
3229
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="recursiveSmallCaps">
3230
+ <xsl:param name="text"/>
3231
+ <xsl:variable name="char" select="substring($text,1,1)"/>
3232
+ <xsl:variable name="upperCase" select="translate($char, $lower, $upper)"/>
3233
+ <xsl:choose>
3234
+ <xsl:when test="$char=$upperCase">
3235
+ <fo:inline font-size="{100 div 0.75}%">
3236
+ <xsl:value-of select="$upperCase"/>
3237
+ </fo:inline>
3238
+ </xsl:when>
3239
+ <xsl:otherwise>
3240
+ <xsl:value-of select="$upperCase"/>
3241
+ </xsl:otherwise>
3242
+ </xsl:choose>
3243
+ <xsl:if test="string-length($text) &gt; 1">
3244
+ <xsl:call-template name="recursiveSmallCaps">
3245
+ <xsl:with-param name="text" select="substring($text,2)"/>
3246
+ </xsl:call-template>
3247
+ </xsl:if>
3248
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="tokenize">
3249
+ <xsl:param name="text"/>
3250
+ <xsl:param name="separator" select="' '"/>
3251
+ <xsl:choose>
3252
+ <xsl:when test="not(contains($text, $separator))">
3253
+ <word>
3254
+ <xsl:variable name="str_no_en_chars" select="normalize-space(translate($text, $en_chars, ''))"/>
3255
+ <xsl:variable name="len_str_no_en_chars" select="string-length($str_no_en_chars)"/>
3256
+ <xsl:variable name="len_str_tmp" select="string-length(normalize-space($text))"/>
3257
+ <xsl:variable name="len_str">
3258
+ <xsl:choose>
3259
+ <xsl:when test="normalize-space(translate($text, $upper, '')) = ''"> <!-- english word in CAPITAL letters -->
3260
+ <xsl:value-of select="$len_str_tmp * 1.5"/>
3261
+ </xsl:when>
3262
+ <xsl:otherwise>
3263
+ <xsl:value-of select="$len_str_tmp"/>
3264
+ </xsl:otherwise>
3265
+ </xsl:choose>
3266
+ </xsl:variable>
3267
+
3268
+ <!-- <xsl:if test="$len_str_no_en_chars div $len_str &gt; 0.8">
3269
+ <xsl:message>
3270
+ div=<xsl:value-of select="$len_str_no_en_chars div $len_str"/>
3271
+ len_str=<xsl:value-of select="$len_str"/>
3272
+ len_str_no_en_chars=<xsl:value-of select="$len_str_no_en_chars"/>
3273
+ </xsl:message>
3274
+ </xsl:if> -->
3275
+ <!-- <len_str_no_en_chars><xsl:value-of select="$len_str_no_en_chars"/></len_str_no_en_chars>
3276
+ <len_str><xsl:value-of select="$len_str"/></len_str> -->
3277
+ <xsl:choose>
3278
+ <xsl:when test="$len_str_no_en_chars div $len_str &gt; 0.8"> <!-- means non-english string -->
3279
+ <xsl:value-of select="$len_str - $len_str_no_en_chars"/>
3280
+ </xsl:when>
3281
+ <xsl:otherwise>
3282
+ <xsl:value-of select="$len_str"/>
3283
+ </xsl:otherwise>
3284
+ </xsl:choose>
3285
+ </word>
3286
+ </xsl:when>
3287
+ <xsl:otherwise>
3288
+ <word>
3289
+ <xsl:value-of select="string-length(normalize-space(substring-before($text, $separator)))"/>
3290
+ </word>
3291
+ <xsl:call-template name="tokenize">
3292
+ <xsl:with-param name="text" select="substring-after($text, $separator)"/>
3293
+ </xsl:call-template>
3294
+ </xsl:otherwise>
3295
+ </xsl:choose>
3296
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="max_length">
3297
+ <xsl:param name="words"/>
3298
+ <xsl:for-each select="$words//word">
3299
+ <xsl:sort select="." data-type="number" order="descending"/>
3300
+ <xsl:if test="position()=1">
3301
+ <xsl:value-of select="."/>
3302
+ </xsl:if>
3303
+ </xsl:for-each>
3304
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="add-zero-spaces">
3305
+ <xsl:param name="text" select="."/>
3306
+ <xsl:variable name="zero-space-after-chars">-</xsl:variable>
3307
+ <xsl:variable name="zero-space-after-dot">.</xsl:variable>
3308
+ <xsl:variable name="zero-space-after-colon">:</xsl:variable>
3309
+ <xsl:variable name="zero-space-after-equal">=</xsl:variable>
3310
+ <xsl:variable name="zero-space">​</xsl:variable>
3311
+ <xsl:choose>
3312
+ <xsl:when test="contains($text, $zero-space-after-chars)">
3313
+ <xsl:value-of select="substring-before($text, $zero-space-after-chars)"/>
3314
+ <xsl:value-of select="$zero-space-after-chars"/>
3315
+ <xsl:value-of select="$zero-space"/>
3316
+ <xsl:call-template name="add-zero-spaces">
3317
+ <xsl:with-param name="text" select="substring-after($text, $zero-space-after-chars)"/>
3318
+ </xsl:call-template>
3319
+ </xsl:when>
3320
+ <xsl:when test="contains($text, $zero-space-after-dot)">
3321
+ <xsl:value-of select="substring-before($text, $zero-space-after-dot)"/>
3322
+ <xsl:value-of select="$zero-space-after-dot"/>
3323
+ <xsl:value-of select="$zero-space"/>
3324
+ <xsl:call-template name="add-zero-spaces">
3325
+ <xsl:with-param name="text" select="substring-after($text, $zero-space-after-dot)"/>
3326
+ </xsl:call-template>
3327
+ </xsl:when>
3328
+ <xsl:when test="contains($text, $zero-space-after-colon)">
3329
+ <xsl:value-of select="substring-before($text, $zero-space-after-colon)"/>
3330
+ <xsl:value-of select="$zero-space-after-colon"/>
3331
+ <xsl:value-of select="$zero-space"/>
3332
+ <xsl:call-template name="add-zero-spaces">
3333
+ <xsl:with-param name="text" select="substring-after($text, $zero-space-after-colon)"/>
3334
+ </xsl:call-template>
3335
+ </xsl:when>
3336
+ <xsl:when test="contains($text, $zero-space-after-equal)">
3337
+ <xsl:value-of select="substring-before($text, $zero-space-after-equal)"/>
3338
+ <xsl:value-of select="$zero-space-after-equal"/>
3339
+ <xsl:value-of select="$zero-space"/>
3340
+ <xsl:call-template name="add-zero-spaces">
3341
+ <xsl:with-param name="text" select="substring-after($text, $zero-space-after-equal)"/>
3342
+ </xsl:call-template>
3343
+ </xsl:when>
3344
+ <xsl:otherwise>
3345
+ <xsl:value-of select="$text"/>
3346
+ </xsl:otherwise>
3347
+ </xsl:choose>
3348
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="add-zero-spaces-equal">
3349
+ <xsl:param name="text" select="."/>
3350
+ <xsl:variable name="zero-space-after-equals">==========</xsl:variable>
3351
+ <xsl:variable name="zero-space-after-equal">=</xsl:variable>
3352
+ <xsl:variable name="zero-space">​</xsl:variable>
3353
+ <xsl:choose>
3354
+ <xsl:when test="contains($text, $zero-space-after-equals)">
3355
+ <xsl:value-of select="substring-before($text, $zero-space-after-equals)"/>
3356
+ <xsl:value-of select="$zero-space-after-equals"/>
3357
+ <xsl:value-of select="$zero-space"/>
3358
+ <xsl:call-template name="add-zero-spaces-equal">
3359
+ <xsl:with-param name="text" select="substring-after($text, $zero-space-after-equals)"/>
3360
+ </xsl:call-template>
3361
+ </xsl:when>
3362
+ <xsl:when test="contains($text, $zero-space-after-equal)">
3363
+ <xsl:value-of select="substring-before($text, $zero-space-after-equal)"/>
3364
+ <xsl:value-of select="$zero-space-after-equal"/>
3365
+ <xsl:value-of select="$zero-space"/>
3366
+ <xsl:call-template name="add-zero-spaces-equal">
3367
+ <xsl:with-param name="text" select="substring-after($text, $zero-space-after-equal)"/>
3368
+ </xsl:call-template>
3369
+ </xsl:when>
3370
+ <xsl:otherwise>
3371
+ <xsl:value-of select="$text"/>
3372
+ </xsl:otherwise>
3373
+ </xsl:choose>
3374
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="getSimpleTable">
3375
+ <xsl:variable name="simple-table">
3376
+
3377
+ <!-- Step 1. colspan processing -->
3378
+ <xsl:variable name="simple-table-colspan">
3379
+ <tbody>
3380
+ <xsl:apply-templates mode="simple-table-colspan"/>
3381
+ </tbody>
3382
+ </xsl:variable>
3383
+
3384
+ <!-- Step 2. rowspan processing -->
3385
+ <xsl:variable name="simple-table-rowspan">
3386
+ <xsl:apply-templates select="xalan:nodeset($simple-table-colspan)" mode="simple-table-rowspan"/>
3387
+ </xsl:variable>
3388
+
3389
+ <xsl:copy-of select="xalan:nodeset($simple-table-rowspan)"/>
3390
+
3391
+ <!-- <xsl:choose>
3392
+ <xsl:when test="current()//*[local-name()='th'][@colspan] or current()//*[local-name()='td'][@colspan] ">
3393
+
3394
+ </xsl:when>
3395
+ <xsl:otherwise>
3396
+ <xsl:copy-of select="current()"/>
3397
+ </xsl:otherwise>
3398
+ </xsl:choose> -->
3399
+ </xsl:variable>
3400
+ <xsl:copy-of select="$simple-table"/>
3401
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='thead'] | *[local-name()='tbody']" mode="simple-table-colspan">
3402
+ <xsl:apply-templates mode="simple-table-colspan"/>
3403
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='fn']" mode="simple-table-colspan"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='th'] | *[local-name()='td']" mode="simple-table-colspan">
3404
+ <xsl:choose>
3405
+ <xsl:when test="@colspan">
3406
+ <xsl:variable name="td">
3407
+ <xsl:element name="td">
3408
+ <xsl:attribute name="divide"><xsl:value-of select="@colspan"/></xsl:attribute>
3409
+ <xsl:apply-templates select="@*" mode="simple-table-colspan"/>
3410
+ <xsl:apply-templates mode="simple-table-colspan"/>
3411
+ </xsl:element>
3412
+ </xsl:variable>
3413
+ <xsl:call-template name="repeatNode">
3414
+ <xsl:with-param name="count" select="@colspan"/>
3415
+ <xsl:with-param name="node" select="$td"/>
3416
+ </xsl:call-template>
3417
+ </xsl:when>
3418
+ <xsl:otherwise>
3419
+ <xsl:element name="td">
3420
+ <xsl:apply-templates select="@*" mode="simple-table-colspan"/>
3421
+ <xsl:apply-templates mode="simple-table-colspan"/>
3422
+ </xsl:element>
3423
+ </xsl:otherwise>
3424
+ </xsl:choose>
3425
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="@colspan" mode="simple-table-colspan"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='tr']" mode="simple-table-colspan">
3426
+ <xsl:element name="tr">
3427
+ <xsl:apply-templates select="@*" mode="simple-table-colspan"/>
3428
+ <xsl:apply-templates mode="simple-table-colspan"/>
3429
+ </xsl:element>
3430
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="@*|node()" mode="simple-table-colspan">
3431
+ <xsl:copy>
3432
+ <xsl:apply-templates select="@*|node()" mode="simple-table-colspan"/>
3433
+ </xsl:copy>
3434
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="repeatNode">
3435
+ <xsl:param name="count"/>
3436
+ <xsl:param name="node"/>
3437
+
3438
+ <xsl:if test="$count &gt; 0">
3439
+ <xsl:call-template name="repeatNode">
3440
+ <xsl:with-param name="count" select="$count - 1"/>
3441
+ <xsl:with-param name="node" select="$node"/>
3442
+ </xsl:call-template>
3443
+ <xsl:copy-of select="$node"/>
3444
+ </xsl:if>
3445
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="@*|node()" mode="simple-table-rowspan">
3446
+ <xsl:copy>
3447
+ <xsl:apply-templates select="@*|node()" mode="simple-table-rowspan"/>
3448
+ </xsl:copy>
3449
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="tbody" mode="simple-table-rowspan">
3450
+ <xsl:copy>
3451
+ <xsl:copy-of select="tr[1]"/>
3452
+ <xsl:apply-templates select="tr[2]" mode="simple-table-rowspan">
3453
+ <xsl:with-param name="previousRow" select="tr[1]"/>
3454
+ </xsl:apply-templates>
3455
+ </xsl:copy>
3456
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="tr" mode="simple-table-rowspan">
3457
+ <xsl:param name="previousRow"/>
3458
+ <xsl:variable name="currentRow" select="."/>
3459
+
3460
+ <xsl:variable name="normalizedTDs">
3461
+ <xsl:for-each select="xalan:nodeset($previousRow)//td">
3462
+ <xsl:choose>
3463
+ <xsl:when test="@rowspan &gt; 1">
3464
+ <xsl:copy>
3465
+ <xsl:attribute name="rowspan">
3466
+ <xsl:value-of select="@rowspan - 1"/>
3467
+ </xsl:attribute>
3468
+ <xsl:copy-of select="@*[not(name() = 'rowspan')]"/>
3469
+ <xsl:copy-of select="node()"/>
3470
+ </xsl:copy>
3471
+ </xsl:when>
3472
+ <xsl:otherwise>
3473
+ <xsl:copy-of select="$currentRow/td[1 + count(current()/preceding-sibling::td[not(@rowspan) or (@rowspan = 1)])]"/>
3474
+ </xsl:otherwise>
3475
+ </xsl:choose>
3476
+ </xsl:for-each>
3477
+ </xsl:variable>
3478
+
3479
+ <xsl:variable name="newRow">
3480
+ <xsl:copy>
3481
+ <xsl:copy-of select="$currentRow/@*"/>
3482
+ <xsl:copy-of select="xalan:nodeset($normalizedTDs)"/>
3483
+ </xsl:copy>
3484
+ </xsl:variable>
3485
+ <xsl:copy-of select="$newRow"/>
3486
+
3487
+ <xsl:apply-templates select="following-sibling::tr[1]" mode="simple-table-rowspan">
3488
+ <xsl:with-param name="previousRow" select="$newRow"/>
3489
+ </xsl:apply-templates>
3490
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="getLang">
3491
+ <xsl:variable name="language" select="//*[local-name()='bibdata']//*[local-name()='language']"/>
3492
+ <xsl:choose>
3493
+ <xsl:when test="$language = 'English'">en</xsl:when>
3494
+ <xsl:otherwise><xsl:value-of select="$language"/></xsl:otherwise>
3495
+ </xsl:choose>
3496
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="capitalizeWords">
3497
+ <xsl:param name="str"/>
3498
+ <xsl:variable name="str2" select="translate($str, '-', ' ')"/>
3499
+ <xsl:choose>
3500
+ <xsl:when test="contains($str2, ' ')">
3501
+ <xsl:variable name="substr" select="substring-before($str2, ' ')"/>
3502
+ <xsl:value-of select="translate(substring($substr, 1, 1), $lower, $upper)"/>
3503
+ <xsl:value-of select="substring($substr, 2)"/>
3504
+ <xsl:text> </xsl:text>
3505
+ <xsl:call-template name="capitalizeWords">
3506
+ <xsl:with-param name="str" select="substring-after($str2, ' ')"/>
3507
+ </xsl:call-template>
3508
+ </xsl:when>
3509
+ <xsl:otherwise>
3510
+ <xsl:value-of select="translate(substring($str2, 1, 1), $lower, $upper)"/>
3511
+ <xsl:value-of select="substring($str2, 2)"/>
3512
+ </xsl:otherwise>
3513
+ </xsl:choose>
3514
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="mathml:math">
3515
+ <fo:inline font-family="STIX2Math">
3516
+ <fo:instream-foreign-object fox:alt-text="Math">
3517
+ <xsl:copy-of select="."/>
3518
+ </fo:instream-foreign-object>
3519
+ </fo:inline>
3520
+ </xsl:template></xsl:stylesheet>