metanorma-iso 2.2.3 → 2.3.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -268,806 +268,949 @@
268
268
 
269
269
  <xsl:template match="/">
270
270
  <xsl:call-template name="namespaceCheck"/>
271
- <fo:root xml:lang="{$lang}">
272
271
 
273
- <xsl:variable name="root-style">
274
- <root-style xsl:use-attribute-sets="root-style">
275
- <!-- <xsl:if test="$lang = 'zh'">
276
- <xsl:attribute name="font-family">Source Han Sans, Times New Roman, Cambria Math</xsl:attribute>
277
- </xsl:if> -->
278
- </root-style>
279
- </xsl:variable>
280
- <xsl:call-template name="insertRootStyle">
281
- <xsl:with-param name="root-style" select="$root-style"/>
282
- </xsl:call-template>
272
+ <xsl:variable name="xslfo">
273
+ <fo:root xml:lang="{$lang}">
283
274
 
284
- <fo:layout-master-set>
275
+ <xsl:variable name="root-style">
276
+ <root-style xsl:use-attribute-sets="root-style">
277
+ <!-- <xsl:if test="$lang = 'zh'">
278
+ <xsl:attribute name="font-family">Source Han Sans, Times New Roman, Cambria Math</xsl:attribute>
279
+ </xsl:if> -->
280
+ </root-style>
281
+ </xsl:variable>
282
+ <xsl:call-template name="insertRootStyle">
283
+ <xsl:with-param name="root-style" select="$root-style"/>
284
+ </xsl:call-template>
285
285
 
286
- <!-- cover page -->
287
- <fo:simple-page-master master-name="cover-page" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
288
- <fo:region-body margin-top="25.4mm" margin-bottom="25.4mm" margin-left="31.7mm" margin-right="31.7mm"/>
289
- <fo:region-before region-name="cover-page-header" extent="25.4mm"/>
290
- <fo:region-after/>
291
- <fo:region-start region-name="cover-left-region" extent="31.7mm"/>
292
- <fo:region-end region-name="cover-right-region" extent="31.7mm"/>
293
- </fo:simple-page-master>
294
-
295
- <fo:simple-page-master master-name="cover-page-published" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
296
- <fo:region-body margin-top="12.7mm" margin-bottom="75mm" margin-left="78mm" margin-right="18.5mm"/>
297
- <fo:region-before region-name="cover-page-header" extent="12.7mm"/>
298
- <fo:region-after region-name="cover-page-footer" extent="75mm" display-align="after"/>
299
- <fo:region-start region-name="cover-left-region" extent="78mm"/>
300
- <fo:region-end region-name="cover-right-region" extent="18.5mm"/>
301
- </fo:simple-page-master>
302
-
303
- <fo:simple-page-master master-name="cover-page-publishedISO-odd" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
304
- <fo:region-body margin-top="12.7mm" margin-bottom="75mm" margin-left="{$marginLeftRight1}mm" margin-right="{$marginLeftRight2}mm"/>
305
- <fo:region-before region-name="cover-page-header" extent="12.7mm"/>
306
- <fo:region-after region-name="cover-page-footer" extent="75mm" display-align="after"/>
307
- <fo:region-start region-name="cover-left-region" extent="{$marginLeftRight1}mm"/>
308
- <fo:region-end region-name="cover-right-region" extent="{$marginLeftRight2}mm"/>
309
- </fo:simple-page-master>
310
- <fo:simple-page-master master-name="cover-page-publishedISO-even" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
311
- <fo:region-body margin-top="12.7mm" margin-bottom="75mm" margin-left="{$marginLeftRight2}mm" margin-right="{$marginLeftRight1}mm"/>
312
- <fo:region-before region-name="cover-page-header" extent="12.7mm"/>
313
- <fo:region-after region-name="cover-page-footer" extent="75mm" display-align="after"/>
314
- <fo:region-start region-name="cover-left-region" extent="{$marginLeftRight2}mm"/>
315
- <fo:region-end region-name="cover-right-region" extent="{$marginLeftRight1}mm"/>
316
- </fo:simple-page-master>
317
- <fo:page-sequence-master master-name="cover-page-publishedISO">
318
- <fo:repeatable-page-master-alternatives>
319
- <fo:conditional-page-master-reference odd-or-even="even" master-reference="cover-page-publishedISO-even"/>
320
- <fo:conditional-page-master-reference odd-or-even="odd" master-reference="cover-page-publishedISO-odd"/>
321
- </fo:repeatable-page-master-alternatives>
322
- </fo:page-sequence-master>
323
-
324
- <!-- contents pages -->
325
- <!-- odd pages -->
326
- <fo:simple-page-master master-name="odd" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
327
- <fo:region-body margin-top="27.4mm" margin-bottom="{$marginBottom + 2}mm" margin-left="19mm" margin-right="19mm"/>
328
- <fo:region-before region-name="header-odd" extent="27.4mm"/> <!-- display-align="center" -->
329
- <fo:region-after region-name="footer-odd" extent="{$marginBottom}mm"/>
330
- <fo:region-start region-name="left-region" extent="19mm"/>
331
- <fo:region-end region-name="right-region" extent="19mm"/>
332
- </fo:simple-page-master>
333
- <!-- even pages -->
334
- <fo:simple-page-master master-name="even" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
335
- <fo:region-body margin-top="27.4mm" margin-bottom="{$marginBottom + 2}mm" margin-left="19mm" margin-right="19mm"/>
336
- <fo:region-before region-name="header-even" extent="27.4mm"/> <!-- display-align="center" -->
337
- <fo:region-after region-name="footer-even" extent="{$marginBottom}mm"/>
338
- <fo:region-start region-name="left-region" extent="19mm"/>
339
- <fo:region-end region-name="right-region" extent="19mm"/>
340
- </fo:simple-page-master>
341
- <fo:page-sequence-master master-name="preface">
342
- <fo:repeatable-page-master-alternatives>
343
- <fo:conditional-page-master-reference odd-or-even="even" master-reference="even"/>
344
- <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd"/>
345
- </fo:repeatable-page-master-alternatives>
346
- </fo:page-sequence-master>
347
- <fo:page-sequence-master master-name="document">
348
- <fo:repeatable-page-master-alternatives>
349
- <fo:conditional-page-master-reference odd-or-even="even" master-reference="even"/>
350
- <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd"/>
351
- </fo:repeatable-page-master-alternatives>
352
- </fo:page-sequence-master>
353
-
354
- <!-- first page -->
355
- <fo:simple-page-master master-name="first-publishedISO" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
356
- <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom + 2}mm" margin-left="{$marginLeftRight1}mm" margin-right="{$marginLeftRight2}mm"/>
357
- <fo:region-before region-name="header-first" extent="{$marginTop}mm"/> <!-- display-align="center" -->
358
- <fo:region-after region-name="footer-odd" extent="{$marginBottom}mm"/>
359
- <fo:region-start region-name="left-region" extent="{$marginLeftRight1}mm"/>
360
- <fo:region-end region-name="right-region" extent="{$marginLeftRight2}mm"/>
361
- </fo:simple-page-master>
362
- <!-- odd pages -->
363
- <fo:simple-page-master master-name="odd-publishedISO" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
364
- <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom + 2}mm" margin-left="{$marginLeftRight1}mm" margin-right="{$marginLeftRight2}mm"/>
365
- <fo:region-before region-name="header-odd" extent="{$marginTop}mm"/> <!-- display-align="center" -->
366
- <fo:region-after region-name="footer-odd" extent="{$marginBottom}mm"/>
367
- <fo:region-start region-name="left-region" extent="{$marginLeftRight1}mm"/>
368
- <fo:region-end region-name="right-region" extent="{$marginLeftRight2}mm"/>
369
- </fo:simple-page-master>
370
- <!-- even pages -->
371
- <fo:simple-page-master master-name="even-publishedISO" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
372
- <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom + 2}mm" margin-left="{$marginLeftRight2}mm" margin-right="{$marginLeftRight1}mm"/>
373
- <fo:region-before region-name="header-even" extent="{$marginTop}mm"/>
374
- <fo:region-after region-name="footer-even" extent="{$marginBottom}mm"/>
375
- <fo:region-start region-name="left-region" extent="{$marginLeftRight2}mm"/>
376
- <fo:region-end region-name="right-region" extent="{$marginLeftRight1}mm"/>
377
- </fo:simple-page-master>
378
- <fo:simple-page-master master-name="blankpage" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
379
- <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom + 2}mm" margin-left="{$marginLeftRight2}mm" margin-right="{$marginLeftRight1}mm"/>
380
- <fo:region-before region-name="header" extent="{$marginTop}mm"/>
381
- <fo:region-after region-name="footer" extent="{$marginBottom}mm"/>
382
- <fo:region-start region-name="left" extent="{$marginLeftRight2}mm"/>
383
- <fo:region-end region-name="right" extent="{$marginLeftRight1}mm"/>
384
- </fo:simple-page-master>
385
- <fo:page-sequence-master master-name="preface-publishedISO">
386
- <fo:repeatable-page-master-alternatives>
387
- <fo:conditional-page-master-reference master-reference="blankpage" blank-or-not-blank="blank"/>
388
- <fo:conditional-page-master-reference odd-or-even="even" master-reference="even-publishedISO"/>
389
- <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd-publishedISO"/>
390
- </fo:repeatable-page-master-alternatives>
391
- </fo:page-sequence-master>
392
-
393
- <fo:page-sequence-master master-name="document-publishedISO">
394
- <fo:repeatable-page-master-alternatives>
395
- <fo:conditional-page-master-reference master-reference="first-publishedISO" page-position="first"/>
396
- <fo:conditional-page-master-reference odd-or-even="even" master-reference="even-publishedISO"/>
397
- <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd-publishedISO"/>
398
- </fo:repeatable-page-master-alternatives>
399
- </fo:page-sequence-master>
400
-
401
- <fo:simple-page-master master-name="last-page" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
402
- <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom}mm" margin-left="{$marginLeftRight2}mm" margin-right="{$marginLeftRight1}mm"/>
403
- <fo:region-before region-name="header-even" extent="{$marginTop}mm"/>
404
- <fo:region-after region-name="last-page-footer" extent="{$marginBottom}mm"/>
405
- <fo:region-start region-name="left-region" extent="{$marginLeftRight2}mm"/>
406
- <fo:region-end region-name="right-region" extent="{$marginLeftRight1}mm"/>
407
- </fo:simple-page-master>
408
-
409
- <!-- Index pages -->
410
- <fo:simple-page-master master-name="index-odd" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
411
- <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom}mm" margin-left="{$marginLeftRight1}mm" margin-right="{$marginLeftRight2}mm" column-count="2" column-gap="10mm"/>
412
- <fo:region-before region-name="header-odd" extent="{$marginTop}mm"/>
413
- <fo:region-after region-name="footer-odd" extent="{$marginBottom}mm"/>
414
- <fo:region-start region-name="left-region" extent="{$marginLeftRight1}mm"/>
415
- <fo:region-end region-name="right-region" extent="{$marginLeftRight2}mm"/>
416
- </fo:simple-page-master>
417
- <fo:simple-page-master master-name="index-even" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
418
- <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom}mm" margin-left="{$marginLeftRight2}mm" margin-right="{$marginLeftRight1}mm" column-count="2" column-gap="10mm"/>
419
- <fo:region-before region-name="header-even" extent="{$marginTop}mm"/>
420
- <fo:region-after region-name="footer-even" extent="{$marginBottom}mm"/>
421
- <fo:region-start region-name="left-region" extent="{$marginLeftRight2}mm"/>
422
- <fo:region-end region-name="right-region" extent="{$marginLeftRight1}mm"/>
423
- </fo:simple-page-master>
424
- <fo:page-sequence-master master-name="index">
425
- <fo:repeatable-page-master-alternatives>
426
- <fo:conditional-page-master-reference odd-or-even="even" master-reference="index-even"/>
427
- <fo:conditional-page-master-reference odd-or-even="odd" master-reference="index-odd"/>
428
- </fo:repeatable-page-master-alternatives>
429
- </fo:page-sequence-master>
430
-
431
- </fo:layout-master-set>
432
-
433
- <fo:declarations>
434
- <xsl:call-template name="addPDFUAmeta"/>
435
- <xsl:for-each select="//*[local-name() = 'eref'][generate-id(.)=generate-id(key('attachments',@bibitemid)[1])]">
436
- <xsl:variable name="url" select="concat('url(file:',$basepath, @bibitemid, ')')"/>
437
- <pdf:embedded-file src="{$url}" filename="{@bibitemid}"/>
438
- </xsl:for-each>
439
- <xsl:for-each select="//*[local-name() = 'eref'][generate-id(.)=generate-id(key('attachments2',@bibitemid)[1])]">
440
- <xsl:variable name="bibitemid" select="@bibitemid"/>
441
- <xsl:variable name="uri" select="normalize-space($bibitems/*[local-name() ='bibitem'][@hidden = 'true'][@id = $bibitemid][1]/*[local-name() = 'uri'][@type='citation'])"/>
442
- <xsl:if test="$uri != ''">
443
- <xsl:variable name="url" select="concat('url(file:',$basepath, $uri, ')')"/>
444
- <xsl:variable name="filename" select="concat(substring-before($bibitemid, '.exp_'), '.exp')"/>
445
- <pdf:embedded-file src="{$url}" filename="{$filename}"/>
446
- </xsl:if>
447
- </xsl:for-each>
448
- </fo:declarations>
286
+ <fo:layout-master-set>
287
+
288
+ <!-- cover page -->
289
+ <fo:simple-page-master master-name="cover-page" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
290
+ <fo:region-body margin-top="25.4mm" margin-bottom="25.4mm" margin-left="31.7mm" margin-right="31.7mm"/>
291
+ <fo:region-before region-name="cover-page-header" extent="25.4mm"/>
292
+ <fo:region-after/>
293
+ <fo:region-start region-name="cover-left-region" extent="31.7mm"/>
294
+ <fo:region-end region-name="cover-right-region" extent="31.7mm"/>
295
+ </fo:simple-page-master>
296
+
297
+ <fo:simple-page-master master-name="cover-page-published" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
298
+ <fo:region-body margin-top="12.7mm" margin-bottom="75mm" margin-left="78mm" margin-right="18.5mm"/>
299
+ <fo:region-before region-name="cover-page-header" extent="12.7mm"/>
300
+ <fo:region-after region-name="cover-page-footer" extent="75mm" display-align="after"/>
301
+ <fo:region-start region-name="cover-left-region" extent="78mm"/>
302
+ <fo:region-end region-name="cover-right-region" extent="18.5mm"/>
303
+ </fo:simple-page-master>
304
+
305
+ <fo:simple-page-master master-name="cover-page-publishedISO-odd" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
306
+ <fo:region-body margin-top="12.7mm" margin-bottom="75mm" margin-left="{$marginLeftRight1}mm" margin-right="{$marginLeftRight2}mm"/>
307
+ <fo:region-before region-name="cover-page-header" extent="12.7mm"/>
308
+ <fo:region-after region-name="cover-page-footer" extent="75mm" display-align="after"/>
309
+ <fo:region-start region-name="cover-left-region" extent="{$marginLeftRight1}mm"/>
310
+ <fo:region-end region-name="cover-right-region" extent="{$marginLeftRight2}mm"/>
311
+ </fo:simple-page-master>
312
+ <fo:simple-page-master master-name="cover-page-publishedISO-even" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
313
+ <fo:region-body margin-top="12.7mm" margin-bottom="75mm" margin-left="{$marginLeftRight2}mm" margin-right="{$marginLeftRight1}mm"/>
314
+ <fo:region-before region-name="cover-page-header" extent="12.7mm"/>
315
+ <fo:region-after region-name="cover-page-footer" extent="75mm" display-align="after"/>
316
+ <fo:region-start region-name="cover-left-region" extent="{$marginLeftRight2}mm"/>
317
+ <fo:region-end region-name="cover-right-region" extent="{$marginLeftRight1}mm"/>
318
+ </fo:simple-page-master>
319
+ <fo:page-sequence-master master-name="cover-page-publishedISO">
320
+ <fo:repeatable-page-master-alternatives>
321
+ <fo:conditional-page-master-reference odd-or-even="even" master-reference="cover-page-publishedISO-even"/>
322
+ <fo:conditional-page-master-reference odd-or-even="odd" master-reference="cover-page-publishedISO-odd"/>
323
+ </fo:repeatable-page-master-alternatives>
324
+ </fo:page-sequence-master>
325
+
326
+ <!-- contents pages -->
327
+ <!-- odd pages -->
328
+ <fo:simple-page-master master-name="odd" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
329
+ <fo:region-body margin-top="27.4mm" margin-bottom="{$marginBottom + 2}mm" margin-left="19mm" margin-right="19mm"/>
330
+ <fo:region-before region-name="header-odd" extent="27.4mm"/> <!-- display-align="center" -->
331
+ <fo:region-after region-name="footer-odd" extent="{$marginBottom}mm"/>
332
+ <fo:region-start region-name="left-region" extent="19mm"/>
333
+ <fo:region-end region-name="right-region" extent="19mm"/>
334
+ </fo:simple-page-master>
335
+ <fo:simple-page-master master-name="odd-landscape" page-width="{$pageHeight}mm" page-height="{$pageWidth}mm">
336
+ <fo:region-body margin-top="27.4mm" margin-bottom="{$marginBottom + 2}mm" margin-left="19mm" margin-right="19mm"/>
337
+ <fo:region-before region-name="header-odd" extent="27.4mm"/>
338
+ <fo:region-after region-name="footer-odd" extent="{$marginBottom}mm"/>
339
+ <fo:region-start region-name="left-region" extent="19mm"/>
340
+ <fo:region-end region-name="right-region" extent="19mm"/>
341
+ </fo:simple-page-master>
342
+ <!-- even pages -->
343
+ <fo:simple-page-master master-name="even" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
344
+ <fo:region-body margin-top="27.4mm" margin-bottom="{$marginBottom + 2}mm" margin-left="19mm" margin-right="19mm"/>
345
+ <fo:region-before region-name="header-even" extent="27.4mm"/> <!-- display-align="center" -->
346
+ <fo:region-after region-name="footer-even" extent="{$marginBottom}mm"/>
347
+ <fo:region-start region-name="left-region" extent="19mm"/>
348
+ <fo:region-end region-name="right-region" extent="19mm"/>
349
+ </fo:simple-page-master>
350
+ <fo:simple-page-master master-name="even-landscape" page-width="{$pageHeight}mm" page-height="{$pageWidth}mm">
351
+ <fo:region-body margin-top="27.4mm" margin-bottom="{$marginBottom + 2}mm" margin-left="19mm" margin-right="19mm"/>
352
+ <fo:region-before region-name="header-even" extent="27.4mm"/> <!-- display-align="center" -->
353
+ <fo:region-after region-name="footer-even" extent="{$marginBottom}mm"/>
354
+ <fo:region-start region-name="left-region" extent="19mm"/>
355
+ <fo:region-end region-name="right-region" extent="19mm"/>
356
+ </fo:simple-page-master>
357
+ <fo:page-sequence-master master-name="preface">
358
+ <fo:repeatable-page-master-alternatives>
359
+ <fo:conditional-page-master-reference odd-or-even="even" master-reference="even"/>
360
+ <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd"/>
361
+ </fo:repeatable-page-master-alternatives>
362
+ </fo:page-sequence-master>
363
+ <fo:page-sequence-master master-name="document">
364
+ <fo:repeatable-page-master-alternatives>
365
+ <fo:conditional-page-master-reference odd-or-even="even" master-reference="even"/>
366
+ <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd"/>
367
+ </fo:repeatable-page-master-alternatives>
368
+ </fo:page-sequence-master>
369
+ <fo:page-sequence-master master-name="document-portrait">
370
+ <fo:repeatable-page-master-alternatives>
371
+ <fo:conditional-page-master-reference odd-or-even="even" master-reference="even"/>
372
+ <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd"/>
373
+ </fo:repeatable-page-master-alternatives>
374
+ </fo:page-sequence-master>
375
+ <fo:page-sequence-master master-name="document-landscape">
376
+ <fo:repeatable-page-master-alternatives>
377
+ <fo:conditional-page-master-reference odd-or-even="even" master-reference="even-landscape"/>
378
+ <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd-landscape"/>
379
+ </fo:repeatable-page-master-alternatives>
380
+ </fo:page-sequence-master>
381
+
382
+ <!-- first page -->
383
+ <fo:simple-page-master master-name="first-publishedISO" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
384
+ <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom + 2}mm" margin-left="{$marginLeftRight1}mm" margin-right="{$marginLeftRight2}mm"/>
385
+ <fo:region-before region-name="header-first" extent="{$marginTop}mm"/> <!-- display-align="center" -->
386
+ <fo:region-after region-name="footer-odd" extent="{$marginBottom}mm"/>
387
+ <fo:region-start region-name="left-region" extent="{$marginLeftRight1}mm"/>
388
+ <fo:region-end region-name="right-region" extent="{$marginLeftRight2}mm"/>
389
+ </fo:simple-page-master>
390
+ <!-- odd pages -->
391
+ <fo:simple-page-master master-name="odd-publishedISO" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
392
+ <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom + 2}mm" margin-left="{$marginLeftRight1}mm" margin-right="{$marginLeftRight2}mm"/>
393
+ <fo:region-before region-name="header-odd" extent="{$marginTop}mm"/> <!-- display-align="center" -->
394
+ <fo:region-after region-name="footer-odd" extent="{$marginBottom}mm"/>
395
+ <fo:region-start region-name="left-region" extent="{$marginLeftRight1}mm"/>
396
+ <fo:region-end region-name="right-region" extent="{$marginLeftRight2}mm"/>
397
+ </fo:simple-page-master>
398
+ <fo:simple-page-master master-name="odd-publishedISO-landscape" page-width="{$pageHeight}mm" page-height="{$pageWidth}mm">
399
+ <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom + 2}mm" margin-left="{$marginLeftRight1}mm" margin-right="{$marginLeftRight2}mm"/>
400
+ <fo:region-before region-name="header-odd" extent="{$marginTop}mm"/> <!-- display-align="center" -->
401
+ <fo:region-after region-name="footer-odd" extent="{$marginBottom}mm"/>
402
+ <fo:region-start region-name="left-region" extent="{$marginLeftRight1}mm"/>
403
+ <fo:region-end region-name="right-region" extent="{$marginLeftRight2}mm"/>
404
+ </fo:simple-page-master>
405
+ <!-- even pages -->
406
+ <fo:simple-page-master master-name="even-publishedISO" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
407
+ <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom + 2}mm" margin-left="{$marginLeftRight2}mm" margin-right="{$marginLeftRight1}mm"/>
408
+ <fo:region-before region-name="header-even" extent="{$marginTop}mm"/>
409
+ <fo:region-after region-name="footer-even" extent="{$marginBottom}mm"/>
410
+ <fo:region-start region-name="left-region" extent="{$marginLeftRight2}mm"/>
411
+ <fo:region-end region-name="right-region" extent="{$marginLeftRight1}mm"/>
412
+ </fo:simple-page-master>
413
+ <fo:simple-page-master master-name="even-publishedISO-landscape" page-width="{$pageHeight}mm" page-height="{$pageWidth}mm">
414
+ <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom + 2}mm" margin-left="{$marginLeftRight2}mm" margin-right="{$marginLeftRight1}mm"/>
415
+ <fo:region-before region-name="header-even" extent="{$marginTop}mm"/>
416
+ <fo:region-after region-name="footer-even" extent="{$marginBottom}mm"/>
417
+ <fo:region-start region-name="left-region" extent="{$marginLeftRight2}mm"/>
418
+ <fo:region-end region-name="right-region" extent="{$marginLeftRight1}mm"/>
419
+ </fo:simple-page-master>
420
+ <fo:simple-page-master master-name="blankpage" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
421
+ <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom + 2}mm" margin-left="{$marginLeftRight2}mm" margin-right="{$marginLeftRight1}mm"/>
422
+ <fo:region-before region-name="header" extent="{$marginTop}mm"/>
423
+ <fo:region-after region-name="footer" extent="{$marginBottom}mm"/>
424
+ <fo:region-start region-name="left" extent="{$marginLeftRight2}mm"/>
425
+ <fo:region-end region-name="right" extent="{$marginLeftRight1}mm"/>
426
+ </fo:simple-page-master>
427
+ <fo:page-sequence-master master-name="preface-publishedISO">
428
+ <fo:repeatable-page-master-alternatives>
429
+ <fo:conditional-page-master-reference master-reference="blankpage" blank-or-not-blank="blank"/>
430
+ <fo:conditional-page-master-reference odd-or-even="even" master-reference="even-publishedISO"/>
431
+ <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd-publishedISO"/>
432
+ </fo:repeatable-page-master-alternatives>
433
+ </fo:page-sequence-master>
434
+
435
+ <fo:page-sequence-master master-name="document-publishedISO">
436
+ <fo:repeatable-page-master-alternatives>
437
+ <fo:conditional-page-master-reference master-reference="first-publishedISO" page-position="first"/>
438
+ <fo:conditional-page-master-reference odd-or-even="even" master-reference="even-publishedISO"/>
439
+ <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd-publishedISO"/>
440
+ </fo:repeatable-page-master-alternatives>
441
+ </fo:page-sequence-master>
442
+ <fo:page-sequence-master master-name="document-publishedISO-portrait">
443
+ <fo:repeatable-page-master-alternatives>
444
+ <fo:conditional-page-master-reference master-reference="first-publishedISO" page-position="first"/>
445
+ <fo:conditional-page-master-reference odd-or-even="even" master-reference="even-publishedISO"/>
446
+ <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd-publishedISO"/>
447
+ </fo:repeatable-page-master-alternatives>
448
+ </fo:page-sequence-master>
449
+ <fo:page-sequence-master master-name="document-publishedISO-landscape">
450
+ <fo:repeatable-page-master-alternatives>
451
+ <fo:conditional-page-master-reference master-reference="first-publishedISO" page-position="first"/>
452
+ <fo:conditional-page-master-reference odd-or-even="even" master-reference="even-publishedISO-landscape"/>
453
+ <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd-publishedISO-landscape"/>
454
+ </fo:repeatable-page-master-alternatives>
455
+ </fo:page-sequence-master>
456
+
457
+ <fo:simple-page-master master-name="last-page" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
458
+ <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom}mm" margin-left="{$marginLeftRight2}mm" margin-right="{$marginLeftRight1}mm"/>
459
+ <fo:region-before region-name="header-even" extent="{$marginTop}mm"/>
460
+ <fo:region-after region-name="last-page-footer" extent="{$marginBottom}mm"/>
461
+ <fo:region-start region-name="left-region" extent="{$marginLeftRight2}mm"/>
462
+ <fo:region-end region-name="right-region" extent="{$marginLeftRight1}mm"/>
463
+ </fo:simple-page-master>
464
+
465
+ <!-- Index pages -->
466
+ <fo:simple-page-master master-name="index-odd" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
467
+ <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom}mm" margin-left="{$marginLeftRight1}mm" margin-right="{$marginLeftRight2}mm" column-count="2" column-gap="10mm"/>
468
+ <fo:region-before region-name="header-odd" extent="{$marginTop}mm"/>
469
+ <fo:region-after region-name="footer-odd" extent="{$marginBottom}mm"/>
470
+ <fo:region-start region-name="left-region" extent="{$marginLeftRight1}mm"/>
471
+ <fo:region-end region-name="right-region" extent="{$marginLeftRight2}mm"/>
472
+ </fo:simple-page-master>
473
+ <fo:simple-page-master master-name="index-even" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
474
+ <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom}mm" margin-left="{$marginLeftRight2}mm" margin-right="{$marginLeftRight1}mm" column-count="2" column-gap="10mm"/>
475
+ <fo:region-before region-name="header-even" extent="{$marginTop}mm"/>
476
+ <fo:region-after region-name="footer-even" extent="{$marginBottom}mm"/>
477
+ <fo:region-start region-name="left-region" extent="{$marginLeftRight2}mm"/>
478
+ <fo:region-end region-name="right-region" extent="{$marginLeftRight1}mm"/>
479
+ </fo:simple-page-master>
480
+ <fo:page-sequence-master master-name="index">
481
+ <fo:repeatable-page-master-alternatives>
482
+ <fo:conditional-page-master-reference odd-or-even="even" master-reference="index-even"/>
483
+ <fo:conditional-page-master-reference odd-or-even="odd" master-reference="index-odd"/>
484
+ </fo:repeatable-page-master-alternatives>
485
+ </fo:page-sequence-master>
486
+
487
+ </fo:layout-master-set>
488
+
489
+ <fo:declarations>
490
+ <xsl:call-template name="addPDFUAmeta"/>
491
+ <xsl:for-each select="//*[local-name() = 'eref'][generate-id(.)=generate-id(key('attachments',@bibitemid)[1])]">
492
+ <xsl:variable name="url" select="concat('url(file:',$basepath, @bibitemid, ')')"/>
493
+ <pdf:embedded-file src="{$url}" filename="{@bibitemid}"/>
494
+ </xsl:for-each>
495
+ <xsl:for-each select="//*[local-name() = 'eref'][generate-id(.)=generate-id(key('attachments2',@bibitemid)[1])]">
496
+ <xsl:variable name="bibitemid" select="@bibitemid"/>
497
+ <xsl:variable name="uri" select="normalize-space($bibitems/*[local-name() ='bibitem'][@hidden = 'true'][@id = $bibitemid][1]/*[local-name() = 'uri'][@type='citation'])"/>
498
+ <xsl:if test="$uri != ''">
499
+ <xsl:variable name="url" select="concat('url(file:',$basepath, $uri, ')')"/>
500
+ <xsl:variable name="filename" select="concat(substring-before($bibitemid, '.exp_'), '.exp')"/>
501
+ <pdf:embedded-file src="{$url}" filename="{$filename}"/>
502
+ </xsl:if>
503
+ </xsl:for-each>
504
+ </fo:declarations>
449
505
 
450
- <xsl:call-template name="addBookmarks">
451
- <xsl:with-param name="contents" select="$contents"/>
452
- </xsl:call-template>
506
+ <xsl:call-template name="addBookmarks">
507
+ <xsl:with-param name="contents" select="$contents"/>
508
+ </xsl:call-template>
453
509
 
454
- <!-- cover page -->
455
- <xsl:choose>
456
- <xsl:when test="$stage-abbreviation != ''">
457
- <fo:page-sequence master-reference="cover-page-publishedISO" force-page-count="no-force">
458
- <fo:static-content flow-name="cover-page-footer" font-size="10pt">
459
- <fo:table table-layout="fixed" width="100%">
460
- <fo:table-column column-width="52mm"/>
461
- <fo:table-column column-width="7.5mm"/>
462
- <fo:table-column column-width="112.5mm"/>
463
- <fo:table-body>
464
- <fo:table-row>
465
- <fo:table-cell font-size="6.5pt" text-align="justify" display-align="after" padding-bottom="8mm">
466
- <xsl:if test="$stage-abbreviation = 'DAmd' or $stage-abbreviation = 'DAM'">
467
- <xsl:attribute name="font-size">7pt</xsl:attribute>
468
- </xsl:if>
469
- <!-- margin-top="-30mm" -->
470
- <fo:block> <!-- margin-top="-100mm" -->
471
- <xsl:if test="$stage-abbreviation = 'DIS' or $stage-abbreviation = 'DAmd' or $stage-abbreviation = 'DAM' or $stage-abbreviation = 'NWIP' or $stage-abbreviation = 'NP' or $stage-abbreviation = 'PWI' or $stage-abbreviation = 'AWI' or $stage-abbreviation = 'WD' or $stage-abbreviation = 'CD'">
472
- <fo:block margin-bottom="1.5mm">
473
- <xsl:text>THIS DOCUMENT IS A DRAFT CIRCULATED FOR COMMENT AND APPROVAL. IT IS THEREFORE SUBJECT TO CHANGE AND MAY NOT BE REFERRED TO AS AN INTERNATIONAL STANDARD UNTIL PUBLISHED AS SUCH.</xsl:text>
474
- </fo:block>
475
- </xsl:if>
476
- <xsl:if test="$stage-abbreviation = 'FDIS' or $stage-abbreviation = 'DIS' or $stage-abbreviation = 'FDAmd' or $stage-abbreviation = 'FDAM' or $stage-abbreviation = 'DAmd' or $stage-abbreviation = 'DAM' or $stage-abbreviation = 'NWIP' or $stage-abbreviation = 'NP' or $stage-abbreviation = 'PWI' or $stage-abbreviation = 'AWI' or $stage-abbreviation = 'WD' or $stage-abbreviation = 'CD'">
477
- <fo:block margin-bottom="1.5mm">
478
- <xsl:text>RECIPIENTS OF THIS DRAFT ARE INVITED TO
479
- SUBMIT, WITH THEIR COMMENTS, NOTIFICATION
480
- OF ANY RELEVANT PATENT RIGHTS OF WHICH
481
- THEY ARE AWARE AND TO PROVIDE SUPPORTING
482
- DOCUMENTATION.</xsl:text>
483
- </fo:block>
484
- <fo:block>
485
- <xsl:text>IN ADDITION TO THEIR EVALUATION AS
486
- BEING ACCEPTABLE FOR INDUSTRIAL, TECHNOLOGICAL,
487
- COMMERCIAL AND USER PURPOSES,
488
- DRAFT INTERNATIONAL STANDARDS MAY ON
489
- OCCASION HAVE TO BE CONSIDERED IN THE
490
- LIGHT OF THEIR POTENTIAL TO BECOME STANDARDS
491
- TO WHICH REFERENCE MAY BE MADE IN
492
- NATIONAL REGULATIONS.</xsl:text>
493
- </fo:block>
510
+ <!-- cover page -->
511
+ <xsl:choose>
512
+ <xsl:when test="$stage-abbreviation != ''">
513
+ <fo:page-sequence master-reference="cover-page-publishedISO" force-page-count="no-force">
514
+ <fo:static-content flow-name="cover-page-footer" font-size="10pt">
515
+ <fo:table table-layout="fixed" width="100%">
516
+ <fo:table-column column-width="52mm"/>
517
+ <fo:table-column column-width="7.5mm"/>
518
+ <fo:table-column column-width="112.5mm"/>
519
+ <fo:table-body>
520
+ <fo:table-row>
521
+ <fo:table-cell font-size="6.5pt" text-align="justify" display-align="after" padding-bottom="8mm">
522
+ <xsl:if test="$stage-abbreviation = 'DAmd' or $stage-abbreviation = 'DAM'">
523
+ <xsl:attribute name="font-size">7pt</xsl:attribute>
494
524
  </xsl:if>
495
- </fo:block>
496
- </fo:table-cell>
497
- <fo:table-cell>
498
- <fo:block> </fo:block>
499
- </fo:table-cell>
500
- <fo:table-cell display-align="after" padding-bottom="3mm">
501
- <fo:block-container height="22.5mm" display-align="center">
525
+ <!-- margin-top="-30mm" -->
526
+ <fo:block> <!-- margin-top="-100mm" -->
527
+ <xsl:if test="$stage-abbreviation = 'DIS' or $stage-abbreviation = 'DAmd' or $stage-abbreviation = 'DAM' or $stage-abbreviation = 'NWIP' or $stage-abbreviation = 'NP' or $stage-abbreviation = 'PWI' or $stage-abbreviation = 'AWI' or $stage-abbreviation = 'WD' or $stage-abbreviation = 'CD'">
528
+ <fo:block margin-bottom="1.5mm">
529
+ <xsl:text>THIS DOCUMENT IS A DRAFT CIRCULATED FOR COMMENT AND APPROVAL. IT IS THEREFORE SUBJECT TO CHANGE AND MAY NOT BE REFERRED TO AS AN INTERNATIONAL STANDARD UNTIL PUBLISHED AS SUCH.</xsl:text>
530
+ </fo:block>
531
+ </xsl:if>
532
+ <xsl:if test="$stage-abbreviation = 'FDIS' or $stage-abbreviation = 'DIS' or $stage-abbreviation = 'FDAmd' or $stage-abbreviation = 'FDAM' or $stage-abbreviation = 'DAmd' or $stage-abbreviation = 'DAM' or $stage-abbreviation = 'NWIP' or $stage-abbreviation = 'NP' or $stage-abbreviation = 'PWI' or $stage-abbreviation = 'AWI' or $stage-abbreviation = 'WD' or $stage-abbreviation = 'CD'">
533
+ <fo:block margin-bottom="1.5mm">
534
+ <xsl:text>RECIPIENTS OF THIS DRAFT ARE INVITED TO
535
+ SUBMIT, WITH THEIR COMMENTS, NOTIFICATION
536
+ OF ANY RELEVANT PATENT RIGHTS OF WHICH
537
+ THEY ARE AWARE AND TO PROVIDE SUPPORTING
538
+ DOCUMENTATION.</xsl:text>
539
+ </fo:block>
540
+ <fo:block>
541
+ <xsl:text>IN ADDITION TO THEIR EVALUATION AS
542
+ BEING ACCEPTABLE FOR INDUSTRIAL, TECHNOLOGICAL,
543
+ COMMERCIAL AND USER PURPOSES,
544
+ DRAFT INTERNATIONAL STANDARDS MAY ON
545
+ OCCASION HAVE TO BE CONSIDERED IN THE
546
+ LIGHT OF THEIR POTENTIAL TO BECOME STANDARDS
547
+ TO WHICH REFERENCE MAY BE MADE IN
548
+ NATIONAL REGULATIONS.</xsl:text>
549
+ </fo:block>
550
+ </xsl:if>
551
+ </fo:block>
552
+ </fo:table-cell>
553
+ <fo:table-cell>
554
+ <fo:block> </fo:block>
555
+ </fo:table-cell>
556
+ <fo:table-cell display-align="after" padding-bottom="3mm">
557
+ <fo:block-container height="22.5mm" display-align="center">
502
558
 
503
- <xsl:variable name="iso-fast-track">false</xsl:variable>
559
+ <xsl:variable name="iso-fast-track">false</xsl:variable>
504
560
 
505
- <xsl:if test="normalize-space($iso-fast-track) = 'true'">
506
- <xsl:attribute name="height">28mm</xsl:attribute>
507
- </xsl:if>
561
+ <xsl:if test="normalize-space($iso-fast-track) = 'true'">
562
+ <xsl:attribute name="height">28mm</xsl:attribute>
563
+ </xsl:if>
508
564
 
509
- <fo:block>
510
- <xsl:if test="$stage-abbreviation = 'NWIP' or $stage-abbreviation = 'NP' or $stage-abbreviation = 'PWI' or $stage-abbreviation = 'AWI' or $stage-abbreviation = 'WD' or $stage-abbreviation = 'CD' or $stage-abbreviation = 'DIS' or $stage-abbreviation = 'FDIS' or $stage-abbreviation = 'DAmd' or $stage-abbreviation = 'DAM'">
511
- <xsl:variable name="text">
512
- <xsl:for-each select="/iso:iso-standard/iso:preface/iso:note[@coverpage='true']/iso:p">
513
- <fo:block>
514
- <xsl:apply-templates/>
515
- </fo:block>
516
- </xsl:for-each>
517
- </xsl:variable>
518
- <xsl:if test="normalize-space($text) != ''">
519
- <fo:block-container margin-left="1mm"> <!-- margin-bottom="7mm" margin-top="-15mm" -->
520
- <fo:block font-size="9pt" border="0.5pt solid black" fox:border-radius="5pt" padding-left="2mm" padding-top="2mm" padding-bottom="2mm">
521
- <!-- <xsl:text>This document is circulated as received from the committee secretariat.</xsl:text> -->
522
- <xsl:copy-of select="xalan:nodeset($text)/node()"/>
523
- </fo:block>
524
- </fo:block-container>
525
- </xsl:if>
565
+ <fo:block>
566
+ <xsl:if test="$stage-abbreviation = 'NWIP' or $stage-abbreviation = 'NP' or $stage-abbreviation = 'PWI' or $stage-abbreviation = 'AWI' or $stage-abbreviation = 'WD' or $stage-abbreviation = 'CD' or $stage-abbreviation = 'DIS' or $stage-abbreviation = 'FDIS' or $stage-abbreviation = 'DAmd' or $stage-abbreviation = 'DAM'">
567
+ <xsl:variable name="text">
568
+ <xsl:for-each select="/iso:iso-standard/iso:preface/iso:note[@coverpage='true']/iso:p">
569
+ <fo:block>
570
+ <xsl:apply-templates/>
571
+ </fo:block>
572
+ </xsl:for-each>
573
+ </xsl:variable>
574
+ <xsl:if test="normalize-space($text) != ''">
575
+ <fo:block-container margin-left="1mm"> <!-- margin-bottom="7mm" margin-top="-15mm" -->
576
+ <fo:block font-size="9pt" border="0.5pt solid black" fox:border-radius="5pt" padding-left="2mm" padding-top="2mm" padding-bottom="2mm">
577
+ <!-- <xsl:text>This document is circulated as received from the committee secretariat.</xsl:text> -->
578
+ <xsl:copy-of select="xalan:nodeset($text)/node()"/>
579
+ </fo:block>
580
+ </fo:block-container>
581
+ </xsl:if>
526
582
 
527
- <xsl:if test="normalize-space($iso-fast-track) = 'true'">
528
- <fo:block-container space-before="2mm">
529
- <fo:block background-color="rgb(77,77,77)" color="white" fox:border-radius="5pt" text-align="center" display-align="center" font-size="19pt" font-weight="bold">
530
- <fo:block-container height="13.2mm">
531
- <fo:block>
532
- <xsl:text>FAST TRACK PROCEDURE</xsl:text>
533
- </fo:block>
534
- </fo:block-container>
535
- </fo:block>
536
- </fo:block-container>
583
+ <xsl:if test="normalize-space($iso-fast-track) = 'true'">
584
+ <fo:block-container space-before="2mm">
585
+ <fo:block background-color="rgb(77,77,77)" color="white" fox:border-radius="5pt" text-align="center" display-align="center" font-size="19pt" font-weight="bold">
586
+ <fo:block-container height="13.2mm">
587
+ <fo:block>
588
+ <xsl:text>FAST TRACK PROCEDURE</xsl:text>
589
+ </fo:block>
590
+ </fo:block-container>
591
+ </fo:block>
592
+ </fo:block-container>
593
+ </xsl:if>
537
594
  </xsl:if>
538
- </xsl:if>
539
- </fo:block>
540
- </fo:block-container>
541
- <fo:block>
542
- <xsl:call-template name="insertTripleLine"/>
543
- <fo:table table-layout="fixed" width="100%"> <!-- margin-bottom="3mm" -->
544
- <fo:table-column column-width="50%"/>
545
- <fo:table-column column-width="50%"/>
546
- <fo:table-body>
547
- <fo:table-row height="34mm">
548
- <fo:table-cell display-align="center">
549
-
550
- <xsl:if test="$copyrightAbbrIEEE != ''">
551
- <xsl:attribute name="display-align">before</xsl:attribute>
552
- </xsl:if>
553
-
554
- <fo:block text-align="left" margin-top="2mm">
595
+ </fo:block>
596
+ </fo:block-container>
597
+ <fo:block>
598
+ <xsl:call-template name="insertTripleLine"/>
599
+ <fo:table table-layout="fixed" width="100%"> <!-- margin-bottom="3mm" -->
600
+ <fo:table-column column-width="50%"/>
601
+ <fo:table-column column-width="50%"/>
602
+ <fo:table-body>
603
+ <fo:table-row height="34mm">
604
+ <fo:table-cell display-align="center">
555
605
 
556
606
  <xsl:if test="$copyrightAbbrIEEE != ''">
557
- <xsl:attribute name="margin-top">0</xsl:attribute>
607
+ <xsl:attribute name="display-align">before</xsl:attribute>
558
608
  </xsl:if>
559
609
 
560
- <!-- <xsl:variable name="docid" select="substring-before(/iso:iso-standard/iso:bibdata/iso:docidentifier, ' ')"/>
561
- <xsl:for-each select="xalan:tokenize($docid, '/')"> -->
562
- <xsl:variable name="content-height">
563
- <xsl:choose>
564
- <xsl:when test="$copyrightAbbrIEEE != ''">13.9</xsl:when>
565
- <xsl:otherwise>19</xsl:otherwise>
566
- </xsl:choose>
567
- </xsl:variable>
568
-
569
- <xsl:for-each select="/iso:iso-standard/iso:bibdata/iso:copyright/iso:owner/iso:organization/iso:abbreviation[. != 'IEEE']">
570
- <xsl:choose>
571
- <xsl:when test=". = 'ISO'">
572
- <fo:external-graphic src="{concat('data:image/png;base64,', normalize-space($Image-ISO-Logo))}" content-height="{$content-height}mm" content-width="scale-to-fit" scaling="uniform" fox:alt-text="Image {@alt}"/>
573
- </xsl:when>
574
- <xsl:when test=". = 'IEC'">
575
- <fo:external-graphic src="{concat('data:image/png;base64,', normalize-space($Image-IEC-Logo))}" content-height="{$content-height}mm" content-width="scale-to-fit" scaling="uniform" fox:alt-text="Image {@alt}"/>
576
- </xsl:when>
577
- <xsl:otherwise/>
578
- </xsl:choose>
579
- <xsl:if test="position() != last()">
580
- <fo:inline padding-right="1mm"> </fo:inline>
581
- </xsl:if>
582
- </xsl:for-each>
583
- <xsl:if test="$copyrightAbbrIEEE != ''">
584
- <fo:block>
585
- <fo:external-graphic src="{concat('data:image/png;base64,', normalize-space($Image-IEEE-Logo))}" content-height="11mm" content-width="scale-to-fit" scaling="uniform" fox:alt-text="Image {@alt}"/>
586
- </fo:block>
587
- </xsl:if>
588
- </fo:block>
589
- </fo:table-cell>
590
- <fo:table-cell display-align="center">
591
- <fo:block text-align="right">
592
- <!-- Reference number -->
593
- <fo:block>
594
- <xsl:call-template name="getLocalizedString">
595
- <xsl:with-param name="key">reference_number</xsl:with-param>
596
- </xsl:call-template>
597
- </fo:block>
598
- <fo:block>
599
- <xsl:value-of select="$ISOname"/>
600
- </fo:block>
601
- <fo:block space-before="28pt">
610
+ <fo:block text-align="left" margin-top="2mm">
611
+
602
612
  <xsl:if test="$copyrightAbbrIEEE != ''">
603
- <xsl:attribute name="space-before">14pt</xsl:attribute>
613
+ <xsl:attribute name="margin-top">0</xsl:attribute>
604
614
  </xsl:if>
605
- <fo:inline font-size="9pt">©</fo:inline><xsl:value-of select="concat(' ', $copyrightAbbr, ' ', $copyrightYear)"/>
615
+
616
+ <!-- <xsl:variable name="docid" select="substring-before(/iso:iso-standard/iso:bibdata/iso:docidentifier, ' ')"/>
617
+ <xsl:for-each select="xalan:tokenize($docid, '/')"> -->
618
+ <xsl:variable name="content-height">
619
+ <xsl:choose>
620
+ <xsl:when test="$copyrightAbbrIEEE != ''">13.9</xsl:when>
621
+ <xsl:otherwise>19</xsl:otherwise>
622
+ </xsl:choose>
623
+ </xsl:variable>
624
+
625
+ <xsl:for-each select="/iso:iso-standard/iso:bibdata/iso:copyright/iso:owner/iso:organization/iso:abbreviation[. != 'IEEE']">
626
+ <xsl:choose>
627
+ <xsl:when test=". = 'ISO'">
628
+ <fo:external-graphic src="{concat('data:image/png;base64,', normalize-space($Image-ISO-Logo))}" content-height="{$content-height}mm" content-width="scale-to-fit" scaling="uniform" fox:alt-text="Image {@alt}"/>
629
+ </xsl:when>
630
+ <xsl:when test=". = 'IEC'">
631
+ <fo:external-graphic src="{concat('data:image/png;base64,', normalize-space($Image-IEC-Logo))}" content-height="{$content-height}mm" content-width="scale-to-fit" scaling="uniform" fox:alt-text="Image {@alt}"/>
632
+ </xsl:when>
633
+ <xsl:otherwise/>
634
+ </xsl:choose>
635
+ <xsl:if test="position() != last()">
636
+ <fo:inline padding-right="1mm"> </fo:inline>
637
+ </xsl:if>
638
+ </xsl:for-each>
606
639
  <xsl:if test="$copyrightAbbrIEEE != ''">
607
- <xsl:value-of select="$linebreak"/>
608
- <fo:inline font-size="9pt">©</fo:inline>
609
- <xsl:value-of select="concat(' ', $copyrightAbbrIEEE, ' ', $copyrightYear)"/>
640
+ <fo:block>
641
+ <fo:external-graphic src="{concat('data:image/png;base64,', normalize-space($Image-IEEE-Logo))}" content-height="11mm" content-width="scale-to-fit" scaling="uniform" fox:alt-text="Image {@alt}"/>
642
+ </fo:block>
610
643
  </xsl:if>
611
644
  </fo:block>
612
- </fo:block>
613
- </fo:table-cell>
614
- </fo:table-row>
615
- </fo:table-body>
616
- </fo:table>
645
+ </fo:table-cell>
646
+ <fo:table-cell display-align="center">
647
+ <fo:block text-align="right">
648
+ <!-- Reference number -->
649
+ <fo:block>
650
+ <xsl:call-template name="getLocalizedString">
651
+ <xsl:with-param name="key">reference_number</xsl:with-param>
652
+ </xsl:call-template>
653
+ </fo:block>
654
+ <fo:block>
655
+ <xsl:value-of select="$ISOname"/>
656
+ </fo:block>
657
+ <fo:block space-before="28pt">
658
+ <xsl:if test="$copyrightAbbrIEEE != ''">
659
+ <xsl:attribute name="space-before">14pt</xsl:attribute>
660
+ </xsl:if>
661
+ <fo:inline font-size="9pt">©</fo:inline><xsl:value-of select="concat(' ', $copyrightAbbr, ' ', $copyrightYear)"/>
662
+ <xsl:if test="$copyrightAbbrIEEE != ''">
663
+ <xsl:value-of select="$linebreak"/>
664
+ <fo:inline font-size="9pt">©</fo:inline>
665
+ <xsl:value-of select="concat(' ', $copyrightAbbrIEEE, ' ', $copyrightYear)"/>
666
+ </xsl:if>
667
+ </fo:block>
668
+ </fo:block>
669
+ </fo:table-cell>
670
+ </fo:table-row>
671
+ </fo:table-body>
672
+ </fo:table>
673
+ </fo:block>
674
+ </fo:table-cell>
675
+ </fo:table-row>
676
+ </fo:table-body>
677
+ </fo:table>
678
+ </fo:static-content>
679
+
680
+ <xsl:choose>
681
+ <!-- COVER PAGE for DIS document only -->
682
+ <xsl:when test="$stage-abbreviation = 'DIS' or $stage-abbreviation = 'DAmd' or $stage-abbreviation = 'DAM'">
683
+ <fo:flow flow-name="xsl-region-body">
684
+ <fo:block-container>
685
+ <fo:block margin-top="-1mm" font-size="20pt" text-align="right">
686
+ <xsl:value-of select="$stage-fullname-uppercased"/>
687
+ </fo:block>
688
+ <fo:block font-size="20pt" font-weight="bold" text-align="right">
689
+ <xsl:value-of select="$docidentifierISO"/>
617
690
  </fo:block>
618
- </fo:table-cell>
619
- </fo:table-row>
620
- </fo:table-body>
621
- </fo:table>
622
- </fo:static-content>
623
691
 
624
- <xsl:choose>
625
- <!-- COVER PAGE for DIS document only -->
626
- <xsl:when test="$stage-abbreviation = 'DIS' or $stage-abbreviation = 'DAmd' or $stage-abbreviation = 'DAM'">
627
- <fo:flow flow-name="xsl-region-body">
628
- <fo:block-container>
629
- <fo:block margin-top="-1mm" font-size="20pt" text-align="right">
630
- <xsl:value-of select="$stage-fullname-uppercased"/>
631
- </fo:block>
632
- <fo:block font-size="20pt" font-weight="bold" text-align="right">
633
- <xsl:value-of select="$docidentifierISO"/>
634
- </fo:block>
692
+ <fo:table table-layout="fixed" width="100%" margin-top="18mm">
693
+ <fo:table-column column-width="59.5mm"/>
694
+ <fo:table-column column-width="52mm"/>
695
+ <fo:table-column column-width="59mm"/>
696
+ <fo:table-body>
697
+ <fo:table-row>
698
+ <fo:table-cell>
699
+ <fo:block> </fo:block>
700
+ </fo:table-cell>
701
+ <fo:table-cell>
702
+ <fo:block margin-bottom="3mm">
703
+ <xsl:copy-of select="$editorialgroup"/>
704
+ </fo:block>
705
+ </fo:table-cell>
706
+ <fo:table-cell>
707
+ <fo:block margin-bottom="3mm">
708
+ <xsl:copy-of select="$secretariat"/>
709
+ </fo:block>
710
+ </fo:table-cell>
711
+ </fo:table-row>
712
+ <fo:table-row>
713
+ <fo:table-cell>
714
+ <fo:block> </fo:block>
715
+ </fo:table-cell>
716
+ <fo:table-cell>
717
+ <fo:block>Voting begins on:</fo:block>
718
+ </fo:table-cell>
719
+ <fo:table-cell>
720
+ <fo:block>Voting terminates on:</fo:block>
721
+ </fo:table-cell>
722
+ </fo:table-row>
723
+ <fo:table-row>
724
+ <fo:table-cell>
725
+ <fo:block> </fo:block>
726
+ </fo:table-cell>
727
+ <fo:table-cell>
728
+ <fo:block font-weight="bold">
729
+ <xsl:choose>
730
+ <xsl:when test="/iso:iso-standard/iso:bibdata/iso:date[@type = 'vote-started']/iso:on">
731
+ <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:date[@type = 'vote-started']/iso:on"/>
732
+ </xsl:when>
733
+ <xsl:otherwise>YYYY-MM-DD</xsl:otherwise>
734
+ </xsl:choose>
735
+ </fo:block>
736
+ </fo:table-cell>
737
+ <fo:table-cell>
738
+ <fo:block font-weight="bold">
739
+ <xsl:choose>
740
+ <xsl:when test="/iso:iso-standard/iso:bibdata/iso:date[@type = 'vote-ended']/iso:on">
741
+ <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:date[@type = 'vote-ended']/iso:on"/>
742
+ </xsl:when>
743
+ <xsl:otherwise>YYYY-MM-DD</xsl:otherwise>
744
+ </xsl:choose>
745
+ </fo:block>
746
+ </fo:table-cell>
747
+ </fo:table-row>
748
+ </fo:table-body>
749
+ </fo:table>
635
750
 
636
- <fo:table table-layout="fixed" width="100%" margin-top="18mm">
637
- <fo:table-column column-width="59.5mm"/>
638
- <fo:table-column column-width="52mm"/>
639
- <fo:table-column column-width="59mm"/>
640
- <fo:table-body>
641
- <fo:table-row>
642
- <fo:table-cell>
643
- <fo:block> </fo:block>
644
- </fo:table-cell>
645
- <fo:table-cell>
646
- <fo:block margin-bottom="3mm">
647
- <xsl:copy-of select="$editorialgroup"/>
648
- </fo:block>
649
- </fo:table-cell>
650
- <fo:table-cell>
651
- <fo:block margin-bottom="3mm">
652
- <xsl:copy-of select="$secretariat"/>
653
- </fo:block>
654
- </fo:table-cell>
655
- </fo:table-row>
656
- <fo:table-row>
657
- <fo:table-cell>
658
- <fo:block> </fo:block>
659
- </fo:table-cell>
660
- <fo:table-cell>
661
- <fo:block>Voting begins on:</fo:block>
662
- </fo:table-cell>
663
- <fo:table-cell>
664
- <fo:block>Voting terminates on:</fo:block>
665
- </fo:table-cell>
666
- </fo:table-row>
667
- <fo:table-row>
668
- <fo:table-cell>
669
- <fo:block> </fo:block>
670
- </fo:table-cell>
671
- <fo:table-cell>
672
- <fo:block font-weight="bold">
673
- <xsl:choose>
674
- <xsl:when test="/iso:iso-standard/iso:bibdata/iso:date[@type = 'vote-started']/iso:on">
675
- <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:date[@type = 'vote-started']/iso:on"/>
676
- </xsl:when>
677
- <xsl:otherwise>YYYY-MM-DD</xsl:otherwise>
678
- </xsl:choose>
679
- </fo:block>
680
- </fo:table-cell>
681
- <fo:table-cell>
682
- <fo:block font-weight="bold">
683
- <xsl:choose>
684
- <xsl:when test="/iso:iso-standard/iso:bibdata/iso:date[@type = 'vote-ended']/iso:on">
685
- <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:date[@type = 'vote-ended']/iso:on"/>
686
- </xsl:when>
687
- <xsl:otherwise>YYYY-MM-DD</xsl:otherwise>
688
- </xsl:choose>
689
- </fo:block>
690
- </fo:table-cell>
691
- </fo:table-row>
692
- </fo:table-body>
693
- </fo:table>
751
+ <fo:block-container line-height="1.1" margin-top="3mm">
752
+ <xsl:call-template name="insertTripleLine"/>
753
+ <fo:block margin-right="5mm">
754
+ <fo:block font-size="18pt" font-weight="bold" margin-top="6pt" role="H1">
694
755
 
695
- <fo:block-container line-height="1.1" margin-top="3mm">
696
- <xsl:call-template name="insertTripleLine"/>
697
- <fo:block margin-right="5mm">
698
- <fo:block font-size="18pt" font-weight="bold" margin-top="6pt" role="H1">
756
+ <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-intro']"/>
699
757
 
700
- <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-intro']"/>
758
+ <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-main']"/>
701
759
 
702
- <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-main']"/>
760
+ <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-part']">
761
+ <xsl:with-param name="isMainLang">true</xsl:with-param>
762
+ </xsl:apply-templates>
703
763
 
704
- <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-part']">
705
- <xsl:with-param name="isMainLang">true</xsl:with-param>
706
- </xsl:apply-templates>
764
+ <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-amd']">
765
+ <xsl:with-param name="isMainLang">true</xsl:with-param>
766
+ </xsl:apply-templates>
707
767
 
708
- <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-amd']">
709
- <xsl:with-param name="isMainLang">true</xsl:with-param>
710
- </xsl:apply-templates>
768
+ </fo:block>
711
769
 
712
- </fo:block>
770
+ <xsl:for-each select="xalan:nodeset($lang_other)/lang">
771
+ <xsl:variable name="lang_other" select="."/>
713
772
 
714
- <xsl:for-each select="xalan:nodeset($lang_other)/lang">
715
- <xsl:variable name="lang_other" select="."/>
773
+ <fo:block font-size="12pt"><xsl:value-of select="$linebreak"/></fo:block>
774
+ <fo:block font-size="11pt" font-style="italic" line-height="1.1" role="H1">
716
775
 
717
- <fo:block font-size="12pt"><xsl:value-of select="$linebreak"/></fo:block>
718
- <fo:block font-size="11pt" font-style="italic" line-height="1.1" role="H1">
776
+ <!-- Example: title-intro fr -->
777
+ <xsl:apply-templates select="$XML/iso:iso-standard/iso:bibdata/iso:title[@language = $lang_other and @type = 'title-intro']"/>
719
778
 
720
- <!-- Example: title-intro fr -->
721
- <xsl:apply-templates select="$XML/iso:iso-standard/iso:bibdata/iso:title[@language = $lang_other and @type = 'title-intro']"/>
779
+ <xsl:apply-templates select="$XML/iso:iso-standard/iso:bibdata/iso:title[@language = $lang_other and @type = 'title-main']"/>
722
780
 
723
- <xsl:apply-templates select="$XML/iso:iso-standard/iso:bibdata/iso:title[@language = $lang_other and @type = 'title-main']"/>
781
+ <xsl:apply-templates select="$XML/iso:iso-standard/iso:bibdata/iso:title[@language = $lang_other and @type = 'title-part']">
782
+ <xsl:with-param name="curr_lang" select="$lang_other"/>
783
+ </xsl:apply-templates>
724
784
 
725
- <xsl:apply-templates select="$XML/iso:iso-standard/iso:bibdata/iso:title[@language = $lang_other and @type = 'title-part']">
726
- <xsl:with-param name="curr_lang" select="$lang_other"/>
727
- </xsl:apply-templates>
785
+ <xsl:apply-templates select="$XML/iso:iso-standard/iso:bibdata/iso:title[@language = $lang_other and @type = 'title-amd']">
786
+ <xsl:with-param name="curr_lang" select="$lang_other"/>
787
+ </xsl:apply-templates>
728
788
 
729
- <xsl:apply-templates select="$XML/iso:iso-standard/iso:bibdata/iso:title[@language = $lang_other and @type = 'title-amd']">
730
- <xsl:with-param name="curr_lang" select="$lang_other"/>
731
- </xsl:apply-templates>
789
+ </fo:block>
790
+ </xsl:for-each>
791
+ </fo:block>
732
792
 
733
- </fo:block>
734
- </xsl:for-each>
735
- </fo:block>
793
+ <fo:block margin-top="10mm">
794
+ <xsl:copy-of select="$ics"/>
795
+ </fo:block>
736
796
 
737
- <fo:block margin-top="10mm">
738
- <xsl:copy-of select="$ics"/>
739
- </fo:block>
797
+ </fo:block-container>
740
798
 
741
799
  </fo:block-container>
800
+ </fo:flow>
742
801
 
743
- </fo:block-container>
744
- </fo:flow>
745
-
746
- </xsl:when> <!-- END: $stage-abbreviation = 'DIS' 'DAmd' 'DAM'-->
747
- <xsl:otherwise>
748
-
749
- <!-- COVER PAGE for all documents except DIS, DAmd and DAM -->
750
- <fo:flow flow-name="xsl-region-body">
751
- <fo:block-container>
752
- <fo:table table-layout="fixed" width="100%" font-size="24pt" line-height="1"> <!-- margin-bottom="35mm" -->
753
- <fo:table-column column-width="59.5mm"/>
754
- <fo:table-column column-width="67.5mm"/>
755
- <fo:table-column column-width="45.5mm"/>
756
- <fo:table-body>
757
- <fo:table-row>
758
- <fo:table-cell>
759
- <fo:block font-size="18pt">
760
-
761
- <xsl:value-of select="translate($stagename-header-coverpage, ' ', $linebreak)"/>
762
-
763
- <!-- if there is iteration number, then print it -->
764
- <xsl:variable name="iteration" select="number(/iso:iso-standard/iso:bibdata/iso:status/iso:iteration)"/>
765
-
766
- <xsl:if test="number($iteration) = $iteration and ($stage-abbreviation = 'NWIP' or $stage-abbreviation = 'NP' or $stage-abbreviation = 'PWI' or $stage-abbreviation = 'AWI' or $stage-abbreviation = 'WD' or $stage-abbreviation = 'CD')">
767
- <xsl:text> </xsl:text><xsl:value-of select="$iteration"/>
768
- </xsl:if>
769
- <!-- <xsl:if test="$stage-name = 'draft'">DRAFT</xsl:if>
770
- <xsl:if test="$stage-name = 'final-draft'">FINAL<xsl:value-of select="$linebreak"/>DRAFT</xsl:if> -->
771
- </fo:block>
772
- </fo:table-cell>
802
+ </xsl:when> <!-- END: $stage-abbreviation = 'DIS' 'DAmd' 'DAM'-->
803
+ <xsl:otherwise>
773
804
 
774
- <xsl:variable name="lastWord">
775
- <xsl:call-template name="substring-after-last">
776
- <xsl:with-param name="value" select="$doctype_uppercased"/>
777
- <xsl:with-param name="delimiter" select="' '"/>
778
- </xsl:call-template>
779
- </xsl:variable>
780
- <xsl:variable name="font-size"><xsl:if test="string-length($lastWord) &gt;= 12">90%</xsl:if></xsl:variable> <!-- to prevent overlapping 'NORME INTERNATIONALE' to number -->
805
+ <!-- COVER PAGE for all documents except DIS, DAmd and DAM -->
806
+ <fo:flow flow-name="xsl-region-body">
807
+ <fo:block-container>
808
+ <fo:table table-layout="fixed" width="100%" font-size="24pt" line-height="1"> <!-- margin-bottom="35mm" -->
809
+ <fo:table-column column-width="59.5mm"/>
810
+ <fo:table-column column-width="67.5mm"/>
811
+ <fo:table-column column-width="45.5mm"/>
812
+ <fo:table-body>
813
+ <fo:table-row>
814
+ <fo:table-cell>
815
+ <fo:block font-size="18pt">
816
+
817
+ <xsl:value-of select="translate($stagename-header-coverpage, ' ', $linebreak)"/>
818
+
819
+ <!-- if there is iteration number, then print it -->
820
+ <xsl:variable name="iteration" select="number(/iso:iso-standard/iso:bibdata/iso:status/iso:iteration)"/>
821
+
822
+ <xsl:if test="number($iteration) = $iteration and ($stage-abbreviation = 'NWIP' or $stage-abbreviation = 'NP' or $stage-abbreviation = 'PWI' or $stage-abbreviation = 'AWI' or $stage-abbreviation = 'WD' or $stage-abbreviation = 'CD')">
823
+ <xsl:text> </xsl:text><xsl:value-of select="$iteration"/>
824
+ </xsl:if>
825
+ <!-- <xsl:if test="$stage-name = 'draft'">DRAFT</xsl:if>
826
+ <xsl:if test="$stage-name = 'final-draft'">FINAL<xsl:value-of select="$linebreak"/>DRAFT</xsl:if> -->
827
+ </fo:block>
828
+ </fo:table-cell>
781
829
 
782
- <fo:table-cell>
783
- <fo:block text-align="left">
784
- <xsl:choose>
785
- <xsl:when test="$stage-abbreviation = 'FDAmd' or $stage-abbreviation = 'FDAM'"><xsl:value-of select="$doctype_uppercased"/></xsl:when>
786
- <xsl:when test="$doctype = 'amendment'">
787
- <xsl:value-of select="java:toUpperCase(java:java.lang.String.new(translate(/iso:iso-standard/iso:bibdata/iso:ext/iso:updates-document-type,'-',' ')))"/>
788
- </xsl:when>
789
- <xsl:otherwise>
790
- <xsl:if test="$font-size != ''">
791
- <xsl:attribute name="font-size"><xsl:value-of select="$font-size"/></xsl:attribute>
792
- </xsl:if>
793
- <xsl:value-of select="$doctype_uppercased"/>
794
- </xsl:otherwise>
795
- </xsl:choose>
796
- </fo:block>
797
- </fo:table-cell>
798
- <fo:table-cell>
799
- <fo:block text-align="right" font-weight="bold" margin-bottom="13mm">
800
- <xsl:if test="$font-size != ''">
801
- <xsl:attribute name="font-size"><xsl:value-of select="$font-size"/></xsl:attribute>
802
- </xsl:if>
803
- <xsl:value-of select="$docidentifierISO"/>
804
- </fo:block>
805
- </fo:table-cell>
806
- </fo:table-row>
807
- <fo:table-row height="25mm">
808
- <fo:table-cell number-columns-spanned="3" font-size="10pt" line-height="1.2">
809
- <fo:block text-align="right">
810
- <xsl:if test="$stage-abbreviation = 'PRF' or $stage-abbreviation = 'IS' or $stage-abbreviation = 'D' or $stage-abbreviation = 'published'">
811
- <xsl:call-template name="printEdition"/>
812
- </xsl:if>
813
- <xsl:choose>
814
- <xsl:when test="($stage-abbreviation = 'NWIP' or $stage-abbreviation = 'NP' or $stage-abbreviation = 'PWI' or $stage-abbreviation = 'AWI' or $stage-abbreviation = 'WD' or $stage-abbreviation = 'CD' or $stage-abbreviation = 'FDIS') and /iso:iso-standard/iso:bibdata/iso:version/iso:revision-date">
815
- <xsl:value-of select="$linebreak"/>
816
- <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:version/iso:revision-date"/>
817
- </xsl:when>
818
- <xsl:when test="$stage-abbreviation = 'IS' and /iso:iso-standard/iso:bibdata/iso:date[@type = 'published']">
819
- <xsl:value-of select="$linebreak"/>
820
- <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:date[@type = 'published']"/>
821
- </xsl:when>
822
- <xsl:when test="($stage-abbreviation = 'IS' or $stage-abbreviation = 'D') and /iso:iso-standard/iso:bibdata/iso:date[@type = 'created']">
823
- <xsl:value-of select="$linebreak"/>
824
- <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:date[@type = 'created']"/>
825
- </xsl:when>
826
- <xsl:when test="$stage-abbreviation = 'IS' or $stage-abbreviation = 'published'">
827
- <xsl:value-of select="$linebreak"/>
828
- <xsl:value-of select="substring(/iso:iso-standard/iso:bibdata/iso:version/iso:revision-date,1, 7)"/>
829
- </xsl:when>
830
- </xsl:choose>
831
- </fo:block>
832
- <!-- <xsl:value-of select="$linebreak"/>
833
- <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:version/iso:revision-date"/> -->
834
- <xsl:if test="$doctype = 'amendment' and not($stage-abbreviation = 'FDAmd' or $stage-abbreviation = 'FDAM')">
835
- <fo:block text-align="right" margin-right="0.5mm">
836
- <fo:block font-weight="bold" margin-top="4pt" role="H1">
837
- <xsl:value-of select="$doctype_uppercased"/>
838
- <xsl:text> </xsl:text>
839
- <xsl:variable name="amendment-number" select="/iso:iso-standard/iso:bibdata/iso:ext/iso:structuredidentifier/iso:project-number/@amendment"/>
840
- <xsl:if test="normalize-space($amendment-number) != ''">
841
- <xsl:value-of select="$amendment-number"/><xsl:text> </xsl:text>
842
- </xsl:if>
843
- </fo:block>
844
- <fo:block>
845
- <xsl:if test="/iso:iso-standard/iso:bibdata/iso:date[@type = 'updated']">
846
- <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:date[@type = 'updated']"/>
847
- </xsl:if>
830
+ <xsl:variable name="lastWord">
831
+ <xsl:call-template name="substring-after-last">
832
+ <xsl:with-param name="value" select="$doctype_uppercased"/>
833
+ <xsl:with-param name="delimiter" select="' '"/>
834
+ </xsl:call-template>
835
+ </xsl:variable>
836
+ <xsl:variable name="font-size"><xsl:if test="string-length($lastWord) &gt;= 12">90%</xsl:if></xsl:variable> <!-- to prevent overlapping 'NORME INTERNATIONALE' to number -->
837
+
838
+ <fo:table-cell>
839
+ <fo:block text-align="left">
840
+ <xsl:choose>
841
+ <xsl:when test="$stage-abbreviation = 'FDAmd' or $stage-abbreviation = 'FDAM'"><xsl:value-of select="$doctype_uppercased"/></xsl:when>
842
+ <xsl:when test="$doctype = 'amendment'">
843
+ <xsl:value-of select="java:toUpperCase(java:java.lang.String.new(translate(/iso:iso-standard/iso:bibdata/iso:ext/iso:updates-document-type,'-',' ')))"/>
844
+ </xsl:when>
845
+ <xsl:otherwise>
846
+ <xsl:if test="$font-size != ''">
847
+ <xsl:attribute name="font-size"><xsl:value-of select="$font-size"/></xsl:attribute>
848
+ </xsl:if>
849
+ <xsl:value-of select="$doctype_uppercased"/>
850
+ </xsl:otherwise>
851
+ </xsl:choose>
852
+ </fo:block>
853
+ </fo:table-cell>
854
+ <fo:table-cell>
855
+ <fo:block text-align="right" font-weight="bold" margin-bottom="13mm">
856
+ <xsl:if test="$font-size != ''">
857
+ <xsl:attribute name="font-size"><xsl:value-of select="$font-size"/></xsl:attribute>
858
+ </xsl:if>
859
+ <xsl:value-of select="$docidentifierISO"/>
860
+ </fo:block>
861
+ </fo:table-cell>
862
+ </fo:table-row>
863
+ <fo:table-row height="25mm">
864
+ <fo:table-cell number-columns-spanned="3" font-size="10pt" line-height="1.2">
865
+ <fo:block text-align="right">
866
+ <xsl:if test="$stage-abbreviation = 'PRF' or $stage-abbreviation = 'IS' or $stage-abbreviation = 'D' or $stage-abbreviation = 'published'">
867
+ <xsl:call-template name="printEdition"/>
868
+ </xsl:if>
869
+ <xsl:choose>
870
+ <xsl:when test="($stage-abbreviation = 'NWIP' or $stage-abbreviation = 'NP' or $stage-abbreviation = 'PWI' or $stage-abbreviation = 'AWI' or $stage-abbreviation = 'WD' or $stage-abbreviation = 'CD' or $stage-abbreviation = 'FDIS') and /iso:iso-standard/iso:bibdata/iso:version/iso:revision-date">
871
+ <xsl:value-of select="$linebreak"/>
872
+ <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:version/iso:revision-date"/>
873
+ </xsl:when>
874
+ <xsl:when test="$stage-abbreviation = 'IS' and /iso:iso-standard/iso:bibdata/iso:date[@type = 'published']">
875
+ <xsl:value-of select="$linebreak"/>
876
+ <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:date[@type = 'published']"/>
877
+ </xsl:when>
878
+ <xsl:when test="($stage-abbreviation = 'IS' or $stage-abbreviation = 'D') and /iso:iso-standard/iso:bibdata/iso:date[@type = 'created']">
879
+ <xsl:value-of select="$linebreak"/>
880
+ <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:date[@type = 'created']"/>
881
+ </xsl:when>
882
+ <xsl:when test="$stage-abbreviation = 'IS' or $stage-abbreviation = 'published'">
883
+ <xsl:value-of select="$linebreak"/>
884
+ <xsl:value-of select="substring(/iso:iso-standard/iso:bibdata/iso:version/iso:revision-date,1, 7)"/>
885
+ </xsl:when>
886
+ </xsl:choose>
887
+ </fo:block>
888
+ <!-- <xsl:value-of select="$linebreak"/>
889
+ <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:version/iso:revision-date"/> -->
890
+ <xsl:if test="$doctype = 'amendment' and not($stage-abbreviation = 'FDAmd' or $stage-abbreviation = 'FDAM')">
891
+ <fo:block text-align="right" margin-right="0.5mm">
892
+ <fo:block font-weight="bold" margin-top="4pt" role="H1">
893
+ <xsl:value-of select="$doctype_uppercased"/>
894
+ <xsl:text> </xsl:text>
895
+ <xsl:variable name="amendment-number" select="/iso:iso-standard/iso:bibdata/iso:ext/iso:structuredidentifier/iso:project-number/@amendment"/>
896
+ <xsl:if test="normalize-space($amendment-number) != ''">
897
+ <xsl:value-of select="$amendment-number"/><xsl:text> </xsl:text>
898
+ </xsl:if>
899
+ </fo:block>
900
+ <fo:block>
901
+ <xsl:if test="/iso:iso-standard/iso:bibdata/iso:date[@type = 'updated']">
902
+ <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:date[@type = 'updated']"/>
903
+ </xsl:if>
904
+ </fo:block>
848
905
  </fo:block>
906
+ </xsl:if>
907
+ </fo:table-cell>
908
+ </fo:table-row>
909
+ <fo:table-row height="17mm">
910
+ <fo:table-cell><fo:block/></fo:table-cell>
911
+ <fo:table-cell number-columns-spanned="2" font-size="10pt" line-height="1.2" display-align="center">
912
+ <fo:block>
913
+ <xsl:if test="$stage-abbreviation = 'NWIP' or $stage-abbreviation = 'NP' or $stage-abbreviation = 'PWI' or $stage-abbreviation = 'AWI' or $stage-abbreviation = 'WD' or $stage-abbreviation = 'CD' or $stage-abbreviation = 'FDIS'">
914
+ <fo:table table-layout="fixed" width="100%">
915
+ <fo:table-column column-width="50%"/>
916
+ <fo:table-column column-width="50%"/>
917
+ <fo:table-body>
918
+ <fo:table-row>
919
+ <fo:table-cell>
920
+ <fo:block>
921
+ <xsl:copy-of select="$editorialgroup"/>
922
+ </fo:block>
923
+ </fo:table-cell>
924
+ <fo:table-cell>
925
+ <fo:block>
926
+ <xsl:copy-of select="$secretariat"/>
927
+ </fo:block>
928
+ </fo:table-cell>
929
+ </fo:table-row>
930
+ </fo:table-body>
931
+ </fo:table>
932
+ </xsl:if>
849
933
  </fo:block>
850
- </xsl:if>
851
- </fo:table-cell>
852
- </fo:table-row>
853
- <fo:table-row height="17mm">
854
- <fo:table-cell><fo:block/></fo:table-cell>
855
- <fo:table-cell number-columns-spanned="2" font-size="10pt" line-height="1.2" display-align="center">
856
- <fo:block>
857
- <xsl:if test="$stage-abbreviation = 'NWIP' or $stage-abbreviation = 'NP' or $stage-abbreviation = 'PWI' or $stage-abbreviation = 'AWI' or $stage-abbreviation = 'WD' or $stage-abbreviation = 'CD' or $stage-abbreviation = 'FDIS'">
858
- <fo:table table-layout="fixed" width="100%">
859
- <fo:table-column column-width="50%"/>
860
- <fo:table-column column-width="50%"/>
861
- <fo:table-body>
862
- <fo:table-row>
863
- <fo:table-cell>
864
- <fo:block>
865
- <xsl:copy-of select="$editorialgroup"/>
934
+ </fo:table-cell>
935
+ </fo:table-row>
936
+
937
+ </fo:table-body>
938
+ </fo:table>
939
+
940
+ <fo:table table-layout="fixed" width="100%">
941
+ <fo:table-column column-width="52mm"/>
942
+ <fo:table-column column-width="7.5mm"/>
943
+ <fo:table-column column-width="112.5mm"/>
944
+ <fo:table-body>
945
+ <fo:table-row> <!-- border="1pt solid black" height="150mm" -->
946
+ <fo:table-cell font-size="11pt">
947
+ <fo:block>
948
+ <xsl:if test="$stage-abbreviation = 'FDIS' or $stage-abbreviation = 'FDAmd' or $stage-abbreviation = 'FDAM'">
949
+ <fo:block-container border="0.5mm solid black" width="51mm">
950
+ <fo:block margin="2mm">
951
+ <fo:block margin-bottom="8pt"><xsl:copy-of select="$editorialgroup"/></fo:block>
952
+ <fo:block margin-bottom="6pt"><xsl:copy-of select="$secretariat"/></fo:block>
953
+ <fo:block margin-bottom="6pt">Voting begins on:<xsl:value-of select="$linebreak"/>
954
+ <fo:inline font-weight="bold">
955
+ <xsl:choose>
956
+ <xsl:when test="/iso:iso-standard/iso:bibdata/iso:date[@type = 'vote-started']/iso:on">
957
+ <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:date[@type = 'vote-started']/iso:on"/>
958
+ </xsl:when>
959
+ <xsl:otherwise>YYYY-MM-DD</xsl:otherwise>
960
+ </xsl:choose>
961
+ </fo:inline>
866
962
  </fo:block>
867
- </fo:table-cell>
868
- <fo:table-cell>
869
- <fo:block>
870
- <xsl:copy-of select="$secretariat"/>
963
+ <fo:block>Voting terminates on:<xsl:value-of select="$linebreak"/>
964
+ <fo:inline font-weight="bold">
965
+ <xsl:choose>
966
+ <xsl:when test="/iso:iso-standard/iso:bibdata/iso:date[@type = 'vote-ended']/iso:on">
967
+ <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:date[@type = 'vote-ended']/iso:on"/>
968
+ </xsl:when>
969
+ <xsl:otherwise>YYYY-MM-DD</xsl:otherwise>
970
+ </xsl:choose>
971
+ </fo:inline>
871
972
  </fo:block>
872
- </fo:table-cell>
873
- </fo:table-row>
874
- </fo:table-body>
875
- </fo:table>
876
- </xsl:if>
877
- </fo:block>
878
- </fo:table-cell>
879
- </fo:table-row>
973
+ </fo:block>
974
+ </fo:block-container>
975
+ </xsl:if>
976
+ </fo:block>
977
+ </fo:table-cell>
978
+ <fo:table-cell>
979
+ <fo:block> </fo:block>
980
+ </fo:table-cell>
981
+ <fo:table-cell>
982
+ <xsl:call-template name="insertTripleLine"/>
983
+ <fo:block-container line-height="1.1">
984
+ <fo:block margin-right="3.5mm">
985
+ <fo:block font-size="18pt" font-weight="bold" margin-top="12pt" role="H1">
880
986
 
881
- </fo:table-body>
882
- </fo:table>
987
+ <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-intro']"/>
883
988
 
884
- <fo:table table-layout="fixed" width="100%">
885
- <fo:table-column column-width="52mm"/>
886
- <fo:table-column column-width="7.5mm"/>
887
- <fo:table-column column-width="112.5mm"/>
888
- <fo:table-body>
889
- <fo:table-row> <!-- border="1pt solid black" height="150mm" -->
890
- <fo:table-cell font-size="11pt">
891
- <fo:block>
892
- <xsl:if test="$stage-abbreviation = 'FDIS' or $stage-abbreviation = 'FDAmd' or $stage-abbreviation = 'FDAM'">
893
- <fo:block-container border="0.5mm solid black" width="51mm">
894
- <fo:block margin="2mm">
895
- <fo:block margin-bottom="8pt"><xsl:copy-of select="$editorialgroup"/></fo:block>
896
- <fo:block margin-bottom="6pt"><xsl:copy-of select="$secretariat"/></fo:block>
897
- <fo:block margin-bottom="6pt">Voting begins on:<xsl:value-of select="$linebreak"/>
898
- <fo:inline font-weight="bold">
899
- <xsl:choose>
900
- <xsl:when test="/iso:iso-standard/iso:bibdata/iso:date[@type = 'vote-started']/iso:on">
901
- <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:date[@type = 'vote-started']/iso:on"/>
902
- </xsl:when>
903
- <xsl:otherwise>YYYY-MM-DD</xsl:otherwise>
904
- </xsl:choose>
905
- </fo:inline>
906
- </fo:block>
907
- <fo:block>Voting terminates on:<xsl:value-of select="$linebreak"/>
908
- <fo:inline font-weight="bold">
909
- <xsl:choose>
910
- <xsl:when test="/iso:iso-standard/iso:bibdata/iso:date[@type = 'vote-ended']/iso:on">
911
- <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:date[@type = 'vote-ended']/iso:on"/>
912
- </xsl:when>
913
- <xsl:otherwise>YYYY-MM-DD</xsl:otherwise>
914
- </xsl:choose>
915
- </fo:inline>
916
- </fo:block>
917
- </fo:block>
918
- </fo:block-container>
919
- </xsl:if>
920
- </fo:block>
921
- </fo:table-cell>
922
- <fo:table-cell>
923
- <fo:block> </fo:block>
924
- </fo:table-cell>
925
- <fo:table-cell>
926
- <xsl:call-template name="insertTripleLine"/>
927
- <fo:block-container line-height="1.1">
928
- <fo:block margin-right="3.5mm">
929
- <fo:block font-size="18pt" font-weight="bold" margin-top="12pt" role="H1">
989
+ <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-main']"/>
930
990
 
931
- <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-intro']"/>
991
+ <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-part']">
992
+ <xsl:with-param name="isMainLang">true</xsl:with-param>
993
+ </xsl:apply-templates>
932
994
 
933
- <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-main']"/>
995
+ <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-amd']">
996
+ <xsl:with-param name="isMainLang">true</xsl:with-param>
997
+ </xsl:apply-templates>
934
998
 
935
- <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-part']">
936
- <xsl:with-param name="isMainLang">true</xsl:with-param>
937
- </xsl:apply-templates>
938
-
939
- <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-amd']">
940
- <xsl:with-param name="isMainLang">true</xsl:with-param>
941
- </xsl:apply-templates>
999
+ </fo:block>
942
1000
 
943
- </fo:block>
1001
+ <xsl:if test="not($stage-abbreviation = 'FDAmd' or $stage-abbreviation = 'FDAM')">
1002
+ <xsl:for-each select="xalan:nodeset($lang_other)/lang">
1003
+ <xsl:variable name="lang_other" select="."/>
944
1004
 
945
- <xsl:if test="not($stage-abbreviation = 'FDAmd' or $stage-abbreviation = 'FDAM')">
946
- <xsl:for-each select="xalan:nodeset($lang_other)/lang">
947
- <xsl:variable name="lang_other" select="."/>
1005
+ <fo:block font-size="12pt"><xsl:value-of select="$linebreak"/></fo:block>
1006
+ <fo:block font-size="11pt" font-style="italic" line-height="1.1" role="H1">
948
1007
 
949
- <fo:block font-size="12pt"><xsl:value-of select="$linebreak"/></fo:block>
950
- <fo:block font-size="11pt" font-style="italic" line-height="1.1" role="H1">
1008
+ <!-- Example: title-intro fr -->
1009
+ <xsl:apply-templates select="$XML/iso:iso-standard/iso:bibdata/iso:title[@language = $lang_other and @type = 'title-intro']"/>
951
1010
 
952
- <!-- Example: title-intro fr -->
953
- <xsl:apply-templates select="$XML/iso:iso-standard/iso:bibdata/iso:title[@language = $lang_other and @type = 'title-intro']"/>
1011
+ <xsl:apply-templates select="$XML/iso:iso-standard/iso:bibdata/iso:title[@language = $lang_other and @type = 'title-main']"/>
954
1012
 
955
- <xsl:apply-templates select="$XML/iso:iso-standard/iso:bibdata/iso:title[@language = $lang_other and @type = 'title-main']"/>
1013
+ <xsl:apply-templates select="$XML/iso:iso-standard/iso:bibdata/iso:title[@language = $lang_other and @type = 'title-part']">
1014
+ <xsl:with-param name="curr_lang" select="$lang_other"/>
1015
+ </xsl:apply-templates>
956
1016
 
957
- <xsl:apply-templates select="$XML/iso:iso-standard/iso:bibdata/iso:title[@language = $lang_other and @type = 'title-part']">
958
- <xsl:with-param name="curr_lang" select="$lang_other"/>
959
- </xsl:apply-templates>
1017
+ <xsl:apply-templates select="$XML/iso:iso-standard/iso:bibdata/iso:title[@language = $lang_other and @type = 'title-amd']">
1018
+ <xsl:with-param name="curr_lang" select="$lang_other"/>
1019
+ </xsl:apply-templates>
960
1020
 
961
- <xsl:apply-templates select="$XML/iso:iso-standard/iso:bibdata/iso:title[@language = $lang_other and @type = 'title-amd']">
962
- <xsl:with-param name="curr_lang" select="$lang_other"/>
963
- </xsl:apply-templates>
1021
+ </fo:block>
1022
+ </xsl:for-each>
1023
+ </xsl:if>
964
1024
 
1025
+ <xsl:if test="$stage-abbreviation = 'NWIP' or $stage-abbreviation = 'NP' or $stage-abbreviation = 'PWI' or $stage-abbreviation = 'AWI' or $stage-abbreviation = 'WD' or $stage-abbreviation = 'CD' or $stage-abbreviation = 'FDIS'">
1026
+ <fo:block margin-top="10mm">
1027
+ <xsl:copy-of select="$ics"/>
965
1028
  </fo:block>
966
- </xsl:for-each>
967
- </xsl:if>
968
-
969
- <xsl:if test="$stage-abbreviation = 'NWIP' or $stage-abbreviation = 'NP' or $stage-abbreviation = 'PWI' or $stage-abbreviation = 'AWI' or $stage-abbreviation = 'WD' or $stage-abbreviation = 'CD' or $stage-abbreviation = 'FDIS'">
970
- <fo:block margin-top="10mm">
971
- <xsl:copy-of select="$ics"/>
972
- </fo:block>
973
- </xsl:if>
1029
+ </xsl:if>
974
1030
 
975
- </fo:block>
976
- </fo:block-container>
977
- </fo:table-cell>
978
- </fo:table-row>
979
- </fo:table-body>
980
- </fo:table>
981
- </fo:block-container>
982
- <fo:block-container position="absolute" left="60mm" top="222mm" height="25mm" display-align="after">
983
- <fo:block margin-bottom="2mm">
984
- <xsl:if test="$stage-abbreviation = 'PRF'">
985
- <fo:block font-size="36pt" font-weight="bold" margin-left="1mm">
986
- <xsl:call-template name="add-letter-spacing">
987
- <xsl:with-param name="text" select="$proof-text"/>
988
- <xsl:with-param name="letter-spacing" select="0.65"/>
989
- </xsl:call-template>
990
- </fo:block>
991
- </xsl:if>
992
- </fo:block>
993
- </fo:block-container>
994
- </fo:flow>
995
- </xsl:otherwise>
996
- </xsl:choose>
1031
+ </fo:block>
1032
+ </fo:block-container>
1033
+ </fo:table-cell>
1034
+ </fo:table-row>
1035
+ </fo:table-body>
1036
+ </fo:table>
1037
+ </fo:block-container>
1038
+ <fo:block-container position="absolute" left="60mm" top="222mm" height="25mm" display-align="after">
1039
+ <fo:block margin-bottom="2mm">
1040
+ <xsl:if test="$stage-abbreviation = 'PRF'">
1041
+ <fo:block font-size="36pt" font-weight="bold" margin-left="1mm">
1042
+ <xsl:call-template name="add-letter-spacing">
1043
+ <xsl:with-param name="text" select="$proof-text"/>
1044
+ <xsl:with-param name="letter-spacing" select="0.65"/>
1045
+ </xsl:call-template>
1046
+ </fo:block>
1047
+ </xsl:if>
1048
+ </fo:block>
1049
+ </fo:block-container>
1050
+ </fo:flow>
1051
+ </xsl:otherwise>
1052
+ </xsl:choose>
997
1053
 
998
- </fo:page-sequence>
999
- </xsl:when>
1054
+ </fo:page-sequence>
1055
+ </xsl:when>
1000
1056
 
1001
- <xsl:when test="$isPublished = 'true'">
1002
- <fo:page-sequence master-reference="cover-page-published" force-page-count="no-force">
1003
- <fo:static-content flow-name="cover-page-footer" font-size="10pt">
1004
- <xsl:call-template name="insertTripleLine"/>
1005
- <fo:table table-layout="fixed" width="100%" margin-bottom="3mm">
1006
- <fo:table-column column-width="50%"/>
1007
- <fo:table-column column-width="50%"/>
1008
- <fo:table-body>
1009
- <fo:table-row height="32mm">
1010
- <fo:table-cell display-align="center">
1011
- <fo:block text-align="left">
1012
- <fo:external-graphic src="{concat('data:image/png;base64,', normalize-space($Image-ISO-Logo))}" width="21mm" content-height="21mm" content-width="scale-to-fit" scaling="uniform" fox:alt-text="Image {@alt}"/>
1013
- </fo:block>
1014
- </fo:table-cell>
1015
- <fo:table-cell display-align="center">
1016
- <fo:block text-align="right">
1017
- <fo:block>
1018
- <xsl:call-template name="getLocalizedString">
1019
- <xsl:with-param name="key">reference_number</xsl:with-param>
1020
- </xsl:call-template>
1021
- </fo:block>
1022
- <fo:block><xsl:value-of select="$ISOname"/></fo:block>
1023
- <fo:block> </fo:block>
1024
- <fo:block> </fo:block>
1025
- <fo:block><fo:inline font-size="9pt">©</fo:inline><xsl:value-of select="concat(' ', $copyrightAbbr, ' ', $copyrightYear)"/>
1026
- <xsl:if test="$copyrightAbbrIEEE != ''">
1027
- <xsl:value-of select="$linebreak"/>
1028
- <fo:inline font-size="9pt">©</fo:inline>
1029
- <xsl:value-of select="concat(' ', $copyrightAbbrIEEE, ' ', $copyrightYear)"/>
1030
- </xsl:if>
1031
- </fo:block>
1032
- </fo:block>
1033
- </fo:table-cell>
1034
- </fo:table-row>
1035
- </fo:table-body>
1036
- </fo:table>
1037
- </fo:static-content>
1038
- <fo:flow flow-name="xsl-region-body">
1039
- <fo:block-container>
1040
- <fo:table table-layout="fixed" width="100%" font-size="24pt" line-height="1" margin-bottom="35mm">
1041
- <fo:table-column column-width="60%"/>
1042
- <fo:table-column column-width="40%"/>
1057
+ <xsl:when test="$isPublished = 'true'">
1058
+ <fo:page-sequence master-reference="cover-page-published" force-page-count="no-force">
1059
+ <fo:static-content flow-name="cover-page-footer" font-size="10pt">
1060
+ <xsl:call-template name="insertTripleLine"/>
1061
+ <fo:table table-layout="fixed" width="100%" margin-bottom="3mm">
1062
+ <fo:table-column column-width="50%"/>
1063
+ <fo:table-column column-width="50%"/>
1043
1064
  <fo:table-body>
1044
- <fo:table-row>
1045
- <fo:table-cell>
1065
+ <fo:table-row height="32mm">
1066
+ <fo:table-cell display-align="center">
1046
1067
  <fo:block text-align="left">
1047
- <xsl:value-of select="$doctype_uppercased"/>
1048
- </fo:block>
1049
- </fo:table-cell>
1050
- <fo:table-cell>
1051
- <fo:block text-align="right" font-weight="bold" margin-bottom="13mm">
1052
- <xsl:value-of select="$docidentifierISO"/>
1068
+ <fo:external-graphic src="{concat('data:image/png;base64,', normalize-space($Image-ISO-Logo))}" width="21mm" content-height="21mm" content-width="scale-to-fit" scaling="uniform" fox:alt-text="Image {@alt}"/>
1053
1069
  </fo:block>
1054
1070
  </fo:table-cell>
1055
- </fo:table-row>
1056
- <fo:table-row>
1057
- <fo:table-cell number-columns-spanned="2" font-size="10pt" line-height="1.2">
1071
+ <fo:table-cell display-align="center">
1058
1072
  <fo:block text-align="right">
1059
- <xsl:call-template name="printEdition"/>
1060
- <xsl:value-of select="$linebreak"/>
1061
- <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:version/iso:revision-date"/></fo:block>
1073
+ <fo:block>
1074
+ <xsl:call-template name="getLocalizedString">
1075
+ <xsl:with-param name="key">reference_number</xsl:with-param>
1076
+ </xsl:call-template>
1077
+ </fo:block>
1078
+ <fo:block><xsl:value-of select="$ISOname"/></fo:block>
1079
+ <fo:block> </fo:block>
1080
+ <fo:block> </fo:block>
1081
+ <fo:block><fo:inline font-size="9pt">©</fo:inline><xsl:value-of select="concat(' ', $copyrightAbbr, ' ', $copyrightYear)"/>
1082
+ <xsl:if test="$copyrightAbbrIEEE != ''">
1083
+ <xsl:value-of select="$linebreak"/>
1084
+ <fo:inline font-size="9pt">©</fo:inline>
1085
+ <xsl:value-of select="concat(' ', $copyrightAbbrIEEE, ' ', $copyrightYear)"/>
1086
+ </xsl:if>
1087
+ </fo:block>
1088
+ </fo:block>
1062
1089
  </fo:table-cell>
1063
1090
  </fo:table-row>
1064
1091
  </fo:table-body>
1065
1092
  </fo:table>
1093
+ </fo:static-content>
1094
+ <fo:flow flow-name="xsl-region-body">
1095
+ <fo:block-container>
1096
+ <fo:table table-layout="fixed" width="100%" font-size="24pt" line-height="1" margin-bottom="35mm">
1097
+ <fo:table-column column-width="60%"/>
1098
+ <fo:table-column column-width="40%"/>
1099
+ <fo:table-body>
1100
+ <fo:table-row>
1101
+ <fo:table-cell>
1102
+ <fo:block text-align="left">
1103
+ <xsl:value-of select="$doctype_uppercased"/>
1104
+ </fo:block>
1105
+ </fo:table-cell>
1106
+ <fo:table-cell>
1107
+ <fo:block text-align="right" font-weight="bold" margin-bottom="13mm">
1108
+ <xsl:value-of select="$docidentifierISO"/>
1109
+ </fo:block>
1110
+ </fo:table-cell>
1111
+ </fo:table-row>
1112
+ <fo:table-row>
1113
+ <fo:table-cell number-columns-spanned="2" font-size="10pt" line-height="1.2">
1114
+ <fo:block text-align="right">
1115
+ <xsl:call-template name="printEdition"/>
1116
+ <xsl:value-of select="$linebreak"/>
1117
+ <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:version/iso:revision-date"/></fo:block>
1118
+ </fo:table-cell>
1119
+ </fo:table-row>
1120
+ </fo:table-body>
1121
+ </fo:table>
1066
1122
 
1067
- <xsl:call-template name="insertTripleLine"/>
1068
- <fo:block-container line-height="1.1">
1069
- <fo:block margin-right="40mm">
1070
- <fo:block font-size="18pt" font-weight="bold" margin-top="12pt" role="H1">
1123
+ <xsl:call-template name="insertTripleLine"/>
1124
+ <fo:block-container line-height="1.1">
1125
+ <fo:block margin-right="40mm">
1126
+ <fo:block font-size="18pt" font-weight="bold" margin-top="12pt" role="H1">
1127
+
1128
+ <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-intro']"/>
1129
+
1130
+ <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-main']"/>
1131
+
1132
+ <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-part']">
1133
+ <xsl:with-param name="isMainLang">true</xsl:with-param>
1134
+ </xsl:apply-templates>
1135
+
1136
+ </fo:block>
1137
+
1138
+ <xsl:for-each select="xalan:nodeset($lang_other)/lang">
1139
+ <xsl:variable name="lang_other" select="."/>
1140
+
1141
+ <fo:block font-size="12pt"><xsl:value-of select="$linebreak"/></fo:block>
1142
+ <fo:block font-size="11pt" font-style="italic" line-height="1.1" role="H1">
1143
+
1144
+ <!-- Example: title-intro fr -->
1145
+ <xsl:apply-templates select="$XML/iso:iso-standard/iso:bibdata/iso:title[@language = $lang_other and @type = 'title-intro']"/>
1146
+
1147
+ <xsl:apply-templates select="$XML/iso:iso-standard/iso:bibdata/iso:title[@language = $lang_other and @type = 'title-main']"/>
1148
+
1149
+ <xsl:apply-templates select="$XML/iso:iso-standard/iso:bibdata/iso:title[@language = $lang_other and @type = 'title-part']">
1150
+ <xsl:with-param name="curr_lang" select="$lang_other"/>
1151
+ </xsl:apply-templates>
1152
+
1153
+ </fo:block>
1154
+ </xsl:for-each>
1155
+ </fo:block>
1156
+ </fo:block-container>
1157
+ </fo:block-container>
1158
+ </fo:flow>
1159
+ </fo:page-sequence>
1160
+ </xsl:when>
1161
+ <xsl:otherwise>
1162
+ <fo:page-sequence master-reference="cover-page" force-page-count="no-force">
1163
+ <fo:static-content flow-name="cover-page-header" font-size="10pt">
1164
+ <fo:block-container height="24mm" display-align="before">
1165
+ <fo:block padding-top="12.5mm">
1166
+ <xsl:value-of select="$copyrightText"/>
1167
+ </fo:block>
1168
+ </fo:block-container>
1169
+ </fo:static-content>
1170
+ <fo:flow flow-name="xsl-region-body">
1171
+ <fo:block-container text-align="right">
1172
+ <xsl:choose>
1173
+ <xsl:when test="/iso:iso-standard/iso:bibdata/iso:docidentifier[@type = 'iso-tc']">
1174
+ <!-- 17301 -->
1175
+ <fo:block font-size="14pt" font-weight="bold" margin-bottom="12pt">
1176
+ <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:docidentifier[@type = 'iso-tc']"/>
1177
+ </fo:block>
1178
+ <!-- Date: 2016-05-01 -->
1179
+ <fo:block margin-bottom="12pt">
1180
+ <xsl:text>Date: </xsl:text><xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:version/iso:revision-date"/>
1181
+ </fo:block>
1182
+
1183
+ <!-- ISO/CD 17301-1(E) -->
1184
+ <fo:block margin-bottom="12pt">
1185
+ <xsl:value-of select="concat(/iso:iso-standard/iso:bibdata/iso:docidentifier, $lang-1st-letter)"/>
1186
+ </fo:block>
1187
+ </xsl:when>
1188
+ <xsl:otherwise>
1189
+ <fo:block font-size="14pt" font-weight="bold" margin-bottom="12pt">
1190
+ <!-- ISO/WD 24229(E) -->
1191
+ <xsl:value-of select="concat(/iso:iso-standard/iso:bibdata/iso:docidentifier, $lang-1st-letter)"/>
1192
+ </fo:block>
1193
+
1194
+ </xsl:otherwise>
1195
+ </xsl:choose>
1196
+
1197
+ <xsl:if test="normalize-space($editorialgroup) != ''">
1198
+ <!-- ISO/TC 34/SC 4/WG 3 -->
1199
+ <fo:block margin-bottom="12pt">
1200
+ <xsl:copy-of select="$editorialgroup"/>
1201
+ </fo:block>
1202
+ </xsl:if>
1203
+
1204
+ <!-- Secretariat: AFNOR -->
1205
+ <fo:block margin-bottom="100pt">
1206
+ <xsl:value-of select="$secretariat"/>
1207
+ <xsl:text> </xsl:text>
1208
+ </fo:block>
1209
+
1210
+ </fo:block-container>
1211
+ <fo:block-container font-size="16pt">
1212
+ <!-- Information and documentation — Codes for transcription systems -->
1213
+ <fo:block font-weight="bold" role="H1">
1071
1214
 
1072
1215
  <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-intro']"/>
1073
1216
 
@@ -1083,7 +1226,7 @@
1083
1226
  <xsl:variable name="lang_other" select="."/>
1084
1227
 
1085
1228
  <fo:block font-size="12pt"><xsl:value-of select="$linebreak"/></fo:block>
1086
- <fo:block font-size="11pt" font-style="italic" line-height="1.1" role="H1">
1229
+ <fo:block role="H1">
1087
1230
 
1088
1231
  <!-- Example: title-intro fr -->
1089
1232
  <xsl:apply-templates select="$XML/iso:iso-standard/iso:bibdata/iso:title[@language = $lang_other and @type = 'title-intro']"/>
@@ -1095,444 +1238,364 @@
1095
1238
  </xsl:apply-templates>
1096
1239
 
1097
1240
  </fo:block>
1241
+
1098
1242
  </xsl:for-each>
1099
- </fo:block>
1243
+
1100
1244
  </fo:block-container>
1101
- </fo:block-container>
1102
- </fo:flow>
1103
- </fo:page-sequence>
1104
- </xsl:when>
1105
- <xsl:otherwise>
1106
- <fo:page-sequence master-reference="cover-page" force-page-count="no-force">
1107
- <fo:static-content flow-name="cover-page-header" font-size="10pt">
1108
- <fo:block-container height="24mm" display-align="before">
1109
- <fo:block padding-top="12.5mm">
1110
- <xsl:value-of select="$copyrightText"/>
1111
- </fo:block>
1112
- </fo:block-container>
1113
- </fo:static-content>
1114
- <fo:flow flow-name="xsl-region-body">
1115
- <fo:block-container text-align="right">
1116
- <xsl:choose>
1117
- <xsl:when test="/iso:iso-standard/iso:bibdata/iso:docidentifier[@type = 'iso-tc']">
1118
- <!-- 17301 -->
1119
- <fo:block font-size="14pt" font-weight="bold" margin-bottom="12pt">
1120
- <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:docidentifier[@type = 'iso-tc']"/>
1121
- </fo:block>
1122
- <!-- Date: 2016-05-01 -->
1123
- <fo:block margin-bottom="12pt">
1124
- <xsl:text>Date: </xsl:text><xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:version/iso:revision-date"/>
1125
- </fo:block>
1245
+ <fo:block font-size="11pt" margin-bottom="8pt"><xsl:value-of select="$linebreak"/></fo:block>
1246
+ <fo:block-container font-size="40pt" text-align="center" margin-bottom="12pt" border="0.5pt solid black">
1247
+ <xsl:variable name="stage-title" select="substring-after(substring-before($docidentifierISO, ' '), '/')"/>
1248
+ <xsl:choose>
1249
+ <xsl:when test="normalize-space($stage-title) != ''">
1250
+ <fo:block padding-top="2mm"><xsl:value-of select="$stage-title"/><xsl:text> stage</xsl:text></fo:block>
1251
+ </xsl:when>
1252
+ <xsl:otherwise>
1253
+ <xsl:attribute name="border">0pt solid white</xsl:attribute>
1254
+ <fo:block> </fo:block>
1255
+ </xsl:otherwise>
1256
+ </xsl:choose>
1257
+ </fo:block-container>
1258
+ <fo:block><xsl:value-of select="$linebreak"/></fo:block>
1126
1259
 
1127
- <!-- ISO/CD 17301-1(E) -->
1128
- <fo:block margin-bottom="12pt">
1129
- <xsl:value-of select="concat(/iso:iso-standard/iso:bibdata/iso:docidentifier, $lang-1st-letter)"/>
1260
+ <xsl:if test="/iso:iso-standard/iso:boilerplate/iso:license-statement">
1261
+ <fo:block-container font-size="10pt" margin-top="12pt" margin-bottom="6pt" border="0.5pt solid black">
1262
+ <fo:block padding-top="1mm">
1263
+ <xsl:apply-templates select="/iso:iso-standard/iso:boilerplate/iso:license-statement"/>
1130
1264
  </fo:block>
1131
- </xsl:when>
1132
- <xsl:otherwise>
1133
- <fo:block font-size="14pt" font-weight="bold" margin-bottom="12pt">
1134
- <!-- ISO/WD 24229(E) -->
1135
- <xsl:value-of select="concat(/iso:iso-standard/iso:bibdata/iso:docidentifier, $lang-1st-letter)"/>
1136
- </fo:block>
1137
-
1138
- </xsl:otherwise>
1139
- </xsl:choose>
1140
-
1141
- <xsl:if test="normalize-space($editorialgroup) != ''">
1142
- <!-- ISO/TC 34/SC 4/WG 3 -->
1143
- <fo:block margin-bottom="12pt">
1144
- <xsl:copy-of select="$editorialgroup"/>
1145
- </fo:block>
1265
+ </fo:block-container>
1146
1266
  </xsl:if>
1267
+ </fo:flow>
1268
+ </fo:page-sequence>
1269
+ </xsl:otherwise>
1270
+ </xsl:choose>
1147
1271
 
1148
- <!-- Secretariat: AFNOR -->
1149
- <fo:block margin-bottom="100pt">
1150
- <xsl:value-of select="$secretariat"/>
1151
- <xsl:text> </xsl:text>
1152
- </fo:block>
1153
-
1154
- </fo:block-container>
1155
- <fo:block-container font-size="16pt">
1156
- <!-- Information and documentation — Codes for transcription systems -->
1157
- <fo:block font-weight="bold" role="H1">
1158
-
1159
- <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-intro']"/>
1160
-
1161
- <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-main']"/>
1162
-
1163
- <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-part']">
1164
- <xsl:with-param name="isMainLang">true</xsl:with-param>
1165
- </xsl:apply-templates>
1166
-
1167
- </fo:block>
1168
-
1169
- <xsl:for-each select="xalan:nodeset($lang_other)/lang">
1170
- <xsl:variable name="lang_other" select="."/>
1171
-
1172
- <fo:block font-size="12pt"><xsl:value-of select="$linebreak"/></fo:block>
1173
- <fo:block role="H1">
1272
+ <!-- STEP1: Re-order elements in 'preface', 'sections' based on @displayorder -->
1273
+ <xsl:variable name="updated_xml_step1">
1274
+ <xsl:apply-templates mode="update_xml_step1"/>
1275
+ </xsl:variable>
1276
+ <!-- DEBUG: updated_xml_step1=<xsl:copy-of select="$updated_xml_step1"/> -->
1174
1277
 
1175
- <!-- Example: title-intro fr -->
1176
- <xsl:apply-templates select="$XML/iso:iso-standard/iso:bibdata/iso:title[@language = $lang_other and @type = 'title-intro']"/>
1278
+ <!-- STEP2: add 'fn' after 'eref' and 'origin', if referenced to bibitem with 'note' = Withdrawn.' or 'Cancelled and replaced...' -->
1279
+ <xsl:variable name="updated_xml_step2">
1280
+ <xsl:apply-templates select="xalan:nodeset($updated_xml_step1)" mode="update_xml_step2"/>
1281
+ </xsl:variable>
1282
+ <!-- DEBUG: updated_xml_step2=<xsl:copy-of select="$updated_xml_step2"/> -->
1177
1283
 
1178
- <xsl:apply-templates select="$XML/iso:iso-standard/iso:bibdata/iso:title[@language = $lang_other and @type = 'title-main']"/>
1284
+ <xsl:variable name="updated_xml_step3">
1285
+ <xsl:apply-templates select="xalan:nodeset($updated_xml_step2)" mode="update_xml_enclose_keep-together_within-line"/>
1286
+ </xsl:variable>
1287
+ <!-- DEBUG: updated_xml_step3=<xsl:copy-of select="$updated_xml_step3"/> -->
1179
1288
 
1180
- <xsl:apply-templates select="$XML/iso:iso-standard/iso:bibdata/iso:title[@language = $lang_other and @type = 'title-part']">
1181
- <xsl:with-param name="curr_lang" select="$lang_other"/>
1182
- </xsl:apply-templates>
1289
+ <xsl:for-each select="xalan:nodeset($updated_xml_step3)">
1183
1290
 
1291
+ <fo:page-sequence master-reference="preface{$document-master-reference}" format="i" force-page-count="{$force-page-count-preface}">
1292
+ <xsl:call-template name="insertHeaderFooter">
1293
+ <xsl:with-param name="font-weight">normal</xsl:with-param>
1294
+ </xsl:call-template>
1295
+ <fo:flow flow-name="xsl-region-body" line-height="115%">
1296
+ <xsl:if test="/iso:iso-standard/iso:boilerplate/iso:copyright-statement">
1297
+
1298
+ <fo:block-container height="252mm" display-align="after">
1299
+ <!-- <fo:block margin-bottom="3mm">
1300
+ <fo:external-graphic src="{concat('data:image/png;base64,', normalize-space($Image-Attention))}" width="14mm" content-height="13mm" content-width="scale-to-fit" scaling="uniform" fox:alt-text="Image {@alt}"/>
1301
+ <fo:inline padding-left="6mm" font-size="12pt" font-weight="bold"></fo:inline>
1302
+ </fo:block> -->
1303
+ <fo:block line-height="90%">
1304
+ <fo:block font-size="9pt" text-align="justify">
1305
+ <xsl:apply-templates select="/iso:iso-standard/iso:boilerplate/iso:copyright-statement"/>
1184
1306
  </fo:block>
1185
-
1186
- </xsl:for-each>
1187
-
1188
- </fo:block-container>
1189
- <fo:block font-size="11pt" margin-bottom="8pt"><xsl:value-of select="$linebreak"/></fo:block>
1190
- <fo:block-container font-size="40pt" text-align="center" margin-bottom="12pt" border="0.5pt solid black">
1191
- <xsl:variable name="stage-title" select="substring-after(substring-before($docidentifierISO, ' '), '/')"/>
1192
- <xsl:choose>
1193
- <xsl:when test="normalize-space($stage-title) != ''">
1194
- <fo:block padding-top="2mm"><xsl:value-of select="$stage-title"/><xsl:text> stage</xsl:text></fo:block>
1195
- </xsl:when>
1196
- <xsl:otherwise>
1197
- <xsl:attribute name="border">0pt solid white</xsl:attribute>
1198
- <fo:block> </fo:block>
1199
- </xsl:otherwise>
1200
- </xsl:choose>
1201
- </fo:block-container>
1202
- <fo:block><xsl:value-of select="$linebreak"/></fo:block>
1203
-
1204
- <xsl:if test="/iso:iso-standard/iso:boilerplate/iso:license-statement">
1205
- <fo:block-container font-size="10pt" margin-top="12pt" margin-bottom="6pt" border="0.5pt solid black">
1206
- <fo:block padding-top="1mm">
1207
- <xsl:apply-templates select="/iso:iso-standard/iso:boilerplate/iso:license-statement"/>
1208
1307
  </fo:block>
1209
1308
  </fo:block-container>
1210
1309
  </xsl:if>
1211
- </fo:flow>
1212
- </fo:page-sequence>
1213
- </xsl:otherwise>
1214
- </xsl:choose>
1215
-
1216
- <xsl:variable name="updated_xml_step1">
1217
- <xsl:apply-templates mode="update_xml_step1"/>
1218
- </xsl:variable>
1219
- <!-- DEBUG: updated_xml_step1=<xsl:copy-of select="$updated_xml_step1"/> -->
1220
-
1221
- <xsl:variable name="updated_xml_step2">
1222
- <xsl:apply-templates select="xalan:nodeset($updated_xml_step1)" mode="update_xml_step2"/>
1223
- </xsl:variable>
1224
- <!-- DEBUG: updated_xml_step2=<xsl:copy-of select="$updated_xml_step2"/> -->
1225
-
1226
- <xsl:variable name="updated_xml_step3">
1227
- <xsl:apply-templates select="xalan:nodeset($updated_xml_step2)" mode="update_xml_enclose_keep-together_within-line"/>
1228
- </xsl:variable>
1229
- <!-- DEBUG: updated_xml_step3=<xsl:copy-of select="$updated_xml_step3"/> -->
1230
-
1231
- <xsl:for-each select="xalan:nodeset($updated_xml_step3)">
1232
1310
 
1233
- <fo:page-sequence master-reference="preface{$document-master-reference}" format="i" force-page-count="{$force-page-count-preface}">
1234
- <xsl:call-template name="insertHeaderFooter">
1235
- <xsl:with-param name="font-weight">normal</xsl:with-param>
1236
- </xsl:call-template>
1237
- <fo:flow flow-name="xsl-region-body" line-height="115%">
1238
- <xsl:if test="/iso:iso-standard/iso:boilerplate/iso:copyright-statement">
1239
-
1240
- <fo:block-container height="252mm" display-align="after">
1241
- <!-- <fo:block margin-bottom="3mm">
1242
- <fo:external-graphic src="{concat('data:image/png;base64,', normalize-space($Image-Attention))}" width="14mm" content-height="13mm" content-width="scale-to-fit" scaling="uniform" fox:alt-text="Image {@alt}"/>
1243
- <fo:inline padding-left="6mm" font-size="12pt" font-weight="bold"></fo:inline>
1244
- </fo:block> -->
1245
- <fo:block line-height="90%">
1246
- <fo:block font-size="9pt" text-align="justify">
1247
- <xsl:apply-templates select="/iso:iso-standard/iso:boilerplate/iso:copyright-statement"/>
1248
- </fo:block>
1249
- </fo:block>
1250
- </fo:block-container>
1251
- </xsl:if>
1252
-
1253
- <xsl:choose>
1254
- <xsl:when test="$doctype = 'amendment'"/><!-- ToC shouldn't be generated in amendments. -->
1311
+ <xsl:choose>
1312
+ <xsl:when test="$doctype = 'amendment'"/><!-- ToC shouldn't be generated in amendments. -->
1255
1313
 
1256
- <xsl:otherwise>
1257
- <xsl:if test="/iso:iso-standard/iso:boilerplate/iso:copyright-statement">
1258
- <fo:block break-after="page"/>
1259
- </xsl:if>
1260
- <fo:block-container font-weight="bold">
1261
- <fo:block role="TOC">
1262
- <fo:block text-align-last="justify" font-size="16pt" margin-top="10pt" margin-bottom="18pt">
1263
- <fo:inline font-size="16pt" font-weight="bold" role="H1">
1264
- <!-- Contents -->
1265
- <xsl:call-template name="getLocalizedString">
1266
- <xsl:with-param name="key">table_of_contents</xsl:with-param>
1267
- </xsl:call-template>
1268
- </fo:inline>
1269
- <fo:inline keep-together.within-line="always">
1270
- <fo:leader leader-pattern="space"/>
1271
- <fo:inline font-weight="normal" font-size="10pt">
1272
- <!-- Page -->
1314
+ <xsl:otherwise>
1315
+ <xsl:if test="/iso:iso-standard/iso:boilerplate/iso:copyright-statement">
1316
+ <fo:block break-after="page"/>
1317
+ </xsl:if>
1318
+ <fo:block-container font-weight="bold">
1319
+ <fo:block role="TOC">
1320
+ <fo:block text-align-last="justify" font-size="16pt" margin-top="10pt" margin-bottom="18pt">
1321
+ <fo:inline font-size="16pt" font-weight="bold" role="H1">
1322
+ <!-- Contents -->
1273
1323
  <xsl:call-template name="getLocalizedString">
1274
- <xsl:with-param name="key">locality.page</xsl:with-param>
1275
- </xsl:call-template>
1324
+ <xsl:with-param name="key">table_of_contents</xsl:with-param>
1325
+ </xsl:call-template>
1276
1326
  </fo:inline>
1277
- </fo:inline>
1278
- </fo:block>
1327
+ <fo:inline keep-together.within-line="always">
1328
+ <fo:leader leader-pattern="space"/>
1329
+ <fo:inline font-weight="normal" font-size="10pt">
1330
+ <!-- Page -->
1331
+ <xsl:call-template name="getLocalizedString">
1332
+ <xsl:with-param name="key">locality.page</xsl:with-param>
1333
+ </xsl:call-template>
1334
+ </fo:inline>
1335
+ </fo:inline>
1336
+ </fo:block>
1279
1337
 
1280
- <xsl:if test="$debug = 'true'">
1281
- <xsl:text disable-output-escaping="yes">&lt;!--</xsl:text>
1282
- DEBUG
1283
- contents=<xsl:copy-of select="$contents"/>
1284
- <xsl:text disable-output-escaping="yes">--&gt;</xsl:text>
1285
- </xsl:if>
1338
+ <xsl:if test="$debug = 'true'">
1339
+ <xsl:text disable-output-escaping="yes">&lt;!--</xsl:text>
1340
+ DEBUG
1341
+ contents=<xsl:copy-of select="$contents"/>
1342
+ <xsl:text disable-output-escaping="yes">--&gt;</xsl:text>
1343
+ </xsl:if>
1286
1344
 
1287
- <xsl:variable name="margin-left">12</xsl:variable>
1288
- <xsl:for-each select="$contents//item[@display = 'true']"><!-- [not(@level = 2 and starts-with(@section, '0'))] skip clause from preface -->
1345
+ <xsl:variable name="margin-left">12</xsl:variable>
1346
+ <xsl:for-each select="$contents//item[@display = 'true']"><!-- [not(@level = 2 and starts-with(@section, '0'))] skip clause from preface -->
1289
1347
 
1290
- <fo:block role="TOCI">
1291
- <xsl:if test="@level = 1">
1292
- <xsl:attribute name="margin-top">5pt</xsl:attribute>
1293
- </xsl:if>
1294
- <xsl:if test="@level = 3">
1295
- <xsl:attribute name="margin-top">-0.7pt</xsl:attribute>
1296
- </xsl:if>
1297
- <fo:list-block>
1298
- <xsl:attribute name="margin-left"><xsl:value-of select="$margin-left * (@level - 1)"/>mm</xsl:attribute>
1299
- <xsl:if test="@level &gt;= 2 or @type = 'annex'">
1300
- <xsl:attribute name="font-weight">normal</xsl:attribute>
1348
+ <fo:block role="TOCI">
1349
+ <xsl:if test="@level = 1">
1350
+ <xsl:attribute name="margin-top">5pt</xsl:attribute>
1301
1351
  </xsl:if>
1302
- <xsl:attribute name="provisional-distance-between-starts">
1303
- <xsl:choose>
1304
- <!-- skip 0 section without subsections -->
1305
- <xsl:when test="@level &gt;= 3"><xsl:value-of select="$margin-left * 1.2"/>mm</xsl:when>
1306
- <xsl:when test="@section != ''"><xsl:value-of select="$margin-left"/>mm</xsl:when>
1307
- <xsl:otherwise>0mm</xsl:otherwise>
1308
- </xsl:choose>
1309
- </xsl:attribute>
1310
- <fo:list-item>
1311
- <fo:list-item-label end-indent="label-end()">
1312
- <fo:block>
1313
- <xsl:value-of select="@section"/>
1314
- </fo:block>
1315
- </fo:list-item-label>
1316
- <fo:list-item-body start-indent="body-start()">
1317
- <fo:block text-align-last="justify" margin-left="12mm" text-indent="-12mm">
1318
- <fo:basic-link internal-destination="{@id}" fox:alt-text="{title}">
1319
-
1320
- <xsl:apply-templates select="title"/>
1321
-
1322
- <fo:inline keep-together.within-line="always">
1323
- <fo:leader font-size="9pt" font-weight="normal" leader-pattern="dots"/>
1324
- <fo:inline>
1325
- <xsl:if test="@level = 1 and @type = 'annex'">
1326
- <xsl:attribute name="font-weight">bold</xsl:attribute>
1327
- </xsl:if>
1328
- <fo:page-number-citation ref-id="{@id}"/>
1352
+ <xsl:if test="@level = 3">
1353
+ <xsl:attribute name="margin-top">-0.7pt</xsl:attribute>
1354
+ </xsl:if>
1355
+ <fo:list-block>
1356
+ <xsl:attribute name="margin-left"><xsl:value-of select="$margin-left * (@level - 1)"/>mm</xsl:attribute>
1357
+ <xsl:if test="@level &gt;= 2 or @type = 'annex'">
1358
+ <xsl:attribute name="font-weight">normal</xsl:attribute>
1359
+ </xsl:if>
1360
+ <xsl:attribute name="provisional-distance-between-starts">
1361
+ <xsl:choose>
1362
+ <!-- skip 0 section without subsections -->
1363
+ <xsl:when test="@level &gt;= 3"><xsl:value-of select="$margin-left * 1.2"/>mm</xsl:when>
1364
+ <xsl:when test="@section != ''"><xsl:value-of select="$margin-left"/>mm</xsl:when>
1365
+ <xsl:otherwise>0mm</xsl:otherwise>
1366
+ </xsl:choose>
1367
+ </xsl:attribute>
1368
+ <fo:list-item>
1369
+ <fo:list-item-label end-indent="label-end()">
1370
+ <fo:block>
1371
+ <xsl:value-of select="@section"/>
1372
+ </fo:block>
1373
+ </fo:list-item-label>
1374
+ <fo:list-item-body start-indent="body-start()">
1375
+ <fo:block text-align-last="justify" margin-left="12mm" text-indent="-12mm">
1376
+ <fo:basic-link internal-destination="{@id}" fox:alt-text="{title}">
1377
+
1378
+ <xsl:apply-templates select="title"/>
1379
+
1380
+ <fo:inline keep-together.within-line="always">
1381
+ <fo:leader font-size="9pt" font-weight="normal" leader-pattern="dots"/>
1382
+ <fo:inline>
1383
+ <xsl:if test="@level = 1 and @type = 'annex'">
1384
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
1385
+ </xsl:if>
1386
+ <fo:page-number-citation ref-id="{@id}"/>
1387
+ </fo:inline>
1329
1388
  </fo:inline>
1330
- </fo:inline>
1331
- </fo:basic-link>
1332
- </fo:block>
1333
- </fo:list-item-body>
1334
- </fo:list-item>
1335
- </fo:list-block>
1336
- </fo:block>
1337
-
1338
- </xsl:for-each>
1389
+ </fo:basic-link>
1390
+ </fo:block>
1391
+ </fo:list-item-body>
1392
+ </fo:list-item>
1393
+ </fo:list-block>
1394
+ </fo:block>
1339
1395
 
1340
- <!-- List of Tables -->
1341
- <xsl:if test="$contents//tables/table">
1342
- <xsl:call-template name="insertListOf_Title">
1343
- <xsl:with-param name="title" select="$title-list-tables"/>
1344
- </xsl:call-template>
1345
- <xsl:for-each select="$contents//tables/table">
1346
- <xsl:call-template name="insertListOf_Item"/>
1347
1396
  </xsl:for-each>
1348
- </xsl:if>
1349
1397
 
1350
- <!-- List of Figures -->
1351
- <xsl:if test="$contents//figures/figure">
1352
- <xsl:call-template name="insertListOf_Title">
1353
- <xsl:with-param name="title" select="$title-list-figures"/>
1354
- </xsl:call-template>
1355
- <xsl:for-each select="$contents//figures/figure">
1356
- <xsl:call-template name="insertListOf_Item"/>
1357
- </xsl:for-each>
1358
- </xsl:if>
1398
+ <!-- List of Tables -->
1399
+ <xsl:if test="$contents//tables/table">
1400
+ <xsl:call-template name="insertListOf_Title">
1401
+ <xsl:with-param name="title" select="$title-list-tables"/>
1402
+ </xsl:call-template>
1403
+ <xsl:for-each select="$contents//tables/table">
1404
+ <xsl:call-template name="insertListOf_Item"/>
1405
+ </xsl:for-each>
1406
+ </xsl:if>
1359
1407
 
1360
- </fo:block>
1361
- </fo:block-container>
1362
- </xsl:otherwise>
1363
- </xsl:choose>
1408
+ <!-- List of Figures -->
1409
+ <xsl:if test="$contents//figures/figure">
1410
+ <xsl:call-template name="insertListOf_Title">
1411
+ <xsl:with-param name="title" select="$title-list-figures"/>
1412
+ </xsl:call-template>
1413
+ <xsl:for-each select="$contents//figures/figure">
1414
+ <xsl:call-template name="insertListOf_Item"/>
1415
+ </xsl:for-each>
1416
+ </xsl:if>
1364
1417
 
1365
- <!-- Foreword, Introduction -->
1366
- <xsl:call-template name="processPrefaceSectionsDefault"/>
1418
+ </fo:block>
1419
+ </fo:block-container>
1420
+ </xsl:otherwise>
1421
+ </xsl:choose>
1367
1422
 
1368
- </fo:flow>
1369
- </fo:page-sequence>
1423
+ <!-- Foreword, Introduction -->
1424
+ <xsl:call-template name="processPrefaceSectionsDefault"/>
1370
1425
 
1371
- <!-- BODY -->
1372
- <fo:page-sequence master-reference="document{$document-master-reference}" initial-page-number="1" force-page-count="no-force">
1373
- <fo:static-content flow-name="xsl-footnote-separator">
1374
- <fo:block>
1375
- <fo:leader leader-pattern="rule" leader-length="30%"/>
1376
- </fo:block>
1377
- </fo:static-content>
1378
- <xsl:call-template name="insertHeaderFooter"/>
1379
- <fo:flow flow-name="xsl-region-body">
1380
-
1381
- <fo:block-container>
1382
- <!-- Information and documentation — Codes for transcription systems -->
1383
- <!-- <fo:block font-size="16pt" font-weight="bold" margin-bottom="18pt">
1384
- <xsl:value-of select="$title-en"/>
1426
+ </fo:flow>
1427
+ </fo:page-sequence>
1428
+
1429
+ <!-- BODY -->
1430
+ <fo:page-sequence master-reference="document{$document-master-reference}" initial-page-number="1" force-page-count="no-force">
1431
+ <fo:static-content flow-name="xsl-footnote-separator">
1432
+ <fo:block>
1433
+ <fo:leader leader-pattern="rule" leader-length="30%"/>
1385
1434
  </fo:block>
1386
- -->
1387
- <fo:block font-size="18pt" font-weight="bold" margin-top="40pt" margin-bottom="20pt" line-height="1.1">
1435
+ </fo:static-content>
1436
+ <xsl:call-template name="insertHeaderFooter"/>
1437
+ <fo:flow flow-name="xsl-region-body">
1388
1438
 
1389
- <fo:block role="H1">
1439
+ <fo:block-container>
1440
+ <!-- Information and documentation — Codes for transcription systems -->
1441
+ <!-- <fo:block font-size="16pt" font-weight="bold" margin-bottom="18pt">
1442
+ <xsl:value-of select="$title-en"/>
1443
+ </fo:block>
1444
+ -->
1445
+ <fo:block font-size="18pt" font-weight="bold" margin-top="40pt" margin-bottom="20pt" line-height="1.1">
1390
1446
 
1391
- <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-intro']"/>
1447
+ <fo:block role="H1">
1448
+
1449
+ <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-intro']"/>
1392
1450
 
1393
- <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-main']"/>
1451
+ <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-main']"/>
1452
+
1453
+ <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-part']">
1454
+ <xsl:with-param name="isMainLang">true</xsl:with-param>
1455
+ <xsl:with-param name="isMainBody">true</xsl:with-param>
1456
+ </xsl:apply-templates>
1457
+
1458
+ </fo:block>
1459
+ <fo:block role="H1">
1460
+ <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-part']/node()"/>
1461
+ </fo:block>
1394
1462
 
1395
- <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-part']">
1463
+ <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-amd']">
1396
1464
  <xsl:with-param name="isMainLang">true</xsl:with-param>
1397
1465
  <xsl:with-param name="isMainBody">true</xsl:with-param>
1398
1466
  </xsl:apply-templates>
1399
1467
 
1400
1468
  </fo:block>
1401
- <fo:block role="H1">
1402
- <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-part']/node()"/>
1403
- </fo:block>
1404
-
1405
- <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-amd']">
1406
- <xsl:with-param name="isMainLang">true</xsl:with-param>
1407
- <xsl:with-param name="isMainBody">true</xsl:with-param>
1408
- </xsl:apply-templates>
1409
1469
 
1410
- </fo:block>
1411
-
1412
- </fo:block-container>
1413
- <!-- Clause(s) -->
1414
- <fo:block>
1470
+ </fo:block-container>
1471
+ <!-- Clause(s) -->
1472
+ <fo:block>
1415
1473
 
1416
- <xsl:choose>
1417
- <xsl:when test="$doctype = 'amendment'">
1418
- <xsl:apply-templates select="/iso:iso-standard/iso:sections/*"/>
1419
- </xsl:when>
1420
- <xsl:otherwise>
1421
- <xsl:call-template name="processMainSectionsDefault"/>
1422
- </xsl:otherwise>
1423
- </xsl:choose>
1474
+ <xsl:choose>
1475
+ <xsl:when test="$doctype = 'amendment'">
1476
+ <xsl:apply-templates select="/iso:iso-standard/iso:sections/*"/>
1477
+ </xsl:when>
1478
+ <xsl:otherwise>
1479
+ <xsl:call-template name="processMainSectionsDefault"/>
1480
+ </xsl:otherwise>
1481
+ </xsl:choose>
1424
1482
 
1425
- <fo:block id="lastBlock" font-size="1pt"> </fo:block>
1426
- </fo:block>
1483
+ <fo:block id="lastBlock" font-size="1pt"> </fo:block>
1484
+ </fo:block>
1427
1485
 
1428
- </fo:flow>
1429
- </fo:page-sequence>
1486
+ </fo:flow>
1487
+ </fo:page-sequence>
1430
1488
 
1431
- <!-- Index -->
1432
- <xsl:variable name="docid">
1433
- <xsl:call-template name="getDocumentId"/>
1434
- </xsl:variable>
1489
+ <xsl:variable name="docid">
1490
+ <xsl:call-template name="getDocumentId"/>
1491
+ </xsl:variable>
1435
1492
 
1436
- <xsl:variable name="current_document_index_id">
1437
- <xsl:apply-templates select="//iso:indexsect" mode="index_add_id">
1438
- <xsl:with-param name="docid" select="$docid"/>
1439
- </xsl:apply-templates>
1493
+ <xsl:variable name="current_document_index_id">
1494
+ <xsl:apply-templates select="//iso:indexsect" mode="index_add_id">
1495
+ <xsl:with-param name="docid" select="$docid"/>
1496
+ </xsl:apply-templates>
1497
+ </xsl:variable>
1440
1498
 
1441
- </xsl:variable>
1499
+ <xsl:variable name="current_document_index">
1500
+ <xsl:apply-templates select="xalan:nodeset($current_document_index_id)" mode="index_update"/>
1501
+ </xsl:variable>
1442
1502
 
1443
- <xsl:variable name="current_document_index">
1444
- <xsl:apply-templates select="xalan:nodeset($current_document_index_id)" mode="index_update"/>
1445
- </xsl:variable>
1503
+ <xsl:apply-templates select="xalan:nodeset($current_document_index)" mode="index"/>
1446
1504
 
1447
- <!-- <xsl:apply-templates select="//iso:indexsect" mode="index"/> -->
1448
- <xsl:apply-templates select="xalan:nodeset($current_document_index)" mode="index"/>
1449
-
1450
- <xsl:if test="$isPublished = 'true'">
1451
- <fo:page-sequence master-reference="last-page" force-page-count="no-force">
1452
- <xsl:call-template name="insertHeaderEven"/>
1453
- <fo:static-content flow-name="last-page-footer" font-size="10pt">
1454
- <fo:table table-layout="fixed" width="100%">
1455
- <fo:table-column column-width="33%"/>
1456
- <fo:table-column column-width="33%"/>
1457
- <fo:table-column column-width="34%"/>
1458
- <fo:table-body>
1459
- <fo:table-row>
1460
- <fo:table-cell display-align="center">
1461
- <fo:block font-size="9pt"><xsl:value-of select="$copyrightText"/></fo:block>
1462
- </fo:table-cell>
1463
- <fo:table-cell>
1464
- <fo:block font-size="10pt" font-weight="bold" text-align="center">
1465
- <xsl:if test="$stage-abbreviation = 'PRF'">
1466
- <xsl:value-of select="$proof-text"/>
1467
- </xsl:if>
1505
+ <xsl:if test="$isPublished = 'true'">
1506
+ <fo:page-sequence master-reference="last-page" force-page-count="no-force">
1507
+ <xsl:call-template name="insertHeaderEven"/>
1508
+ <fo:static-content flow-name="last-page-footer" font-size="10pt">
1509
+ <fo:table table-layout="fixed" width="100%">
1510
+ <fo:table-column column-width="33%"/>
1511
+ <fo:table-column column-width="33%"/>
1512
+ <fo:table-column column-width="34%"/>
1513
+ <fo:table-body>
1514
+ <fo:table-row>
1515
+ <fo:table-cell display-align="center">
1516
+ <fo:block font-size="9pt"><xsl:value-of select="$copyrightText"/></fo:block>
1517
+ </fo:table-cell>
1518
+ <fo:table-cell>
1519
+ <fo:block font-size="10pt" font-weight="bold" text-align="center">
1520
+ <xsl:if test="$stage-abbreviation = 'PRF'">
1521
+ <xsl:value-of select="$proof-text"/>
1522
+ </xsl:if>
1523
+ </fo:block>
1524
+ </fo:table-cell>
1525
+ <fo:table-cell>
1526
+ <fo:block> </fo:block>
1527
+ </fo:table-cell>
1528
+ </fo:table-row>
1529
+ </fo:table-body>
1530
+ </fo:table>
1531
+ </fo:static-content>
1532
+ <fo:flow flow-name="xsl-region-body">
1533
+ <fo:block-container height="252mm" display-align="after">
1534
+ <xsl:call-template name="insertTripleLine"/>
1535
+ <fo:block-container>
1536
+ <fo:block font-size="12pt" font-weight="bold" padding-top="3.5mm" padding-bottom="0.5mm">
1537
+ <xsl:for-each select="/iso:iso-standard/iso:bibdata/iso:ext/iso:ics/iso:code">
1538
+ <xsl:if test="position() = 1"><fo:inline>ICS  </fo:inline></xsl:if>
1539
+ <xsl:value-of select="."/>
1540
+ <xsl:if test="position() != last()"><xsl:text>; </xsl:text></xsl:if>
1541
+ </xsl:for-each>
1542
+ <!-- <xsl:choose>
1543
+ <xsl:when test="$stage-name = 'FDIS'">ICS&#xA0;&#xA0;01.140.30</xsl:when>
1544
+ <xsl:when test="$stage-name = 'PRF'">ICS&#xA0;&#xA0;35.240.63</xsl:when>
1545
+ <xsl:when test="$stage-name = 'published'">ICS&#xA0;&#xA0;35.240.30</xsl:when>
1546
+ <xsl:otherwise>ICS&#xA0;&#xA0;67.060</xsl:otherwise>
1547
+ </xsl:choose> -->
1468
1548
  </fo:block>
1469
- </fo:table-cell>
1470
- <fo:table-cell>
1471
- <fo:block> </fo:block>
1472
- </fo:table-cell>
1473
- </fo:table-row>
1474
- </fo:table-body>
1475
- </fo:table>
1476
- </fo:static-content>
1477
- <fo:flow flow-name="xsl-region-body">
1478
- <fo:block-container height="252mm" display-align="after">
1479
- <xsl:call-template name="insertTripleLine"/>
1480
- <fo:block-container>
1481
- <fo:block font-size="12pt" font-weight="bold" padding-top="3.5mm" padding-bottom="0.5mm">
1482
- <xsl:for-each select="/iso:iso-standard/iso:bibdata/iso:ext/iso:ics/iso:code">
1483
- <xsl:if test="position() = 1"><fo:inline>ICS  </fo:inline></xsl:if>
1484
- <xsl:value-of select="."/>
1485
- <xsl:if test="position() != last()"><xsl:text>; </xsl:text></xsl:if>
1486
- </xsl:for-each>
1487
- <!-- <xsl:choose>
1488
- <xsl:when test="$stage-name = 'FDIS'">ICS&#xA0;&#xA0;01.140.30</xsl:when>
1489
- <xsl:when test="$stage-name = 'PRF'">ICS&#xA0;&#xA0;35.240.63</xsl:when>
1490
- <xsl:when test="$stage-name = 'published'">ICS&#xA0;&#xA0;35.240.30</xsl:when>
1491
- <xsl:otherwise>ICS&#xA0;&#xA0;67.060</xsl:otherwise>
1492
- </xsl:choose> -->
1493
- </fo:block>
1494
- <xsl:if test="/iso:iso-standard/iso:bibdata/iso:keyword">
1495
- <fo:block font-size="9pt" margin-bottom="6pt">
1496
- <xsl:variable name="title-descriptors">
1497
- <xsl:call-template name="getTitle">
1498
- <xsl:with-param name="name" select="'title-descriptors'"/>
1549
+ <xsl:if test="/iso:iso-standard/iso:bibdata/iso:keyword">
1550
+ <fo:block font-size="9pt" margin-bottom="6pt">
1551
+ <xsl:variable name="title-descriptors">
1552
+ <xsl:call-template name="getTitle">
1553
+ <xsl:with-param name="name" select="'title-descriptors'"/>
1554
+ </xsl:call-template>
1555
+ </xsl:variable>
1556
+ <fo:inline font-weight="bold"><xsl:value-of select="$title-descriptors"/>: </fo:inline>
1557
+ <xsl:call-template name="insertKeywords">
1558
+ <xsl:with-param name="sorting">no</xsl:with-param>
1499
1559
  </xsl:call-template>
1500
- </xsl:variable>
1501
- <fo:inline font-weight="bold"><xsl:value-of select="$title-descriptors"/>: </fo:inline>
1502
- <xsl:call-template name="insertKeywords">
1503
- <xsl:with-param name="sorting">no</xsl:with-param>
1560
+ </fo:block>
1561
+ </xsl:if>
1562
+ <xsl:variable name="countPages"/>
1563
+ <xsl:variable name="price_based_on">
1564
+ <xsl:call-template name="getLocalizedString">
1565
+ <xsl:with-param name="key">price_based_on</xsl:with-param>
1566
+ </xsl:call-template>
1567
+ </xsl:variable>
1568
+ <xsl:variable name="price_based_on_items">
1569
+ <xsl:call-template name="split">
1570
+ <xsl:with-param name="pText" select="$price_based_on"/>
1571
+ <xsl:with-param name="sep" select="'%'"/>
1572
+ <xsl:with-param name="normalize-space">false</xsl:with-param>
1504
1573
  </xsl:call-template>
1574
+ </xsl:variable>
1575
+ <!-- Price based on ... pages -->
1576
+ <fo:block font-size="9pt">
1577
+ <xsl:for-each select="xalan:nodeset($price_based_on_items)/item">
1578
+ <xsl:value-of select="."/>
1579
+ <xsl:if test="position() != last()">
1580
+ <fo:page-number-citation ref-id="lastBlock"/>
1581
+ </xsl:if>
1582
+ </xsl:for-each>
1505
1583
  </fo:block>
1506
- </xsl:if>
1507
- <xsl:variable name="countPages"/>
1508
- <xsl:variable name="price_based_on">
1509
- <xsl:call-template name="getLocalizedString">
1510
- <xsl:with-param name="key">price_based_on</xsl:with-param>
1511
- </xsl:call-template>
1512
- </xsl:variable>
1513
- <xsl:variable name="price_based_on_items">
1514
- <xsl:call-template name="split">
1515
- <xsl:with-param name="pText" select="$price_based_on"/>
1516
- <xsl:with-param name="sep" select="'%'"/>
1517
- <xsl:with-param name="normalize-space">false</xsl:with-param>
1518
- </xsl:call-template>
1519
- </xsl:variable>
1520
- <!-- Price based on ... pages -->
1521
- <fo:block font-size="9pt">
1522
- <xsl:for-each select="xalan:nodeset($price_based_on_items)/item">
1523
- <xsl:value-of select="."/>
1524
- <xsl:if test="position() != last()">
1525
- <fo:page-number-citation ref-id="lastBlock"/>
1526
- </xsl:if>
1527
- </xsl:for-each>
1528
- </fo:block>
1584
+ </fo:block-container>
1529
1585
  </fo:block-container>
1530
- </fo:block-container>
1531
- </fo:flow>
1532
- </fo:page-sequence>
1533
- </xsl:if>
1534
- </xsl:for-each>
1535
- </fo:root>
1586
+ </fo:flow>
1587
+ </fo:page-sequence>
1588
+ </xsl:if>
1589
+ </xsl:for-each>
1590
+ </fo:root>
1591
+ </xsl:variable>
1592
+
1593
+ <xsl:apply-templates select="xalan:nodeset($xslfo)" mode="landscape_portrait"/>
1594
+
1595
+ </xsl:template>
1596
+
1597
+ <xsl:template match="iso:pagebreak" priority="2">
1598
+ <xsl:copy-of select="."/>
1536
1599
  </xsl:template>
1537
1600
 
1538
1601
  <xsl:template name="insertListOf_Title">
@@ -2199,6 +2262,8 @@
2199
2262
  <xsl:text>iVBORw0KGgoAAAANSUhEUgAAAFEAAABHCAIAAADwYjznAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAA66SURBVHhezZt5sM/VG8fNVH7JruxkSZKQ3TAYS7aGajKpFBnRxBjjkhrLrRgmYwm59hrGjC0miSmmIgoVZYu00GJtxkyMkV2/1+fzPh7nfr7fe33v/X6/9/d7/3HmOc/nLM/7PM95zjnfS6F//xc4f/786dOnXaXAUdCcjx071rt373vvvbdChQrNmzdfuXKl+1CAKFDOR44cqVWrVqFChf4T4vbbb7/zzjsnT57sPhcUCo7ztWvX2rRpc9tttxUtWvSuEAgwp/z0009dowJBwXGeM2dO4cKFRZWySJEikvF2o0aNrly54tqlHwXE+cyZM9WrV4czJMW5WLFixv+OO+6YPn26a5p+FBDnjIwM/Ak9AHMcm5mZyWY2TeXKlf/66y/XOs0oCM4HDhwoU6aMMSSqs7Kyfv75Z5jjYXmeff7yyy+7DmlGQXB+7LHHcLKFcdu2bXft2vXtt9/Onz9fS8AnVqRkyZLff/+965NOpJ3zhg0bIsQ4k7/55psvv/xy9+7dnTp1MlezLp07d3bd0on0cr569WqTJk18VlxI9uzZs3XrVjhv37597dq199xzD2vBV9aFo2vVqlWuc9qQXs6zZs2CcLCJ77oLPlWqVOEohqo4U8L/hRdesEVBeOihhy5evOj6pwdp5Pz3339Xq1ZN5xOcEV577TXiWWxVfvXVV5R+M2Jh3Lhxboj0II2chw4dqtQF5EBtY+MsgXz2xhtvKKvTknAoX7780aNH3ShpQLo4Hzx4sFSpUmLCRgUzZsyAnlEVbZXo/XOLlSLg3UBpQLo4P/HEE+ZkhPbt23MOhXwdz5C1A+fWokWLuJmxNKwRK1W8eHG2vRsr1UgLZ51PArFaunRpzqevv/7aOAPJBpLZ448/zurQhWXC5xzjbrhUI/WcOZ+aNm2qQIUAwtNPPw0liBnbiADw6scff8xO9s8tnO8GTSlSz3n27NnwlLt0Pn3++edQEkNKE0KyNzWk9EGDBqkvIJPfd999586dc+OmDinmzPlUo0YN/3waNWrUvn37tmzZInohzWzMJYBt27ZxdMHTP7fGjBnjhk4dUsyZ84nXQuinIKrr1q3L+SRuKk0IWIbwZRL4pEmTlMkAYVK2bNnffvvNjZ4ipJLzL7/8wvsJQ7UhAa9iaEDGqOJJsvR3Ifi0Y8cOlPoK+Ep6b9GihdIBwNW9evVyE6QIqeTcs2dP/fQjW9u1a/fjjz+KqljBlgCePHlynz59eGwNHz58zZo1OrTVjJK4WLp0aYkSJexsZ7RNmza5OVKBlHH+7LPPMA4TMRRzeT+9//77uNHIQHjJkiV16tThK24E7FvigrylC6maUZLkWT4aMBRjIuD569evu5mSRmo4X7t2rXnz5hgXuDh08lNPPeUzwXscPDyhjInARqDxc889ZzcWQJLfuHFjxYoV+UpjwOrMmzfPTZY0UsOZ1z9myT4MxVzcrvNJ4ELCfdsWhWZWKobfeecd3cZZIMBuz8jI0Ji0QeA44FBw8yWHFHA+c+aMfz5BjOzt+w0yWVlZYVJzv3VSGqjSpWvXrsQFbGlPSTKjV+3atW1YMgWr4KZMDingPGLECEtdmPjAAw/gYXKVCIOdO3e++uqrClQRUGkCvZo1a0YzGhtt9j/PEv8Szh2WpOhmTQLJcj58+LB+6MAsefLtt9+2VCwCeAzrA4ohjLYEgJ8feeQRQkPt1RHs3bu3Y8eObHi1Z2XJ9m7iJJAsZw5PbJL1CJi4f/9+3boEOOD2Dz74QE/LkGkA0VAJ52eeeYY97PqEvQBZYPXq1bhXHeXw9evXu7nzi6Q4b9682UzBLA5Vzidi0r9pUhLnXLkrV66s64p4CsgAPXdMYjvk6wgDZDY5hznBr16sTsOGDXnGOAvyhaQ4t2rVCiNkOgLvp0h8SiAhQfv++++3sweol0pWjeC3vG3dAX2/+OKLqlWrWl8mYvs4C/KF/HPmvNXyAwziGcihShg7Y2+YTglYC65lWiAf9CVACPvly5cTydbe707Mv/766+Zq5uKtlswfPfLJ+ezZs3oAmR1DhgzRhpStQmB+CEL0ySefhHOwQmEXARnOnOeffPIJsRDpBVTlZla/fn1bYpJZMn/0yCdnXohKXQBTatWqRRAC31ArAXtVdwzxtBKgfPjhh1kvayz4IxACCxYsoDG7gJJlIrGR1Z01eUR+OP/+++9Esm0wLHjrrbf801UwGYHENm3aNFqqC3ZLAHBu3bq17jB+FxMASZGTuXPnzrbQCI8++qgzKI/ID+fnn3/e5iZcmzZtCiWZCGSlLwAcxQPDLhiAvhIYoXv37rYvcgIjcCj45xb46KOPnE15QZ45k6VkuiZGfvfdd0m5sjikeRMyF9Br3bp1ZcuWlatFWCV+HjZsmGI7FzAau7pfv35KCvRFYFNcvnzZWZYw8syZ9Os7uUePHrYVzTgJIOAdgq1O6ac9gBB6K/hpwQ5nYB0lhCMFAkmOc6t69eraVjJgypQpzrKEkTfOy5YtYz6sZD6Eu+++m1sRUWdmWWmgKg1L07JlS+OskqGIlPfee08HlaBe1lcIxgrPvMzMTOPMaJUqVTp16pSzLzHkgfOFCxd48bO0TAYQXnrpJeUewSzzrTSZ44rHE70wVxYDQj32oIoVDMQLl3muYmYGQTdw4EBnYmLIA+fx48crqrGYleZ82rFjh84nM06CEBp58xO29u/f3zgLOKpmzZoQ9ltK8OF/JV/OmTMHMxRurFrJkiVZUGdlAkiU8/HjxytUqKCgkq0sgX+o+rZKtlICO3bixIk2QuCjMDibNGnCclhLAxoprZQACC6FjAbBEzzLnKEJIFHOJEw/dWEoHMzJMgVINk1gZghkcjsZnu4irJKhunXrFvkZ0OArKSUA4os8whtWK4jD8Xbi/6QwIc7QK168uGJJWWf+/Pl2JptBglVD8wKoiqG8KO1fFQS+9g4q1/QGQyEiC6oSzC+++KK5mnHq1q37zz//OItzRUKcO3XqZDuZabgA6e9PBtnhKmHVBANBwXWqRo0aFt4AmYCP/MYQC9OboJxn5xbAMLabszhX3JozMWMXCQTOp7Vr10bOJwHZqhFZAvFSr149fCIrBV6RuV/jVMZqWKkJEybINgB5Ms4ff/zh7M4Zt+B86dIl+72ScTF3wIABpBCbW/DlWJiVxDBXGuOsFVyzZo3/AgW0FCJVII1AFdrNmjVjQJlHMPbu3duZnjNuwXnSpEkQZjgGZSGJTCZT6hI0d2jDrQVMxCYsCykHnqlWrRpRyoDWRkIEpo+UBAjPeOUaBmQRyTV8ctbngNw4nzhxwv9hHYG3uzlZs0oAZocJodppALJ+DMQtSoeQ52YWyf9+KcEgjaAqpb3MGVBjtmrVyhHIAblx5gphP+IyKLefyNU6Al9vshkngTBu3749lgECe+HChXF/EjJNRJDsa3Ru8Xox37CmixcvdhziIUfOrB/3G6IFwnILtx98opk0a6T0gcZXWpVIJnuPGjWKeyu3dz3IIlBjwa/qK5AsJSD0hgwZwiJiJJxxT+5/rM+Rsz3QNUqXLl04n/wpBclWCrEaA0o24aFDh3766ae9e/c6bagXXD1mQMHVb2gkUOIM3gJKZgDLWVbHJAbxOa9evRoPW2LQ+WTZ1Z9SiCglgPCj+ypg3Ny5c5999lkO+YyMDD4RnOjD5tFBrCpQNb0EyZRsumnTpmGwQpI45/Lz66+/Oj7ZEYfzlStX6tevr6wgJ/fp08ffyeFcbmJBGsGv6itQFQ9zeWJM/MCwgInsX0MCtYwtJZjGYJ8osZCMyJihpwNX9+zZ01HKjjicp06dSk8sA0RL1apVeannkloBsuDq3lfpAVs3KyuLMXGCVpOSHMlrQQ9S2vjtQThANr00IKKk5Jq0YsUK5SAGV5DG/Z8eUc6cT/YHB7rpfIp9A8StSogLPpEUeU7Yaga+CC929sO4mgnqJaga0asKJFOSGg8ePMiu8V3NjSX2jx5RzqRTnU+YhZN5P9lZIgQTxptSpY/wewDJOLNt27YyyGjDuXTp0qtWrdLvJNYr0j2it9KgKgvH8tlvsozPdLNmzXLcbiAbZzKz/SVNyYDzk00Yd4KIIJhSpQSBYNFLSNYILGvNmjVppp8NBLWXYFXgf/L1gpTs6pEjRzKsZtHejPyfvWycIz8ga6fZcII/gSANcPUQqloJYMXu4vZKHLGsrCkG4ZDMzEwtqyEcwMGq+uTDV5rMLITMgw8+yOBGZOjQoY5hiJucedzKFNoh6PbPQWIjBjOHMI2vFEwjIVJiDWHcuHFjMg2X5CpVqrzyyitGOOiWvYvBlKaPq5FMQM2cORM/iwvLyvbZv3+/42mcOZ8aNGggJ9OaCBw4cGBO6VTwlbeUEQBpBtqQ5H26ZMkSqhzXauDDevmQMhwm2/gG01CySfXH+sDRoau7d+8upsBx5v3EB9gCFoa3OAbFXkIEvyqZ0hBRxrbh2CN8IE8covc/GUyZiwAislX1mwzuVTLD4eDDDz8U2YDzyZMnK1WqpA1AC4SxY8fiZGhrFL/0BYCsqimlMfjKWBlEZFX9UjA5aJH9qzQRYH/fvn3hAiN4Ebncfy5duuQ4Dx48mLyibzRq0aLFDz/8QAIE7I28Ik+9btk4fzYAOO/bt6927dpyNYA299OAM3ncfySTvXiOjh49msvw8OHDrYxUTekj0tLgV5FVNcFgelV9+J/iNrOqfR02bNibb77JrhY1uZN3yPnz5wsdOHDA/uYmQJvPNAUSIlXBlw1xlSBux5wa+6CN38yqEoD0Bl+JAC/YQUruROYxV+jPP//UHzhDN7vbguQIctJHELdZrDIRDUhwUpBTS/T6BP8SJUrwjA32M9cj/d/zILuFV3MTBKua0qomhOoAvtJgn0yQbBogpcFpQ5jG9BEhUvpVARmO7dq141QOOF++fJk0Vq5cOb5pVf5PoLBMHvDiFtShQwf9EuzOZ3D06NFNmzbpfKI0KPUDyVZK8GUrfZjeBCsFk4MWubYJPnswvSFSFVBu3ryZJ5fj+e+//wVuVmgt0lkFPgAAAABJRU5ErkJggg==</xsl:text>
2200
2263
  </xsl:variable>
2201
2264
 
2265
+ <xsl:strip-space elements="iso:xref"/>
2266
+
2202
2267
  <!-- external parameters -->
2203
2268
 
2204
2269
  <xsl:param name="svg_images"/> <!-- svg images array -->
@@ -2767,7 +2832,7 @@
2767
2832
  <xsl:attribute name="margin-right">0mm</xsl:attribute>
2768
2833
 
2769
2834
  <xsl:attribute name="font-size">10pt</xsl:attribute>
2770
- <xsl:attribute name="margin-top">12pt</xsl:attribute>
2835
+ <!-- <xsl:attribute name="margin-top">12pt</xsl:attribute> -->
2771
2836
  <xsl:attribute name="margin-bottom">8pt</xsl:attribute>
2772
2837
 
2773
2838
  </xsl:attribute-set> <!-- table-container-style -->
@@ -2786,7 +2851,7 @@
2786
2851
  <xsl:attribute name="font-size">11pt</xsl:attribute>
2787
2852
  <xsl:attribute name="font-weight">bold</xsl:attribute>
2788
2853
  <xsl:attribute name="text-align">center</xsl:attribute>
2789
- <xsl:attribute name="margin-bottom">0pt</xsl:attribute>
2854
+ <xsl:attribute name="margin-bottom">-12pt</xsl:attribute>
2790
2855
 
2791
2856
  </xsl:attribute-set> <!-- table-name-style -->
2792
2857
 
@@ -2822,7 +2887,7 @@
2822
2887
  <xsl:attribute name="padding-right">1mm</xsl:attribute>
2823
2888
  <xsl:attribute name="display-align">center</xsl:attribute>
2824
2889
 
2825
- <xsl:attribute name="padding-top">1mm</xsl:attribute>
2890
+ <xsl:attribute name="padding-top">0.5mm</xsl:attribute>
2826
2891
  <xsl:attribute name="border-left"><xsl:value-of select="$table-cell-border"/></xsl:attribute>
2827
2892
  <xsl:attribute name="border-right"><xsl:value-of select="$table-cell-border"/></xsl:attribute>
2828
2893
 
@@ -3637,6 +3702,7 @@
3637
3702
  </xsl:for-each>
3638
3703
  </xsl:template>
3639
3704
 
3705
+ <xsl:variable name="regex_standard_reference">([A-Z]{2,}(/[A-Z]{2,})* \d+(-\d+)*(:\d{4})?)</xsl:variable>
3640
3706
  <xsl:variable name="tag_fo_inline_keep-together_within-line_open">###fo:inline keep-together_within-line###</xsl:variable>
3641
3707
  <xsl:variable name="tag_fo_inline_keep-together_within-line_close">###/fo:inline keep-together_within-line###</xsl:variable>
3642
3708
  <xsl:template match="text()" name="text">
@@ -3853,6 +3919,8 @@
3853
3919
  <!-- Display table's name before table as standalone block -->
3854
3920
  <!-- $namespace = 'iso' or -->
3855
3921
 
3922
+ <xsl:apply-templates select="*[local-name()='name']"/> <!-- table's title rendered before table -->
3923
+
3856
3924
  <xsl:variable name="cols-count" select="count(xalan:nodeset($simple-table)/*/tr[1]/td)"/>
3857
3925
 
3858
3926
  <xsl:variable name="colwidths">
@@ -3889,6 +3957,10 @@
3889
3957
 
3890
3958
  <fo:block-container xsl:use-attribute-sets="table-container-style">
3891
3959
 
3960
+ <xsl:if test="not(*[local-name() = 'name'])">
3961
+ <xsl:attribute name="margin-top">12pt</xsl:attribute>
3962
+ </xsl:if>
3963
+
3892
3964
  <!-- end table block-container attributes -->
3893
3965
 
3894
3966
  <!-- display table's name before table for PAS inside block-container (2-columnn layout) -->
@@ -4019,7 +4091,7 @@
4019
4091
 
4020
4092
  <!-- centered table when table name is centered (see table-name-style) -->
4021
4093
 
4022
- <fo:table table-layout="fixed" width="100%">
4094
+ <fo:table table-layout="fixed" width="100%" xsl:use-attribute-sets="table-container-style">
4023
4095
  <fo:table-column column-width="proportional-column-width(1)"/>
4024
4096
  <fo:table-column column-width="{@width}"/>
4025
4097
  <fo:table-column column-width="proportional-column-width(1)"/>
@@ -4068,17 +4140,29 @@
4068
4140
 
4069
4141
  <fo:block xsl:use-attribute-sets="table-name-style">
4070
4142
 
4143
+ <xsl:if test="$continued = 'true'">
4144
+ <xsl:attribute name="margin-bottom">2pt</xsl:attribute>
4145
+ </xsl:if>
4146
+
4071
4147
  <xsl:choose>
4072
4148
  <xsl:when test="$continued = 'true'">
4073
4149
 
4074
- <xsl:apply-templates/>
4075
-
4076
4150
  </xsl:when>
4077
4151
  <xsl:otherwise>
4078
4152
  <xsl:apply-templates/>
4079
4153
  </xsl:otherwise>
4080
4154
  </xsl:choose>
4081
4155
 
4156
+ <xsl:if test="$continued = 'true'">
4157
+ <fo:inline font-weight="bold" font-style="normal">
4158
+ <fo:retrieve-table-marker retrieve-class-name="table_number"/>
4159
+ </fo:inline>
4160
+ <fo:inline font-weight="normal" font-style="italic">
4161
+ <xsl:text> </xsl:text>
4162
+ <fo:retrieve-table-marker retrieve-class-name="table_continued"/>
4163
+ </fo:inline>
4164
+ </xsl:if>
4165
+
4082
4166
  </fo:block>
4083
4167
 
4084
4168
  </xsl:if>
@@ -4464,11 +4548,6 @@
4464
4548
  <xsl:call-template name="table_name_fn_display"/>
4465
4549
  </xsl:for-each>
4466
4550
 
4467
- <fo:block text-align="right" font-style="italic">
4468
- <xsl:text> </xsl:text>
4469
- <fo:retrieve-table-marker retrieve-class-name="table_continued"/>
4470
- </fo:block>
4471
-
4472
4551
  </fo:table-cell>
4473
4552
  </fo:table-row>
4474
4553
  </xsl:template> <!-- table-header-title -->
@@ -4636,6 +4715,7 @@
4636
4715
  <fo:table-row height="0" keep-with-next.within-page="always">
4637
4716
  <fo:table-cell>
4638
4717
 
4718
+ <fo:marker marker-class-name="table_number"/>
4639
4719
  <fo:marker marker-class-name="table_continued"/>
4640
4720
 
4641
4721
  <fo:block/>
@@ -4644,6 +4724,8 @@
4644
4724
  <fo:table-row height="0" keep-with-next.within-page="always">
4645
4725
  <fo:table-cell>
4646
4726
 
4727
+ <fo:marker marker-class-name="table_number"><xsl:value-of select="normalize-space(translate($table_number, ' ', ' '))"/></fo:marker>
4728
+
4647
4729
  <fo:marker marker-class-name="table_continued">
4648
4730
  <xsl:value-of select="$title_continued"/>
4649
4731
  </fo:marker>
@@ -4745,7 +4827,7 @@
4745
4827
  <xsl:template match="*[local-name()='tr']">
4746
4828
  <fo:table-row xsl:use-attribute-sets="table-body-row-style">
4747
4829
 
4748
- <xsl:if test="*[local-name() = 'th']">
4830
+ <xsl:if test="count(*) = count(*[local-name() = 'th'])"> <!-- row contains 'th' only -->
4749
4831
  <xsl:attribute name="keep-with-next">always</xsl:attribute>
4750
4832
  </xsl:if>
4751
4833
 
@@ -4929,6 +5011,10 @@
4929
5011
  <xsl:variable name="footnote_inline">
4930
5012
  <fo:inline xsl:use-attribute-sets="fn-num-style">
4931
5013
 
5014
+ <xsl:if test="following-sibling::*[1][local-name() = 'fn']">
5015
+ <xsl:attribute name="padding-right">0.5mm</xsl:attribute>
5016
+ </xsl:if>
5017
+
4932
5018
  <fo:basic-link internal-destination="{$ref_id}" fox:alt-text="footnote {$current_fn_number}">
4933
5019
  <xsl:value-of select="$current_fn_number_text"/>
4934
5020
  </fo:basic-link>
@@ -5749,7 +5835,8 @@
5749
5835
  <xsl:copy-of select="node()"/>
5750
5836
  </td>
5751
5837
  <td>
5752
- <xsl:copy-of select="following-sibling::*[local-name()='dd'][1]/node()[not(local-name() = 'dl')]"/>
5838
+ <!-- <xsl:copy-of select="following-sibling::*[local-name()='dd'][1]/node()[not(local-name() = 'dl')]"/> -->
5839
+ <xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]/node()[not(local-name() = 'dl')]" mode="dl_if"/>
5753
5840
  <!-- get paragraphs from nested 'dl' -->
5754
5841
  <xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]/*[local-name() = 'dl']" mode="dl_if_nested"/>
5755
5842
  </td>
@@ -5757,6 +5844,53 @@
5757
5844
  </xsl:template>
5758
5845
  <xsl:template match="*[local-name()='dd']" mode="dl_if"/>
5759
5846
 
5847
+ <xsl:template match="*" mode="dl_if">
5848
+ <xsl:copy-of select="."/>
5849
+ </xsl:template>
5850
+
5851
+ <xsl:template match="*[local-name() = 'p']" mode="dl_if">
5852
+ <xsl:param name="indent"/>
5853
+ <p>
5854
+ <xsl:copy-of select="@*"/>
5855
+ <xsl:value-of select="$indent"/>
5856
+ <xsl:copy-of select="node()"/>
5857
+ </p>
5858
+
5859
+ </xsl:template>
5860
+
5861
+ <xsl:template match="*[local-name() = 'ul' or local-name() = 'ol']" mode="dl_if">
5862
+ <xsl:variable name="list_rendered_">
5863
+ <xsl:apply-templates select="."/>
5864
+ </xsl:variable>
5865
+ <xsl:variable name="list_rendered" select="xalan:nodeset($list_rendered_)"/>
5866
+
5867
+ <xsl:variable name="indent">
5868
+ <xsl:for-each select="($list_rendered//fo:block[not(.//fo:block)])[1]">
5869
+ <xsl:apply-templates select="ancestor::*[@provisional-distance-between-starts]/@provisional-distance-between-starts" mode="dl_if"/>
5870
+ </xsl:for-each>
5871
+ </xsl:variable>
5872
+
5873
+ <xsl:apply-templates mode="dl_if">
5874
+ <xsl:with-param name="indent" select="$indent"/>
5875
+ </xsl:apply-templates>
5876
+ </xsl:template>
5877
+
5878
+ <xsl:template match="*[local-name() = 'li']" mode="dl_if">
5879
+ <xsl:param name="indent"/>
5880
+ <xsl:apply-templates mode="dl_if">
5881
+ <xsl:with-param name="indent" select="$indent"/>
5882
+ </xsl:apply-templates>
5883
+ </xsl:template>
5884
+
5885
+ <xsl:template match="@provisional-distance-between-starts" mode="dl_if">
5886
+ <xsl:variable name="value" select="round(substring-before(.,'mm'))"/>
5887
+ <!-- emulate left indent for list item -->
5888
+ <xsl:call-template name="repeat">
5889
+ <xsl:with-param name="char" select="'x'"/>
5890
+ <xsl:with-param name="count" select="$value"/>
5891
+ </xsl:call-template>
5892
+ </xsl:template>
5893
+
5760
5894
  <xsl:template match="*[local-name()='dl']" mode="dl_if_nested">
5761
5895
  <xsl:for-each select="*[local-name() = 'dt']">
5762
5896
  <p>
@@ -6012,6 +6146,75 @@
6012
6146
  <fo:block break-after="page"/>
6013
6147
  </xsl:template>
6014
6148
 
6149
+ <!-- ================================================================ -->
6150
+ <!-- landscape/portrait orientation processing (post-processing step) -->
6151
+ <!-- ================================================================ -->
6152
+ <xsl:template match="@*|node()" mode="landscape_portrait">
6153
+ <xsl:copy>
6154
+ <xsl:apply-templates select="@*|node()" mode="landscape_portrait"/>
6155
+ </xsl:copy>
6156
+ </xsl:template>
6157
+
6158
+ <xsl:template match="*[local-name() = 'pagebreak']" mode="landscape_portrait">
6159
+
6160
+ <!-- determine pagebreak is last element before </fo:flow> or not -->
6161
+ <xsl:variable name="isLast">
6162
+ <xsl:for-each select="ancestor-or-self::*[ancestor::fo:flow]">
6163
+ <xsl:if test="following-sibling::*">false</xsl:if>
6164
+ </xsl:for-each>
6165
+ </xsl:variable>
6166
+
6167
+ <xsl:if test="contains($isLast, 'false')">
6168
+
6169
+ <xsl:variable name="orientation" select="normalize-space(@orientation)"/>
6170
+ <xsl:variable name="tree">
6171
+ <xsl:for-each select="ancestor::*[ancestor::fo:flow]">
6172
+ <element pos="{position()}">
6173
+ <xsl:value-of select="name()"/>
6174
+ </element>
6175
+ </xsl:for-each>
6176
+ </xsl:variable>
6177
+
6178
+ <!-- close fo:page-sequence (closing preceding fo elements) -->
6179
+ <xsl:for-each select="xalan:nodeset($tree)//element">
6180
+ <xsl:sort data-type="number" order="descending" select="@pos"/>
6181
+ <xsl:text disable-output-escaping="yes">&lt;/</xsl:text>
6182
+ <xsl:value-of select="."/>
6183
+ <xsl:text disable-output-escaping="yes">&gt;</xsl:text>
6184
+ </xsl:for-each>
6185
+ <xsl:text disable-output-escaping="yes">&lt;/fo:flow&gt;</xsl:text>
6186
+ <xsl:text disable-output-escaping="yes">&lt;/fo:page-sequence&gt;</xsl:text>
6187
+
6188
+ <!-- <pagebreak/> -->
6189
+ <!-- create a new fo:page-sequence (opening fo elements) -->
6190
+
6191
+ <xsl:text disable-output-escaping="yes">&lt;fo:page-sequence master-reference="document</xsl:text><xsl:if test="$orientation != ''">-<xsl:value-of select="$orientation"/></xsl:if><xsl:text disable-output-escaping="yes">"&gt;</xsl:text>
6192
+ <fo:static-content flow-name="xsl-footnote-separator">
6193
+ <fo:block>
6194
+ <fo:leader leader-pattern="rule" leader-length="30%"/>
6195
+ </fo:block>
6196
+ </fo:static-content>
6197
+ <xsl:call-template name="insertHeaderFooter"/>
6198
+ <xsl:text disable-output-escaping="yes">&lt;fo:flow flow-name="xsl-region-body"&gt;</xsl:text>
6199
+
6200
+ <xsl:for-each select="xalan:nodeset($tree)//element">
6201
+ <xsl:text disable-output-escaping="yes">&lt;</xsl:text>
6202
+ <xsl:value-of select="."/>
6203
+ <xsl:for-each select="@*[local-name() != 'pos']">
6204
+ <xsl:text> </xsl:text>
6205
+ <xsl:value-of select="local-name()"/>
6206
+ <xsl:text>="</xsl:text>
6207
+ <xsl:value-of select="."/>
6208
+ <xsl:text>"</xsl:text>
6209
+ </xsl:for-each>
6210
+ <xsl:text disable-output-escaping="yes">&gt;</xsl:text>
6211
+ </xsl:for-each>
6212
+ </xsl:if>
6213
+ </xsl:template>
6214
+ <!-- ================================================================ -->
6215
+ <!-- END: landscape/portrait orientation processing (post-processing step) -->
6216
+ <!-- ================================================================ -->
6217
+
6015
6218
  <!-- Example: <span style="font-family:&quot;Noto Sans JP&quot;">styled text</span> -->
6016
6219
  <xsl:template match="*[local-name() = 'span'][@style]" priority="2">
6017
6220
  <xsl:variable name="styles__">
@@ -6052,6 +6255,23 @@
6052
6255
  <xsl:apply-templates/>
6053
6256
  </xsl:template>
6054
6257
 
6258
+ <!-- Don't break standard's numbers -->
6259
+ <!-- Example : <span class="stdpublisher">ISO</span> <span class="stddocNumber">10303</span>-<span class="stddocPartNumber">1</span>:<span class="stdyear">1994</span> -->
6260
+ <xsl:template match="*[local-name() = 'span'][@class = 'stdpublisher' or @class = 'stddocNumber' or @class = 'stddocPartNumber' or @class = 'stdyear']" priority="2">
6261
+ <xsl:choose>
6262
+ <xsl:when test="ancestor::*[local-name() = 'table']"><xsl:apply-templates/></xsl:when>
6263
+ <xsl:when test="following-sibling::*[2][local-name() = 'span'][@class = 'stdpublisher' or @class = 'stddocNumber' or @class = 'stddocPartNumber' or @class = 'stdyear']">
6264
+ <fo:inline keep-with-next.within-line="always"><xsl:apply-templates/></fo:inline>
6265
+ </xsl:when>
6266
+ <xsl:otherwise>
6267
+ <xsl:apply-templates/>
6268
+ </xsl:otherwise>
6269
+ </xsl:choose>
6270
+ </xsl:template>
6271
+ <xsl:template match="text()[not(ancestor::*[local-name() = 'table']) and preceding-sibling::*[1][local-name() = 'span'][@class = 'stdpublisher' or @class = 'stddocNumber' or @class = 'stddocPartNumber' or @class = 'stdyear'] and following-sibling::*[1][local-name() = 'span'][@class = 'stdpublisher' or @class = 'stddocNumber' or @class = 'stddocPartNumber' or @class = 'stdyear']]" priority="2">
6272
+ <fo:inline keep-with-next.within-line="always"><xsl:value-of select="."/></fo:inline>
6273
+ </xsl:template>
6274
+
6055
6275
  <!-- ========================= -->
6056
6276
  <!-- END Rich text formatting -->
6057
6277
  <!-- ========================= -->
@@ -6150,6 +6370,7 @@
6150
6370
  </word>
6151
6371
  <xsl:call-template name="tokenize_with_tags">
6152
6372
  <xsl:with-param name="text" select="substring-after($text, $separator)"/>
6373
+ <xsl:with-param name="tags" select="$tags"/>
6153
6374
  </xsl:call-template>
6154
6375
  </xsl:otherwise>
6155
6376
  </xsl:choose>
@@ -6189,8 +6410,18 @@
6189
6410
 
6190
6411
  <xsl:template name="add-zero-spaces-java">
6191
6412
  <xsl:param name="text" select="."/>
6192
- <!-- add zero-width space (#x200B) after characters: dash, dot, colon, equal, underscore, em dash, thin space -->
6193
- <xsl:value-of select="java:replaceAll(java:java.lang.String.new($text),'(-|\.|:|=|_|—| )','$1​')"/>
6413
+ <!-- add zero-width space (#x200B) after characters: dash, dot, colon, equal, underscore, em dash, thin space, arrow right -->
6414
+ <xsl:variable name="text1" select="java:replaceAll(java:java.lang.String.new($text),'(-|\.|:|=|_|—| |→)','$1​')"/>
6415
+ <!-- add zero-width space (#x200B) after characters: 'great than' -->
6416
+ <xsl:variable name="text2" select="java:replaceAll(java:java.lang.String.new($text1), '(\u003e)(?!\u003e)', '$1​')"/><!-- negative lookahead: 'great than' not followed by 'great than' -->
6417
+ <!-- add zero-width space (#x200B) before characters: 'less than' -->
6418
+ <xsl:variable name="text3" select="java:replaceAll(java:java.lang.String.new($text2), '(?&lt;!\u003c)(\u003c)', '​$1')"/> <!-- (?<!\u003c)(\u003c) --> <!-- negative lookbehind: 'less than' not preceeded by 'less than' -->
6419
+ <!-- add zero-width space (#x200B) before character: { -->
6420
+ <xsl:variable name="text4" select="java:replaceAll(java:java.lang.String.new($text3), '(?&lt;!\W)(\{)', '​$1')"/> <!-- negative lookbehind: '{' not preceeded by 'punctuation char' -->
6421
+ <!-- add zero-width space (#x200B) after character: , -->
6422
+ <xsl:variable name="text5" select="java:replaceAll(java:java.lang.String.new($text4), '(\,)(?!\d)', '$1​')"/> <!-- negative lookahead: ',' not followed by digit -->
6423
+
6424
+ <xsl:value-of select="$text5"/>
6194
6425
  </xsl:template>
6195
6426
 
6196
6427
  <xsl:template name="add-zero-spaces-link-java">
@@ -6336,7 +6567,7 @@
6336
6567
  </xsl:copy>
6337
6568
  </xsl:template>
6338
6569
 
6339
- <xsl:template match="*[local-name()='th' or local-name() = 'td'][not(*[local-name()='br']) and not(*[local-name()='p'])]" mode="table-without-br">
6570
+ <xsl:template match="*[local-name()='th' or local-name() = 'td'][not(*[local-name()='br']) and not(*[local-name()='p']) and not(*[local-name()='sourcecode'])]" mode="table-without-br">
6340
6571
  <xsl:copy>
6341
6572
  <xsl:copy-of select="@*"/>
6342
6573
  <p>
@@ -6384,6 +6615,28 @@
6384
6615
  </xsl:for-each>
6385
6616
  </xsl:template>
6386
6617
 
6618
+ <xsl:template match="*[local-name()='th' or local-name()='td']/*[local-name() = 'sourcecode']" mode="table-without-br">
6619
+ <xsl:apply-templates mode="table-without-br"/>
6620
+ </xsl:template>
6621
+
6622
+ <xsl:template match="*[local-name()='th' or local-name()='td']/*[local-name() = 'sourcecode']/text()[contains(., '&#13;') or contains(., '&#10;')]" mode="table-without-br">
6623
+
6624
+ <xsl:variable name="sep">###SOURCECODE_NEWLINE###</xsl:variable>
6625
+ <xsl:variable name="sourcecode_text" select="java:replaceAll(java:java.lang.String.new(.),'(&#13;&#10;|&#13;|&#10;)', $sep)"/>
6626
+ <xsl:variable name="items">
6627
+ <xsl:call-template name="split">
6628
+ <xsl:with-param name="pText" select="$sourcecode_text"/>
6629
+ <xsl:with-param name="sep" select="$sep"/>
6630
+ <xsl:with-param name="normalize-space">false</xsl:with-param>
6631
+ </xsl:call-template>
6632
+ </xsl:variable>
6633
+ <xsl:for-each select="xalan:nodeset($items)/*">
6634
+ <p>
6635
+ <sourcecode><xsl:copy-of select="node()"/></sourcecode>
6636
+ </p>
6637
+ </xsl:for-each>
6638
+ </xsl:template>
6639
+
6387
6640
  <!-- remove redundant white spaces -->
6388
6641
  <xsl:template match="text()[not(ancestor::*[local-name() = 'sourcecode'])]" mode="table-without-br">
6389
6642
  <xsl:variable name="text" select="translate(.,'&#9;&#10;&#13;','')"/>
@@ -6414,7 +6667,7 @@
6414
6667
  <xsl:choose>
6415
6668
  <xsl:when test="@colspan">
6416
6669
  <xsl:variable name="td">
6417
- <xsl:element name="td">
6670
+ <xsl:element name="{local-name()}">
6418
6671
  <xsl:attribute name="divide"><xsl:value-of select="@colspan"/></xsl:attribute>
6419
6672
  <xsl:if test="local-name()='th'">
6420
6673
  <xsl:attribute name="font-weight">bold</xsl:attribute>
@@ -6429,7 +6682,7 @@
6429
6682
  </xsl:call-template>
6430
6683
  </xsl:when>
6431
6684
  <xsl:otherwise>
6432
- <xsl:element name="td">
6685
+ <xsl:element name="{local-name()}">
6433
6686
  <xsl:apply-templates select="@*" mode="simple-table-colspan"/>
6434
6687
  <xsl:if test="local-name()='th'">
6435
6688
  <xsl:attribute name="font-weight">bold</xsl:attribute>
@@ -6496,7 +6749,7 @@
6496
6749
  <xsl:variable name="currentRow" select="."/>
6497
6750
 
6498
6751
  <xsl:variable name="normalizedTDs">
6499
- <xsl:for-each select="xalan:nodeset($previousRow)//td">
6752
+ <xsl:for-each select="xalan:nodeset($previousRow)//*[self::td or self::th]">
6500
6753
  <xsl:choose>
6501
6754
  <xsl:when test="@rowspan &gt; 1">
6502
6755
  <xsl:copy>
@@ -6508,7 +6761,7 @@
6508
6761
  </xsl:copy>
6509
6762
  </xsl:when>
6510
6763
  <xsl:otherwise>
6511
- <xsl:copy-of select="$currentRow/td[1 + count(current()/preceding-sibling::td[not(@rowspan) or (@rowspan = 1)])]"/>
6764
+ <xsl:copy-of select="$currentRow/*[self::td or self::th][1 + count(current()/preceding-sibling::*[self::td or self::th][not(@rowspan) or (@rowspan = 1)])]"/>
6512
6765
  </xsl:otherwise>
6513
6766
  </xsl:choose>
6514
6767
  </xsl:for-each>
@@ -6694,6 +6947,7 @@
6694
6947
  <xsl:if test="ancestor::*[local-name() = 'sub']"><tag>sub</tag></xsl:if>
6695
6948
  <xsl:if test="ancestor::*[local-name() = 'sup']"><tag>sup</tag></xsl:if>
6696
6949
  <xsl:if test="ancestor::*[local-name() = 'tt']"><tag>tt</tag></xsl:if>
6950
+ <xsl:if test="ancestor::*[local-name() = 'sourcecode']"><tag>sourcecode</tag></xsl:if>
6697
6951
  <xsl:if test="ancestor::*[local-name() = 'keep-together_within-line']"><tag>keep-together_within-line</tag></xsl:if>
6698
6952
  </tags>
6699
6953
  </xsl:template>
@@ -7697,6 +7951,31 @@
7697
7951
  <xsl:apply-templates mode="svg_update"/>
7698
7952
  </xsl:copy>
7699
7953
  </xsl:template>
7954
+
7955
+ <!-- regex for 'display: inline-block;' -->
7956
+ <xsl:variable name="regex_svg_style_notsupported">display(\s|\h)*:(\s|\h)*inline-block(\s|\h)*;</xsl:variable>
7957
+ <xsl:template match="*[local-name() = 'svg']//*[local-name() = 'style']/text()" mode="svg_update">
7958
+ <xsl:value-of select="java:replaceAll(java:java.lang.String.new(.), $regex_svg_style_notsupported, '')"/>
7959
+ </xsl:template>
7960
+
7961
+ <!-- replace
7962
+ stroke="rgba(r, g, b, alpha)" to
7963
+ stroke="rgb(r,g,b)" stroke-opacity="alpha", and
7964
+ fill="rgba(r, g, b, alpha)" to
7965
+ fill="rgb(r,g,b)" fill-opacity="alpha" -->
7966
+ <xsl:template match="@*[local-name() = 'stroke' or local-name() = 'fill'][starts-with(normalize-space(.), 'rgba')]" mode="svg_update">
7967
+ <xsl:variable name="components_">
7968
+ <xsl:call-template name="split">
7969
+ <xsl:with-param name="pText" select="substring-before(substring-after(., '('), ')')"/>
7970
+ <xsl:with-param name="sep" select="','"/>
7971
+ </xsl:call-template>
7972
+ </xsl:variable>
7973
+ <xsl:variable name="components" select="xalan:nodeset($components_)"/>
7974
+ <xsl:variable name="att_name" select="local-name()"/>
7975
+ <xsl:attribute name="{$att_name}"><xsl:value-of select="concat('rgb(', $components/item[1], ',', $components/item[2], ',', $components/item[3], ')')"/></xsl:attribute>
7976
+ <xsl:attribute name="{$att_name}-opacity"><xsl:value-of select="$components/item[4]"/></xsl:attribute>
7977
+ </xsl:template>
7978
+
7700
7979
  <!-- ============== -->
7701
7980
  <!-- END: svg_update -->
7702
7981
  <!-- ============== -->
@@ -8335,37 +8614,15 @@
8335
8614
  <!-- =============== -->
8336
8615
  <xsl:template match="*[local-name()='sourcecode']" name="sourcecode">
8337
8616
 
8338
- <fo:block-container xsl:use-attribute-sets="sourcecode-container-style">
8339
-
8340
- <xsl:if test="not(ancestor::*[local-name() = 'li']) or ancestor::*[local-name() = 'example']">
8341
- <xsl:attribute name="margin-left">0mm</xsl:attribute>
8342
- </xsl:if>
8343
-
8344
- <xsl:if test="ancestor::*[local-name() = 'example']">
8345
- <xsl:attribute name="margin-right">0mm</xsl:attribute>
8346
- </xsl:if>
8347
-
8348
- <xsl:copy-of select="@id"/>
8349
-
8350
- <xsl:if test="parent::*[local-name() = 'note']">
8351
- <xsl:attribute name="margin-left">
8352
- <xsl:choose>
8353
- <xsl:when test="not(ancestor::*[local-name() = 'table'])"><xsl:value-of select="$note-body-indent"/></xsl:when>
8354
- <xsl:otherwise><xsl:value-of select="$note-body-indent-table"/></xsl:otherwise>
8355
- </xsl:choose>
8356
- </xsl:attribute>
8357
-
8358
- </xsl:if>
8359
- <fo:block-container margin-left="0mm">
8617
+ <xsl:variable name="sourcecode_attributes">
8618
+ <xsl:element name="sourcecode_attributes" use-attribute-sets="sourcecode-style">
8619
+ <xsl:variable name="_font-size">
8360
8620
 
8361
- <fo:block xsl:use-attribute-sets="sourcecode-style">
8362
- <xsl:variable name="_font-size">
8621
+ inherit<!-- 9 -->
8363
8622
 
8364
- inherit<!-- 9 -->
8365
-
8366
- <!-- <xsl:if test="$namespace = 'ieee'">
8367
- <xsl:if test="$current_template = 'standard'">8</xsl:if>
8368
- </xsl:if> -->
8623
+ <!-- <xsl:if test="$namespace = 'ieee'">
8624
+ <xsl:if test="$current_template = 'standard'">8</xsl:if>
8625
+ </xsl:if> -->
8369
8626
 
8370
8627
  </xsl:variable>
8371
8628
 
@@ -8380,14 +8637,60 @@
8380
8637
  </xsl:choose>
8381
8638
  </xsl:attribute>
8382
8639
  </xsl:if>
8640
+ </xsl:element>
8641
+ </xsl:variable>
8383
8642
 
8643
+ <xsl:choose>
8644
+ <xsl:when test="$isGenerateTableIF = 'true' and (ancestor::*[local-name() = 'td'] or ancestor::*[local-name() = 'th'])">
8645
+ <xsl:for-each select="xalan:nodeset($sourcecode_attributes)/sourcecode_attributes/@*">
8646
+ <xsl:attribute name="{local-name()}">
8647
+ <xsl:value-of select="."/>
8648
+ </xsl:attribute>
8649
+ </xsl:for-each>
8384
8650
  <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
8385
- </fo:block>
8651
+ </xsl:when>
8386
8652
 
8387
- <xsl:apply-templates select="*[local-name()='name']"/> <!-- show sourcecode's name AFTER content -->
8653
+ <xsl:otherwise>
8654
+ <fo:block-container xsl:use-attribute-sets="sourcecode-container-style">
8388
8655
 
8389
- </fo:block-container>
8390
- </fo:block-container>
8656
+ <xsl:if test="not(ancestor::*[local-name() = 'li']) or ancestor::*[local-name() = 'example']">
8657
+ <xsl:attribute name="margin-left">0mm</xsl:attribute>
8658
+ </xsl:if>
8659
+
8660
+ <xsl:if test="ancestor::*[local-name() = 'example']">
8661
+ <xsl:attribute name="margin-right">0mm</xsl:attribute>
8662
+ </xsl:if>
8663
+
8664
+ <xsl:copy-of select="@id"/>
8665
+
8666
+ <xsl:if test="parent::*[local-name() = 'note']">
8667
+ <xsl:attribute name="margin-left">
8668
+ <xsl:choose>
8669
+ <xsl:when test="not(ancestor::*[local-name() = 'table'])"><xsl:value-of select="$note-body-indent"/></xsl:when>
8670
+ <xsl:otherwise><xsl:value-of select="$note-body-indent-table"/></xsl:otherwise>
8671
+ </xsl:choose>
8672
+ </xsl:attribute>
8673
+
8674
+ </xsl:if>
8675
+ <fo:block-container margin-left="0mm">
8676
+
8677
+ <fo:block xsl:use-attribute-sets="sourcecode-style">
8678
+
8679
+ <xsl:for-each select="xalan:nodeset($sourcecode_attributes)/sourcecode_attributes/@*">
8680
+ <xsl:attribute name="{local-name()}">
8681
+ <xsl:value-of select="."/>
8682
+ </xsl:attribute>
8683
+ </xsl:for-each>
8684
+
8685
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
8686
+ </fo:block>
8687
+
8688
+ <xsl:apply-templates select="*[local-name()='name']"/> <!-- show sourcecode's name AFTER content -->
8689
+
8690
+ </fo:block-container>
8691
+ </fo:block-container>
8692
+ </xsl:otherwise>
8693
+ </xsl:choose>
8391
8694
  </xsl:template>
8392
8695
 
8393
8696
  <xsl:template match="*[local-name()='sourcecode']/text()" priority="2">
@@ -10622,7 +10925,11 @@
10622
10925
  <!-- ===================================== -->
10623
10926
  <!-- Update xml -->
10624
10927
  <!-- ===================================== -->
10625
- <!-- STEP1: Re-order elements in 'preface', 'sections' based on @displayorder -->
10928
+ <!-- =========================================================================== -->
10929
+ <!-- STEP1: -->
10930
+ <!-- - Re-order elements in 'preface', 'sections' based on @displayorder -->
10931
+ <!-- - Ignore 'span' without style -->
10932
+ <!-- =========================================================================== -->
10626
10933
  <xsl:template match="@*|node()" mode="update_xml_step1">
10627
10934
  <xsl:copy>
10628
10935
  <xsl:apply-templates select="@*|node()" mode="update_xml_step1"/>
@@ -10704,7 +11011,8 @@
10704
11011
  </xsl:copy>
10705
11012
  </xsl:template>
10706
11013
 
10707
- <xsl:template match="*[local-name() = 'span'][@style]" mode="update_xml_step1" priority="2">
11014
+ <!-- Example with 'class': <span class="stdpublisher">ISO</span> <span class="stddocNumber">10303</span>-<span class="stddocPartNumber">1</span>:<span class="stdyear">1994</span> -->
11015
+ <xsl:template match="*[local-name() = 'span'][@style or @class = 'stdpublisher' or @class = 'stddocNumber' or @class = 'stddocPartNumber' or @class = 'stdyear']" mode="update_xml_step1" priority="2">
10708
11016
  <xsl:copy>
10709
11017
  <xsl:copy-of select="@*"/>
10710
11018
  <xsl:apply-templates mode="update_xml_step1"/>
@@ -10714,10 +11022,13 @@
10714
11022
  <xsl:template match="*[local-name() = 'span']" mode="update_xml_step1">
10715
11023
  <xsl:apply-templates mode="update_xml_step1"/>
10716
11024
  </xsl:template>
10717
-
11025
+ <!-- =========================================================================== -->
10718
11026
  <!-- END STEP1: Re-order elements in 'preface', 'sections' based on @displayorder -->
11027
+ <!-- =========================================================================== -->
10719
11028
 
11029
+ <!-- =========================================================================== -->
10720
11030
  <!-- STEP2: add 'fn' after 'eref' and 'origin', if referenced to bibitem with 'note' = Withdrawn.' or 'Cancelled and replaced...' -->
11031
+ <!-- =========================================================================== -->
10721
11032
  <xsl:template match="@*|node()" mode="update_xml_step2">
10722
11033
  <xsl:copy>
10723
11034
  <xsl:apply-templates select="@*|node()" mode="update_xml_step2"/>
@@ -10796,8 +11107,6 @@
10796
11107
  </xsl:copy>
10797
11108
  </xsl:template>
10798
11109
 
10799
- <!-- END STEP2: add 'fn' after 'eref' and 'origin', if referenced to bibitem with 'note' = Withdrawn.' or 'Cancelled and replaced...' -->
10800
-
10801
11110
  <!-- enclose sequence of 'char x' + 'combining char y' to <lang_none>xy</lang_none> -->
10802
11111
  <xsl:variable name="regex_combining_chars">(.[̀-ͯ])</xsl:variable>
10803
11112
  <xsl:variable name="element_name_lang_none">lang_none</xsl:variable>
@@ -10813,7 +11122,15 @@
10813
11122
  </xsl:call-template>
10814
11123
  </xsl:template>
10815
11124
 
11125
+ <!-- =========================================================================== -->
11126
+ <!-- END STEP2: add 'fn' after 'eref' and 'origin', if referenced to bibitem with 'note' = Withdrawn.' or 'Cancelled and replaced...' -->
11127
+ <!-- =========================================================================== -->
11128
+
11129
+ <!-- =========================================================================== -->
10816
11130
  <!-- XML UPDATE STEP: enclose standard's name into tag 'keep-together_within-line' -->
11131
+ <!-- keep-together_within-line for: a/b, aaa/b, a/bbb, /b -->
11132
+ <!-- keep-together_within-line for: a.b, aaa.b, a.bbb, .b in table's cell ONLY -->
11133
+ <!-- =========================================================================== -->
10817
11134
  <!-- Example: <keep-together_within-line>ISO 10303-51</keep-together_within-line> -->
10818
11135
  <xsl:template match="@*|node()" mode="update_xml_enclose_keep-together_within-line">
10819
11136
  <xsl:copy>
@@ -10829,10 +11146,15 @@
10829
11146
  <xsl:template match="text()[not(ancestor::*[local-name() = 'bibdata'] or ancestor::*[local-name() = 'link'][not(contains(.,' '))] or ancestor::*[local-name() = 'sourcecode'] or ancestor::*[local-name() = 'math'] or starts-with(., 'http://') or starts-with(., 'https://') or starts-with(., 'www.') )]" name="keep_together_standard_number" mode="update_xml_enclose_keep-together_within-line">
10830
11147
 
10831
11148
  <!-- enclose standard's number into tag 'keep-together_within-line' -->
10832
- <xsl:variable name="regex_standard_reference">([A-Z]{2,}(/[A-Z]{2,})* \d+(-\d+)*(:\d{4})?)</xsl:variable>
10833
11149
  <xsl:variable name="tag_keep-together_within-line_open">###<xsl:value-of select="$element_name_keep-together_within-line"/>###</xsl:variable>
10834
11150
  <xsl:variable name="tag_keep-together_within-line_close">###/<xsl:value-of select="$element_name_keep-together_within-line"/>###</xsl:variable>
10835
- <xsl:variable name="text_" select="java:replaceAll(java:java.lang.String.new(.),$regex_standard_reference,concat($tag_keep-together_within-line_open,'$1',$tag_keep-together_within-line_close))"/>
11151
+ <xsl:variable name="text__" select="java:replaceAll(java:java.lang.String.new(.), $regex_standard_reference, concat($tag_keep-together_within-line_open,'$1',$tag_keep-together_within-line_close))"/>
11152
+ <xsl:variable name="text_">
11153
+ <xsl:choose>
11154
+ <xsl:when test="ancestor::*[local-name() = 'table']"><xsl:value-of select="."/></xsl:when> <!-- no need enclose standard's number into tag 'keep-together_within-line' in table cells -->
11155
+ <xsl:otherwise><xsl:value-of select="$text__"/></xsl:otherwise>
11156
+ </xsl:choose>
11157
+ </xsl:variable>
10836
11158
  <xsl:variable name="text"><text><xsl:call-template name="replace_text_tags">
10837
11159
  <xsl:with-param name="tag_open" select="$tag_keep-together_within-line_open"/>
10838
11160
  <xsl:with-param name="tag_close" select="$tag_keep-together_within-line_close"/>
@@ -10856,7 +11178,11 @@
10856
11178
  </xsl:variable>
10857
11179
 
10858
11180
  <!-- keep-together_within-line for: a/b, aaa/b, a/bbb, /b -->
10859
- <xsl:variable name="regex_solidus_units">((\b((\S{1,3}\/\S+)|(\S+\/\S{1,3}))\b)|(\/\S{1,3})\b)</xsl:variable>
11181
+ <!-- \S matches any non-whitespace character (equivalent to [^\r\n\t\f\v ]) -->
11182
+ <!-- <xsl:variable name="regex_solidus_units">((\b((\S{1,3}\/\S+)|(\S+\/\S{1,3}))\b)|(\/\S{1,3})\b)</xsl:variable> -->
11183
+ <!-- add &lt; and &gt; to \S -->
11184
+ <xsl:variable name="regex_S">[^\r\n\t\f\v \&lt;&gt;]</xsl:variable>
11185
+ <xsl:variable name="regex_solidus_units">((\b((<xsl:value-of select="$regex_S"/>{1,3}\/<xsl:value-of select="$regex_S"/>+)|(<xsl:value-of select="$regex_S"/>+\/<xsl:value-of select="$regex_S"/>{1,3}))\b)|(\/<xsl:value-of select="$regex_S"/>{1,3})\b)</xsl:variable>
10860
11186
  <xsl:variable name="text3">
10861
11187
  <text><xsl:for-each select="xalan:nodeset($text2)/text/node()">
10862
11188
  <xsl:choose>
@@ -10920,9 +11246,8 @@
10920
11246
  <xsl:otherwise><xsl:value-of select="$text"/></xsl:otherwise>
10921
11247
  </xsl:choose>
10922
11248
  </xsl:template>
10923
-
10924
11249
  <!-- ===================================== -->
10925
- <!-- End Update xml -->
11250
+ <!-- END XML UPDATE STEP: enclose standard's name into tag 'keep-together_within-line' -->
10926
11251
  <!-- ===================================== -->
10927
11252
 
10928
11253
  <!-- for correct rendering combining chars -->