metanorma-iso 3.0.10 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,12 +2,12 @@
2
2
 
3
3
  <xsl:output method="xml" encoding="UTF-8" indent="no"/>
4
4
 
5
- <xsl:key name="kfn" match="mn:fn[not(ancestor::*[self::mn:table or self::mn:figure or self::mn:localized-strings] and not(ancestor::mn:name))]" use="@reference"/>
5
+ <xsl:key name="kfn" match="mn:fn[not(ancestor::*[self::mn:table or self::mn:figure or self::mn:localized-strings] and not(ancestor::mn:fmt-name))]" use="@reference"/>
6
6
 
7
7
  <xsl:key name="kid" match="*" use="@id"/>
8
8
 
9
- <xsl:key name="attachments" match="mn:eref[java:endsWith(java:java.lang.String.new(@bibitemid),'.exp')]" use="@bibitemid"/>
10
- <xsl:key name="attachments2" match="mn:eref[contains(@bibitemid,'.exp_')]" use="@bibitemid"/>
9
+ <xsl:key name="attachments" match="mn:fmt-eref[java:endsWith(java:java.lang.String.new(@bibitemid),'.exp')]" use="@bibitemid"/>
10
+ <xsl:key name="attachments2" match="mn:fmt-eref[contains(@bibitemid,'.exp_')]" use="@bibitemid"/>
11
11
 
12
12
  <xsl:variable name="debug">false</xsl:variable>
13
13
 
@@ -423,6 +423,359 @@
423
423
 
424
424
  <xsl:variable name="XML" select="/"/>
425
425
 
426
+ <xsl:template name="layout-master-set">
427
+ <fo:layout-master-set>
428
+
429
+ <xsl:variable name="marginLeftRight_cover_page_1951">16.5</xsl:variable> <!-- 12.5 -->
430
+ <xsl:variable name="marginTop_cover_page_1951">19.5</xsl:variable>
431
+ <xsl:variable name="marginBottom_cover_page_1951">94.5</xsl:variable>
432
+
433
+ <xsl:variable name="marginLeft_cover_page_1972">21</xsl:variable>
434
+ <xsl:variable name="marginRight_cover_page_1972">12</xsl:variable>
435
+ <xsl:variable name="marginTop_cover_page_1972">15</xsl:variable>
436
+ <xsl:variable name="marginBottom_cover_page_1972">33</xsl:variable>
437
+
438
+ <xsl:variable name="marginLeft_cover_page_1987">20</xsl:variable>
439
+ <xsl:variable name="marginRight_cover_page_1987">37</xsl:variable>
440
+ <xsl:variable name="marginTopBottom_cover_page_1987">20</xsl:variable>
441
+
442
+ <xsl:variable name="marginLeftRight_cover_page_2024">9.9</xsl:variable>
443
+ <xsl:variable name="marginTopBottom_cover_page_2024">9.9</xsl:variable>
444
+
445
+ <!-- cover page -->
446
+ <fo:simple-page-master master-name="cover-page" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
447
+ <fo:region-body margin-top="25.4mm" margin-bottom="25.4mm" margin-left="31.7mm" margin-right="31.7mm"/>
448
+ <fo:region-before region-name="cover-page-header" extent="25.4mm"/>
449
+ <fo:region-after/>
450
+ <fo:region-start region-name="cover-left-region" extent="31.7mm"/>
451
+ <fo:region-end region-name="cover-right-region" extent="31.7mm"/>
452
+ </fo:simple-page-master>
453
+
454
+ <fo:simple-page-master master-name="cover-page-published" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
455
+ <fo:region-body margin-top="12.7mm" margin-bottom="75mm" margin-left="78mm" margin-right="18.5mm"/>
456
+ <fo:region-before region-name="cover-page-header" extent="12.7mm"/>
457
+ <fo:region-after region-name="cover-page-footer" extent="75mm" display-align="after"/>
458
+ <fo:region-start region-name="cover-left-region" extent="78mm"/>
459
+ <fo:region-end region-name="cover-right-region" extent="18.5mm"/>
460
+ </fo:simple-page-master>
461
+
462
+ <fo:simple-page-master master-name="cover-page-publishedISO-odd" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
463
+ <fo:region-body margin-top="12.7mm" margin-bottom="75mm" margin-left="{$marginLeftRight1}mm" margin-right="{$marginLeftRight2}mm"/>
464
+ <fo:region-before region-name="cover-page-header" extent="12.7mm"/>
465
+ <fo:region-after region-name="cover-page-footer" extent="75mm" display-align="after"/>
466
+ <fo:region-start region-name="cover-left-region" extent="{$marginLeftRight1}mm"/>
467
+ <fo:region-end region-name="cover-right-region" extent="{$marginLeftRight2}mm"/>
468
+ </fo:simple-page-master>
469
+ <fo:simple-page-master master-name="cover-page-publishedISO-even" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
470
+ <fo:region-body margin-top="12.7mm" margin-bottom="75mm" margin-left="{$marginLeftRight2}mm" margin-right="{$marginLeftRight1}mm"/>
471
+ <fo:region-before region-name="cover-page-header" extent="12.7mm"/>
472
+ <fo:region-after region-name="cover-page-footer" extent="75mm" display-align="after"/>
473
+ <fo:region-start region-name="cover-left-region" extent="{$marginLeftRight2}mm"/>
474
+ <fo:region-end region-name="cover-right-region" extent="{$marginLeftRight1}mm"/>
475
+ </fo:simple-page-master>
476
+ <fo:page-sequence-master master-name="cover-page-publishedISO">
477
+ <fo:repeatable-page-master-alternatives>
478
+ <fo:conditional-page-master-reference odd-or-even="even" master-reference="cover-page-publishedISO-even"/>
479
+ <fo:conditional-page-master-reference odd-or-even="odd" master-reference="cover-page-publishedISO-odd"/>
480
+ </fo:repeatable-page-master-alternatives>
481
+ </fo:page-sequence-master>
482
+
483
+ <fo:simple-page-master master-name="cover-page_1951" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
484
+ <fo:region-body margin-top="{$marginTop_cover_page_1951}mm" margin-bottom="{$marginBottom_cover_page_1951}mm" margin-left="{$marginLeftRight_cover_page_1951}mm" margin-right="{$marginLeftRight_cover_page_1951}mm"/>
485
+ <fo:region-before region-name="cover-page-header" extent="{$marginTop_cover_page_1951}mm"/>
486
+ <fo:region-after region-name="cover-page-footer" extent="{$marginBottom_cover_page_1951}mm"/>
487
+ <fo:region-start region-name="left-region" extent="{$marginLeftRight_cover_page_1951}mm"/>
488
+ <fo:region-end region-name="right-region" extent="{$marginLeftRight_cover_page_1951}mm"/>
489
+ </fo:simple-page-master>
490
+
491
+ <fo:simple-page-master master-name="cover-page_1972" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
492
+ <fo:region-body margin-top="{$marginTop_cover_page_1972}mm" margin-bottom="{$marginBottom_cover_page_1972}mm" margin-left="{$marginLeft_cover_page_1972}mm" margin-right="{$marginRight_cover_page_1972}mm"/>
493
+ <fo:region-before region-name="cover-page-header" extent="{$marginTop_cover_page_1972}mm"/>
494
+ <fo:region-after region-name="cover-page-footer" extent="{$marginBottom_cover_page_1972}mm"/>
495
+ <fo:region-start region-name="left-region" extent="{$marginLeft_cover_page_1972}mm"/>
496
+ <fo:region-end region-name="right-region" extent="{$marginRight_cover_page_1972}mm"/>
497
+ </fo:simple-page-master>
498
+
499
+ <fo:simple-page-master master-name="cover-page_1987" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
500
+ <fo:region-body margin-top="{$marginTopBottom_cover_page_1987}mm" margin-bottom="{$marginTopBottom_cover_page_1987}mm" margin-left="{$marginLeft_cover_page_1987}mm" margin-right="{$marginRight_cover_page_1987}mm"/>
501
+ <fo:region-before region-name="cover-page-header" extent="{$marginTopBottom_cover_page_1987}mm" precedence="true"/>
502
+ <fo:region-after region-name="cover-page-footer" extent="{$marginTopBottom_cover_page_1987}mm" precedence="true"/>
503
+ <fo:region-start region-name="left-region" extent="{$marginLeft_cover_page_1987}mm"/>
504
+ <fo:region-end region-name="right-region" extent="{$marginRight_cover_page_1987}mm"/>
505
+ </fo:simple-page-master>
506
+
507
+ <fo:simple-page-master master-name="cover-page_2024" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
508
+ <fo:region-body margin-top="{$marginTopBottom_cover_page_2024}mm" margin-bottom="{$marginTopBottom_cover_page_2024}mm" margin-left="{$marginLeftRight_cover_page_2024}mm" margin-right="{$marginLeftRight_cover_page_2024}mm"/>
509
+ <fo:region-before region-name="header" extent="{$marginTopBottom_cover_page_2024}mm"/>
510
+ <fo:region-after region-name="footer" extent="{$marginTopBottom_cover_page_2024}mm"/>
511
+ <fo:region-start region-name="left-region" extent="{$marginLeftRight_cover_page_2024}mm"/>
512
+ <fo:region-end region-name="right-region" extent="{$marginLeftRight_cover_page_2024}mm"/>
513
+ </fo:simple-page-master>
514
+
515
+ <!-- contents pages -->
516
+ <!-- odd pages -->
517
+ <fo:simple-page-master master-name="odd" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
518
+ <fo:region-body margin-top="27.4mm" margin-bottom="{$marginBottom}mm" margin-left="19mm" margin-right="19mm"/>
519
+ <fo:region-before region-name="header-odd" extent="27.4mm"/> <!-- display-align="center" -->
520
+ <fo:region-after region-name="footer-odd" extent="{$marginBottom - 2}mm"/>
521
+ <fo:region-start region-name="left-region" extent="19mm"/>
522
+ <fo:region-end region-name="right-region" extent="19mm"/>
523
+ </fo:simple-page-master>
524
+ <fo:simple-page-master master-name="odd-landscape" page-width="{$pageHeight}mm" page-height="{$pageWidth}mm">
525
+ <fo:region-body margin-top="27.4mm" margin-bottom="{$marginBottom}mm" margin-left="19mm" margin-right="19mm"/>
526
+ <fo:region-before region-name="header-odd" extent="27.4mm"/>
527
+ <fo:region-after region-name="footer-odd" extent="{$marginBottom - 2}mm"/>
528
+ <fo:region-start region-name="left-region" extent="19mm"/>
529
+ <fo:region-end region-name="right-region" extent="19mm"/>
530
+ </fo:simple-page-master>
531
+ <!-- even pages -->
532
+ <fo:simple-page-master master-name="even" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
533
+ <fo:region-body margin-top="27.4mm" margin-bottom="{$marginBottom}mm" margin-left="19mm" margin-right="19mm"/>
534
+ <fo:region-before region-name="header-even" extent="27.4mm"/> <!-- display-align="center" -->
535
+ <fo:region-after region-name="footer-even" extent="{$marginBottom - 2}mm"/>
536
+ <fo:region-start region-name="left-region" extent="19mm"/>
537
+ <fo:region-end region-name="right-region" extent="19mm"/>
538
+ </fo:simple-page-master>
539
+ <fo:simple-page-master master-name="even-landscape" page-width="{$pageHeight}mm" page-height="{$pageWidth}mm">
540
+ <fo:region-body margin-top="27.4mm" margin-bottom="{$marginBottom}mm" margin-left="19mm" margin-right="19mm"/>
541
+ <fo:region-before region-name="header-even" extent="27.4mm"/> <!-- display-align="center" -->
542
+ <fo:region-after region-name="footer-even" extent="{$marginBottom - 2}mm"/>
543
+ <fo:region-start region-name="left-region" extent="19mm"/>
544
+ <fo:region-end region-name="right-region" extent="19mm"/>
545
+ </fo:simple-page-master>
546
+ <fo:page-sequence-master master-name="preface">
547
+ <fo:repeatable-page-master-alternatives>
548
+ <fo:conditional-page-master-reference odd-or-even="even" master-reference="even"/>
549
+ <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd"/>
550
+ </fo:repeatable-page-master-alternatives>
551
+ </fo:page-sequence-master>
552
+ <fo:page-sequence-master master-name="preface-landscape">
553
+ <fo:repeatable-page-master-alternatives>
554
+ <fo:conditional-page-master-reference odd-or-even="even" master-reference="even-landscape"/>
555
+ <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd-landscape"/>
556
+ </fo:repeatable-page-master-alternatives>
557
+ </fo:page-sequence-master>
558
+ <fo:page-sequence-master master-name="document">
559
+ <fo:repeatable-page-master-alternatives>
560
+ <fo:conditional-page-master-reference odd-or-even="even" master-reference="even"/>
561
+ <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd"/>
562
+ </fo:repeatable-page-master-alternatives>
563
+ </fo:page-sequence-master>
564
+ <fo:page-sequence-master master-name="document-landscape">
565
+ <fo:repeatable-page-master-alternatives>
566
+ <fo:conditional-page-master-reference odd-or-even="even" master-reference="even-landscape"/>
567
+ <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd-landscape"/>
568
+ </fo:repeatable-page-master-alternatives>
569
+ </fo:page-sequence-master>
570
+
571
+ <fo:simple-page-master master-name="first-preface_1972-1998" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
572
+ <fo:region-body margin-top="{$marginTop}mm" margin-bottom="95mm" margin-left="{$marginLeftRight2}mm" margin-right="82mm"/>
573
+ <fo:region-before region-name="header-even" extent="{$marginTop}mm"/>
574
+ <fo:region-after region-name="footer-preface-first_1972-1998" extent="95mm"/>
575
+ <fo:region-start region-name="left-region" extent="{$marginLeftRight2}mm"/>
576
+ <fo:region-end region-name="right-region" extent="82mm"/>
577
+ </fo:simple-page-master>
578
+ <fo:simple-page-master master-name="odd-preface_1972-1998" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
579
+ <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom}mm" margin-left="82mm" margin-right="{$marginLeftRight2}mm"/>
580
+ <fo:region-before region-name="header-odd" extent="{$marginTop}mm"/> <!-- display-align="center" -->
581
+ <fo:region-after region-name="footer-odd" extent="{$marginBottom - 2}mm"/>
582
+ <fo:region-start region-name="left-region" extent="82mm"/>
583
+ <fo:region-end region-name="right-region" extent="{$marginLeftRight2}mm"/>
584
+ </fo:simple-page-master>
585
+ <fo:simple-page-master master-name="even-preface_1972-1998" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
586
+ <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom}mm" margin-left="{$marginLeftRight2}mm" margin-right="82mm"/>
587
+ <fo:region-before region-name="header-even" extent="{$marginTop}mm"/>
588
+ <fo:region-after region-name="footer-even" extent="{$marginBottom - 2}mm"/>
589
+ <fo:region-start region-name="left-region" extent="{$marginLeftRight2}mm"/>
590
+ <fo:region-end region-name="right-region" extent="82mm"/>
591
+ </fo:simple-page-master>
592
+ <fo:page-sequence-master master-name="preface-1972-1998">
593
+ <fo:repeatable-page-master-alternatives>
594
+ <fo:conditional-page-master-reference master-reference="blankpage" blank-or-not-blank="blank"/>
595
+ <fo:conditional-page-master-reference master-reference="first-preface_1972-1998" page-position="first"/>
596
+ <fo:conditional-page-master-reference odd-or-even="even" master-reference="even-preface_1972-1998"/>
597
+ <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd-preface_1972-1998"/>
598
+ </fo:repeatable-page-master-alternatives>
599
+ </fo:page-sequence-master>
600
+
601
+ <!-- first page -->
602
+ <fo:simple-page-master master-name="first-publishedISO" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
603
+ <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom}mm" margin-left="{$marginLeftRight1}mm" margin-right="{$marginLeftRight2}mm" column-count="{$layout_columns}" column-gap="{$column_gap}"/>
604
+ <fo:region-before region-name="header-first" extent="{$marginTop}mm">
605
+ <xsl:if test="(($layoutVersion = '1987' and $doctype = 'technical-report') or ($layoutVersion = '1979' and $doctype = 'addendum'))">
606
+ <xsl:attribute name="region-name">header-odd</xsl:attribute>
607
+ </xsl:if>
608
+ </fo:region-before>
609
+ <fo:region-after region-name="footer-odd" extent="{$marginBottom - 2}mm"/>
610
+ <fo:region-start region-name="left-region" extent="{$marginLeftRight1}mm"/>
611
+ <fo:region-end region-name="right-region" extent="{$marginLeftRight2}mm"/>
612
+ </fo:simple-page-master>
613
+ <!-- odd pages -->
614
+ <fo:simple-page-master master-name="odd-publishedISO" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
615
+ <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom}mm" margin-left="{$marginLeftRight1}mm" margin-right="{$marginLeftRight2}mm" column-count="{$layout_columns}" column-gap="{$column_gap}"/>
616
+ <fo:region-before region-name="header-odd" extent="{$marginTop}mm">
617
+ <xsl:if test="$layoutVersion = '1951'">
618
+ <xsl:attribute name="precedence">true</xsl:attribute>
619
+ </xsl:if>
620
+ </fo:region-before>
621
+ <fo:region-after region-name="footer-odd" extent="{$marginBottom - 2}mm"/>
622
+ <fo:region-start region-name="left-region" extent="{$marginLeftRight1}mm"/>
623
+ <fo:region-end region-name="right-region" extent="{$marginLeftRight2}mm"/>
624
+ </fo:simple-page-master>
625
+
626
+ <fo:simple-page-master master-name="odd-publishedISO-landscape" page-width="{$pageHeight}mm" page-height="{$pageWidth}mm">
627
+ <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom}mm" margin-left="{$marginLeftRight1}mm" margin-right="{$marginLeftRight2}mm" column-count="{$layout_columns}" column-gap="{$column_gap}"/>
628
+ <fo:region-before region-name="header-odd" extent="{$marginTop}mm"/> <!-- display-align="center" -->
629
+ <fo:region-after region-name="footer-odd" extent="{$marginBottom - 2}mm"/>
630
+ <fo:region-start region-name="left-region" extent="{$marginLeftRight1}mm"/>
631
+ <fo:region-end region-name="right-region" extent="{$marginLeftRight2}mm"/>
632
+ </fo:simple-page-master>
633
+ <!-- even pages -->
634
+ <fo:simple-page-master master-name="even-publishedISO" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
635
+ <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom}mm" margin-left="{$marginLeftRight2}mm" margin-right="{$marginLeftRight1}mm" column-count="{$layout_columns}" column-gap="{$column_gap}"/>
636
+ <fo:region-before region-name="header-even" extent="{$marginTop}mm">
637
+ <xsl:if test="$layoutVersion = '1951'">
638
+ <xsl:attribute name="precedence">true</xsl:attribute>
639
+ </xsl:if>
640
+ </fo:region-before>
641
+ <fo:region-after region-name="footer-even" extent="{$marginBottom - 2}mm"/>
642
+ <fo:region-start region-name="left-region" extent="{$marginLeftRight2}mm"/>
643
+ <fo:region-end region-name="right-region" extent="{$marginLeftRight1}mm"/>
644
+ </fo:simple-page-master>
645
+
646
+ <!-- for 1951 layout only -->
647
+ <fo:simple-page-master master-name="even-last-publishedISO" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
648
+ <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom}mm" margin-left="{$marginLeftRight2}mm" margin-right="{$marginLeftRight1}mm" column-count="{$layout_columns}" column-gap="{$column_gap}"/>
649
+ <fo:region-before region-name="header-even" extent="{$marginTop}mm" precedence="true"/>
650
+ <fo:region-after region-name="footer-even-last" extent="{$marginBottom - 2}mm"/>
651
+ <fo:region-start region-name="left-region" extent="{$marginLeftRight2}mm"/>
652
+ <fo:region-end region-name="right-region" extent="{$marginLeftRight1}mm"/>
653
+ </fo:simple-page-master>
654
+
655
+ <fo:simple-page-master master-name="even-publishedISO-landscape" page-width="{$pageHeight}mm" page-height="{$pageWidth}mm">
656
+ <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom}mm" margin-left="{$marginLeftRight2}mm" margin-right="{$marginLeftRight1}mm" column-count="{$layout_columns}" column-gap="{$column_gap}"/>
657
+ <fo:region-before region-name="header-even" extent="{$marginTop}mm"/>
658
+ <fo:region-after region-name="footer-even" extent="{$marginBottom - 2}mm"/>
659
+ <fo:region-start region-name="left-region" extent="{$marginLeftRight2}mm"/>
660
+ <fo:region-end region-name="right-region" extent="{$marginLeftRight1}mm"/>
661
+ </fo:simple-page-master>
662
+ <fo:simple-page-master master-name="blankpage" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
663
+ <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom}mm" margin-left="{$marginLeftRight2}mm" margin-right="{$marginLeftRight1}mm"/>
664
+ <fo:region-before region-name="header" extent="{$marginTop}mm"/>
665
+ <fo:region-after region-name="footer" extent="{$marginBottom - 2}mm"/>
666
+ <fo:region-start region-name="left" extent="{$marginLeftRight2}mm"/>
667
+ <fo:region-end region-name="right" extent="{$marginLeftRight1}mm"/>
668
+ </fo:simple-page-master>
669
+ <fo:page-sequence-master master-name="preface-publishedISO">
670
+ <fo:repeatable-page-master-alternatives>
671
+ <fo:conditional-page-master-reference master-reference="blankpage" blank-or-not-blank="blank"/>
672
+ <fo:conditional-page-master-reference odd-or-even="even" master-reference="even-publishedISO"/>
673
+ <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd-publishedISO"/>
674
+ </fo:repeatable-page-master-alternatives>
675
+ </fo:page-sequence-master>
676
+ <fo:page-sequence-master master-name="preface-publishedISO-landscape">
677
+ <fo:repeatable-page-master-alternatives>
678
+ <fo:conditional-page-master-reference master-reference="blankpage" blank-or-not-blank="blank"/>
679
+ <fo:conditional-page-master-reference odd-or-even="even" master-reference="even-publishedISO-landscape"/>
680
+ <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd-publishedISO-landscape"/>
681
+ </fo:repeatable-page-master-alternatives>
682
+ </fo:page-sequence-master>
683
+
684
+ <!-- First pages for Technical Report (layout 1987) -->
685
+ <fo:simple-page-master master-name="first-preface_1987_TR" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
686
+ <fo:region-body margin-top="13mm" margin-bottom="30mm" margin-left="19mm" margin-right="10.5mm"/>
687
+ <fo:region-before region-name="header-empty" extent="13mm"/>
688
+ <fo:region-after region-name="footer-preface-first_1987_TR" extent="30mm" display-align="after"/>
689
+ <fo:region-start region-name="left-region-first_1987_TR" extent="19mm"/>
690
+ <fo:region-end region-name="right-region" extent="10.5mm"/>
691
+ </fo:simple-page-master>
692
+ <fo:page-sequence-master master-name="preface-1987_TR">
693
+ <fo:repeatable-page-master-alternatives>
694
+ <fo:conditional-page-master-reference master-reference="first-preface_1987_TR" page-position="first"/>
695
+ <fo:conditional-page-master-reference odd-or-even="even" master-reference="even-publishedISO"/>
696
+ <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd-publishedISO"/>
697
+ </fo:repeatable-page-master-alternatives>
698
+ </fo:page-sequence-master>
699
+
700
+ <fo:page-sequence-master master-name="document-publishedISO_first_sequence">
701
+ <fo:repeatable-page-master-alternatives>
702
+ <xsl:if test="not($layoutVersion = '1951')">
703
+ <fo:conditional-page-master-reference master-reference="first-publishedISO" page-position="first"/>
704
+ </xsl:if>
705
+ <xsl:if test="$layoutVersion = '1951'">
706
+ <fo:conditional-page-master-reference page-position="last" master-reference="even-last-publishedISO"/> <!-- odd-or-even="even" -->
707
+ </xsl:if>
708
+ <fo:conditional-page-master-reference odd-or-even="even" master-reference="even-publishedISO"/>
709
+ <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd-publishedISO"/>
710
+ </fo:repeatable-page-master-alternatives>
711
+ </fo:page-sequence-master>
712
+
713
+ <fo:page-sequence-master master-name="document-publishedISO">
714
+ <fo:repeatable-page-master-alternatives>
715
+ <xsl:if test="$layoutVersion = '1951'">
716
+ <fo:conditional-page-master-reference page-position="last" master-reference="even-last-publishedISO"/> <!-- odd-or-even="even" -->
717
+ </xsl:if>
718
+ <fo:conditional-page-master-reference odd-or-even="even" master-reference="even-publishedISO"/>
719
+ <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd-publishedISO"/>
720
+ </fo:repeatable-page-master-alternatives>
721
+ </fo:page-sequence-master>
722
+
723
+ <fo:page-sequence-master master-name="document-publishedISO-landscape_first_sequence">
724
+ <fo:repeatable-page-master-alternatives>
725
+ <xsl:if test="not($layoutVersion = '1951')">
726
+ <fo:conditional-page-master-reference master-reference="first-publishedISO" page-position="first"/>
727
+ </xsl:if>
728
+ <fo:conditional-page-master-reference odd-or-even="even" master-reference="even-publishedISO-landscape"/>
729
+ <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd-publishedISO-landscape"/>
730
+ </fo:repeatable-page-master-alternatives>
731
+ </fo:page-sequence-master>
732
+ <fo:page-sequence-master master-name="document-publishedISO-landscape">
733
+ <fo:repeatable-page-master-alternatives>
734
+ <fo:conditional-page-master-reference odd-or-even="even" master-reference="even-publishedISO-landscape"/>
735
+ <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd-publishedISO-landscape"/>
736
+ </fo:repeatable-page-master-alternatives>
737
+ </fo:page-sequence-master>
738
+
739
+ <fo:simple-page-master master-name="last-page" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
740
+ <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom}mm" margin-left="{$marginLeftRight2}mm" margin-right="{$marginLeftRight1}mm"/>
741
+ <fo:region-before region-name="header-even" extent="{$marginTop}mm"/>
742
+ <fo:region-after region-name="last-page-footer" extent="{$marginBottom - 2}mm"/>
743
+ <fo:region-start region-name="left-region" extent="{$marginLeftRight2}mm"/>
744
+ <fo:region-end region-name="right-region" extent="{$marginLeftRight1}mm"/>
745
+ </fo:simple-page-master>
746
+
747
+ <fo:simple-page-master master-name="last-page_2024" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
748
+ <fo:region-body margin-top="{$marginTopBottom_cover_page_2024}mm" margin-bottom="{$marginTopBottom_cover_page_2024}mm" margin-left="{$marginLeftRight_cover_page_2024}mm" margin-right="{$marginLeftRight_cover_page_2024}mm"/>
749
+ <fo:region-before region-name="header" extent="{$marginTopBottom_cover_page_2024}mm"/>
750
+ <fo:region-after region-name="footer" extent="{$marginTopBottom_cover_page_2024}mm"/>
751
+ <fo:region-start region-name="left-region" extent="{$marginLeftRight_cover_page_2024}mm"/>
752
+ <fo:region-end region-name="right-region" extent="{$marginLeftRight_cover_page_2024}mm"/>
753
+ </fo:simple-page-master>
754
+
755
+ <!-- Index pages -->
756
+ <fo:simple-page-master master-name="index-odd" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
757
+ <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"/>
758
+ <fo:region-before region-name="header-odd" extent="{$marginTop}mm"/>
759
+ <fo:region-after region-name="footer-odd" extent="{$marginBottom - 2}mm"/>
760
+ <fo:region-start region-name="left-region" extent="{$marginLeftRight1}mm"/>
761
+ <fo:region-end region-name="right-region" extent="{$marginLeftRight2}mm"/>
762
+ </fo:simple-page-master>
763
+ <fo:simple-page-master master-name="index-even" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
764
+ <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"/>
765
+ <fo:region-before region-name="header-even" extent="{$marginTop}mm"/>
766
+ <fo:region-after region-name="footer-even" extent="{$marginBottom - 2}mm"/>
767
+ <fo:region-start region-name="left-region" extent="{$marginLeftRight2}mm"/>
768
+ <fo:region-end region-name="right-region" extent="{$marginLeftRight1}mm"/>
769
+ </fo:simple-page-master>
770
+ <fo:page-sequence-master master-name="index">
771
+ <fo:repeatable-page-master-alternatives>
772
+ <fo:conditional-page-master-reference odd-or-even="even" master-reference="index-even"/>
773
+ <fo:conditional-page-master-reference odd-or-even="odd" master-reference="index-odd"/>
774
+ </fo:repeatable-page-master-alternatives>
775
+ </fo:page-sequence-master>
776
+ </fo:layout-master-set>
777
+ </xsl:template> <!-- END: layout-master-set -->
778
+
426
779
  <xsl:template match="/">
427
780
 
428
781
  <fo:root xml:lang="{$lang}">
@@ -473,365 +826,15 @@
473
826
  <xsl:processing-instruction name="add_line_numbers">true</xsl:processing-instruction>
474
827
  </xsl:if>
475
828
 
476
- <fo:layout-master-set>
477
-
478
- <xsl:variable name="marginLeftRight_cover_page_1951">16.5</xsl:variable> <!-- 12.5 -->
479
- <xsl:variable name="marginTop_cover_page_1951">19.5</xsl:variable>
480
- <xsl:variable name="marginBottom_cover_page_1951">94.5</xsl:variable>
481
-
482
- <xsl:variable name="marginLeft_cover_page_1972">21</xsl:variable>
483
- <xsl:variable name="marginRight_cover_page_1972">12</xsl:variable>
484
- <xsl:variable name="marginTop_cover_page_1972">15</xsl:variable>
485
- <xsl:variable name="marginBottom_cover_page_1972">33</xsl:variable>
486
-
487
- <xsl:variable name="marginLeft_cover_page_1987">20</xsl:variable>
488
- <xsl:variable name="marginRight_cover_page_1987">37</xsl:variable>
489
- <xsl:variable name="marginTopBottom_cover_page_1987">20</xsl:variable>
490
-
491
- <xsl:variable name="marginLeftRight_cover_page_2024">9.9</xsl:variable>
492
- <xsl:variable name="marginTopBottom_cover_page_2024">9.9</xsl:variable>
493
-
494
- <!-- cover page -->
495
- <fo:simple-page-master master-name="cover-page" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
496
- <fo:region-body margin-top="25.4mm" margin-bottom="25.4mm" margin-left="31.7mm" margin-right="31.7mm"/>
497
- <fo:region-before region-name="cover-page-header" extent="25.4mm"/>
498
- <fo:region-after/>
499
- <fo:region-start region-name="cover-left-region" extent="31.7mm"/>
500
- <fo:region-end region-name="cover-right-region" extent="31.7mm"/>
501
- </fo:simple-page-master>
502
-
503
- <fo:simple-page-master master-name="cover-page-published" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
504
- <fo:region-body margin-top="12.7mm" margin-bottom="75mm" margin-left="78mm" margin-right="18.5mm"/>
505
- <fo:region-before region-name="cover-page-header" extent="12.7mm"/>
506
- <fo:region-after region-name="cover-page-footer" extent="75mm" display-align="after"/>
507
- <fo:region-start region-name="cover-left-region" extent="78mm"/>
508
- <fo:region-end region-name="cover-right-region" extent="18.5mm"/>
509
- </fo:simple-page-master>
510
-
511
- <fo:simple-page-master master-name="cover-page-publishedISO-odd" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
512
- <fo:region-body margin-top="12.7mm" margin-bottom="75mm" margin-left="{$marginLeftRight1}mm" margin-right="{$marginLeftRight2}mm"/>
513
- <fo:region-before region-name="cover-page-header" extent="12.7mm"/>
514
- <fo:region-after region-name="cover-page-footer" extent="75mm" display-align="after"/>
515
- <fo:region-start region-name="cover-left-region" extent="{$marginLeftRight1}mm"/>
516
- <fo:region-end region-name="cover-right-region" extent="{$marginLeftRight2}mm"/>
517
- </fo:simple-page-master>
518
- <fo:simple-page-master master-name="cover-page-publishedISO-even" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
519
- <fo:region-body margin-top="12.7mm" margin-bottom="75mm" margin-left="{$marginLeftRight2}mm" margin-right="{$marginLeftRight1}mm"/>
520
- <fo:region-before region-name="cover-page-header" extent="12.7mm"/>
521
- <fo:region-after region-name="cover-page-footer" extent="75mm" display-align="after"/>
522
- <fo:region-start region-name="cover-left-region" extent="{$marginLeftRight2}mm"/>
523
- <fo:region-end region-name="cover-right-region" extent="{$marginLeftRight1}mm"/>
524
- </fo:simple-page-master>
525
- <fo:page-sequence-master master-name="cover-page-publishedISO">
526
- <fo:repeatable-page-master-alternatives>
527
- <fo:conditional-page-master-reference odd-or-even="even" master-reference="cover-page-publishedISO-even"/>
528
- <fo:conditional-page-master-reference odd-or-even="odd" master-reference="cover-page-publishedISO-odd"/>
529
- </fo:repeatable-page-master-alternatives>
530
- </fo:page-sequence-master>
531
-
532
- <fo:simple-page-master master-name="cover-page_1951" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
533
- <fo:region-body margin-top="{$marginTop_cover_page_1951}mm" margin-bottom="{$marginBottom_cover_page_1951}mm" margin-left="{$marginLeftRight_cover_page_1951}mm" margin-right="{$marginLeftRight_cover_page_1951}mm"/>
534
- <fo:region-before region-name="cover-page-header" extent="{$marginTop_cover_page_1951}mm"/>
535
- <fo:region-after region-name="cover-page-footer" extent="{$marginBottom_cover_page_1951}mm"/>
536
- <fo:region-start region-name="left-region" extent="{$marginLeftRight_cover_page_1951}mm"/>
537
- <fo:region-end region-name="right-region" extent="{$marginLeftRight_cover_page_1951}mm"/>
538
- </fo:simple-page-master>
539
-
540
- <fo:simple-page-master master-name="cover-page_1972" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
541
- <fo:region-body margin-top="{$marginTop_cover_page_1972}mm" margin-bottom="{$marginBottom_cover_page_1972}mm" margin-left="{$marginLeft_cover_page_1972}mm" margin-right="{$marginRight_cover_page_1972}mm"/>
542
- <fo:region-before region-name="cover-page-header" extent="{$marginTop_cover_page_1972}mm"/>
543
- <fo:region-after region-name="cover-page-footer" extent="{$marginBottom_cover_page_1972}mm"/>
544
- <fo:region-start region-name="left-region" extent="{$marginLeft_cover_page_1972}mm"/>
545
- <fo:region-end region-name="right-region" extent="{$marginRight_cover_page_1972}mm"/>
546
- </fo:simple-page-master>
547
-
548
- <fo:simple-page-master master-name="cover-page_1987" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
549
- <fo:region-body margin-top="{$marginTopBottom_cover_page_1987}mm" margin-bottom="{$marginTopBottom_cover_page_1987}mm" margin-left="{$marginLeft_cover_page_1987}mm" margin-right="{$marginRight_cover_page_1987}mm"/>
550
- <fo:region-before region-name="cover-page-header" extent="{$marginTopBottom_cover_page_1987}mm" precedence="true"/>
551
- <fo:region-after region-name="cover-page-footer" extent="{$marginTopBottom_cover_page_1987}mm" precedence="true"/>
552
- <fo:region-start region-name="left-region" extent="{$marginLeft_cover_page_1987}mm"/>
553
- <fo:region-end region-name="right-region" extent="{$marginRight_cover_page_1987}mm"/>
554
- </fo:simple-page-master>
555
-
556
- <fo:simple-page-master master-name="cover-page_2024" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
557
- <fo:region-body margin-top="{$marginTopBottom_cover_page_2024}mm" margin-bottom="{$marginTopBottom_cover_page_2024}mm" margin-left="{$marginLeftRight_cover_page_2024}mm" margin-right="{$marginLeftRight_cover_page_2024}mm"/>
558
- <fo:region-before region-name="header" extent="{$marginTopBottom_cover_page_2024}mm"/>
559
- <fo:region-after region-name="footer" extent="{$marginTopBottom_cover_page_2024}mm"/>
560
- <fo:region-start region-name="left-region" extent="{$marginLeftRight_cover_page_2024}mm"/>
561
- <fo:region-end region-name="right-region" extent="{$marginLeftRight_cover_page_2024}mm"/>
562
- </fo:simple-page-master>
563
-
564
- <!-- contents pages -->
565
- <!-- odd pages -->
566
- <fo:simple-page-master master-name="odd" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
567
- <fo:region-body margin-top="27.4mm" margin-bottom="{$marginBottom}mm" margin-left="19mm" margin-right="19mm"/>
568
- <fo:region-before region-name="header-odd" extent="27.4mm"/> <!-- display-align="center" -->
569
- <fo:region-after region-name="footer-odd" extent="{$marginBottom - 2}mm"/>
570
- <fo:region-start region-name="left-region" extent="19mm"/>
571
- <fo:region-end region-name="right-region" extent="19mm"/>
572
- </fo:simple-page-master>
573
- <fo:simple-page-master master-name="odd-landscape" page-width="{$pageHeight}mm" page-height="{$pageWidth}mm">
574
- <fo:region-body margin-top="27.4mm" margin-bottom="{$marginBottom}mm" margin-left="19mm" margin-right="19mm"/>
575
- <fo:region-before region-name="header-odd" extent="27.4mm"/>
576
- <fo:region-after region-name="footer-odd" extent="{$marginBottom - 2}mm"/>
577
- <fo:region-start region-name="left-region" extent="19mm"/>
578
- <fo:region-end region-name="right-region" extent="19mm"/>
579
- </fo:simple-page-master>
580
- <!-- even pages -->
581
- <fo:simple-page-master master-name="even" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
582
- <fo:region-body margin-top="27.4mm" margin-bottom="{$marginBottom}mm" margin-left="19mm" margin-right="19mm"/>
583
- <fo:region-before region-name="header-even" extent="27.4mm"/> <!-- display-align="center" -->
584
- <fo:region-after region-name="footer-even" extent="{$marginBottom - 2}mm"/>
585
- <fo:region-start region-name="left-region" extent="19mm"/>
586
- <fo:region-end region-name="right-region" extent="19mm"/>
587
- </fo:simple-page-master>
588
- <fo:simple-page-master master-name="even-landscape" page-width="{$pageHeight}mm" page-height="{$pageWidth}mm">
589
- <fo:region-body margin-top="27.4mm" margin-bottom="{$marginBottom}mm" margin-left="19mm" margin-right="19mm"/>
590
- <fo:region-before region-name="header-even" extent="27.4mm"/> <!-- display-align="center" -->
591
- <fo:region-after region-name="footer-even" extent="{$marginBottom - 2}mm"/>
592
- <fo:region-start region-name="left-region" extent="19mm"/>
593
- <fo:region-end region-name="right-region" extent="19mm"/>
594
- </fo:simple-page-master>
595
- <fo:page-sequence-master master-name="preface">
596
- <fo:repeatable-page-master-alternatives>
597
- <fo:conditional-page-master-reference odd-or-even="even" master-reference="even"/>
598
- <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd"/>
599
- </fo:repeatable-page-master-alternatives>
600
- </fo:page-sequence-master>
601
- <fo:page-sequence-master master-name="preface-landscape">
602
- <fo:repeatable-page-master-alternatives>
603
- <fo:conditional-page-master-reference odd-or-even="even" master-reference="even-landscape"/>
604
- <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd-landscape"/>
605
- </fo:repeatable-page-master-alternatives>
606
- </fo:page-sequence-master>
607
- <fo:page-sequence-master master-name="document">
608
- <fo:repeatable-page-master-alternatives>
609
- <fo:conditional-page-master-reference odd-or-even="even" master-reference="even"/>
610
- <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd"/>
611
- </fo:repeatable-page-master-alternatives>
612
- </fo:page-sequence-master>
613
- <fo:page-sequence-master master-name="document-landscape">
614
- <fo:repeatable-page-master-alternatives>
615
- <fo:conditional-page-master-reference odd-or-even="even" master-reference="even-landscape"/>
616
- <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd-landscape"/>
617
- </fo:repeatable-page-master-alternatives>
618
- </fo:page-sequence-master>
619
-
620
- <fo:simple-page-master master-name="first-preface_1972-1998" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
621
- <fo:region-body margin-top="{$marginTop}mm" margin-bottom="95mm" margin-left="{$marginLeftRight2}mm" margin-right="82mm"/>
622
- <fo:region-before region-name="header-even" extent="{$marginTop}mm"/>
623
- <fo:region-after region-name="footer-preface-first_1972-1998" extent="95mm"/>
624
- <fo:region-start region-name="left-region" extent="{$marginLeftRight2}mm"/>
625
- <fo:region-end region-name="right-region" extent="82mm"/>
626
- </fo:simple-page-master>
627
- <fo:simple-page-master master-name="odd-preface_1972-1998" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
628
- <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom}mm" margin-left="82mm" margin-right="{$marginLeftRight2}mm"/>
629
- <fo:region-before region-name="header-odd" extent="{$marginTop}mm"/> <!-- display-align="center" -->
630
- <fo:region-after region-name="footer-odd" extent="{$marginBottom - 2}mm"/>
631
- <fo:region-start region-name="left-region" extent="82mm"/>
632
- <fo:region-end region-name="right-region" extent="{$marginLeftRight2}mm"/>
633
- </fo:simple-page-master>
634
- <fo:simple-page-master master-name="even-preface_1972-1998" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
635
- <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom}mm" margin-left="{$marginLeftRight2}mm" margin-right="82mm"/>
636
- <fo:region-before region-name="header-even" extent="{$marginTop}mm"/>
637
- <fo:region-after region-name="footer-even" extent="{$marginBottom - 2}mm"/>
638
- <fo:region-start region-name="left-region" extent="{$marginLeftRight2}mm"/>
639
- <fo:region-end region-name="right-region" extent="82mm"/>
640
- </fo:simple-page-master>
641
- <fo:page-sequence-master master-name="preface-1972-1998">
642
- <fo:repeatable-page-master-alternatives>
643
- <fo:conditional-page-master-reference master-reference="blankpage" blank-or-not-blank="blank"/>
644
- <fo:conditional-page-master-reference master-reference="first-preface_1972-1998" page-position="first"/>
645
- <fo:conditional-page-master-reference odd-or-even="even" master-reference="even-preface_1972-1998"/>
646
- <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd-preface_1972-1998"/>
647
- </fo:repeatable-page-master-alternatives>
648
- </fo:page-sequence-master>
649
-
650
- <!-- first page -->
651
- <fo:simple-page-master master-name="first-publishedISO" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
652
- <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom}mm" margin-left="{$marginLeftRight1}mm" margin-right="{$marginLeftRight2}mm" column-count="{$layout_columns}" column-gap="{$column_gap}"/>
653
- <fo:region-before region-name="header-first" extent="{$marginTop}mm">
654
- <xsl:if test="(($layoutVersion = '1987' and $doctype = 'technical-report') or ($layoutVersion = '1979' and $doctype = 'addendum'))">
655
- <xsl:attribute name="region-name">header-odd</xsl:attribute>
656
- </xsl:if>
657
- </fo:region-before>
658
- <fo:region-after region-name="footer-odd" extent="{$marginBottom - 2}mm"/>
659
- <fo:region-start region-name="left-region" extent="{$marginLeftRight1}mm"/>
660
- <fo:region-end region-name="right-region" extent="{$marginLeftRight2}mm"/>
661
- </fo:simple-page-master>
662
- <!-- odd pages -->
663
- <fo:simple-page-master master-name="odd-publishedISO" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
664
- <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom}mm" margin-left="{$marginLeftRight1}mm" margin-right="{$marginLeftRight2}mm" column-count="{$layout_columns}" column-gap="{$column_gap}"/>
665
- <fo:region-before region-name="header-odd" extent="{$marginTop}mm">
666
- <xsl:if test="$layoutVersion = '1951'">
667
- <xsl:attribute name="precedence">true</xsl:attribute>
668
- </xsl:if>
669
- </fo:region-before>
670
- <fo:region-after region-name="footer-odd" extent="{$marginBottom - 2}mm"/>
671
- <fo:region-start region-name="left-region" extent="{$marginLeftRight1}mm"/>
672
- <fo:region-end region-name="right-region" extent="{$marginLeftRight2}mm"/>
673
- </fo:simple-page-master>
674
-
675
- <fo:simple-page-master master-name="odd-publishedISO-landscape" page-width="{$pageHeight}mm" page-height="{$pageWidth}mm">
676
- <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom}mm" margin-left="{$marginLeftRight1}mm" margin-right="{$marginLeftRight2}mm" column-count="{$layout_columns}" column-gap="{$column_gap}"/>
677
- <fo:region-before region-name="header-odd" extent="{$marginTop}mm"/> <!-- display-align="center" -->
678
- <fo:region-after region-name="footer-odd" extent="{$marginBottom - 2}mm"/>
679
- <fo:region-start region-name="left-region" extent="{$marginLeftRight1}mm"/>
680
- <fo:region-end region-name="right-region" extent="{$marginLeftRight2}mm"/>
681
- </fo:simple-page-master>
682
- <!-- even pages -->
683
- <fo:simple-page-master master-name="even-publishedISO" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
684
- <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom}mm" margin-left="{$marginLeftRight2}mm" margin-right="{$marginLeftRight1}mm" column-count="{$layout_columns}" column-gap="{$column_gap}"/>
685
- <fo:region-before region-name="header-even" extent="{$marginTop}mm">
686
- <xsl:if test="$layoutVersion = '1951'">
687
- <xsl:attribute name="precedence">true</xsl:attribute>
688
- </xsl:if>
689
- </fo:region-before>
690
- <fo:region-after region-name="footer-even" extent="{$marginBottom - 2}mm"/>
691
- <fo:region-start region-name="left-region" extent="{$marginLeftRight2}mm"/>
692
- <fo:region-end region-name="right-region" extent="{$marginLeftRight1}mm"/>
693
- </fo:simple-page-master>
694
-
695
- <!-- for 1951 layout only -->
696
- <fo:simple-page-master master-name="even-last-publishedISO" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
697
- <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom}mm" margin-left="{$marginLeftRight2}mm" margin-right="{$marginLeftRight1}mm" column-count="{$layout_columns}" column-gap="{$column_gap}"/>
698
- <fo:region-before region-name="header-even" extent="{$marginTop}mm" precedence="true"/>
699
- <fo:region-after region-name="footer-even-last" extent="{$marginBottom - 2}mm"/>
700
- <fo:region-start region-name="left-region" extent="{$marginLeftRight2}mm"/>
701
- <fo:region-end region-name="right-region" extent="{$marginLeftRight1}mm"/>
702
- </fo:simple-page-master>
703
-
704
- <fo:simple-page-master master-name="even-publishedISO-landscape" page-width="{$pageHeight}mm" page-height="{$pageWidth}mm">
705
- <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom}mm" margin-left="{$marginLeftRight2}mm" margin-right="{$marginLeftRight1}mm" column-count="{$layout_columns}" column-gap="{$column_gap}"/>
706
- <fo:region-before region-name="header-even" extent="{$marginTop}mm"/>
707
- <fo:region-after region-name="footer-even" extent="{$marginBottom - 2}mm"/>
708
- <fo:region-start region-name="left-region" extent="{$marginLeftRight2}mm"/>
709
- <fo:region-end region-name="right-region" extent="{$marginLeftRight1}mm"/>
710
- </fo:simple-page-master>
711
- <fo:simple-page-master master-name="blankpage" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
712
- <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom}mm" margin-left="{$marginLeftRight2}mm" margin-right="{$marginLeftRight1}mm"/>
713
- <fo:region-before region-name="header" extent="{$marginTop}mm"/>
714
- <fo:region-after region-name="footer" extent="{$marginBottom - 2}mm"/>
715
- <fo:region-start region-name="left" extent="{$marginLeftRight2}mm"/>
716
- <fo:region-end region-name="right" extent="{$marginLeftRight1}mm"/>
717
- </fo:simple-page-master>
718
- <fo:page-sequence-master master-name="preface-publishedISO">
719
- <fo:repeatable-page-master-alternatives>
720
- <fo:conditional-page-master-reference master-reference="blankpage" blank-or-not-blank="blank"/>
721
- <fo:conditional-page-master-reference odd-or-even="even" master-reference="even-publishedISO"/>
722
- <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd-publishedISO"/>
723
- </fo:repeatable-page-master-alternatives>
724
- </fo:page-sequence-master>
725
- <fo:page-sequence-master master-name="preface-publishedISO-landscape">
726
- <fo:repeatable-page-master-alternatives>
727
- <fo:conditional-page-master-reference master-reference="blankpage" blank-or-not-blank="blank"/>
728
- <fo:conditional-page-master-reference odd-or-even="even" master-reference="even-publishedISO-landscape"/>
729
- <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd-publishedISO-landscape"/>
730
- </fo:repeatable-page-master-alternatives>
731
- </fo:page-sequence-master>
732
-
733
- <!-- First pages for Technical Report (layout 1987) -->
734
- <fo:simple-page-master master-name="first-preface_1987_TR" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
735
- <fo:region-body margin-top="13mm" margin-bottom="30mm" margin-left="19mm" margin-right="10.5mm"/>
736
- <fo:region-before region-name="header-empty" extent="13mm"/>
737
- <fo:region-after region-name="footer-preface-first_1987_TR" extent="30mm" display-align="after"/>
738
- <fo:region-start region-name="left-region-first_1987_TR" extent="19mm"/>
739
- <fo:region-end region-name="right-region" extent="10.5mm"/>
740
- </fo:simple-page-master>
741
- <fo:page-sequence-master master-name="preface-1987_TR">
742
- <fo:repeatable-page-master-alternatives>
743
- <fo:conditional-page-master-reference master-reference="first-preface_1987_TR" page-position="first"/>
744
- <fo:conditional-page-master-reference odd-or-even="even" master-reference="even-publishedISO"/>
745
- <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd-publishedISO"/>
746
- </fo:repeatable-page-master-alternatives>
747
- </fo:page-sequence-master>
748
-
749
- <fo:page-sequence-master master-name="document-publishedISO_first_sequence">
750
- <fo:repeatable-page-master-alternatives>
751
- <xsl:if test="not($layoutVersion = '1951')">
752
- <fo:conditional-page-master-reference master-reference="first-publishedISO" page-position="first"/>
753
- </xsl:if>
754
- <xsl:if test="$layoutVersion = '1951'">
755
- <fo:conditional-page-master-reference page-position="last" master-reference="even-last-publishedISO"/> <!-- odd-or-even="even" -->
756
- </xsl:if>
757
- <fo:conditional-page-master-reference odd-or-even="even" master-reference="even-publishedISO"/>
758
- <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd-publishedISO"/>
759
- </fo:repeatable-page-master-alternatives>
760
- </fo:page-sequence-master>
761
-
762
- <fo:page-sequence-master master-name="document-publishedISO">
763
- <fo:repeatable-page-master-alternatives>
764
- <xsl:if test="$layoutVersion = '1951'">
765
- <fo:conditional-page-master-reference page-position="last" master-reference="even-last-publishedISO"/> <!-- odd-or-even="even" -->
766
- </xsl:if>
767
- <fo:conditional-page-master-reference odd-or-even="even" master-reference="even-publishedISO"/>
768
- <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd-publishedISO"/>
769
- </fo:repeatable-page-master-alternatives>
770
- </fo:page-sequence-master>
771
-
772
- <fo:page-sequence-master master-name="document-publishedISO-landscape_first_sequence">
773
- <fo:repeatable-page-master-alternatives>
774
- <xsl:if test="not($layoutVersion = '1951')">
775
- <fo:conditional-page-master-reference master-reference="first-publishedISO" page-position="first"/>
776
- </xsl:if>
777
- <fo:conditional-page-master-reference odd-or-even="even" master-reference="even-publishedISO-landscape"/>
778
- <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd-publishedISO-landscape"/>
779
- </fo:repeatable-page-master-alternatives>
780
- </fo:page-sequence-master>
781
- <fo:page-sequence-master master-name="document-publishedISO-landscape">
782
- <fo:repeatable-page-master-alternatives>
783
- <fo:conditional-page-master-reference odd-or-even="even" master-reference="even-publishedISO-landscape"/>
784
- <fo:conditional-page-master-reference odd-or-even="odd" master-reference="odd-publishedISO-landscape"/>
785
- </fo:repeatable-page-master-alternatives>
786
- </fo:page-sequence-master>
787
-
788
- <fo:simple-page-master master-name="last-page" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
789
- <fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom}mm" margin-left="{$marginLeftRight2}mm" margin-right="{$marginLeftRight1}mm"/>
790
- <fo:region-before region-name="header-even" extent="{$marginTop}mm"/>
791
- <fo:region-after region-name="last-page-footer" extent="{$marginBottom - 2}mm"/>
792
- <fo:region-start region-name="left-region" extent="{$marginLeftRight2}mm"/>
793
- <fo:region-end region-name="right-region" extent="{$marginLeftRight1}mm"/>
794
- </fo:simple-page-master>
795
-
796
- <fo:simple-page-master master-name="last-page_2024" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
797
- <fo:region-body margin-top="{$marginTopBottom_cover_page_2024}mm" margin-bottom="{$marginTopBottom_cover_page_2024}mm" margin-left="{$marginLeftRight_cover_page_2024}mm" margin-right="{$marginLeftRight_cover_page_2024}mm"/>
798
- <fo:region-before region-name="header" extent="{$marginTopBottom_cover_page_2024}mm"/>
799
- <fo:region-after region-name="footer" extent="{$marginTopBottom_cover_page_2024}mm"/>
800
- <fo:region-start region-name="left-region" extent="{$marginLeftRight_cover_page_2024}mm"/>
801
- <fo:region-end region-name="right-region" extent="{$marginLeftRight_cover_page_2024}mm"/>
802
- </fo:simple-page-master>
803
-
804
- <!-- Index pages -->
805
- <fo:simple-page-master master-name="index-odd" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
806
- <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"/>
807
- <fo:region-before region-name="header-odd" extent="{$marginTop}mm"/>
808
- <fo:region-after region-name="footer-odd" extent="{$marginBottom - 2}mm"/>
809
- <fo:region-start region-name="left-region" extent="{$marginLeftRight1}mm"/>
810
- <fo:region-end region-name="right-region" extent="{$marginLeftRight2}mm"/>
811
- </fo:simple-page-master>
812
- <fo:simple-page-master master-name="index-even" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
813
- <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"/>
814
- <fo:region-before region-name="header-even" extent="{$marginTop}mm"/>
815
- <fo:region-after region-name="footer-even" extent="{$marginBottom - 2}mm"/>
816
- <fo:region-start region-name="left-region" extent="{$marginLeftRight2}mm"/>
817
- <fo:region-end region-name="right-region" extent="{$marginLeftRight1}mm"/>
818
- </fo:simple-page-master>
819
- <fo:page-sequence-master master-name="index">
820
- <fo:repeatable-page-master-alternatives>
821
- <fo:conditional-page-master-reference odd-or-even="even" master-reference="index-even"/>
822
- <fo:conditional-page-master-reference odd-or-even="odd" master-reference="index-odd"/>
823
- </fo:repeatable-page-master-alternatives>
824
- </fo:page-sequence-master>
825
-
826
- </fo:layout-master-set>
829
+ <xsl:call-template name="layout-master-set"/>
827
830
 
828
831
  <fo:declarations>
829
832
  <xsl:call-template name="addPDFUAmeta"/>
830
- <xsl:for-each select="//mn:eref[generate-id(.)=generate-id(key('attachments',@bibitemid)[1])]">
833
+ <xsl:for-each select="//mn:fmt-eref[generate-id(.)=generate-id(key('attachments',@bibitemid)[1])]">
831
834
  <xsl:variable name="url" select="concat('url(file:',$basepath, @bibitemid, ')')"/>
832
835
  <pdf:embedded-file src="{$url}" filename="{@bibitemid}"/>
833
836
  </xsl:for-each>
834
- <xsl:for-each select="//mn:eref[generate-id(.)=generate-id(key('attachments2',@bibitemid)[1])]">
837
+ <xsl:for-each select="//mn:fmt-eref[generate-id(.)=generate-id(key('attachments2',@bibitemid)[1])]">
835
838
  <xsl:variable name="bibitemid" select="@bibitemid"/>
836
839
  <xsl:variable name="uri" select="normalize-space($bibitems/mn:bibitem[@hidden = 'true'][@id = $bibitemid][1]/mn:uri[@type='citation'])"/>
837
840
  <xsl:if test="$uri != ''">
@@ -846,7 +849,7 @@
846
849
  <xsl:with-param name="contents" select="$contents"/>
847
850
  </xsl:call-template>
848
851
 
849
- <xsl:call-template name="insertCoverPage"/>
852
+ <xsl:call-template name="cover-page"/>
850
853
 
851
854
  <xsl:if test="$debug = 'true'">
852
855
  <xsl:message>START updated_xml</xsl:message>
@@ -1061,7 +1064,7 @@
1061
1064
 
1062
1065
  <xsl:for-each select="xalan:nodeset($updated_xml_with_pages)"> <!-- set context to preface/sections -->
1063
1066
 
1064
- <xsl:for-each select=".//*[local-name() = 'page_sequence'][parent::mn:preface][normalize-space() != '' or .//mn:image or .//*[local-name() = 'svg']]">
1067
+ <xsl:for-each select=".//mn:page_sequence[parent::mn:preface][normalize-space() != '' or .//mn:image or .//*[local-name() = 'svg']]">
1065
1068
 
1066
1069
  <fo:page-sequence format="i" force-page-count="no-force">
1067
1070
 
@@ -1210,7 +1213,7 @@
1210
1213
 
1211
1214
  <xsl:for-each select="xalan:nodeset($updated_xml_with_pages)"> <!-- set context to sections, if top element in 'sections' -->
1212
1215
 
1213
- <xsl:for-each select=".//*[local-name() = 'page_sequence'][not(parent::mn:preface)][normalize-space() != '' or .//mn:image or .//*[local-name() = 'svg']]">
1216
+ <xsl:for-each select=".//mn:page_sequence[not(parent::mn:preface)][normalize-space() != '' or .//mn:image or .//*[local-name() = 'svg']]">
1214
1217
 
1215
1218
  <!-- BODY -->
1216
1219
  <fo:page-sequence force-page-count="no-force">
@@ -1411,21 +1414,7 @@
1411
1414
  <xsl:message>DEBUG: processing time <xsl:value-of select="$endTime2 - $startTime2"/> msec.</xsl:message>
1412
1415
  <xsl:message>END xalan:nodeset</xsl:message> -->
1413
1416
 
1414
- <xsl:choose>
1415
- <xsl:when test="$isGenerateTableIF = 'true'"><!-- skip last page --></xsl:when>
1416
- <xsl:when test="$layoutVersion = '1951'"/>
1417
- <xsl:when test="$layoutVersion = '1972'"/>
1418
- <xsl:when test="$layoutVersion = '1979'"/>
1419
- <xsl:when test="(($layoutVersion = '1987' and $doctype = 'technical-report') or ($layoutVersion = '1979' and $doctype = 'addendum'))"><!-- UDC, Keywords and Price renders on the first page for technical-report --></xsl:when>
1420
- <xsl:when test="$layoutVersion = '2024'">
1421
- <xsl:call-template name="insertLastPage_2024"/>
1422
- </xsl:when>
1423
- <xsl:otherwise>
1424
- <xsl:if test="$isPublished = 'true'">
1425
- <xsl:call-template name="insertLastPage"/>
1426
- </xsl:if>
1427
- </xsl:otherwise>
1428
- </xsl:choose>
1417
+ <xsl:call-template name="back-page"/>
1429
1418
 
1430
1419
  </xsl:for-each>
1431
1420
  </fo:root>
@@ -1520,7 +1509,7 @@
1520
1509
  </xsl:call-template>
1521
1510
  </xsl:template> <!-- END: processPrefaceAndMainSectionsISO_items -->
1522
1511
 
1523
- <xsl:template name="insertCoverPage">
1512
+ <xsl:template name="cover-page">
1524
1513
  <xsl:if test="$isGenerateTableIF = 'false'"> <!-- no need cover page for auto-layout algorithm -->
1525
1514
  <xsl:variable name="fo_cover_page">
1526
1515
  <!-- cover page -->
@@ -2932,7 +2921,7 @@
2932
2921
  <xsl:apply-templates select="xalan:nodeset($fo_cover_page)" mode="set_table_role_skip"/>
2933
2922
 
2934
2923
  </xsl:if> <!-- $isGenerateTableIF = 'false' -->
2935
- </xsl:template> <!-- END insertCoverPage -->
2924
+ </xsl:template> <!-- END cover-page -->
2936
2925
 
2937
2926
  <xsl:template match="mn:preface/mn:introduction" mode="update_xml_step1" priority="3">
2938
2927
  <xsl:param name="process">false</xsl:param>
@@ -2983,9 +2972,62 @@
2983
2972
  <xsl:template name="insertLogoImages2024">
2984
2973
  <xsl:variable name="content-height">20</xsl:variable>
2985
2974
  <xsl:for-each select="/mn:metanorma/mn:bibdata/mn:copyright/mn:owner/mn:organization">
2975
+ <xsl:variable name="owner_number" select="count(ancestor::mn:copyright/preceding-sibling::mn:copyright) + 1"/>
2976
+ <!-- https://github.com/metanorma/metanorma-iso/issues/1386 -->
2977
+ <xsl:variable name="logo_width_">
2978
+ <xsl:for-each select="/mn:metanorma/mn:metanorma-extension/mn:presentation-metadata/*[starts-with(local-name(), 'logo-publisher-pdf-width-')]">
2979
+ <xsl:if test="local-name() = concat('logo-publisher-pdf-width-', $owner_number)">
2980
+ <xsl:value-of select="."/>
2981
+ </xsl:if>
2982
+ </xsl:for-each>
2983
+ </xsl:variable>
2984
+ <xsl:variable name="logo_width">
2985
+ <xsl:choose>
2986
+ <xsl:when test="normalize-space($logo_width_) != '' and normalize-space(translate($logo_width_, '1234567890', '')) = ''"><xsl:value-of select="$logo_width_"/>px</xsl:when>
2987
+ <xsl:otherwise><xsl:value-of select="$logo_width_"/></xsl:otherwise>
2988
+ </xsl:choose>
2989
+ </xsl:variable>
2990
+ <xsl:variable name="logo_height_">
2991
+ <xsl:for-each select="/mn:metanorma/mn:metanorma-extension/mn:presentation-metadata/*[starts-with(local-name(), 'logo-publisher-pdf-height-')]">
2992
+ <xsl:if test="local-name() = concat('logo-publisher-pdf-height-', $owner_number)">
2993
+ <xsl:value-of select="."/>
2994
+ </xsl:if>
2995
+ </xsl:for-each>
2996
+ </xsl:variable>
2997
+ <xsl:variable name="logo_height">
2998
+ <xsl:choose>
2999
+ <xsl:when test="normalize-space($logo_height_) != '' and normalize-space(translate($logo_height_, '1234567890', '')) = ''"><xsl:value-of select="$logo_height_"/>px</xsl:when>
3000
+ <xsl:otherwise><xsl:value-of select="$logo_height_"/></xsl:otherwise>
3001
+ </xsl:choose>
3002
+ </xsl:variable>
3003
+ <!-- <fo:block>logo_width=<xsl:value-of select="$logo_width"/></fo:block>
3004
+ <fo:block>logo_height=<xsl:value-of select="$logo_height"/></fo:block> -->
2986
3005
  <xsl:choose>
2987
3006
  <xsl:when test="mn:logo/mn:image">
2988
- <xsl:apply-templates select="mn:logo/mn:image"/>
3007
+ <xsl:choose>
3008
+ <xsl:when test="normalize-space($logo_width) != '' or normalize-space($logo_height) != ''">
3009
+ <xsl:variable name="logo_image">
3010
+ <xsl:for-each select="mn:logo/mn:image"> <!-- set context to logo/image -->
3011
+ <xsl:element name="logo" namespace="{$namespace_full}">
3012
+ <xsl:element name="image" namespace="{$namespace_full}">
3013
+ <xsl:copy-of select="@*"/>
3014
+ <xsl:if test="$logo_width != ''">
3015
+ <xsl:attribute name="width"><xsl:value-of select="$logo_width"/></xsl:attribute>
3016
+ </xsl:if>
3017
+ <xsl:if test="$logo_height != ''">
3018
+ <xsl:attribute name="height"><xsl:value-of select="$logo_height"/></xsl:attribute>
3019
+ </xsl:if>
3020
+ <xsl:copy-of select="node()"/>
3021
+ </xsl:element>
3022
+ </xsl:element>
3023
+ </xsl:for-each>
3024
+ </xsl:variable>
3025
+ <xsl:apply-templates select="xalan:nodeset($logo_image)//mn:logo/mn:image"/>
3026
+ </xsl:when>
3027
+ <xsl:otherwise>
3028
+ <xsl:apply-templates select="mn:logo/mn:image"/>
3029
+ </xsl:otherwise>
3030
+ </xsl:choose>
2989
3031
  </xsl:when>
2990
3032
  <xsl:when test="mn:abbreviation = 'ISO'">
2991
3033
  <fo:instream-foreign-object content-height="{$content-height}mm" fox:alt-text="Image ISO Logo">
@@ -3229,13 +3271,13 @@
3229
3271
  </xsl:if>
3230
3272
 
3231
3273
  <!-- render 'Contents' outside if role="TOC" -->
3232
- <xsl:apply-templates select="mn:title"/>
3274
+ <xsl:apply-templates select="mn:fmt-title"/>
3233
3275
 
3234
3276
  <fo:block role="TOC">
3235
3277
 
3236
- <xsl:apply-templates select="node()[not(self::mn:title)]"/>
3278
+ <xsl:apply-templates select="node()[not(self::mn:fmt-title)]"/>
3237
3279
 
3238
- <xsl:if test="count(*) = 1 and mn:title"> <!-- if there isn't user ToC -->
3280
+ <xsl:if test="count(*) = 1 and mn:fmt-title"> <!-- if there isn't user ToC -->
3239
3281
 
3240
3282
  <xsl:if test="$debug = 'true'">
3241
3283
  <redirect:write file="contents_.xml">
@@ -3393,7 +3435,7 @@
3393
3435
  </xsl:choose>
3394
3436
  </xsl:template>
3395
3437
 
3396
- <xsl:template match="mn:preface//mn:clause[@type = 'toc']/mn:title" priority="3">
3438
+ <xsl:template match="mn:preface//mn:clause[@type = 'toc']/mn:fmt-title" priority="3">
3397
3439
  <fo:block text-align-last="justify" font-size="16pt" margin-top="10pt" margin-bottom="18pt">
3398
3440
  <xsl:if test="$layoutVersion = '2024'">
3399
3441
  <xsl:attribute name="margin-top">0</xsl:attribute>
@@ -3726,7 +3768,7 @@
3726
3768
  <!-- END display titles -->
3727
3769
  <!-- ==================== -->
3728
3770
 
3729
- <xsl:template match="mn:title/mn:span[contains(@style, 'text-transform:none')]//text()" priority="6">
3771
+ <xsl:template match="mn:fmt-title/mn:span[contains(@style, 'text-transform:none')]//text()" priority="6">
3730
3772
  <fo:inline font-weight="normal"><xsl:value-of select="."/></fo:inline>
3731
3773
  </xsl:template>
3732
3774
 
@@ -3851,7 +3893,7 @@
3851
3893
  <fo:block>www.iso.org</fo:block>
3852
3894
  </fo:block> -->
3853
3895
 
3854
- <xsl:template match="mn:copyright-statement/mn:clause[1]/mn:title" priority="2">
3896
+ <xsl:template match="mn:copyright-statement/mn:clause[1]/mn:fmt-title" priority="2">
3855
3897
  <xsl:choose>
3856
3898
  <xsl:when test="$layoutVersion = '1951'">
3857
3899
  <fo:block><xsl:apply-templates/></fo:block> <!-- font-weight="bold" -->
@@ -3957,7 +3999,7 @@
3957
3999
  <!-- title -->
3958
4000
  <!-- ====== -->
3959
4001
 
3960
- <xsl:template match="mn:annex/mn:title">
4002
+ <xsl:template match="mn:annex/mn:fmt-title">
3961
4003
  <xsl:choose>
3962
4004
  <xsl:when test="$doctype = 'amendment'">
3963
4005
  <xsl:call-template name="titleAmendment"/>
@@ -3980,7 +4022,7 @@
3980
4022
  </xsl:template>
3981
4023
 
3982
4024
  <!-- Bibliography -->
3983
- <xsl:template match="mn:references[not(@normative='true')]/mn:title">
4025
+ <xsl:template match="mn:references[not(@normative='true')]/mn:fmt-title">
3984
4026
  <xsl:choose>
3985
4027
  <xsl:when test="$doctype = 'amendment'">
3986
4028
  <xsl:call-template name="titleAmendment"/>
@@ -4001,7 +4043,7 @@
4001
4043
  </xsl:choose>
4002
4044
  </xsl:template>
4003
4045
 
4004
- <xsl:template match="mn:title" name="title">
4046
+ <xsl:template match="mn:fmt-title" name="title">
4005
4047
  <xsl:param name="without_number">false</xsl:param>
4006
4048
 
4007
4049
  <xsl:variable name="level">
@@ -4296,7 +4338,7 @@
4296
4338
  </xsl:choose>
4297
4339
  </xsl:template>
4298
4340
 
4299
- <xsl:template match="mn:title[../@inline-header = 'true'][following-sibling::*[1][self::mn:p]]" priority="3">
4341
+ <xsl:template match="mn:fmt-title[../@inline-header = 'true'][following-sibling::*[1][self::mn:p]]" priority="3">
4300
4342
  <xsl:param name="without_number">false</xsl:param>
4301
4343
  <xsl:choose>
4302
4344
  <xsl:when test="($layoutVersion = '1951' or $layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or $layoutVersion = '1989') and $layout_columns != 1"/> <!-- don't show 'title' with inline-header='true' if next element is 'p' -->
@@ -4326,7 +4368,7 @@
4326
4368
 
4327
4369
  <xsl:template match="mn:clause[normalize-space() != '' or mn:figure]" priority="2">
4328
4370
  <xsl:choose>
4329
- <xsl:when test="($layoutVersion = '1951' or $layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or $layoutVersion = '1989') and self::mn:clause and count(node()) = 0 and following-sibling::*[1][self::mn:title and not(@id)]"/> <!-- @id will be added to title -->
4371
+ <xsl:when test="($layoutVersion = '1951' or $layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or $layoutVersion = '1989') and self::mn:clause and count(node()) = 0 and following-sibling::*[1][self::mn:fmt-title and not(@id)]"/> <!-- @id will be added to title -->
4330
4372
  <xsl:otherwise>
4331
4373
  <xsl:call-template name="template_clause_iso"/>
4332
4374
  </xsl:otherwise>
@@ -4340,8 +4382,8 @@
4340
4382
  <xsl:variable name="element-name">
4341
4383
  <xsl:choose>
4342
4384
  <xsl:when test="$inline = 'true'">fo:inline</xsl:when>
4343
- <xsl:when test="../@inline-header = 'true' and $previous-element = 'title'">fo:inline</xsl:when> <!-- first paragraph after inline title -->
4344
- <xsl:when test="local-name(..) = 'admonition'">fo:inline</xsl:when>
4385
+ <xsl:when test="../@inline-header = 'true' and $previous-element = 'fmt-title'">fo:inline</xsl:when> <!-- first paragraph after inline title -->
4386
+ <xsl:when test="parent::mn:admonition">fo:inline</xsl:when>
4345
4387
  <xsl:otherwise>fo:block</xsl:otherwise>
4346
4388
  </xsl:choose>
4347
4389
  </xsl:variable>
@@ -4422,7 +4464,7 @@
4422
4464
  <!-- put inline title in the first paragraph -->
4423
4465
  <xsl:if test="($layoutVersion = '1951' or $layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or $layoutVersion = '1989') and $layout_columns != 1">
4424
4466
  <!-- <xsl:if test="preceding-sibling::*[1]/@inline-header = 'true' and preceding-sibling::*[1][self::mn:title]"> -->
4425
- <xsl:if test="ancestor::*[1]/@inline-header = 'true' and preceding-sibling::*[1][self::mn:title]">
4467
+ <xsl:if test="ancestor::*[1]/@inline-header = 'true' and preceding-sibling::*[1][self::mn:fmt-title]">
4426
4468
  <xsl:attribute name="space-before">0pt</xsl:attribute>
4427
4469
  <xsl:for-each select="preceding-sibling::*[1]">
4428
4470
  <xsl:call-template name="title"/>
@@ -4438,7 +4480,7 @@
4438
4480
 
4439
4481
  <xsl:apply-templates select="mn:note"/> <!-- [not(following-sibling::*) or count(following-sibling::*) = count(../mn:note) - 1] -->
4440
4482
 
4441
- <xsl:if test="$element-name = 'fo:inline' and not($inline = 'true') and not(local-name(..) = 'admonition')">
4483
+ <xsl:if test="$element-name = 'fo:inline' and not($inline = 'true') and not(parent::mn:admonition)">
4442
4484
  <fo:block margin-bottom="12pt" role="SKIP">
4443
4485
  <xsl:if test="ancestor::mn:sections or ancestor::mn:annex or following-sibling::mn:table">
4444
4486
  <xsl:attribute name="margin-bottom">0</xsl:attribute>
@@ -4467,7 +4509,7 @@
4467
4509
  </xsl:template>
4468
4510
 
4469
4511
  <!-- For express listings PDF attachments -->
4470
- <xsl:template match="mn:eref[java:endsWith(java:java.lang.String.new(@bibitemid),'.exp')]" priority="2">
4512
+ <xsl:template match="mn:fmt-eref[java:endsWith(java:java.lang.String.new(@bibitemid),'.exp')]" priority="2">
4471
4513
  <fo:inline xsl:use-attribute-sets="eref-style">
4472
4514
  <xsl:variable name="url" select="concat('url(embedded-file:', @bibitemid, ')')"/>
4473
4515
  <fo:basic-link external-destination="{$url}" fox:alt-text="{@citeas}">
@@ -4479,7 +4521,7 @@
4479
4521
  </fo:inline>
4480
4522
  </xsl:template>
4481
4523
 
4482
- <xsl:template match="mn:eref[contains(@bibitemid,'.exp_')]" priority="2">
4524
+ <xsl:template match="mn:fmt-eref[contains(@bibitemid,'.exp_')]" priority="2">
4483
4525
  <xsl:variable name="bibitemid" select="@bibitemid"/>
4484
4526
  <xsl:variable name="uri" select="normalize-space($bibitems/mn:bibitem[@hidden = 'true'][@id = $bibitemid][1]/mn:uri[@type='citation'])"/>
4485
4527
  <xsl:choose>
@@ -4501,7 +4543,7 @@
4501
4543
  </xsl:choose>
4502
4544
  </xsl:template>
4503
4545
 
4504
- <xsl:template match="mn:note/mn:name/text()" priority="5">
4546
+ <xsl:template match="mn:note/mn:fmt-name/text()" priority="5">
4505
4547
  <xsl:choose>
4506
4548
  <xsl:when test="$layoutVersion = '1951' and not(translate(.,'0123456789','') = .)"> <!-- NOTE with number -->
4507
4549
  <fo:inline padding-right="2mm" role="SKIP">
@@ -4520,7 +4562,7 @@
4520
4562
  </xsl:choose>
4521
4563
  </xsl:template>
4522
4564
 
4523
- <xsl:template match="mn:example/mn:name/text()" priority="5">
4565
+ <xsl:template match="mn:example/mn:fmt-name/text()" priority="5">
4524
4566
  <xsl:choose>
4525
4567
  <xsl:when test="$layoutVersion = '1951'"> <!-- and $revision_date_num &lt; 19610101 -->
4526
4568
  <xsl:call-template name="smallcaps"/>
@@ -4530,7 +4572,7 @@
4530
4572
  </xsl:choose>
4531
4573
  </xsl:template>
4532
4574
 
4533
- <xsl:template match="mn:figure/mn:name/text()" priority="5">
4575
+ <xsl:template match="mn:figure/mn:fmt-name/text()" priority="5">
4534
4576
  <xsl:choose>
4535
4577
  <xsl:when test="$layoutVersion = '1951' and not(ancestor::mn:figure[1]/@unnumbered = 'true') and not(preceding-sibling::node())">
4536
4578
  <xsl:choose>
@@ -4548,7 +4590,7 @@
4548
4590
  </xsl:choose>
4549
4591
  </xsl:template>
4550
4592
 
4551
- <xsl:template match="mn:table/mn:name/text()" priority="5">
4593
+ <xsl:template match="mn:table/mn:fmt-name/text()" priority="5">
4552
4594
  <xsl:choose>
4553
4595
  <xsl:when test="$layoutVersion = '1951' and not(ancestor::mn:table[1]/@unnumbered = 'true') and not(preceding-sibling::node())">
4554
4596
  <xsl:choose>
@@ -4569,16 +4611,16 @@
4569
4611
  <xsl:template match="mn:clause[@type = 'section']" priority="3">
4570
4612
  <xsl:choose>
4571
4613
  <!-- skip empty clause after templates mode="update_xml_step_move_pagebreak" -->
4572
- <xsl:when test="not(mn:title) and normalize-space() = ''"/>
4614
+ <xsl:when test="not(mn:fmt-title) and normalize-space() = ''"/>
4573
4615
  <xsl:otherwise>
4574
4616
  <xsl:if test="preceding-sibling::mn:clause[@type = 'section']">
4575
4617
  <fo:block break-after="page"/>
4576
4618
  </xsl:if>
4577
4619
  <fo:block span="all">
4578
4620
  <xsl:copy-of select="@id"/>
4579
- <xsl:apply-templates select="mn:title"/>
4621
+ <xsl:apply-templates select="mn:fmt-title"/>
4580
4622
  </fo:block>
4581
- <xsl:apply-templates select="*[not(self::mn:title)]"/>
4623
+ <xsl:apply-templates select="*[not(self::mn:fmt-title)]"/>
4582
4624
  </xsl:otherwise>
4583
4625
  </xsl:choose>
4584
4626
  </xsl:template>
@@ -4627,7 +4669,7 @@
4627
4669
  <xsl:template name="processElementContent">
4628
4670
  <xsl:variable name="level">
4629
4671
  <xsl:call-template name="getLevel">
4630
- <xsl:with-param name="depth" select="mn:title/@depth"/>
4672
+ <xsl:with-param name="depth" select="mn:fmt-title/@depth"/>
4631
4673
  </xsl:call-template>
4632
4674
  </xsl:variable>
4633
4675
  <xsl:choose>
@@ -4648,7 +4690,7 @@
4648
4690
  <fo:list-item-label end-indent="label-end()">
4649
4691
  <fo:block>
4650
4692
  <xsl:variable name="element_title">
4651
- <xsl:apply-templates select="mn:title"/>
4693
+ <xsl:apply-templates select="mn:fmt-title"/>
4652
4694
  </xsl:variable>
4653
4695
  <xsl:for-each select="xalan:nodeset($element_title)/*[1]"> <!-- process fo: element -->
4654
4696
  <xsl:copy-of select="@font-size"/>
@@ -4661,10 +4703,10 @@
4661
4703
  </fo:list-item-label>
4662
4704
  <fo:list-item-body start-indent="body-start()">
4663
4705
  <fo:block>
4664
- <xsl:apply-templates select="mn:title">
4706
+ <xsl:apply-templates select="mn:fmt-title">
4665
4707
  <xsl:with-param name="without_number">true</xsl:with-param>
4666
4708
  </xsl:apply-templates>
4667
- <xsl:apply-templates select="node()[not(self::mn:title)]"/>
4709
+ <xsl:apply-templates select="node()[not(self::mn:fmt-title)]"/>
4668
4710
  </fo:block>
4669
4711
  </fo:list-item-body>
4670
4712
  </fo:list-item>
@@ -4678,7 +4720,7 @@
4678
4720
  </xsl:template>
4679
4721
 
4680
4722
  <!-- page_sequence/sections/clause -->
4681
- <xsl:template match="mn:sections/*[local-name() = 'page_sequence']/*[not(@top-level)]" priority="3">
4723
+ <xsl:template match="mn:sections/mn:page_sequence/*[not(@top-level)]" priority="3">
4682
4724
  <xsl:choose>
4683
4725
  <xsl:when test="self::mn:clause and normalize-space() = '' and count(*) = 0"/>
4684
4726
  <xsl:otherwise>
@@ -4712,20 +4754,20 @@
4712
4754
 
4713
4755
  <fo:flow flow-name="xsl-region-body">
4714
4756
  <fo:block id="{@id}" text-align="center" span="all">
4715
- <xsl:apply-templates select="mn:title"/>
4757
+ <xsl:apply-templates select="mn:fmt-title"/>
4716
4758
  </fo:block>
4717
4759
  <fo:block role="Index">
4718
- <xsl:apply-templates select="*[not(self::mn:title)]"/>
4760
+ <xsl:apply-templates select="*[not(self::mn:fmt-title)]"/>
4719
4761
  </fo:block>
4720
4762
  </fo:flow>
4721
4763
  </fo:page-sequence>
4722
4764
  </xsl:template>
4723
4765
 
4724
- <xsl:template match="mn:xref" priority="2">
4766
+ <xsl:template match="mn:xref | mn:fmt-xref" priority="2">
4725
4767
  <xsl:call-template name="insert_basic_link">
4726
4768
  <xsl:with-param name="element">
4727
4769
  <fo:basic-link internal-destination="{@target}" fox:alt-text="{@target}" xsl:use-attribute-sets="xref-style">
4728
- <xsl:if test="$layoutVersion = '2024' and (ancestor::mn:termsource or $bibitems/mn:bibitem[@id = current()/@target and @type = 'standard'])">
4770
+ <xsl:if test="$layoutVersion = '2024' and (ancestor::mn:fmt-termsource or $bibitems/mn:bibitem[@id = current()/@target and @type = 'standard'])">
4729
4771
  <xsl:attribute name="color">inherit</xsl:attribute>
4730
4772
  <xsl:attribute name="text-decoration">none</xsl:attribute>
4731
4773
  </xsl:if>
@@ -4761,7 +4803,7 @@
4761
4803
  </xsl:call-template>
4762
4804
  </xsl:template>
4763
4805
 
4764
- <xsl:template match="mn:sup[mn:xref[@type = 'footnote']]" priority="2">
4806
+ <xsl:template match="mn:sup[mn:fmt-xref[@type = 'footnote']]" priority="2">
4765
4807
  <fo:inline font-size="80%">
4766
4808
  <xsl:choose>
4767
4809
  <xsl:when test="$layoutVersion = '2024'">
@@ -4780,7 +4822,7 @@
4780
4822
  <!-- =================== -->
4781
4823
 
4782
4824
  <!-- add columns=1 for elements which should be rendered in <block span="all"> -->
4783
- <xsl:template match="mn:annex/mn:title" mode="update_xml_step_move_pagebreak">
4825
+ <xsl:template match="mn:annex/mn:fmt-title" mode="update_xml_step_move_pagebreak">
4784
4826
  <xsl:copy>
4785
4827
  <xsl:copy-of select="@*"/>
4786
4828
  <xsl:if test="$layout_columns != 1">
@@ -4790,7 +4832,7 @@
4790
4832
  </xsl:copy>
4791
4833
  </xsl:template>
4792
4834
 
4793
- <xsl:template match="mn:references[not(@normative='true')]/mn:title" mode="update_xml_step_move_pagebreak">
4835
+ <xsl:template match="mn:references[not(@normative='true')]/mn:fmt-title" mode="update_xml_step_move_pagebreak">
4794
4836
  <xsl:copy>
4795
4837
  <xsl:copy-of select="@*"/>
4796
4838
  <xsl:if test="$layout_columns != 1">
@@ -5337,6 +5379,24 @@
5337
5379
  </xsl:for-each>
5338
5380
  </xsl:template>
5339
5381
 
5382
+ <xsl:template name="back-page">
5383
+ <xsl:choose>
5384
+ <xsl:when test="$isGenerateTableIF = 'true'"><!-- skip last page --></xsl:when>
5385
+ <xsl:when test="$layoutVersion = '1951'"/>
5386
+ <xsl:when test="$layoutVersion = '1972'"/>
5387
+ <xsl:when test="$layoutVersion = '1979'"/>
5388
+ <xsl:when test="(($layoutVersion = '1987' and $doctype = 'technical-report') or ($layoutVersion = '1979' and $doctype = 'addendum'))"><!-- UDC, Keywords and Price renders on the first page for technical-report --></xsl:when>
5389
+ <xsl:when test="$layoutVersion = '2024'">
5390
+ <xsl:call-template name="insertLastPage_2024"/>
5391
+ </xsl:when>
5392
+ <xsl:otherwise>
5393
+ <xsl:if test="$isPublished = 'true'">
5394
+ <xsl:call-template name="insertLastPage"/>
5395
+ </xsl:if>
5396
+ </xsl:otherwise>
5397
+ </xsl:choose>
5398
+ </xsl:template>
5399
+
5340
5400
  <xsl:template name="insertLastPage">
5341
5401
  <fo:page-sequence master-reference="last-page" force-page-count="no-force">
5342
5402
  <xsl:call-template name="insertHeaderEven"/>
@@ -5855,10 +5915,6 @@
5855
5915
  <xsl:text>Часть #:</xsl:text>
5856
5916
  </title-part>
5857
5917
  <title-part lang="zh">第 # 部分:</title-part>
5858
-
5859
- <title-subpart lang="en">Sub-part #</title-subpart>
5860
- <title-subpart lang="fr">Partie de sub #</title-subpart>
5861
-
5862
5918
  </xsl:variable>
5863
5919
  <xsl:variable name="titles" select="xalan:nodeset($titles_)"/>
5864
5920
 
@@ -6335,7 +6391,8 @@
6335
6391
  <xsl:template match="mn:stem" mode="update_xml_step1"/>
6336
6392
 
6337
6393
  <xsl:template match="mn:fmt-stem" mode="update_xml_step1">
6338
- <xsl:element name="stem" namespace="{$namespace_full}">
6394
+ <!-- <xsl:element name="stem" namespace="{$namespace_full}"> -->
6395
+ <xsl:copy>
6339
6396
  <xsl:copy-of select="@*"/>
6340
6397
  <xsl:choose>
6341
6398
  <xsl:when test="mn:semx and count(node()) = 1">
@@ -6359,7 +6416,8 @@
6359
6416
  </xsl:choose>
6360
6417
  </xsl:otherwise>
6361
6418
  </xsl:choose>
6362
- </xsl:element>
6419
+ </xsl:copy>
6420
+ <!-- </xsl:element> -->
6363
6421
  </xsl:template>
6364
6422
 
6365
6423
  <xsl:template match="mn:image[not(.//mn:passthrough)] | mn:bibdata[not(.//mn:passthrough)] | mn:localized-strings" mode="update_xml_step1">
@@ -6521,12 +6579,14 @@
6521
6579
  </xsl:template>
6522
6580
 
6523
6581
  <xsl:template match="mn:fmt-title" mode="update_xml_step1">
6524
- <xsl:element name="title" namespace="{$namespace_full}">
6582
+ <!-- <xsl:element name="title" namespace="{$namespace_full}"> -->
6583
+ <xsl:copy>
6525
6584
  <xsl:copy-of select="@*"/>
6526
6585
  <xsl:call-template name="addNamedDestinationAttribute"/>
6527
6586
 
6528
6587
  <xsl:apply-templates mode="update_xml_step1"/>
6529
- </xsl:element>
6588
+ </xsl:copy>
6589
+ <!-- </xsl:element> -->
6530
6590
  </xsl:template>
6531
6591
 
6532
6592
  <xsl:template name="addNamedDestinationAttribute">
@@ -6572,12 +6632,14 @@
6572
6632
  <xsl:apply-templates mode="update_xml_step1"/>
6573
6633
  </xsl:when>
6574
6634
  <xsl:otherwise>
6575
- <xsl:element name="name" namespace="{$namespace_full}">
6635
+ <!-- <xsl:element name="name" namespace="{$namespace_full}"> -->
6636
+ <xsl:copy>
6576
6637
  <xsl:copy-of select="@*"/>
6577
6638
  <xsl:call-template name="addNamedDestinationAttribute"/>
6578
6639
 
6579
6640
  <xsl:apply-templates mode="update_xml_step1"/>
6580
- </xsl:element>
6641
+ </xsl:copy>
6642
+ <!-- </xsl:element> -->
6581
6643
  </xsl:otherwise>
6582
6644
  </xsl:choose>
6583
6645
  </xsl:template>
@@ -6592,7 +6654,7 @@
6592
6654
  <xsl:apply-templates mode="update_xml_step1"/>
6593
6655
  </xsl:template>
6594
6656
  <xsl:template match="mn:fmt-preferred[not(mn:p)] | mn:fmt-preferred/mn:p" mode="update_xml_step1">
6595
- <xsl:element name="preferred" namespace="{$namespace_full}">
6657
+ <xsl:element name="fmt-preferred" namespace="{$namespace_full}">
6596
6658
  <xsl:copy-of select="@*"/>
6597
6659
  <xsl:apply-templates mode="update_xml_step1"/>
6598
6660
  </xsl:element>
@@ -6602,7 +6664,7 @@
6602
6664
  <xsl:apply-templates mode="update_xml_step1"/>
6603
6665
  </xsl:template>
6604
6666
  <xsl:template match="mn:fmt-admitted[not(mn:p)] | mn:fmt-admitted/mn:p" mode="update_xml_step1">
6605
- <xsl:element name="admitted" namespace="{$namespace_full}">
6667
+ <xsl:element name="fmt-admitted" namespace="{$namespace_full}">
6606
6668
  <xsl:copy-of select="@*"/>
6607
6669
  <xsl:apply-templates mode="update_xml_step1"/>
6608
6670
  </xsl:element>
@@ -6612,32 +6674,32 @@
6612
6674
  <xsl:apply-templates mode="update_xml_step1"/>
6613
6675
  </xsl:template>
6614
6676
  <xsl:template match="mn:fmt-deprecates[not(mn:p)] | mn:fmt-deprecates/mn:p" mode="update_xml_step1">
6615
- <xsl:element name="deprecates" namespace="{$namespace_full}">
6677
+ <xsl:element name="fmt-deprecates" namespace="{$namespace_full}">
6616
6678
  <xsl:copy-of select="@*"/>
6617
6679
  <xsl:apply-templates mode="update_xml_step1"/>
6618
6680
  </xsl:element>
6619
6681
  </xsl:template>
6620
6682
 
6621
- <xsl:template match="mn:fmt-definition" mode="update_xml_step1">
6683
+ <!-- <xsl:template match="mn:fmt-definition" mode="update_xml_step1">
6622
6684
  <xsl:element name="definition" namespace="{$namespace_full}">
6623
6685
  <xsl:copy-of select="@*"/>
6624
6686
  <xsl:apply-templates mode="update_xml_step1"/>
6625
6687
  </xsl:element>
6626
6688
  </xsl:template>
6627
-
6689
+
6628
6690
  <xsl:template match="mn:fmt-termsource" mode="update_xml_step1">
6629
6691
  <xsl:element name="termsource" namespace="{$namespace_full}">
6630
6692
  <xsl:copy-of select="@*"/>
6631
6693
  <xsl:apply-templates mode="update_xml_step1"/>
6632
6694
  </xsl:element>
6633
6695
  </xsl:template>
6634
-
6696
+
6635
6697
  <xsl:template match="mn:fmt-source" mode="update_xml_step1">
6636
6698
  <xsl:element name="source" namespace="{$namespace_full}">
6637
6699
  <xsl:copy-of select="@*"/>
6638
6700
  <xsl:apply-templates mode="update_xml_step1"/>
6639
6701
  </xsl:element>
6640
- </xsl:template>
6702
+ </xsl:template> -->
6641
6703
 
6642
6704
  <xsl:template match="mn:span[ @class = 'fmt-caption-label' or @class = 'fmt-element-name' or @class = 'fmt-caption-delim' or @class = 'fmt-autonum-delim']" mode="update_xml_step1" priority="3">
6643
6705
  <xsl:apply-templates mode="update_xml_step1"/>
@@ -6660,12 +6722,12 @@
6660
6722
  </xsl:template>
6661
6723
 
6662
6724
  <xsl:template match="mn:identifier" mode="update_xml_step1"/>
6663
- <xsl:template match="mn:fmt-identifier" mode="update_xml_step1">
6725
+ <!-- <xsl:template match="mn:fmt-identifier" mode="update_xml_step1">
6664
6726
  <xsl:element name="identifier" namespace="{$namespace_full}">
6665
6727
  <xsl:copy-of select="@*"/>
6666
6728
  <xsl:apply-templates mode="update_xml_step1"/>
6667
6729
  </xsl:element>
6668
- </xsl:template>
6730
+ </xsl:template> -->
6669
6731
 
6670
6732
  <xsl:template match="mn:concept" mode="update_xml_step1"/>
6671
6733
 
@@ -6675,51 +6737,53 @@
6675
6737
 
6676
6738
  <xsl:template match="mn:eref" mode="update_xml_step1"/>
6677
6739
 
6678
- <xsl:template match="mn:fmt-eref" mode="update_xml_step1">
6740
+ <!-- <xsl:template match="mn:fmt-eref" mode="update_xml_step1">
6679
6741
  <xsl:element name="eref" namespace="{$namespace_full}">
6680
6742
  <xsl:copy-of select="@*"/>
6681
6743
  <xsl:apply-templates mode="update_xml_step1"/>
6682
6744
  </xsl:element>
6683
- </xsl:template>
6745
+ </xsl:template> -->
6684
6746
 
6685
6747
  <xsl:template match="mn:xref" mode="update_xml_step1"/>
6686
6748
 
6687
- <xsl:template match="mn:fmt-xref" mode="update_xml_step1">
6749
+ <!-- <xsl:template match="mn:fmt-xref" mode="update_xml_step1">
6688
6750
  <xsl:element name="xref" namespace="{$namespace_full}">
6689
6751
  <xsl:copy-of select="@*"/>
6690
6752
  <xsl:apply-templates mode="update_xml_step1"/>
6691
6753
  </xsl:element>
6692
- </xsl:template>
6754
+ </xsl:template> -->
6693
6755
 
6694
6756
  <xsl:template match="mn:link" mode="update_xml_step1"/>
6695
6757
 
6696
- <xsl:template match="mn:fmt-link" mode="update_xml_step1">
6758
+ <!-- <xsl:template match="mn:fmt-link" mode="update_xml_step1">
6697
6759
  <xsl:element name="link" namespace="{$namespace_full}">
6698
6760
  <xsl:copy-of select="@*"/>
6699
6761
  <xsl:apply-templates mode="update_xml_step1"/>
6700
6762
  </xsl:element>
6701
- </xsl:template>
6763
+ </xsl:template> -->
6702
6764
 
6703
6765
  <xsl:template match="mn:origin" mode="update_xml_step1"/>
6704
6766
 
6705
- <xsl:template match="mn:fmt-origin" mode="update_xml_step1">
6767
+ <!-- <xsl:template match="mn:fmt-origin" mode="update_xml_step1">
6706
6768
  <xsl:element name="origin" namespace="{$namespace_full}">
6707
6769
  <xsl:copy-of select="@*"/>
6708
6770
  <xsl:apply-templates mode="update_xml_step1"/>
6709
6771
  </xsl:element>
6710
- </xsl:template>
6772
+ </xsl:template> -->
6711
6773
 
6712
6774
  <xsl:template match="mn:erefstack" mode="update_xml_step1"/>
6713
6775
 
6714
6776
  <xsl:template match="mn:svgmap" mode="update_xml_step1"/>
6715
6777
 
6716
- <xsl:template match="mn:review-container" mode="update_xml_step1"/>
6778
+ <xsl:template match="mn:annotation-container" mode="update_xml_step1"/>
6717
6779
 
6718
- <xsl:template match="mn:fmt-identifier[not(ancestor::*[local-name() = 'bibdata'])]//text()" mode="update_xml_step1">
6719
- <xsl:element name="{$element_name_keep-together_within-line}" namespace="{$namespace_full}">
6720
- <xsl:value-of select="."/>
6721
- </xsl:element>
6722
- </xsl:template>
6780
+ <xsl:template match="mn:fmt-identifier[not(ancestor::*[local-name() = 'bibdata'])]//text()" mode="update_xml_step1">
6781
+ <xsl:element name="{$element_name_keep-together_within-line}" namespace="{$namespace_full}">
6782
+ <xsl:value-of select="."/>
6783
+ </xsl:element>
6784
+ </xsl:template>
6785
+
6786
+ <xsl:template match="@semx-id | @anchor" mode="update_xml_step1"/>
6723
6787
 
6724
6788
  <!-- END: update new Presentation XML -->
6725
6789
 
@@ -6912,7 +6976,7 @@
6912
6976
  </xsl:variable>
6913
6977
 
6914
6978
  <!-- add 'fn' after eref and origin, to reference bibitem with note = 'Withdrawn.' or 'Cancelled and replaced...' -->
6915
- <xsl:template match="mn:eref | mn:origin" mode="update_xml_step2">
6979
+ <xsl:template match="mn:fmt-eref | mn:fmt-origin" mode="update_xml_step2">
6916
6980
  <xsl:copy-of select="."/>
6917
6981
 
6918
6982
  <xsl:variable name="bibitemid" select="@bibitemid"/>
@@ -6981,7 +7045,7 @@
6981
7045
  </xsl:call-template>
6982
7046
  </xsl:template>
6983
7047
 
6984
- <xsl:template match="mn:stem | mn:image" mode="update_xml_step2">
7048
+ <xsl:template match="mn:fmt-stem | mn:image" mode="update_xml_step2">
6985
7049
  <xsl:copy-of select="."/>
6986
7050
  </xsl:template>
6987
7051
 
@@ -7018,7 +7082,7 @@
7018
7082
  <xsl:variable name="non_white_space">[^\s\u3000-\u9FFF]</xsl:variable>
7019
7083
  <xsl:variable name="regex_dots_units">((\b((<xsl:value-of select="$non_white_space"/>{1,3}\.<xsl:value-of select="$non_white_space"/>+)|(<xsl:value-of select="$non_white_space"/>+\.<xsl:value-of select="$non_white_space"/>{1,3}))\b)|(\.<xsl:value-of select="$non_white_space"/>{1,3})\b)</xsl:variable>
7020
7084
 
7021
- <xsl:template match="text()[not(ancestor::mn:bibdata or ancestor::mn:link[not(contains(.,' '))] or ancestor::mn:sourcecode or ancestor::*[local-name() = 'math'] or ancestor::*[local-name() = 'svg'] or ancestor::mn:name or starts-with(., 'http://') or starts-with(., 'https://') or starts-with(., 'www.') or normalize-space() = '' )]" name="keep_together_standard_number" mode="update_xml_enclose_keep-together_within-line">
7085
+ <xsl:template match="text()[not(ancestor::mn:bibdata or ancestor::mn:fmt-link[not(contains(normalize-space(),' '))] or ancestor::mn:sourcecode or ancestor::*[local-name() = 'math'] or ancestor::*[local-name() = 'svg'] or ancestor::mn:name or ancestor::mn:fmt-name or starts-with(., 'http://') or starts-with(., 'https://') or starts-with(., 'www.') or normalize-space() = '' )]" name="keep_together_standard_number" mode="update_xml_enclose_keep-together_within-line">
7022
7086
 
7023
7087
  <xsl:variable name="parent" select="local-name(..)"/>
7024
7088
 
@@ -7155,7 +7219,7 @@
7155
7219
  </xsl:if>
7156
7220
  </xsl:template>
7157
7221
 
7158
- <xsl:template match="mn:stem | mn:image" mode="update_xml_enclose_keep-together_within-line">
7222
+ <xsl:template match="mn:fmt-stem | mn:image" mode="update_xml_enclose_keep-together_within-line">
7159
7223
  <xsl:copy-of select="."/>
7160
7224
  </xsl:template>
7161
7225
 
@@ -7485,7 +7549,7 @@
7485
7549
  </fo:block>
7486
7550
  </xsl:template> <!-- copyright-statement -->
7487
7551
 
7488
- <xsl:template match="mn:copyright-statement//mn:title">
7552
+ <xsl:template match="mn:copyright-statement//mn:fmt-title">
7489
7553
  <!-- process in the template 'title' -->
7490
7554
  <xsl:call-template name="title"/>
7491
7555
  </xsl:template> <!-- copyright-statement//title -->
@@ -7501,7 +7565,7 @@
7501
7565
  </fo:block>
7502
7566
  </xsl:template> <!-- license-statement -->
7503
7567
 
7504
- <xsl:template match="mn:license-statement//mn:title">
7568
+ <xsl:template match="mn:license-statement//mn:fmt-title">
7505
7569
  <xsl:variable name="level">
7506
7570
  <xsl:call-template name="getLevel"/>
7507
7571
  </xsl:variable>
@@ -7530,7 +7594,7 @@
7530
7594
  </fo:block>
7531
7595
  </xsl:template> <!-- legal-statement -->
7532
7596
 
7533
- <xsl:template match="mn:legal-statement//mn:title">
7597
+ <xsl:template match="mn:legal-statement//mn:fmt-title">
7534
7598
  <!-- process in the template 'title' -->
7535
7599
  <xsl:call-template name="title"/>
7536
7600
 
@@ -7550,7 +7614,7 @@
7550
7614
  </fo:block>
7551
7615
  </xsl:template> <!-- feedback-statement -->
7552
7616
 
7553
- <xsl:template match="mn:feedback-statement//mn:title">
7617
+ <xsl:template match="mn:feedback-statement//mn:fmt-title">
7554
7618
  <!-- process in the template 'title' -->
7555
7619
  <xsl:call-template name="title"/>
7556
7620
  </xsl:template>
@@ -7573,13 +7637,13 @@
7573
7637
  </xsl:attribute-set>
7574
7638
 
7575
7639
  <xsl:template name="refine_link-style">
7576
- <xsl:if test="(ancestor::mn:copyright-statement and contains(@target, 'mailto:')) or ($layoutVersion = '2024' and ancestor::mn:termsource)">
7640
+ <xsl:if test="(ancestor::mn:copyright-statement and contains(@target, 'mailto:')) or ($layoutVersion = '2024' and ancestor::mn:fmt-termsource)">
7577
7641
  <xsl:attribute name="color">inherit</xsl:attribute>
7578
7642
  <xsl:attribute name="text-decoration">none</xsl:attribute>
7579
7643
  </xsl:if>
7580
7644
  </xsl:template> <!-- refine_link-style -->
7581
7645
 
7582
- <xsl:template match="mn:link" name="link">
7646
+ <xsl:template match="mn:fmt-link" name="link">
7583
7647
  <xsl:variable name="target_normalized" select="translate(@target, '\', '/')"/>
7584
7648
  <xsl:variable name="target_attachment_name" select="substring-after($target_normalized, '_attachments/')"/>
7585
7649
  <xsl:variable name="isLinkToEmbeddedFile" select="normalize-space(@attachment = 'true' and $pdfAttachmentsList//attachment[@filename = current()/@target])"/>
@@ -7799,7 +7863,7 @@
7799
7863
  <xsl:value-of select="."/>
7800
7864
  </xsl:attribute>
7801
7865
  </xsl:for-each>
7802
- <xsl:apply-templates select="node()[not(self::mn:name)]"/>
7866
+ <xsl:apply-templates select="node()[not(self::mn:fmt-name)]"/>
7803
7867
  </xsl:when>
7804
7868
 
7805
7869
  <xsl:otherwise>
@@ -7841,11 +7905,11 @@
7841
7905
  <xsl:attribute name="margin-bottom">0pt</xsl:attribute>
7842
7906
  </xsl:if>
7843
7907
 
7844
- <xsl:apply-templates select="node()[not(self::mn:name or self::mn:dl)]"/>
7908
+ <xsl:apply-templates select="node()[not(self::mn:fmt-name or self::mn:dl)]"/>
7845
7909
  </fo:block>
7846
7910
 
7847
7911
  <xsl:apply-templates select="mn:dl"/> <!-- Key table -->
7848
- <xsl:apply-templates select="mn:name"/> <!-- show sourcecode's name AFTER content -->
7912
+ <xsl:apply-templates select="mn:fmt-name"/> <!-- show sourcecode's name AFTER content -->
7849
7913
 
7850
7914
  </fo:block-container>
7851
7915
  </fo:block-container>
@@ -8146,7 +8210,7 @@
8146
8210
 
8147
8211
  <!-- end mode="syntax_highlight" -->
8148
8212
 
8149
- <xsl:template match="mn:sourcecode/mn:name">
8213
+ <xsl:template match="mn:sourcecode/mn:fmt-name">
8150
8214
  <xsl:if test="normalize-space() != ''">
8151
8215
  <fo:block xsl:use-attribute-sets="sourcecode-name-style">
8152
8216
  <xsl:apply-templates/>
@@ -8164,7 +8228,7 @@
8164
8228
  </xsl:choose>
8165
8229
  </xsl:template>
8166
8230
 
8167
- <xsl:template match="mn:annotation">
8231
+ <xsl:template match="mn:callout-annotation">
8168
8232
  <xsl:variable name="annotation-id" select="@id"/>
8169
8233
  <xsl:variable name="callout" select="//*[@target = $annotation-id]/text()"/>
8170
8234
  <fo:block id="{$annotation-id}" white-space="nowrap">
@@ -8176,7 +8240,7 @@
8176
8240
  </fo:block>
8177
8241
  </xsl:template>
8178
8242
 
8179
- <xsl:template match="mn:annotation/mn:p">
8243
+ <xsl:template match="mn:callout-annotation/mn:p">
8180
8244
  <xsl:param name="callout"/>
8181
8245
  <fo:inline id="{@id}">
8182
8246
  <xsl:call-template name="setNamedDestination"/>
@@ -8334,7 +8398,7 @@
8334
8398
  <xsl:when test="starts-with(., $ace_tag) or self::mn:change-open-tag or self::mn:change-close-tag"> <!-- examples: ace-tag_A1_start, ace-tag_A2_end, C1_start, AC_start, or
8335
8399
  <change-open-tag>A<sub>1</sub></change-open-tag>, <change-close-tag>A<sub>1</sub></change-close-tag> -->
8336
8400
  <xsl:choose>
8337
- <xsl:when test="$skip = 'true' and ((local-name(../..) = 'note' and not(preceding-sibling::node())) or (local-name(..) = 'title' and preceding-sibling::node()[1][self::mn:tab]) or local-name(..) = 'formattedref' and not(preceding-sibling::node())) and ../node()[last()][self::mn:add][starts-with(text(), $ace_tag)]"><!-- start tag displayed in template name="note" and title --></xsl:when>
8401
+ <xsl:when test="$skip = 'true' and ((local-name(../..) = 'note' and not(preceding-sibling::node())) or (parent::mn:fmt-title and preceding-sibling::node()[1][self::mn:tab]) or local-name(..) = 'formattedref' and not(preceding-sibling::node())) and ../node()[last()][self::mn:add][starts-with(text(), $ace_tag)]"><!-- start tag displayed in template name="note" and title --></xsl:when>
8338
8402
  <xsl:otherwise>
8339
8403
  <xsl:variable name="tag">
8340
8404
  <xsl:call-template name="insertTag">
@@ -8746,12 +8810,12 @@
8746
8810
  <xsl:template match="mn:permission">
8747
8811
  <xsl:call-template name="setNamedDestination"/>
8748
8812
  <fo:block id="{@id}" xsl:use-attribute-sets="permission-style">
8749
- <xsl:apply-templates select="mn:name"/>
8750
- <xsl:apply-templates select="node()[not(self::mn:name)]"/>
8813
+ <xsl:apply-templates select="mn:fmt-name"/>
8814
+ <xsl:apply-templates select="node()[not(self::mn:fmt-name)]"/>
8751
8815
  </fo:block>
8752
8816
  </xsl:template>
8753
8817
 
8754
- <xsl:template match="mn:permission/mn:name">
8818
+ <xsl:template match="mn:permission/mn:fmt-name">
8755
8819
  <xsl:if test="normalize-space() != ''">
8756
8820
  <fo:block xsl:use-attribute-sets="permission-name-style">
8757
8821
  <xsl:apply-templates/>
@@ -8773,15 +8837,15 @@
8773
8837
  <xsl:template match="mn:requirement">
8774
8838
  <xsl:call-template name="setNamedDestination"/>
8775
8839
  <fo:block id="{@id}" xsl:use-attribute-sets="requirement-style">
8776
- <xsl:apply-templates select="mn:name"/>
8840
+ <xsl:apply-templates select="mn:fmt-name"/>
8777
8841
  <xsl:apply-templates select="mn:label"/>
8778
8842
  <xsl:apply-templates select="@obligation"/>
8779
8843
  <xsl:apply-templates select="mn:subject"/>
8780
- <xsl:apply-templates select="node()[not(self::mn:name) and not(self::mn:label) and not(self::mn:subject)]"/>
8844
+ <xsl:apply-templates select="node()[not(self::mn:fmt-name) and not(self::mn:label) and not(self::mn:subject)]"/>
8781
8845
  </fo:block>
8782
8846
  </xsl:template>
8783
8847
 
8784
- <xsl:template match="mn:requirement/mn:name">
8848
+ <xsl:template match="mn:requirement/mn:fmt-name">
8785
8849
  <xsl:if test="normalize-space() != ''">
8786
8850
 
8787
8851
  <fo:block xsl:use-attribute-sets="requirement-name-style">
@@ -8818,12 +8882,12 @@
8818
8882
  <xsl:template match="mn:recommendation">
8819
8883
  <xsl:call-template name="setNamedDestination"/>
8820
8884
  <fo:block id="{@id}" xsl:use-attribute-sets="recommendation-style">
8821
- <xsl:apply-templates select="mn:name"/>
8822
- <xsl:apply-templates select="node()[not(self::mn:name)]"/>
8885
+ <xsl:apply-templates select="mn:fmt-name"/>
8886
+ <xsl:apply-templates select="node()[not(self::mn:fmt-name)]"/>
8823
8887
  </fo:block>
8824
8888
  </xsl:template>
8825
8889
 
8826
- <xsl:template match="mn:recommendation/mn:name">
8890
+ <xsl:template match="mn:recommendation/mn:fmt-name">
8827
8891
  <xsl:if test="normalize-space() != ''">
8828
8892
 
8829
8893
  <fo:block xsl:use-attribute-sets="recommendation-name-style">
@@ -9077,11 +9141,11 @@
9077
9141
  <xsl:if test="parent::mn:term and not(preceding-sibling::mn:term)">
9078
9142
  <xsl:attribute name="space-before">12pt</xsl:attribute>
9079
9143
  </xsl:if>
9080
- <xsl:apply-templates select="node()[not(self::mn:name)]"/>
9144
+ <xsl:apply-templates select="node()[not(self::mn:fmt-name)]"/>
9081
9145
  </fo:block>
9082
9146
  </xsl:template>
9083
9147
 
9084
- <xsl:template match="mn:term/mn:name">
9148
+ <xsl:template match="mn:term/mn:fmt-name">
9085
9149
  <xsl:if test="normalize-space() != ''">
9086
9150
  <!-- <xsl:variable name="level">
9087
9151
  <xsl:call-template name="getLevelTermName"/>
@@ -9100,7 +9164,7 @@
9100
9164
  <!-- origin -->
9101
9165
  <!-- modification -->
9102
9166
  <!-- ====== -->
9103
- <xsl:template match="mn:termsource" name="termsource">
9167
+ <xsl:template match="mn:fmt-termsource" name="termsource">
9104
9168
  <fo:block xsl:use-attribute-sets="termsource-style">
9105
9169
 
9106
9170
  <xsl:call-template name="refine_termsource-style"/>
@@ -9139,24 +9203,24 @@
9139
9203
  </fo:block>
9140
9204
  </xsl:template>
9141
9205
 
9142
- <xsl:template match="mn:termsource/text()[starts-with(., '[SOURCE: Adapted from: ') or starts-with(., '[SOURCE: Quoted from: ') or starts-with(., '[SOURCE: Modified from: ')]" priority="2">
9206
+ <xsl:template match="mn:fmt-termsource/text()[starts-with(., '[SOURCE: Adapted from: ') or starts-with(., '[SOURCE: Quoted from: ') or starts-with(., '[SOURCE: Modified from: ')]" priority="2">
9143
9207
  <xsl:text>[</xsl:text><xsl:value-of select="substring-after(., '[SOURCE: ')"/>
9144
9208
  </xsl:template>
9145
9209
 
9146
- <xsl:template match="mn:termsource/text()">
9210
+ <xsl:template match="mn:fmt-termsource/text()">
9147
9211
  <xsl:if test="normalize-space() != ''">
9148
9212
  <xsl:value-of select="."/>
9149
9213
  </xsl:if>
9150
9214
  </xsl:template>
9151
9215
 
9152
9216
  <!-- text SOURCE: -->
9153
- <xsl:template match="mn:termsource/mn:strong[1][following-sibling::*[1][self::mn:origin]]/text()">
9217
+ <xsl:template match="mn:fmt-termsource/mn:strong[1][following-sibling::*[1][self::mn:fmt-origin]]/text()">
9154
9218
  <fo:inline xsl:use-attribute-sets="termsource-text-style">
9155
9219
  <xsl:value-of select="."/>
9156
9220
  </fo:inline>
9157
9221
  </xsl:template>
9158
9222
 
9159
- <xsl:template match="mn:origin">
9223
+ <xsl:template match="mn:fmt-origin">
9160
9224
  <xsl:call-template name="insert_basic_link">
9161
9225
  <xsl:with-param name="element">
9162
9226
  <fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}">
@@ -9202,7 +9266,7 @@
9202
9266
  <!-- ====== -->
9203
9267
 
9204
9268
  <!-- Preferred, admitted, deprecated -->
9205
- <xsl:template match="mn:preferred">
9269
+ <xsl:template match="mn:fmt-preferred">
9206
9270
  <xsl:variable name="level">
9207
9271
  <xsl:call-template name="getLevel"/>
9208
9272
  </xsl:variable>
@@ -9213,15 +9277,15 @@
9213
9277
  </xsl:variable>
9214
9278
  <fo:block font-size="{normalize-space($font-size)}" role="H{$levelTerm}" xsl:use-attribute-sets="preferred-block-style">
9215
9279
 
9216
- <xsl:if test="parent::mn:term and not(preceding-sibling::mn:preferred)"> <!-- if first preffered in term, then display term's name -->
9280
+ <xsl:if test="parent::mn:term and not(preceding-sibling::mn:fmt-preferred)"> <!-- if first preffered in term, then display term's name -->
9217
9281
 
9218
9282
  <fo:block xsl:use-attribute-sets="term-name-style" role="SKIP">
9219
9283
 
9220
- <xsl:for-each select="ancestor::mn:term[1]/mn:name"><!-- change context -->
9284
+ <xsl:for-each select="ancestor::mn:term[1]/mn:fmt-name"><!-- change context -->
9221
9285
  <xsl:call-template name="setIDforNamedDestination"/>
9222
9286
  </xsl:for-each>
9223
9287
 
9224
- <xsl:apply-templates select="ancestor::mn:term[1]/mn:name"/>
9288
+ <xsl:apply-templates select="ancestor::mn:term[1]/mn:fmt-name"/>
9225
9289
  </fo:block>
9226
9290
  </xsl:if>
9227
9291
 
@@ -9245,13 +9309,13 @@
9245
9309
  <!-- https://github.com/metanorma/isodoc/issues/632#issuecomment-2567163931 -->
9246
9310
  <xsl:template match="mn:domain"/>
9247
9311
 
9248
- <xsl:template match="mn:admitted">
9312
+ <xsl:template match="mn:fmt-admitted">
9249
9313
  <fo:block xsl:use-attribute-sets="admitted-style">
9250
9314
  <xsl:apply-templates/>
9251
9315
  </fo:block>
9252
9316
  </xsl:template>
9253
9317
 
9254
- <xsl:template match="mn:deprecates">
9318
+ <xsl:template match="mn:fmt-deprecates">
9255
9319
  <fo:block xsl:use-attribute-sets="deprecates-style">
9256
9320
  <xsl:apply-templates/>
9257
9321
  </fo:block>
@@ -9265,7 +9329,7 @@
9265
9329
 
9266
9330
  <!-- regarding ISO 10241-1:2011, If there is more than one preferred term, each preferred term follows the previous one on a new line. -->
9267
9331
  <!-- in metanorma xml preferred terms delimited by semicolons -->
9268
- <xsl:template match="mn:preferred/text()[contains(., ';')] | mn:preferred/mn:strong/text()[contains(., ';')]">
9332
+ <xsl:template match="mn:fmt-preferred/text()[contains(., ';')] | mn:fmt-preferred/mn:strong/text()[contains(., ';')]">
9269
9333
  <xsl:value-of select="java:replaceAll(java:java.lang.String.new(.), ';', $linebreak)"/>
9270
9334
  </xsl:template>
9271
9335
  <!-- End Preferred, admitted, deprecated -->
@@ -9284,16 +9348,16 @@
9284
9348
  <!-- ========== -->
9285
9349
  <!-- definition -->
9286
9350
  <!-- ========== -->
9287
- <xsl:template match="mn:definition">
9351
+ <xsl:template match="mn:fmt-definition">
9288
9352
  <fo:block xsl:use-attribute-sets="definition-style" role="SKIP">
9289
9353
  <xsl:apply-templates/>
9290
9354
  </fo:block>
9291
9355
  </xsl:template>
9292
9356
 
9293
- <xsl:template match="mn:definition[preceding-sibling::mn:domain]">
9357
+ <xsl:template match="mn:fmt-definition[preceding-sibling::mn:domain]">
9294
9358
  <xsl:apply-templates/>
9295
9359
  </xsl:template>
9296
- <xsl:template match="mn:definition[preceding-sibling::mn:domain]/mn:p[1]">
9360
+ <xsl:template match="mn:fmt-definition[preceding-sibling::mn:domain]/mn:p[1]">
9297
9361
  <fo:inline> <xsl:apply-templates/></fo:inline>
9298
9362
  <fo:block/>
9299
9363
  </xsl:template>
@@ -9380,12 +9444,12 @@
9380
9444
  <xsl:call-template name="refine_termexample-style"/>
9381
9445
  <xsl:call-template name="setBlockSpanAll"/>
9382
9446
 
9383
- <xsl:apply-templates select="mn:name"/>
9384
- <xsl:apply-templates select="node()[not(self::mn:name)]"/>
9447
+ <xsl:apply-templates select="mn:fmt-name"/>
9448
+ <xsl:apply-templates select="node()[not(self::mn:fmt-name)]"/>
9385
9449
  </fo:block>
9386
9450
  </xsl:template>
9387
9451
 
9388
- <xsl:template match="mn:termexample/mn:name">
9452
+ <xsl:template match="mn:termexample/mn:fmt-name">
9389
9453
  <xsl:if test="normalize-space() != ''">
9390
9454
  <fo:inline xsl:use-attribute-sets="termexample-name-style">
9391
9455
  <xsl:call-template name="refine_termexample-name-style"/>
@@ -9436,7 +9500,7 @@
9436
9500
  <xsl:call-template name="refine_example-style"/>
9437
9501
 
9438
9502
  <xsl:variable name="fo_element">
9439
- <xsl:if test=".//mn:table or .//mn:dl or *[not(self::mn:name)][1][self::mn:sourcecode]">block</xsl:if>
9503
+ <xsl:if test=".//mn:table or .//mn:dl or *[not(self::mn:fmt-name)][1][self::mn:sourcecode]">block</xsl:if>
9440
9504
  <xsl:choose>
9441
9505
  <xsl:when test="$layoutVersion = '1951' and $revision_date_num &lt; 19610101">list</xsl:when>
9442
9506
  <xsl:otherwise>inline</xsl:otherwise>
@@ -9452,7 +9516,7 @@
9452
9516
 
9453
9517
  <!-- display name 'EXAMPLE' in a separate block -->
9454
9518
  <fo:block>
9455
- <xsl:apply-templates select="mn:name">
9519
+ <xsl:apply-templates select="mn:fmt-name">
9456
9520
  <xsl:with-param name="fo_element" select="$fo_element"/>
9457
9521
  </xsl:apply-templates>
9458
9522
  </fo:block>
@@ -9460,7 +9524,7 @@
9460
9524
  <fo:block-container xsl:use-attribute-sets="example-body-style" role="SKIP">
9461
9525
  <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
9462
9526
  <xsl:variable name="example_body">
9463
- <xsl:apply-templates select="node()[not(self::mn:name)]">
9527
+ <xsl:apply-templates select="node()[not(self::mn:fmt-name)]">
9464
9528
  <xsl:with-param name="fo_element" select="$fo_element"/>
9465
9529
  </xsl:apply-templates>
9466
9530
  </xsl:variable>
@@ -9487,14 +9551,14 @@
9487
9551
  <fo:list-item>
9488
9552
  <fo:list-item-label start-indent="{$indent}mm" end-indent="label-end()">
9489
9553
  <fo:block>
9490
- <xsl:apply-templates select="mn:name">
9554
+ <xsl:apply-templates select="mn:fmt-name">
9491
9555
  <xsl:with-param name="fo_element">block</xsl:with-param>
9492
9556
  </xsl:apply-templates>
9493
9557
  </fo:block>
9494
9558
  </fo:list-item-label>
9495
9559
  <fo:list-item-body start-indent="body-start()">
9496
9560
  <fo:block>
9497
- <xsl:apply-templates select="node()[not(self::mn:name)]">
9561
+ <xsl:apply-templates select="node()[not(self::mn:fmt-name)]">
9498
9562
  <xsl:with-param name="fo_element" select="$fo_element"/>
9499
9563
  </xsl:apply-templates>
9500
9564
  </fo:block>
@@ -9507,21 +9571,21 @@
9507
9571
 
9508
9572
  <!-- display 'EXAMPLE' and first element in the same line -->
9509
9573
  <fo:block>
9510
- <xsl:apply-templates select="mn:name">
9574
+ <xsl:apply-templates select="mn:fmt-name">
9511
9575
  <xsl:with-param name="fo_element" select="$fo_element"/>
9512
9576
  </xsl:apply-templates>
9513
9577
  <fo:inline>
9514
- <xsl:apply-templates select="*[not(self::mn:name)][1]">
9578
+ <xsl:apply-templates select="*[not(self::mn:fmt-name)][1]">
9515
9579
  <xsl:with-param name="fo_element" select="$fo_element"/>
9516
9580
  </xsl:apply-templates>
9517
9581
  </fo:inline>
9518
9582
  </fo:block>
9519
9583
 
9520
- <xsl:if test="*[not(self::mn:name)][position() &gt; 1]">
9584
+ <xsl:if test="*[not(self::mn:fmt-name)][position() &gt; 1]">
9521
9585
  <!-- display further elements in blocks -->
9522
9586
  <fo:block-container xsl:use-attribute-sets="example-body-style" role="SKIP">
9523
9587
  <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
9524
- <xsl:apply-templates select="*[not(self::mn:name)][position() &gt; 1]">
9588
+ <xsl:apply-templates select="*[not(self::mn:fmt-name)][position() &gt; 1]">
9525
9589
  <xsl:with-param name="fo_element" select="'block'"/>
9526
9590
  </xsl:apply-templates>
9527
9591
  </fo:block-container>
@@ -9535,7 +9599,7 @@
9535
9599
  </xsl:template>
9536
9600
 
9537
9601
  <!-- example/name -->
9538
- <xsl:template match="mn:example/mn:name">
9602
+ <xsl:template match="mn:example/mn:fmt-name">
9539
9603
  <xsl:param name="fo_element">block</xsl:param>
9540
9604
 
9541
9605
  <xsl:choose>
@@ -9560,7 +9624,7 @@
9560
9624
  </xsl:template>
9561
9625
 
9562
9626
  <!-- table/example/name, table/tfoot//example/name -->
9563
- <xsl:template match="mn:table/mn:example/mn:name | mn:table/mn:tfoot//mn:example/mn:name">
9627
+ <xsl:template match="mn:table/mn:example/mn:fmt-name | mn:table/mn:tfoot//mn:example/mn:fmt-name">
9564
9628
  <fo:inline xsl:use-attribute-sets="example-name-style">
9565
9629
  <xsl:apply-templates/>
9566
9630
  </fo:inline>
@@ -9634,7 +9698,7 @@
9634
9698
 
9635
9699
  <xsl:template name="refine_table-container-style">
9636
9700
  <xsl:param name="margin-side"/>
9637
- <xsl:if test="not(mn:name)">
9701
+ <xsl:if test="not(mn:fmt-name)">
9638
9702
  <xsl:attribute name="margin-top">12pt</xsl:attribute>
9639
9703
  </xsl:if>
9640
9704
  <xsl:if test="starts-with(@id, 'array_')">
@@ -9744,7 +9808,7 @@
9744
9808
  </xsl:attribute-set>
9745
9809
 
9746
9810
  <xsl:template name="refine_table-body-row-style">
9747
- <xsl:if test="position() = 1 and not(ancestor::mn:table/*[local-name() = 'thead']) and ancestor::mn:table/mn:name">
9811
+ <xsl:if test="position() = 1 and not(ancestor::mn:table/*[local-name() = 'thead']) and ancestor::mn:table/mn:fmt-name">
9748
9812
  <xsl:attribute name="border-top"><xsl:value-of select="$table-border"/></xsl:attribute>
9749
9813
  </xsl:if>
9750
9814
 
@@ -9940,7 +10004,7 @@
9940
10004
 
9941
10005
  <!-- Display table's name before table as standalone block -->
9942
10006
  <!-- $namespace = 'iso' or -->
9943
- <xsl:apply-templates select="mn:name"/> <!-- table's title rendered before table -->
10007
+ <xsl:apply-templates select="mn:fmt-name"/> <!-- table's title rendered before table -->
9944
10008
 
9945
10009
  <xsl:variable name="cols-count" select="count(xalan:nodeset($simple-table)/*/mn:tr[1]/mn:td)"/>
9946
10010
 
@@ -9981,7 +10045,7 @@
9981
10045
 
9982
10046
  <fo:block-container xsl:use-attribute-sets="table-container-style" role="SKIP">
9983
10047
 
9984
- <xsl:for-each select="mn:name">
10048
+ <xsl:for-each select="mn:fmt-name">
9985
10049
  <xsl:call-template name="setIDforNamedDestination"/>
9986
10050
  </xsl:for-each>
9987
10051
 
@@ -10011,6 +10075,10 @@
10011
10075
  <xsl:with-param name="margin-side" select="$margin-side"/>
10012
10076
  </xsl:call-template>
10013
10077
 
10078
+ <xsl:call-template name="setTableStyles">
10079
+ <xsl:with-param name="scope">table</xsl:with-param>
10080
+ </xsl:call-template>
10081
+
10014
10082
  </xsl:element>
10015
10083
  </xsl:variable>
10016
10084
 
@@ -10031,7 +10099,7 @@
10031
10099
  </xsl:attribute>
10032
10100
  </xsl:for-each>
10033
10101
 
10034
- <xsl:variable name="isNoteOrFnExist" select="./mn:note[not(@type = 'units')] or ./mn:example or .//mn:fn[local-name(..) != 'name'] or ./mn:source"/>
10102
+ <xsl:variable name="isNoteOrFnExist" select="./mn:note[not(@type = 'units')] or ./mn:example or .//mn:fn[not(parent::mn:fmt-name)] or ./mn:fmt-source"/>
10035
10103
  <xsl:if test="$isNoteOrFnExist = 'true'">
10036
10104
  <!-- <xsl:choose>
10037
10105
  <xsl:when test="$namespace = 'plateau'"></xsl:when>
@@ -10087,7 +10155,7 @@
10087
10155
  <xsl:apply-templates select="*[local-name()='thead']" mode="process_tbody"/>
10088
10156
  </xsl:when>
10089
10157
  <xsl:otherwise>
10090
- <xsl:apply-templates select="node()[not(self::mn:name) and not(self::mn:note) and not(self::mn:example) and not(self::mn:dl) and not(self::mn:source) and not(self::mn:p) and not(self::mn:thead) and not(self::mn:tfoot) and not(self::mn:fmt-footnote-container)]"/> <!-- process all table' elements, except name, header, footer, note, source and dl which render separaterely -->
10158
+ <xsl:apply-templates select="node()[not(self::mn:fmt-name) and not(self::mn:note) and not(self::mn:example) and not(self::mn:dl) and not(self::mn:fmt-source) and not(self::mn:p) and not(self::mn:thead) and not(self::mn:tfoot) and not(self::mn:fmt-footnote-container)]"/> <!-- process all table' elements, except name, header, footer, note, source and dl which render separaterely -->
10091
10159
  </xsl:otherwise>
10092
10160
  </xsl:choose>
10093
10161
 
@@ -10195,7 +10263,7 @@
10195
10263
  </xsl:template>
10196
10264
 
10197
10265
  <!-- table/name-->
10198
- <xsl:template match="*[local-name()='table']/mn:name">
10266
+ <xsl:template match="*[local-name()='table']/mn:fmt-name">
10199
10267
  <xsl:param name="continued"/>
10200
10268
  <xsl:param name="cols-count"/>
10201
10269
  <xsl:if test="normalize-space() != ''">
@@ -10269,7 +10337,7 @@
10269
10337
  </xsl:template>
10270
10338
 
10271
10339
  <!-- SOURCE: ... -->
10272
- <xsl:template match="*[local-name()='table']/mn:source" priority="2">
10340
+ <xsl:template match="*[local-name()='table']/mn:fmt-source" priority="2">
10273
10341
  <xsl:call-template name="termsource"/>
10274
10342
  </xsl:template>
10275
10343
 
@@ -10434,11 +10502,11 @@
10434
10502
  <xsl:value-of select="translate(., $zero_width_space, ' ')"/><xsl:text> </xsl:text>
10435
10503
  </xsl:template>
10436
10504
 
10437
- <xsl:template match="mn:termsource" mode="td_text">
10438
- <xsl:value-of select="*[local-name()='origin']/@citeas"/>
10505
+ <xsl:template match="mn:fmt-termsource" mode="td_text">
10506
+ <xsl:value-of select="mn:fmt-origin/@citeas"/>
10439
10507
  </xsl:template>
10440
10508
 
10441
- <xsl:template match="mn:link" mode="td_text">
10509
+ <xsl:template match="mn:fmt-link" mode="td_text">
10442
10510
  <xsl:value-of select="@target"/>
10443
10511
  </xsl:template>
10444
10512
 
@@ -10643,12 +10711,12 @@
10643
10711
 
10644
10712
  <xsl:call-template name="refine_table-header-title-style"/>
10645
10713
 
10646
- <xsl:apply-templates select="ancestor::mn:table/mn:name">
10714
+ <xsl:apply-templates select="ancestor::mn:table/mn:fmt-name">
10647
10715
  <xsl:with-param name="continued">true</xsl:with-param>
10648
10716
  <xsl:with-param name="cols-count" select="$cols-count"/>
10649
10717
  </xsl:apply-templates>
10650
10718
 
10651
- <xsl:if test="not(ancestor::mn:table/mn:name)"> <!-- to prevent empty fo:table-cell in case of missing table's name -->
10719
+ <xsl:if test="not(ancestor::mn:table/mn:fmt-name)"> <!-- to prevent empty fo:table-cell in case of missing table's name -->
10652
10720
  <fo:block role="SKIP"/>
10653
10721
  </xsl:if>
10654
10722
  <xsl:for-each select="ancestor::*[local-name()='table'][1]">
@@ -10691,7 +10759,7 @@
10691
10759
  <xsl:param name="colwidths"/>
10692
10760
  <xsl:param name="colgroup"/>
10693
10761
 
10694
- <xsl:variable name="isNoteOrFnExist" select="../mn:note[not(@type = 'units')] or ../mn:example or ../mn:dl or ..//mn:fn[local-name(..) != 'name'] or ../mn:source or ../mn:p"/>
10762
+ <xsl:variable name="isNoteOrFnExist" select="../mn:note[not(@type = 'units')] or ../mn:example or ../mn:dl or ..//mn:fn[not(parent::mn:fmt-name)] or ../mn:fmt-source or ../mn:p"/>
10695
10763
 
10696
10764
  <xsl:variable name="isNoteOrFnExistShowAfterTable">
10697
10765
  </xsl:variable>
@@ -10732,6 +10800,12 @@
10732
10800
  </xsl:choose>
10733
10801
  </xsl:for-each>
10734
10802
 
10803
+ <xsl:for-each select="ancestor::mn:table[1]">
10804
+ <xsl:call-template name="setTableStyles">
10805
+ <xsl:with-param name="scope">table</xsl:with-param>
10806
+ </xsl:call-template>
10807
+ </xsl:for-each>
10808
+
10735
10809
  <xsl:choose>
10736
10810
  <xsl:when test="xalan:nodeset($colgroup)//mn:col">
10737
10811
  <xsl:for-each select="xalan:nodeset($colgroup)//mn:col">
@@ -10748,10 +10822,22 @@
10748
10822
 
10749
10823
  <fo:table-body role="SKIP">
10750
10824
  <fo:table-row role="SKIP">
10825
+ <xsl:for-each select="ancestor::mn:table[1]">
10826
+ <xsl:call-template name="setTableStyles">
10827
+ <xsl:with-param name="scope">ancestor_table</xsl:with-param>
10828
+ </xsl:call-template>
10829
+ </xsl:for-each>
10830
+
10751
10831
  <fo:table-cell xsl:use-attribute-sets="table-footer-cell-style" number-columns-spanned="{$cols-count}" role="SKIP">
10752
10832
 
10753
10833
  <xsl:call-template name="refine_table-footer-cell-style"/>
10754
10834
 
10835
+ <xsl:for-each select="ancestor::mn:table[1]">
10836
+ <xsl:call-template name="setTableStyles">
10837
+ <xsl:with-param name="scope">ancestor_table_borders_only</xsl:with-param>
10838
+ </xsl:call-template>
10839
+ </xsl:for-each>
10840
+
10755
10841
  <xsl:call-template name="setBordersTableArray"/>
10756
10842
 
10757
10843
  <!-- fn will be processed inside 'note' processing -->
@@ -10759,7 +10845,7 @@
10759
10845
  <xsl:apply-templates select="../mn:dl"/>
10760
10846
  <xsl:apply-templates select="../mn:note[not(@type = 'units')]"/>
10761
10847
  <xsl:apply-templates select="../mn:example"/>
10762
- <xsl:apply-templates select="../mn:source"/>
10848
+ <xsl:apply-templates select="../mn:fmt-source"/>
10763
10849
 
10764
10850
  <xsl:variable name="isDisplayRowSeparator">
10765
10851
  </xsl:variable>
@@ -10809,7 +10895,7 @@
10809
10895
  </xsl:choose>
10810
10896
  </xsl:variable>
10811
10897
  <!-- if there isn't 'thead' and there is a table's title -->
10812
- <xsl:if test="not(ancestor::mn:table/mn:thead) and ancestor::mn:table/mn:name">
10898
+ <xsl:if test="not(ancestor::mn:table/mn:thead) and ancestor::mn:table/mn:fmt-name">
10813
10899
  <fo:table-header>
10814
10900
  <xsl:call-template name="table-header-title">
10815
10901
  <xsl:with-param name="cols-count" select="$cols-count"/>
@@ -10836,7 +10922,7 @@
10836
10922
  <xsl:variable name="title_continued"><xsl:value-of select="$title_continued_in_parenthesis"/>
10837
10923
  </xsl:variable>
10838
10924
 
10839
- <xsl:variable name="title_start" select="ancestor::mn:table[1]/mn:name/node()[1][self::text()]"/>
10925
+ <xsl:variable name="title_start" select="ancestor::mn:table[1]/mn:fmt-name/node()[1][self::text()]"/>
10840
10926
  <xsl:variable name="table_number" select="substring-before($title_start, '—')"/>
10841
10927
 
10842
10928
  <fo:table-row height="0" keep-with-next.within-page="always" role="SKIP">
@@ -10986,7 +11072,12 @@
10986
11072
 
10987
11073
  <xsl:template name="setTableRowAttributes">
10988
11074
 
10989
- <xsl:call-template name="setColors"/>
11075
+ <xsl:for-each select="ancestor::mn:table[1]">
11076
+ <xsl:call-template name="setTableStyles">
11077
+ <xsl:with-param name="scope">ancestor_table</xsl:with-param>
11078
+ </xsl:call-template>
11079
+ </xsl:for-each>
11080
+ <xsl:call-template name="setTableStyles"/>
10990
11081
 
10991
11082
  </xsl:template> <!-- setTableRowAttributes -->
10992
11083
  <!-- ===================== -->
@@ -11039,7 +11130,13 @@
11039
11130
  </xsl:attribute>
11040
11131
  </xsl:if>
11041
11132
  <xsl:call-template name="display-align"/>
11042
- <xsl:call-template name="setColors"/>
11133
+
11134
+ <xsl:for-each select="ancestor::mn:table[1]">
11135
+ <xsl:call-template name="setTableStyles">
11136
+ <xsl:with-param name="scope">ancestor_table_borders_only</xsl:with-param>
11137
+ </xsl:call-template>
11138
+ </xsl:for-each>
11139
+ <xsl:call-template name="setTableStyles"/>
11043
11140
  </xsl:template>
11044
11141
 
11045
11142
  <xsl:template name="display-align">
@@ -11055,7 +11152,8 @@
11055
11152
  </xsl:if>
11056
11153
  </xsl:template>
11057
11154
 
11058
- <xsl:template name="setColors">
11155
+ <xsl:template name="setTableStyles">
11156
+ <xsl:param name="scope">cell</xsl:param>
11059
11157
  <xsl:variable name="styles__">
11060
11158
  <xsl:call-template name="split">
11061
11159
  <xsl:with-param name="pText" select="concat(@style,';')"/>
@@ -11067,16 +11165,22 @@
11067
11165
  <xsl:for-each select="xalan:nodeset($styles__)/mnx:item">
11068
11166
  <xsl:variable name="key" select="normalize-space(substring-before(., ':'))"/>
11069
11167
  <xsl:variable name="value" select="normalize-space(substring-after(translate(.,$quot,''), ':'))"/>
11070
- <xsl:if test="$key = 'color' or $key = 'background-color' or $key = 'border' or $key = 'border-top' or $key = 'border-right' or $key = 'border-left' or $key = 'border-bottom' or $key = 'border-style' or $key = 'border-width' or $key = 'border-color' or $key = 'border-top-style' or $key = 'border-top-width' or $key = 'border-top-color' or $key = 'border-right-style' or $key = 'border-right-width' or $key = 'border-right-color' or $key = 'border-left-style' or $key = 'border-left-width' or $key = 'border-left-color' or $key = 'border-bottom-style' or $key = 'border-bottom-width' or $key = 'border-bottom-color'">
11168
+ <xsl:if test="($key = 'color' and ($scope = 'cell' or $scope = 'table')) or ($key = 'background-color' and ($scope = 'cell' or $scope = 'ancestor_table')) or $key = 'border' or $key = 'border-top' or $key = 'border-right' or $key = 'border-left' or $key = 'border-bottom' or $key = 'border-style' or $key = 'border-width' or $key = 'border-color' or $key = 'border-top-style' or $key = 'border-top-width' or $key = 'border-top-color' or $key = 'border-right-style' or $key = 'border-right-width' or $key = 'border-right-color' or $key = 'border-left-style' or $key = 'border-left-width' or $key = 'border-left-color' or $key = 'border-bottom-style' or $key = 'border-bottom-width' or $key = 'border-bottom-color'">
11071
11169
  <style name="{$key}"><xsl:value-of select="java:replaceAll(java:java.lang.String.new($value), 'currentColor', 'inherit')"/></style>
11072
11170
  </xsl:if>
11171
+ <xsl:if test="$key = 'border' and ($scope = 'table' or $scope = 'ancestor_table' or $scope = 'ancestor_table_borders_only')">
11172
+ <style name="{$key}-top"><xsl:value-of select="$value"/></style>
11173
+ <style name="{$key}-right"><xsl:value-of select="$value"/></style>
11174
+ <style name="{$key}-left"><xsl:value-of select="$value"/></style>
11175
+ <style name="{$key}-bottom"><xsl:value-of select="$value"/></style>
11176
+ </xsl:if>
11073
11177
  </xsl:for-each>
11074
11178
  </xsl:variable>
11075
11179
  <xsl:variable name="styles" select="xalan:nodeset($styles_)"/>
11076
11180
  <xsl:for-each select="$styles/style">
11077
11181
  <xsl:attribute name="{@name}"><xsl:value-of select="."/></xsl:attribute>
11078
11182
  </xsl:for-each>
11079
- </xsl:template> <!-- setColors -->
11183
+ </xsl:template> <!-- setTableStyles -->
11080
11184
 
11081
11185
  <!-- cell in table body, footer -->
11082
11186
  <xsl:template match="*[local-name()='td']" name="td">
@@ -11140,11 +11244,11 @@
11140
11244
 
11141
11245
  <xsl:call-template name="refine_table-note-name-style"/>
11142
11246
 
11143
- <xsl:apply-templates select="mn:name"/>
11247
+ <xsl:apply-templates select="mn:fmt-name"/>
11144
11248
 
11145
11249
  </fo:inline>
11146
11250
 
11147
- <xsl:apply-templates select="node()[not(self::mn:name)]"/>
11251
+ <xsl:apply-templates select="node()[not(self::mn:fmt-name)]"/>
11148
11252
  </fo:block>
11149
11253
  </xsl:template> <!-- table/note -->
11150
11254
 
@@ -11283,7 +11387,7 @@
11283
11387
 
11284
11388
  <!-- footnotes for table's name rendering -->
11285
11389
  <xsl:template name="table_name_fn_display">
11286
- <xsl:for-each select="mn:name//mn:fn">
11390
+ <xsl:for-each select="mn:fmt-name//mn:fn">
11287
11391
  <xsl:variable name="reference" select="@reference"/>
11288
11392
  <fo:block id="{@reference}_{ancestor::*[@id][1]/@id}"><xsl:value-of select="@reference"/></fo:block>
11289
11393
  <fo:block margin-bottom="12pt">
@@ -11940,7 +12044,7 @@
11940
12044
  </xsl:if> -->
11941
12045
 
11942
12046
  <xsl:variable name="words">
11943
- <xsl:for-each select=".//*[local-name() = 'image' or local-name() = 'stem']">
12047
+ <xsl:for-each select=".//*[local-name() = 'image' or local-name() = 'fmt-stem']">
11944
12048
  <word>
11945
12049
  <xsl:copy-of select="."/>
11946
12050
  </word>
@@ -11999,7 +12103,7 @@
11999
12103
  </xsl:copy>
12000
12104
  </xsl:template>
12001
12105
 
12002
- <xsl:template match="*[local-name() = 'stem' or local-name() = 'image']" mode="td_text_with_formatting"/>
12106
+ <xsl:template match="*[local-name() = 'fmt-stem' or local-name() = 'image']" mode="td_text_with_formatting"/>
12003
12107
 
12004
12108
  <xsl:template match="*[local-name() = 'keep-together_within-line']/text()" mode="td_text_with_formatting">
12005
12109
  <xsl:variable name="formatting_tags">
@@ -12034,7 +12138,7 @@
12034
12138
  </xsl:call-template>
12035
12139
  </xsl:template>
12036
12140
 
12037
- <xsl:template match="mn:link[normalize-space() = '']" mode="td_text_with_formatting">
12141
+ <xsl:template match="mn:fmt-link[normalize-space() = '']" mode="td_text_with_formatting">
12038
12142
  <xsl:variable name="link">
12039
12143
  <link_updated>
12040
12144
  <xsl:variable name="target_text">
@@ -12254,7 +12358,7 @@
12254
12358
 
12255
12359
  <xsl:call-template name="refine_multicomponent_block_style"/>
12256
12360
 
12257
- <xsl:apply-templates select="mn:name">
12361
+ <xsl:apply-templates select="mn:fmt-name">
12258
12362
  <xsl:with-param name="process">true</xsl:with-param>
12259
12363
  </xsl:apply-templates>
12260
12364
 
@@ -12445,7 +12549,7 @@
12445
12549
  </xsl:template> <!-- refine_multicomponent_block_style -->
12446
12550
 
12447
12551
  <!-- dl/name -->
12448
- <xsl:template match="mn:dl/mn:name">
12552
+ <xsl:template match="mn:dl/mn:fmt-name">
12449
12553
  <xsl:param name="process">false</xsl:param>
12450
12554
  <xsl:if test="$process = 'true'">
12451
12555
  <fo:block xsl:use-attribute-sets="dl-name-style">
@@ -12863,12 +12967,12 @@
12863
12967
  <xsl:template match="mn:appendix">
12864
12968
  <xsl:call-template name="setNamedDestination"/>
12865
12969
  <fo:block id="{@id}" xsl:use-attribute-sets="appendix-style">
12866
- <xsl:apply-templates select="mn:title"/>
12970
+ <xsl:apply-templates select="mn:fmt-title"/>
12867
12971
  </fo:block>
12868
- <xsl:apply-templates select="node()[not(local-name()='title')]"/>
12972
+ <xsl:apply-templates select="node()[not(self::mn:fmt-title)]"/>
12869
12973
  </xsl:template>
12870
12974
 
12871
- <xsl:template match="mn:appendix/mn:title" priority="2">
12975
+ <xsl:template match="mn:appendix/mn:fmt-title" priority="2">
12872
12976
  <xsl:variable name="level">
12873
12977
  <xsl:call-template name="getLevel"/>
12874
12978
  </xsl:variable>
@@ -12881,9 +12985,9 @@
12881
12985
  <xsl:template match="mn:appendix//mn:example" priority="2">
12882
12986
  <xsl:call-template name="setNamedDestination"/>
12883
12987
  <fo:block id="{@id}" xsl:use-attribute-sets="appendix-example-style">
12884
- <xsl:apply-templates select="mn:name"/>
12988
+ <xsl:apply-templates select="mn:fmt-name"/>
12885
12989
  </fo:block>
12886
- <xsl:apply-templates select="node()[not(local-name()='name')]"/>
12990
+ <xsl:apply-templates select="node()[not(self::mn:fmt-name)]"/>
12887
12991
  </xsl:template>
12888
12992
 
12889
12993
  <xsl:attribute-set name="xref-style">
@@ -12891,7 +12995,7 @@
12891
12995
  <xsl:attribute name="text-decoration">underline</xsl:attribute>
12892
12996
  </xsl:attribute-set>
12893
12997
 
12894
- <xsl:template match="mn:xref">
12998
+ <xsl:template match="mn:fmt-xref">
12895
12999
  <xsl:call-template name="insert_basic_link">
12896
13000
  <xsl:with-param name="element">
12897
13001
  <xsl:variable name="alt_text">
@@ -12911,7 +13015,7 @@
12911
13015
  </xsl:template> <!-- xref -->
12912
13016
 
12913
13017
  <!-- command between two xref points to non-standard bibitem -->
12914
- <xsl:template match="text()[. = ','][preceding-sibling::node()[1][self::mn:sup][mn:xref[@type = 'footnote']] and following-sibling::node()[1][self::mn:sup][mn:xref[@type = 'footnote']]]">
13018
+ <xsl:template match="text()[. = ','][preceding-sibling::node()[1][self::mn:sup][mn:fmt-xref[@type = 'footnote']] and following-sibling::node()[1][self::mn:sup][mn:fmt-xref[@type = 'footnote']]]">
12915
13019
  <fo:inline baseline-shift="20%" font-size="80%"><xsl:value-of select="."/></fo:inline>
12916
13020
 
12917
13021
  </xsl:template>
@@ -12944,7 +13048,7 @@
12944
13048
  <!-- ====== -->
12945
13049
  <!-- eref -->
12946
13050
  <!-- ====== -->
12947
- <xsl:template match="mn:eref" name="eref">
13051
+ <xsl:template match="mn:fmt-eref" name="eref">
12948
13052
  <xsl:variable name="current_bibitemid" select="@bibitemid"/>
12949
13053
  <!-- <xsl:variable name="external-destination" select="normalize-space(key('bibitems', $current_bibitemid)/mn:uri[@type = 'citation'])"/> -->
12950
13054
  <xsl:variable name="external-destination" select="normalize-space($bibitems/mn:bibitem[@id = $current_bibitemid]/mn:uri[@type = 'citation'])"/>
@@ -13051,7 +13155,7 @@
13051
13155
  </xsl:attribute-set>
13052
13156
 
13053
13157
  <xsl:template name="refine_note-name-style">
13054
- <xsl:variable name="note_name" select="mn:name"/>
13158
+ <xsl:variable name="note_name" select="mn:fmt-name"/>
13055
13159
  <xsl:if test="$layoutVersion = '1951'">
13056
13160
  <xsl:if test="$revision_date_num"> <!-- &lt; 19610101 -->
13057
13161
  <xsl:attribute name="padding-right">0mm</xsl:attribute>
@@ -13130,28 +13234,28 @@
13130
13234
 
13131
13235
  <fo:inline xsl:use-attribute-sets="note-name-style" role="SKIP">
13132
13236
 
13133
- <xsl:apply-templates select="mn:name/mn:tab" mode="tab"/>
13237
+ <xsl:apply-templates select="mn:fmt-name/mn:tab" mode="tab"/>
13134
13238
 
13135
13239
  <xsl:call-template name="refine_note-name-style"/>
13136
13240
 
13137
13241
  <!-- if 'p' contains all text in 'add' first and last elements in first p are 'add' -->
13138
13242
  <!-- <xsl:if test="*[not(local-name()='name')][1][node()[normalize-space() != ''][1][local-name() = 'add'] and node()[normalize-space() != ''][last()][local-name() = 'add']]"> -->
13139
- <xsl:if test="*[not(local-name()='name')][1][count(node()[normalize-space() != '']) = 1 and mn:add]">
13243
+ <xsl:if test="*[not(self::mn:fmt-name)][1][count(node()[normalize-space() != '']) = 1 and mn:add]">
13140
13244
  <xsl:call-template name="append_add-style"/>
13141
13245
  </xsl:if>
13142
13246
 
13143
13247
  <!-- if note contains only one element and first and last childs are `add` ace-tag, then move start ace-tag before NOTE's name-->
13144
- <xsl:if test="count(*[not(self::mn:name)]) = 1 and *[not(self::mn:name)]/node()[last()][self::mn:add][starts-with(text(), $ace_tag)]">
13145
- <xsl:apply-templates select="*[not(self::mn:name)]/node()[1][self::mn:add][starts-with(text(), $ace_tag)]">
13248
+ <xsl:if test="count(*[not(self::mn:fmt-name)]) = 1 and *[not(self::mn:fmt-name)]/node()[last()][self::mn:add][starts-with(text(), $ace_tag)]">
13249
+ <xsl:apply-templates select="*[not(self::mn:fmt-name)]/node()[1][self::mn:add][starts-with(text(), $ace_tag)]">
13146
13250
  <xsl:with-param name="skip">false</xsl:with-param>
13147
13251
  </xsl:apply-templates>
13148
13252
  </xsl:if>
13149
13253
 
13150
- <xsl:apply-templates select="mn:name"/>
13254
+ <xsl:apply-templates select="mn:fmt-name"/>
13151
13255
 
13152
13256
  </fo:inline>
13153
13257
 
13154
- <xsl:apply-templates select="node()[not(self::mn:name)]"/>
13258
+ <xsl:apply-templates select="node()[not(self::mn:fmt-name)]"/>
13155
13259
  </fo:block>
13156
13260
  </fo:block-container>
13157
13261
  </fo:block-container>
@@ -13212,19 +13316,19 @@
13212
13316
 
13213
13317
  <!-- if 'p' contains all text in 'add' first and last elements in first p are 'add' -->
13214
13318
  <!-- <xsl:if test="*[not(local-name()='name')][1][node()[normalize-space() != ''][1][local-name() = 'add'] and node()[normalize-space() != ''][last()][local-name() = 'add']]"> -->
13215
- <xsl:if test="*[not(local-name()='name')][1][count(node()[normalize-space() != '']) = 1 and mn:add]">
13319
+ <xsl:if test="*[not(self::mn:fmt-name)][1][count(node()[normalize-space() != '']) = 1 and mn:add]">
13216
13320
  <xsl:call-template name="append_add-style"/>
13217
13321
  </xsl:if>
13218
13322
 
13219
- <xsl:apply-templates select="mn:name"/>
13323
+ <xsl:apply-templates select="mn:fmt-name"/>
13220
13324
 
13221
13325
  </fo:inline>
13222
13326
 
13223
- <xsl:apply-templates select="node()[not(self::mn:name)]"/>
13327
+ <xsl:apply-templates select="node()[not(self::mn:fmt-name)]"/>
13224
13328
  </fo:block>
13225
13329
  </xsl:template>
13226
13330
 
13227
- <xsl:template match="mn:note/mn:name">
13331
+ <xsl:template match="mn:note/mn:fmt-name">
13228
13332
  <xsl:param name="sfx"/>
13229
13333
  <xsl:variable name="suffix">
13230
13334
  <xsl:choose>
@@ -13254,7 +13358,7 @@
13254
13358
  </xsl:if>
13255
13359
  </xsl:template>
13256
13360
 
13257
- <xsl:template match="mn:termnote/mn:name">
13361
+ <xsl:template match="mn:termnote/mn:fmt-name">
13258
13362
  <xsl:param name="sfx"/>
13259
13363
  <xsl:variable name="suffix">
13260
13364
  <xsl:choose>
@@ -13339,15 +13443,15 @@
13339
13443
 
13340
13444
  <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
13341
13445
  <fo:block role="BlockQuote">
13342
- <xsl:apply-templates select="./node()[not(self::mn:author) and not(self::mn:source) and not(self::mn:attribution)]"/> <!-- process all nested nodes, except author and source -->
13446
+ <xsl:apply-templates select="./node()[not(self::mn:author) and not(self::mn:fmt-source) and not(self::mn:attribution)]"/> <!-- process all nested nodes, except author and source -->
13343
13447
  </fo:block>
13344
13448
  </fo:block-container>
13345
13449
  </fo:block-container>
13346
- <xsl:if test="mn:author or mn:source or mn:attribution">
13450
+ <xsl:if test="mn:author or mn:fmt-source or mn:attribution">
13347
13451
  <fo:block xsl:use-attribute-sets="quote-source-style">
13348
13452
  <!-- — ISO, ISO 7301:2011, Clause 1 -->
13349
13453
  <xsl:apply-templates select="mn:author"/>
13350
- <xsl:apply-templates select="mn:source"/>
13454
+ <xsl:apply-templates select="mn:fmt-source"/>
13351
13455
  <!-- added for https://github.com/metanorma/isodoc/issues/607 -->
13352
13456
  <xsl:apply-templates select="mn:attribution/mn:p/node()"/>
13353
13457
  </fo:block>
@@ -13357,17 +13461,32 @@
13357
13461
  </fo:block-container>
13358
13462
  </xsl:template>
13359
13463
 
13360
- <xsl:template match="mn:source">
13464
+ <xsl:template match="mn:fmt-source">
13361
13465
  <xsl:if test="../mn:author">
13362
13466
  <xsl:text>, </xsl:text>
13363
13467
  </xsl:if>
13364
- <xsl:call-template name="insert_basic_link">
13365
- <xsl:with-param name="element">
13366
- <fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}">
13367
- <xsl:apply-templates/>
13368
- </fo:basic-link>
13369
- </xsl:with-param>
13370
- </xsl:call-template>
13468
+ <xsl:choose>
13469
+ <xsl:when test="not(parent::quote)">
13470
+ <fo:block>
13471
+ <xsl:call-template name="insert_basic_link">
13472
+ <xsl:with-param name="element">
13473
+ <fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}">
13474
+ <xsl:apply-templates/>
13475
+ </fo:basic-link>
13476
+ </xsl:with-param>
13477
+ </xsl:call-template>
13478
+ </fo:block>
13479
+ </xsl:when>
13480
+ <xsl:otherwise>
13481
+ <xsl:call-template name="insert_basic_link">
13482
+ <xsl:with-param name="element">
13483
+ <fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}">
13484
+ <xsl:apply-templates/>
13485
+ </fo:basic-link>
13486
+ </xsl:with-param>
13487
+ </xsl:call-template>
13488
+ </xsl:otherwise>
13489
+ </xsl:choose>
13371
13490
  </xsl:template>
13372
13491
 
13373
13492
  <xsl:template match="mn:author">
@@ -13453,7 +13572,7 @@
13453
13572
  <ancestor><xsl:copy-of select="ancestor::mn:figure[.//mn:name[.//mn:fn]]"/></ancestor> -->
13454
13573
  <xsl:choose>
13455
13574
  <!-- skip figure/name/fn -->
13456
- <xsl:when test="ancestor::mn:figure[.//mn:name[.//mn:fn[@target = $curr_id]]]"><!-- skip --></xsl:when>
13575
+ <xsl:when test="ancestor::mn:figure[.//mn:fmt-name[.//mn:fn[@target = $curr_id]]]"><!-- skip --></xsl:when>
13457
13576
  <xsl:otherwise>
13458
13577
  <xsl:element name="figure" namespace="{$namespace_full}">
13459
13578
  <xsl:element name="fmt-footnote-container" namespace="{$namespace_full}">
@@ -13651,17 +13770,17 @@
13651
13770
 
13652
13771
  <fo:block xsl:use-attribute-sets="figure-style" role="SKIP">
13653
13772
 
13654
- <xsl:for-each select="mn:name"> <!-- set context -->
13773
+ <xsl:for-each select="mn:fmt-name"> <!-- set context -->
13655
13774
  <xsl:call-template name="setIDforNamedDestination"/>
13656
13775
  </xsl:for-each>
13657
13776
 
13658
- <xsl:apply-templates select="node()[not(self::mn:name) and not(self::mn:note and @type = 'units')]"/>
13777
+ <xsl:apply-templates select="node()[not(self::mn:fmt-name) and not(self::mn:note and @type = 'units')]"/>
13659
13778
  </fo:block>
13660
13779
 
13661
13780
  <xsl:if test="normalize-space($show_figure_key_in_block_container) = 'true'">
13662
13781
  <xsl:call-template name="showFigureKey"/>
13663
13782
  </xsl:if>
13664
- <xsl:apply-templates select="mn:name"/> <!-- show figure's name AFTER image -->
13783
+ <xsl:apply-templates select="mn:fmt-name"/> <!-- show figure's name AFTER image -->
13665
13784
 
13666
13785
  </fo:block-container>
13667
13786
  </xsl:template>
@@ -13687,9 +13806,9 @@
13687
13806
  <xsl:template match="mn:figure[@class = 'pseudocode']">
13688
13807
  <xsl:call-template name="setNamedDestination"/>
13689
13808
  <fo:block id="{@id}">
13690
- <xsl:apply-templates select="node()[not(self::mn:name)]"/>
13809
+ <xsl:apply-templates select="node()[not(self::mn:fmt-name)]"/>
13691
13810
  </fo:block>
13692
- <xsl:apply-templates select="mn:name"/>
13811
+ <xsl:apply-templates select="mn:fmt-name"/>
13693
13812
  </xsl:template>
13694
13813
 
13695
13814
  <xsl:template match="mn:figure[@class = 'pseudocode']//mn:p">
@@ -13700,7 +13819,7 @@
13700
13819
 
13701
13820
  <!-- SOURCE: ... -->
13702
13821
  <!-- figure/source -->
13703
- <xsl:template match="mn:figure/mn:source" priority="2">
13822
+ <xsl:template match="mn:figure/mn:fmt-source" priority="2">
13704
13823
  <xsl:call-template name="termsource"/>
13705
13824
  </xsl:template>
13706
13825
 
@@ -13710,7 +13829,7 @@
13710
13829
  <xsl:variable name="isAdded" select="../@added"/>
13711
13830
  <xsl:variable name="isDeleted" select="../@deleted"/>
13712
13831
  <xsl:choose>
13713
- <xsl:when test="ancestor::mn:title or not(parent::mn:figure) or parent::mn:p"> <!-- inline image ( 'image:path' in adoc, with one colon after image) -->
13832
+ <xsl:when test="ancestor::mn:fmt-title or not(parent::mn:figure) or parent::mn:p"> <!-- inline image ( 'image:path' in adoc, with one colon after image) -->
13714
13833
  <fo:inline padding-left="1mm" padding-right="1mm">
13715
13834
  <xsl:if test="not(parent::mn:figure) or parent::mn:p">
13716
13835
  <xsl:attribute name="padding-left">0mm</xsl:attribute>
@@ -13731,13 +13850,26 @@
13731
13850
  <fo:external-graphic src="{$src}" fox:alt-text="Image {@alt}" vertical-align="middle">
13732
13851
 
13733
13852
  <xsl:if test="parent::mn:logo"> <!-- publisher's logo -->
13734
- <xsl:attribute name="width">100%</xsl:attribute>
13853
+ <xsl:attribute name="scaling">uniform</xsl:attribute>
13854
+ <xsl:choose>
13855
+ <xsl:when test="@width and not(@height)">
13856
+ <xsl:attribute name="width">100%</xsl:attribute>
13857
+ <xsl:attribute name="content-height">100%</xsl:attribute>
13858
+ </xsl:when>
13859
+ <xsl:when test="@height and not(@width)">
13860
+ <xsl:attribute name="height">100%</xsl:attribute>
13861
+ <xsl:attribute name="content-height"><xsl:value-of select="@height"/></xsl:attribute>
13862
+ </xsl:when>
13863
+ <xsl:when test="not(@width) and not(@height)">
13864
+ <xsl:attribute name="content-height">100%</xsl:attribute>
13865
+ </xsl:when>
13866
+ </xsl:choose>
13867
+
13735
13868
  <xsl:if test="normalize-space($logo_width) != ''">
13736
13869
  <xsl:attribute name="width"><xsl:value-of select="$logo_width"/></xsl:attribute>
13737
13870
  </xsl:if>
13738
- <xsl:attribute name="content-height">100%</xsl:attribute>
13739
13871
  <xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
13740
- <xsl:attribute name="scaling">uniform</xsl:attribute>
13872
+ <xsl:attribute name="vertical-align">top</xsl:attribute>
13741
13873
  </xsl:if>
13742
13874
 
13743
13875
  <xsl:variable name="width">
@@ -14026,7 +14158,7 @@
14026
14158
  <xsl:variable name="width_effective_px" select="$width_effective div 25.4 * $image_dpi"/>
14027
14159
  <xsl:variable name="height_effective_px" select="$height_effective div 25.4 * $image_dpi"/>
14028
14160
 
14029
- <xsl:template match="mn:figure[not(mn:image) and *[local-name() = 'svg']]/mn:name/mn:bookmark" priority="2"/>
14161
+ <xsl:template match="mn:figure[not(mn:image) and *[local-name() = 'svg']]/mn:fmt-name/mn:bookmark" priority="2"/>
14030
14162
  <xsl:template match="mn:figure[not(mn:image)]/*[local-name() = 'svg']" priority="2" name="image_svg">
14031
14163
  <xsl:param name="name"/>
14032
14164
 
@@ -14036,8 +14168,8 @@
14036
14168
 
14037
14169
  <xsl:variable name="alt-text">
14038
14170
  <xsl:choose>
14039
- <xsl:when test="normalize-space(../mn:name) != ''">
14040
- <xsl:value-of select="../mn:name"/>
14171
+ <xsl:when test="normalize-space(../mn:fmt-name) != ''">
14172
+ <xsl:value-of select="../mn:fmt-name"/>
14041
14173
  </xsl:when>
14042
14174
  <xsl:when test="normalize-space($name) != ''">
14043
14175
  <xsl:value-of select="$name"/>
@@ -14046,7 +14178,7 @@
14046
14178
  </xsl:choose>
14047
14179
  </xsl:variable>
14048
14180
 
14049
- <xsl:variable name="isPrecedingTitle" select="normalize-space(ancestor::mn:figure/preceding-sibling::*[1][self::mn:title] and 1 = 1)"/>
14181
+ <xsl:variable name="isPrecedingTitle" select="normalize-space(ancestor::mn:figure/preceding-sibling::*[1][self::mn:fmt-title] and 1 = 1)"/>
14050
14182
 
14051
14183
  <xsl:choose>
14052
14184
  <xsl:when test=".//*[local-name() = 'a'][*[local-name() = 'rect'] or *[local-name() = 'polygon'] or *[local-name() = 'circle'] or *[local-name() = 'ellipse']]">
@@ -14095,9 +14227,9 @@
14095
14227
  <fo:table-cell column-number="2">
14096
14228
  <fo:block>
14097
14229
  <fo:block-container width="{$width_scale}px" height="{$height_scale}px">
14098
- <xsl:if test="../mn:name/mn:bookmark">
14230
+ <xsl:if test="../mn:fmt-name/mn:bookmark">
14099
14231
  <fo:block line-height="0" font-size="0">
14100
- <xsl:for-each select="../mn:name/mn:bookmark">
14232
+ <xsl:for-each select="../mn:fmt-name/mn:bookmark">
14101
14233
  <xsl:call-template name="bookmark"/>
14102
14234
  </xsl:for-each>
14103
14235
  </fo:block>
@@ -14337,7 +14469,7 @@
14337
14469
 
14338
14470
  <!-- image with svg and emf -->
14339
14471
  <xsl:template match="mn:figure/mn:image[*[local-name() = 'svg']]" priority="3">
14340
- <xsl:variable name="name" select="ancestor::mn:figure/mn:name"/>
14472
+ <xsl:variable name="name" select="ancestor::mn:figure/mn:fmt-name"/>
14341
14473
  <xsl:for-each select="*[local-name() = 'svg']">
14342
14474
  <xsl:call-template name="image_svg">
14343
14475
  <xsl:with-param name="name" select="$name"/>
@@ -14354,7 +14486,7 @@
14354
14486
 
14355
14487
  <xsl:template match="mn:figure/mn:image[@mimetype = 'image/svg+xml' and @src[not(starts-with(., 'data:image/'))]]" priority="2">
14356
14488
  <xsl:variable name="svg_content" select="document(@src)"/>
14357
- <xsl:variable name="name" select="ancestor::mn:figure/mn:name"/>
14489
+ <xsl:variable name="name" select="ancestor::mn:figure/mn:fmt-name"/>
14358
14490
  <xsl:for-each select="xalan:nodeset($svg_content)/node()">
14359
14491
  <xsl:call-template name="image_svg">
14360
14492
  <xsl:with-param name="name" select="$name"/>
@@ -14477,7 +14609,7 @@
14477
14609
  <xsl:template match="mn:emf"/>
14478
14610
 
14479
14611
  <!-- figure/name -->
14480
- <xsl:template match="mn:figure/mn:name | mn:image/mn:name">
14612
+ <xsl:template match="mn:figure/mn:fmt-name | mn:image/mn:fmt-name">
14481
14613
  <xsl:if test="normalize-space() != ''">
14482
14614
  <fo:block xsl:use-attribute-sets="figure-name-style">
14483
14615
 
@@ -14550,25 +14682,25 @@
14550
14682
  <fo:block-container margin-left="0mm" role="SKIP">
14551
14683
  <xsl:call-template name="setNamedDestination"/>
14552
14684
  <fo:block id="{@id}">
14553
- <xsl:apply-templates select="node()[not(self::mn:name)]"/> <!-- formula's number will be process in 'stem' template -->
14685
+ <xsl:apply-templates select="node()[not(self::mn:fmt-name)]"/> <!-- formula's number will be process in 'stem' template -->
14554
14686
  </fo:block>
14555
14687
  </fo:block-container>
14556
14688
  </fo:block-container>
14557
14689
  </xsl:template>
14558
14690
 
14559
- <xsl:template match="mn:formula/mn:dt/mn:stem">
14691
+ <xsl:template match="mn:formula/mn:dt/mn:fmt-stem">
14560
14692
  <fo:inline>
14561
14693
  <xsl:apply-templates/>
14562
14694
  </fo:inline>
14563
14695
  </xsl:template>
14564
14696
 
14565
- <xsl:template match="mn:admitted/mn:stem">
14697
+ <xsl:template match="mn:fmt-admitted/mn:fmt-stem">
14566
14698
  <fo:inline>
14567
14699
  <xsl:apply-templates/>
14568
14700
  </fo:inline>
14569
14701
  </xsl:template>
14570
14702
 
14571
- <xsl:template match="mn:formula/mn:name"> <!-- show in 'stem' template -->
14703
+ <xsl:template match="mn:formula/mn:fmt-name"> <!-- show in 'stem' template -->
14572
14704
  <!-- https://github.com/metanorma/isodoc/issues/607
14573
14705
  <xsl:if test="normalize-space() != ''">
14574
14706
  <xsl:text>(</xsl:text><xsl:apply-templates /><xsl:text>)</xsl:text>
@@ -14577,7 +14709,7 @@
14577
14709
  </xsl:template>
14578
14710
 
14579
14711
  <!-- stem inside formula with name (with formula's number) -->
14580
- <xsl:template match="mn:formula[mn:name]/mn:stem">
14712
+ <xsl:template match="mn:formula[mn:fmt-name]/mn:fmt-stem">
14581
14713
  <fo:block xsl:use-attribute-sets="formula-style">
14582
14714
 
14583
14715
  <fo:table table-layout="fixed" width="100%">
@@ -14597,13 +14729,13 @@
14597
14729
 
14598
14730
  <fo:block xsl:use-attribute-sets="formula-stem-number-style" role="SKIP">
14599
14731
 
14600
- <xsl:for-each select="../mn:name">
14732
+ <xsl:for-each select="../mn:fmt-name">
14601
14733
  <xsl:call-template name="setIDforNamedDestination"/>
14602
14734
  </xsl:for-each>
14603
14735
 
14604
14736
  <xsl:call-template name="refine_formula-stem-number-style"/>
14605
14737
 
14606
- <xsl:apply-templates select="../mn:name"/>
14738
+ <xsl:apply-templates select="../mn:fmt-name"/>
14607
14739
  </fo:block>
14608
14740
  </fo:table-cell>
14609
14741
  </fo:table-row>
@@ -14613,7 +14745,7 @@
14613
14745
  </xsl:template>
14614
14746
 
14615
14747
  <!-- stem inside formula without name (without formula's number) -->
14616
- <xsl:template match="mn:formula[not(mn:name)]/mn:stem">
14748
+ <xsl:template match="mn:formula[not(mn:fmt-name)]/mn:fmt-stem">
14617
14749
  <fo:block xsl:use-attribute-sets="formula-style">
14618
14750
  <fo:block xsl:use-attribute-sets="formula-stem-block-style">
14619
14751
  <xsl:apply-templates/>
@@ -14973,7 +15105,7 @@
14973
15105
  <stem type="AsciiMath"><asciimath>x = 1</asciimath></stem>
14974
15106
  <stem type="AsciiMath"><asciimath>x = 1</asciimath><latexmath>x = 1</latexmath></stem>
14975
15107
  -->
14976
- <xsl:template match="mn:stem[@type = 'AsciiMath'][count(*) = 0]/text() | mn:stem[@type = 'AsciiMath'][mn:asciimath]" priority="3">
15108
+ <xsl:template match="mn:fmt-stem[@type = 'AsciiMath'][count(*) = 0]/text() | mn:fmt-stem[@type = 'AsciiMath'][mn:asciimath]" priority="3">
14977
15109
  <fo:inline xsl:use-attribute-sets="mathml-style">
14978
15110
 
14979
15111
  <xsl:call-template name="refine_mathml-style"/>
@@ -15282,7 +15414,7 @@
15282
15414
 
15283
15415
  <xsl:template match="mn:ul | mn:ol" mode="list" name="list">
15284
15416
 
15285
- <xsl:apply-templates select="mn:name">
15417
+ <xsl:apply-templates select="mn:fmt-name">
15286
15418
  <xsl:with-param name="process">true</xsl:with-param>
15287
15419
  </xsl:apply-templates>
15288
15420
 
@@ -15328,7 +15460,7 @@
15328
15460
 
15329
15461
  <xsl:call-template name="refine_list-style"/>
15330
15462
 
15331
- <xsl:if test="mn:name">
15463
+ <xsl:if test="mn:fmt-name">
15332
15464
  <xsl:attribute name="margin-top">0pt</xsl:attribute>
15333
15465
  </xsl:if>
15334
15466
 
@@ -15346,7 +15478,7 @@
15346
15478
  </xsl:if>
15347
15479
  </xsl:template> <!-- refine_list-style_provisional-distance-between-starts -->
15348
15480
 
15349
- <xsl:template match="*[self::mn:ol or self::mn:ul]/mn:name">
15481
+ <xsl:template match="*[self::mn:ol or self::mn:ul]/mn:fmt-name">
15350
15482
  <xsl:param name="process">false</xsl:param>
15351
15483
  <xsl:if test="$process = 'true'">
15352
15484
  <fo:block xsl:use-attribute-sets="list-name-style">
@@ -15488,7 +15620,7 @@
15488
15620
  -->
15489
15621
  <!-- footnotes in text (title, bibliography, main body), not for tables, figures and names --> <!-- table's, figure's names -->
15490
15622
  <!-- fn in text -->
15491
- <xsl:template match="mn:fn[not(ancestor::*[(self::mn:table or self::mn:figure)] and not(ancestor::mn:name))]" priority="2" name="fn">
15623
+ <xsl:template match="mn:fn[not(ancestor::*[(self::mn:table or self::mn:figure)] and not(ancestor::mn:fmt-name))]" priority="2" name="fn">
15492
15624
  <xsl:param name="footnote_body_from_table">false</xsl:param>
15493
15625
 
15494
15626
  <!-- list of unique footnotes -->
@@ -15625,7 +15757,7 @@
15625
15757
  <!-- commented:
15626
15758
  .//mn:bibitem[ancestor::mn:references]/mn:note |
15627
15759
  because 'fn' there is in biblio-tag -->
15628
- <xsl:for-each select=".//mn:fn[not(ancestor::*[(self::mn:table or self::mn:figure)] and not(ancestor::mn:name))][generate-id(.)=generate-id(key('kfn',@reference)[1])]">
15760
+ <xsl:for-each select=".//mn:fn[not(ancestor::*[(self::mn:table or self::mn:figure)] and not(ancestor::mn:fmt-name))][generate-id(.)=generate-id(key('kfn',@reference)[1])]">
15629
15761
  <!-- copy unique fn -->
15630
15762
  <fn gen_id="{generate-id(.)}">
15631
15763
  <xsl:copy-of select="@*"/>
@@ -15705,7 +15837,7 @@
15705
15837
  <!-- <xsl:with-param name="sep"> — </xsl:with-param> -->
15706
15838
  </xsl:if>
15707
15839
 
15708
- <xsl:apply-templates select="node()[not(self::mn:name)]"/>
15840
+ <xsl:apply-templates select="node()[not(self::mn:fmt-name)]"/>
15709
15841
  </fo:block>
15710
15842
 
15711
15843
  </xsl:template>
@@ -15729,7 +15861,7 @@
15729
15861
  </xsl:otherwise>
15730
15862
  </xsl:choose> -->
15731
15863
  <xsl:variable name="name">
15732
- <xsl:apply-templates select="mn:name"/>
15864
+ <xsl:apply-templates select="mn:fmt-name"/>
15733
15865
  </xsl:variable>
15734
15866
  <xsl:copy-of select="$name"/>
15735
15867
  <xsl:if test="normalize-space($name) != ''">
@@ -15737,7 +15869,7 @@
15737
15869
  </xsl:if>
15738
15870
  </xsl:template>
15739
15871
 
15740
- <xsl:template match="mn:admonition/mn:name">
15872
+ <xsl:template match="mn:admonition/mn:fmt-name">
15741
15873
  <xsl:apply-templates/>
15742
15874
  </xsl:template>
15743
15875
 
@@ -15866,10 +15998,10 @@
15866
15998
  <xsl:call-template name="setNamedDestination"/>
15867
15999
  <fo:block id="{@id}"/>
15868
16000
 
15869
- <xsl:apply-templates select="mn:title[@columns = 1]"/>
16001
+ <xsl:apply-templates select="mn:fmt-title[@columns = 1]"/>
15870
16002
 
15871
16003
  <fo:block xsl:use-attribute-sets="references-non-normative-style">
15872
- <xsl:apply-templates select="node()[not(self::mn:title and @columns = 1)]"/>
16004
+ <xsl:apply-templates select="node()[not(self::mn:fmt-title and @columns = 1)]"/>
15873
16005
  </fo:block>
15874
16006
  </xsl:template> <!-- references -->
15875
16007
 
@@ -16191,7 +16323,8 @@
16191
16323
  </xsl:copy>
16192
16324
  </xsl:template>
16193
16325
 
16194
- <xsl:template match="mn:xref" mode="index_add_id">
16326
+ <xsl:template match="mn:xref" mode="index_add_id"/>
16327
+ <xsl:template match="mn:fmt-xref" mode="index_add_id">
16195
16328
  <xsl:param name="docid"/>
16196
16329
  <xsl:variable name="id">
16197
16330
  <xsl:call-template name="generateIndexXrefId">
@@ -16233,7 +16366,7 @@
16233
16366
  <xsl:template match="mn:indexsect//mn:li" mode="index_update">
16234
16367
  <xsl:copy>
16235
16368
  <xsl:apply-templates select="@*" mode="index_update"/>
16236
- <xsl:apply-templates select="node()[1]" mode="process_li_element"/>
16369
+ <xsl:apply-templates select="node()[not(self::mn:fmt-name)][1]" mode="process_li_element"/>
16237
16370
  </xsl:copy>
16238
16371
  </xsl:template>
16239
16372
 
@@ -16254,11 +16387,11 @@
16254
16387
  <xsl:value-of select="."/>
16255
16388
  <xsl:apply-templates select="following-sibling::node()[1]" mode="process_li_element"/>
16256
16389
  </xsl:when>
16257
- <xsl:when test="self::* and local-name(.) = 'xref'">
16390
+ <xsl:when test="self::* and local-name(.) = 'fmt-xref'">
16258
16391
  <xsl:variable name="id" select="@id"/>
16259
16392
 
16260
- <xsl:variable name="id_next" select="following-sibling::mn:xref[1]/@id"/>
16261
- <xsl:variable name="id_prev" select="preceding-sibling::mn:xref[1]/@id"/>
16393
+ <xsl:variable name="id_next" select="following-sibling::mn:fmt-xref[1]/@id"/>
16394
+ <xsl:variable name="id_prev" select="preceding-sibling::mn:fmt-xref[1]/@id"/>
16262
16395
 
16263
16396
  <xsl:variable name="pages_">
16264
16397
  <xsl:for-each select="$index/index/item[@id = $id or @id = $id_next or @id = $id_prev]">
@@ -16354,18 +16487,18 @@
16354
16487
  <xsl:variable name="item_number">
16355
16488
  <xsl:number count="mn:li[ancestor::mn:indexsect]" level="any"/>
16356
16489
  </xsl:variable>
16357
- <xsl:variable name="xref_number"><xsl:number count="mn:xref"/></xsl:variable>
16490
+ <xsl:variable name="xref_number"><xsl:number count="mn:fmt-xref"/></xsl:variable>
16358
16491
  <xsl:value-of select="concat($docid_curr, '_', $item_number, '_', $xref_number)"/> <!-- $level, '_', -->
16359
16492
  </xsl:template>
16360
16493
 
16361
- <xsl:template match="mn:indexsect/mn:title" priority="4">
16494
+ <xsl:template match="mn:indexsect/mn:fmt-title | mn:indexsect/mn:title" priority="4">
16362
16495
  <fo:block xsl:use-attribute-sets="indexsect-title-style">
16363
16496
  <!-- Index -->
16364
16497
  <xsl:apply-templates/>
16365
16498
  </fo:block>
16366
16499
  </xsl:template>
16367
16500
 
16368
- <xsl:template match="mn:indexsect/mn:clause/mn:title" priority="4">
16501
+ <xsl:template match="mn:indexsect/mn:clause/mn:fmt-title | mn:indexsect/mn:clause/mn:title" priority="4">
16369
16502
  <!-- Letter A, B, C, ... -->
16370
16503
  <fo:block xsl:use-attribute-sets="indexsect-clause-title-style">
16371
16504
  <xsl:apply-templates/>
@@ -16406,12 +16539,12 @@
16406
16539
  <fmt-review-start id="_7ef81cf7-3f6c-4ed4-9c1f-1ba092052bbd" source="_dda23915-8574-ef1e-29a1-822d465a5b97" target="_ecfb2210-3b1b-46a2-b63a-8b8505be6686" end="_dda23915-8574-ef1e-29a1-822d465a5b97" author="" date="2025-03-24T00:00:00Z"/>
16407
16540
  <bookmark id="_dda23915-8574-ef1e-29a1-822d465a5b97"/>
16408
16541
  <fmt-review-end id="_f336a8d0-08a8-4b7f-a1aa-b04688ed40c1" source="_dda23915-8574-ef1e-29a1-822d465a5b97" target="_ecfb2210-3b1b-46a2-b63a-8b8505be6686" start="_dda23915-8574-ef1e-29a1-822d465a5b97" author="" date="2025-03-24T00:00:00Z"/> -->
16409
- <xsl:when test="1 = 2 and preceding-sibling::node()[self::mn:fmt-review-start][@source = $bookmark_id] and following-sibling::node()[self::mn:fmt-review-end][@source = $bookmark_id]">
16542
+ <xsl:when test="1 = 2 and preceding-sibling::node()[self::mn:fmt-annotation-start][@source = $bookmark_id] and following-sibling::node()[self::mn:fmt-annotation-end][@source = $bookmark_id]">
16410
16543
  <!-- skip here, see the template 'fmt-review-start' -->
16411
16544
  </xsl:when>
16412
16545
  <xsl:otherwise>
16413
16546
  <!-- <fo:inline id="{@id}" font-size="1pt"/> -->
16414
- <fo:inline id="{@id}" font-size="1pt"><xsl:if test="preceding-sibling::node()[self::mn:fmt-review-start][@source = $bookmark_id] and following-sibling::node()[self::mn:fmt-review-end][@source = $bookmark_id]"><xsl:attribute name="line-height">0.1</xsl:attribute></xsl:if><xsl:value-of select="$hair_space"/></fo:inline>
16547
+ <fo:inline id="{@id}" font-size="1pt"><xsl:if test="preceding-sibling::node()[self::mn:fmt-annotation-start][@source = $bookmark_id] and following-sibling::node()[self::mn:fmt-annotation-end][@source = $bookmark_id]"><xsl:attribute name="line-height">0.1</xsl:attribute></xsl:if><xsl:value-of select="$hair_space"/></fo:inline>
16415
16548
  <!-- we need to add zero-width space, otherwise this fo:inline is missing in IF xml -->
16416
16549
  <xsl:if test="not(following-sibling::node()[normalize-space() != ''])"><fo:inline font-size="1pt"> </fo:inline></xsl:if>
16417
16550
  </xsl:otherwise>
@@ -16575,7 +16708,7 @@
16575
16708
 
16576
16709
  <xsl:template name="processTables_Contents">
16577
16710
  <mnx:tables>
16578
- <xsl:for-each select="//mn:table[not(ancestor::mn:metanorma-extension)][@id and mn:name and normalize-space(@id) != '']">
16711
+ <xsl:for-each select="//mn:table[not(ancestor::mn:metanorma-extension)][@id and mn:fmt-name and normalize-space(@id) != '']">
16579
16712
  <xsl:choose>
16580
16713
  <xsl:when test="mn:fmt-name">
16581
16714
  <xsl:variable name="fmt_name">
@@ -16597,7 +16730,7 @@
16597
16730
 
16598
16731
  <xsl:template name="processFigures_Contents">
16599
16732
  <mnx:figures>
16600
- <xsl:for-each select="//mn:figure[@id and mn:name and not(@unnumbered = 'true') and normalize-space(@id) != ''] | //*[@id and starts-with(mn:name, 'Figure ') and normalize-space(@id) != '']">
16733
+ <xsl:for-each select="//mn:figure[@id and mn:fmt-name and not(@unnumbered = 'true') and normalize-space(@id) != ''] | //*[@id and starts-with(mn:name, 'Figure ') and normalize-space(@id) != '']">
16601
16734
  <xsl:choose>
16602
16735
  <xsl:when test="mn:fmt-name">
16603
16736
  <xsl:variable name="fmt_name">
@@ -16626,7 +16759,7 @@
16626
16759
 
16627
16760
  <xsl:template match="mn:title[following-sibling::*[1][self::mn:fmt-title]]" mode="contents"/>
16628
16761
 
16629
- <xsl:template match="mn:figure/mn:fmt-name | mn:table/mn:fmt-name | mn:permission/mn:fmt-name | mn:recommendation/mn:fmt-name | mn:requirement/mn:fmt-name" mode="contents">
16762
+ <xsl:template match="mn:figure/mn:fmt-name | mnx:figure/mn:fmt-name | mn:table/mn:fmt-name | mnx:table/mn:fmt-name | mn:permission/mn:fmt-name | mnx:permission/mn:fmt-name | mn:recommendation/mn:fmt-name | mnx:recommendation/mn:fmt-name | mn:requirement/mn:fmt-name | mnx:requirement/mn:fmt-name" mode="contents">
16630
16763
  <xsl:apply-templates mode="contents"/>
16631
16764
  <xsl:text> </xsl:text>
16632
16765
  </xsl:template>
@@ -16638,7 +16771,7 @@
16638
16771
  </xsl:if>
16639
16772
  </xsl:template>
16640
16773
 
16641
- <xsl:template match="mn:figure/mn:fmt-name | mn:table/mn:fmt-name | mn:permission/mn:fmt-name | mn:recommendation/mn:fmt-name | mn:requirement/mn:fmt-name | mn:sourcecode/mn:fmt-name" mode="bookmarks">
16774
+ <xsl:template match="mn:figure/mn:fmt-name | mnx:figure/mn:fmt-name | mn:table/mn:fmt-name | mnx:table/mn:fmt-name | mn:permission/mn:fmt-name | mnx:permission/mn:fmt-name | mn:recommendation/mn:fmt-name | mnx:recommendation/mn:fmt-name | mn:requirement/mn:fmt-name | mnx:requirement/mn:fmt-name | mn:sourcecode/mn:fmt-name | mnx:sourcecode/mn:fmt-name" mode="bookmarks">
16642
16775
  <xsl:apply-templates mode="bookmarks"/>
16643
16776
  <xsl:text> </xsl:text>
16644
16777
  </xsl:template>
@@ -16649,7 +16782,7 @@
16649
16782
  </xsl:if>
16650
16783
  </xsl:template>
16651
16784
 
16652
- <xsl:template match="*[self::mn:figure or self::mn:table or self::mn:permission or self::mn:recommendation or self::mn:requirement]/mn:fmt-name/text()" mode="contents" priority="2">
16785
+ <xsl:template match="*[self::mn:figure or self::mn:table or self::mn:permission or self::mn:recommendation or self::mn:requirement]/mn:fmt-name/text() | *[self::mnx:figure or self::mnx:table or self::mnx:permission or self::mnx:recommendation or self::mnx:requirement]/mn:fmt-name/text()" mode="contents" priority="2">
16653
16786
  <xsl:value-of select="."/>
16654
16787
  </xsl:template>
16655
16788
 
@@ -16659,7 +16792,7 @@
16659
16792
  </xsl:if>
16660
16793
  </xsl:template>
16661
16794
 
16662
- <xsl:template match="*[self::mn:figure or self::mn:table or self::mn:permission or self::mn:recommendation or self::mn:requirement or self::mn:sourcecode]/mn:fmt-name//text()" mode="bookmarks" priority="2">
16795
+ <xsl:template match="*[self::mn:figure or self::mn:table or self::mn:permission or self::mn:recommendation or self::mn:requirement or self::mn:sourcecode]/mn:fmt-name//text() | *[self::mnx:figure or self::mnx:table or self::mnx:permission or self::mnx:recommendation or self::mnx:requirement or self::mnx:sourcecode]/mn:fmt-name//text()" mode="bookmarks" priority="2">
16663
16796
  <xsl:value-of select="."/>
16664
16797
  </xsl:template>
16665
16798
 
@@ -17120,7 +17253,7 @@
17120
17253
  <xsl:value-of select="."/>
17121
17254
  </xsl:template>
17122
17255
 
17123
- <xsl:template match="mn:review" mode="contents_item"/>
17256
+ <xsl:template match="mn:annotation" mode="contents_item"/>
17124
17257
 
17125
17258
  <xsl:template match="mn:tab" mode="contents_item">
17126
17259
  <xsl:text> </xsl:text>
@@ -17275,7 +17408,7 @@
17275
17408
  <xsl:apply-templates/>
17276
17409
  </xsl:template>
17277
17410
 
17278
- <xsl:template match="mn:toc//mn:xref" priority="3">
17411
+ <xsl:template match="mn:toc//mn:xref | mn:toc//mn:fmt-xref" priority="3">
17279
17412
  <!-- <xref target="cgpm9th1948r6">1.6.3<tab/>&#8220;9th CGPM, 1948:<tab/>decision to establish the SI&#8221;</xref> -->
17280
17413
  <!-- New format: one tab <xref target="cgpm9th1948r6">&#8220;9th CGPM, 1948:<tab/>decision to establish the SI&#8221;</xref> -->
17281
17414
  <!-- <test><xsl:copy-of select="."/></test> -->
@@ -17343,8 +17476,8 @@
17343
17476
  <xsl:apply-templates mode="toc_table_width"/>
17344
17477
  </xsl:template>
17345
17478
 
17346
- <xsl:template match="mn:clause[@type = 'toc']/mn:title" mode="toc_table_width"/>
17347
- <xsl:template match="mn:clause[not(@type = 'toc')]/mn:title" mode="toc_table_width"/>
17479
+ <xsl:template match="mn:clause[@type = 'toc']/mn:fmt-title" mode="toc_table_width"/>
17480
+ <xsl:template match="mn:clause[not(@type = 'toc')]/mn:fmt-title" mode="toc_table_width"/>
17348
17481
 
17349
17482
  <xsl:template match="mn:li" mode="toc_table_width">
17350
17483
  <mn:tr>
@@ -17352,7 +17485,7 @@
17352
17485
  </mn:tr>
17353
17486
  </xsl:template>
17354
17487
 
17355
- <xsl:template match="mn:xref" mode="toc_table_width">
17488
+ <xsl:template match="mn:fmt-xref" mode="toc_table_width">
17356
17489
  <!-- <xref target="cgpm9th1948r6">1.6.3<tab/>&#8220;9th CGPM, 1948:<tab/>decision to establish the SI&#8221;</xref> -->
17357
17490
  <!-- New format - one tab <xref target="cgpm9th1948r6">&#8220;9th CGPM, 1948:<tab/>decision to establish the SI&#8221;</xref> -->
17358
17491
  <xsl:for-each select="mn:tab">
@@ -17432,10 +17565,10 @@
17432
17565
 
17433
17566
  </xsl:template> <!-- tab -->
17434
17567
 
17435
- <xsl:template match="mn:note/mn:name/mn:tab" priority="2"/>
17436
- <xsl:template match="mn:termnote/mn:name/mn:tab" priority="2"/>
17568
+ <xsl:template match="mn:note/mn:fmt-name/mn:tab" priority="2"/>
17569
+ <xsl:template match="mn:termnote/mn:fmt-name/mn:tab" priority="2"/>
17437
17570
 
17438
- <xsl:template match="mn:note/mn:name/mn:tab" mode="tab">
17571
+ <xsl:template match="mn:note/mn:fmt-name/mn:tab" mode="tab">
17439
17572
  <xsl:attribute name="padding-right">6mm</xsl:attribute>
17440
17573
  </xsl:template>
17441
17574
 
@@ -17450,13 +17583,13 @@
17450
17583
  </xsl:template>
17451
17584
 
17452
17585
  <xsl:variable name="reviews_">
17453
- <xsl:for-each select="//mn:review[not(parent::mn:review-container)][@from]">
17586
+ <xsl:for-each select="//mn:annotation[not(parent::mn:annotation-container)][@from]">
17454
17587
  <xsl:copy>
17455
17588
  <xsl:copy-of select="@from"/>
17456
17589
  <xsl:copy-of select="@id"/>
17457
17590
  </xsl:copy>
17458
17591
  </xsl:for-each>
17459
- <xsl:for-each select="//mn:fmt-review-start[@source]">
17592
+ <xsl:for-each select="//mn:fmt-annotation-start[@source]">
17460
17593
  <xsl:copy>
17461
17594
  <xsl:copy-of select="@source"/>
17462
17595
  <xsl:copy-of select="@id"/>
@@ -17470,7 +17603,7 @@
17470
17603
  <!-- if there is review with from="...", then add small helper block for Annot tag adding, see 'review' template -->
17471
17604
  <xsl:variable name="curr_id" select="@id"/>
17472
17605
  <!-- <xsl:variable name="review_id" select="normalize-space(/@id)"/> -->
17473
- <xsl:for-each select="$reviews//mn:review[@from = $curr_id]"> <!-- $reviews//mn:fmt-review-start[@source = $curr_id] -->
17606
+ <xsl:for-each select="$reviews//mn:annotation[@from = $curr_id]"> <!-- $reviews//mn:fmt-review-start[@source = $curr_id] -->
17474
17607
  <xsl:variable name="review_id" select="normalize-space(@id)"/>
17475
17608
  <xsl:if test="$review_id != ''"> <!-- i.e. if review found -->
17476
17609
  <fo:block keep-with-next="always" line-height="0.1" id="{$review_id}" font-size="1pt" role="SKIP"><xsl:value-of select="$hair_space"/><fo:basic-link internal-destination="{$review_id}" fox:alt-text="Annot___{$review_id}" role="Annot"><xsl:value-of select="$hair_space"/></fo:basic-link></fo:block>
@@ -17485,7 +17618,7 @@
17485
17618
 
17486
17619
  <!-- document text (not figures, or tables) footnotes -->
17487
17620
  <xsl:variable name="reviews_container_">
17488
- <xsl:for-each select="//mn:review-container/mn:fmt-review-body">
17621
+ <xsl:for-each select="//mn:annotation-container/mn:fmt-annotation-body">
17489
17622
  <xsl:variable name="update_xml_step1">
17490
17623
  <xsl:apply-templates select="." mode="update_xml_step1"/>
17491
17624
  </xsl:variable>
@@ -17494,10 +17627,10 @@
17494
17627
  </xsl:variable>
17495
17628
  <xsl:variable name="reviews_container" select="xalan:nodeset($reviews_container_)"/>
17496
17629
 
17497
- <xsl:template match="mn:review-container"/>
17630
+ <xsl:template match="mn:annotation-container"/>
17498
17631
 
17499
17632
  <!-- for old Presentation XML (before https://github.com/metanorma/isodoc/issues/670) -->
17500
- <xsl:template match="mn:review[not(parent::mn:review-container)]"> <!-- 'review' will be processed in mn2pdf/review.xsl -->
17633
+ <xsl:template match="mn:annotation[not(parent::mn:annotation-container)]"> <!-- 'review' will be processed in mn2pdf/review.xsl -->
17501
17634
  <xsl:variable name="id_from" select="normalize-space(current()/@from)"/>
17502
17635
  <xsl:if test="$isGenerateTableIF = 'false'">
17503
17636
  <xsl:choose>
@@ -17517,7 +17650,7 @@
17517
17650
  </xsl:template>
17518
17651
 
17519
17652
  <!-- for new Presentation XML (https://github.com/metanorma/isodoc/issues/670) -->
17520
- <xsl:template match="mn:fmt-review-start" name="fmt-review-start"> <!-- 'review' will be processed in mn2pdf/review.xsl -->
17653
+ <xsl:template match="mn:fmt-annotation-start" name="fmt-annotation-start"> <!-- 'review' will be processed in mn2pdf/review.xsl -->
17521
17654
  <!-- comment 2019-11-29 -->
17522
17655
  <!-- <fo:block font-weight="bold">Review:</fo:block>
17523
17656
  <xsl:apply-templates /> -->
@@ -17573,7 +17706,7 @@
17573
17706
  </xsl:template>
17574
17707
 
17575
17708
  <!-- https://github.com/metanorma/mn-samples-bsi/issues/312 -->
17576
- <xsl:template match="mn:review[@type = 'other']"/>
17709
+ <xsl:template match="mn:annotation[@type = 'other']"/>
17577
17710
 
17578
17711
  <!-- ============ -->
17579
17712
  <!-- errata -->
@@ -17955,9 +18088,12 @@
17955
18088
  <xsl:choose>
17956
18089
  <xsl:when test="mn:fmt-title">
17957
18090
  <xsl:variable name="fmt_title_section">
17958
- <xsl:copy-of select="mn:fmt-title//mn:span[@class = 'fmt-caption-delim'][mn:tab][1]/preceding-sibling::node()[not(self::mn:review)]"/>
18091
+ <xsl:copy-of select="mn:fmt-title//mn:span[@class = 'fmt-caption-delim'][mn:tab][1]/preceding-sibling::node()[not(self::mn:annotation)]"/>
17959
18092
  </xsl:variable>
17960
18093
  <xsl:value-of select="normalize-space($fmt_title_section)"/>
18094
+ <xsl:if test="normalize-space($fmt_title_section) = ''">
18095
+ <xsl:value-of select="mn:fmt-title/mn:tab[1]/preceding-sibling::node()"/>
18096
+ </xsl:if>
17961
18097
  </xsl:when>
17962
18098
  <xsl:otherwise>
17963
18099
  <xsl:value-of select="mn:title/mn:tab[1]/preceding-sibling::node()"/>
@@ -17970,6 +18106,9 @@
17970
18106
  <xsl:when test="mn:fmt-title//mn:span[@class = 'fmt-caption-delim'][mn:tab]">
17971
18107
  <xsl:copy-of select="mn:fmt-title//mn:span[@class = 'fmt-caption-delim'][mn:tab][1]/following-sibling::node()"/>
17972
18108
  </xsl:when>
18109
+ <xsl:when test="mn:fmt-title/mn:tab">
18110
+ <xsl:copy-of select="mn:fmt-title/mn:tab[1]/following-sibling::node()"/>
18111
+ </xsl:when>
17973
18112
  <xsl:when test="mn:fmt-title">
17974
18113
  <xsl:copy-of select="mn:fmt-title/node()"/>
17975
18114
  </xsl:when>
@@ -18118,10 +18257,10 @@
18118
18257
 
18119
18258
  </fo:block>
18120
18259
 
18121
- <xsl:apply-templates select="mn:title[@columns = 1]"/>
18260
+ <xsl:apply-templates select="mn:fmt-title[@columns = 1]"/>
18122
18261
 
18123
18262
  <fo:block>
18124
- <xsl:apply-templates select="node()[not(self::mn:title and @columns = 1)]"/>
18263
+ <xsl:apply-templates select="node()[not(self::mn:fmt-title and @columns = 1)]"/>
18125
18264
  </fo:block>
18126
18265
  </xsl:otherwise>
18127
18266
  </xsl:choose>
@@ -18130,7 +18269,7 @@
18130
18269
  <xsl:template name="refine_annex_style">
18131
18270
  </xsl:template>
18132
18271
 
18133
- <xsl:template match="mn:name/text()">
18272
+ <xsl:template match="mn:name/text() | mn:fmt-name/text()">
18134
18273
  <!-- 0xA0 to space replacement -->
18135
18274
  <xsl:value-of select="java:replaceAll(java:java.lang.String.new(.),' ',' ')"/>
18136
18275
  </xsl:template>
@@ -18186,28 +18325,28 @@
18186
18325
  <xsl:template match="mn:amend"/>
18187
18326
 
18188
18327
  <!-- fmt-title renamed to title in update_xml_step1 -->
18189
- <xsl:template match="mn:fmt-title"/>
18328
+ <!-- <xsl:template match="mn:fmt-title" /> -->
18190
18329
 
18191
18330
  <!-- fmt-name renamed to name in update_xml_step1 -->
18192
- <xsl:template match="mn:fmt-name"/>
18331
+ <!-- <xsl:template match="mn:fmt-name" /> -->
18193
18332
 
18194
18333
  <!-- fmt-preferred renamed to preferred in update_xml_step1 -->
18195
- <xsl:template match="mn:fmt-preferred"/>
18334
+ <!-- <xsl:template match="mn:fmt-preferred" /> -->
18196
18335
 
18197
18336
  <!-- fmt-admitted renamed to admitted in update_xml_step1 -->
18198
- <xsl:template match="mn:fmt-admitted"/>
18337
+ <!-- <xsl:template match="mn:fmt-admitted" /> -->
18199
18338
 
18200
18339
  <!-- fmt-deprecates renamed to deprecates in update_xml_step1 -->
18201
- <xsl:template match="mn:fmt-deprecates"/>
18340
+ <!-- <xsl:template match="mn:fmt-deprecates" /> -->
18202
18341
 
18203
18342
  <!-- fmt-definition renamed to definition in update_xml_step1 -->
18204
- <xsl:template match="mn:fmt-definition"/>
18343
+ <!-- <xsl:template match="mn:fmt-definition" /> -->
18205
18344
 
18206
18345
  <!-- fmt-termsource renamed to termsource in update_xml_step1 -->
18207
- <xsl:template match="mn:fmt-termsource"/>
18346
+ <!-- <xsl:template match="mn:fmt-termsource" /> -->
18208
18347
 
18209
18348
  <!-- fmt-source renamed to source in update_xml_step1 -->
18210
- <xsl:template match="mn:fmt-source"/>
18349
+ <!-- <xsl:template match="mn:fmt-source" /> -->
18211
18350
 
18212
18351
  <xsl:template match="mn:semx">
18213
18352
  <xsl:apply-templates/>
@@ -18679,12 +18818,12 @@
18679
18818
  <xsl:when test="ancestor::mn:preface">
18680
18819
  <xsl:value-of select="$level_total - 2"/>
18681
18820
  </xsl:when>
18682
- <xsl:when test="ancestor::mn:sections and self::mn:title">
18821
+ <xsl:when test="ancestor::mn:sections and self::mn:fmt-title">
18683
18822
  <!-- determine 'depth' depends on upper clause with title/@depth -->
18684
18823
  <!-- <xsl:message>title=<xsl:value-of select="."/></xsl:message> -->
18685
- <xsl:variable name="clause_with_depth_depth" select="ancestor::mn:clause[mn:title/@depth][1]/mn:title/@depth"/>
18824
+ <xsl:variable name="clause_with_depth_depth" select="ancestor::mn:clause[mn:fmt-title/@depth][1]/mn:fmt-title/@depth"/>
18686
18825
  <!-- <xsl:message>clause_with_depth_depth=<xsl:value-of select="$clause_with_depth_depth"/></xsl:message> -->
18687
- <xsl:variable name="clause_with_depth_level" select="count(ancestor::mn:clause[mn:title/@depth][1]/ancestor::*)"/>
18826
+ <xsl:variable name="clause_with_depth_level" select="count(ancestor::mn:clause[mn:fmt-title/@depth][1]/ancestor::*)"/>
18688
18827
  <!-- <xsl:message>clause_with_depth_level=<xsl:value-of select="$clause_with_depth_level"/></xsl:message> -->
18689
18828
  <xsl:variable name="curr_level" select="count(ancestor::*) - 1"/>
18690
18829
  <!-- <xsl:message>curr_level=<xsl:value-of select="$curr_level"/></xsl:message> -->
@@ -18700,8 +18839,8 @@
18700
18839
  </xsl:otherwise>
18701
18840
  </xsl:choose>
18702
18841
  </xsl:when>
18703
- <xsl:when test="ancestor::mn:sections and self::mn:name and parent::mn:term">
18704
- <xsl:variable name="upper_terms_depth" select="normalize-space(ancestor::mn:terms[1]/mn:title/@depth)"/>
18842
+ <xsl:when test="ancestor::mn:sections and self::mn:fmt-name and parent::mn:term">
18843
+ <xsl:variable name="upper_terms_depth" select="normalize-space(ancestor::mn:terms[1]/mn:fmt-title/@depth)"/>
18705
18844
  <xsl:choose>
18706
18845
  <xsl:when test="string(number($upper_terms_depth)) != 'NaN'">
18707
18846
  <xsl:value-of select="number($upper_terms_depth + 1)"/>
@@ -18712,7 +18851,7 @@
18712
18851
  </xsl:choose>
18713
18852
  </xsl:when>
18714
18853
  <xsl:when test="ancestor::mn:sections">
18715
- <xsl:variable name="upper_clause_depth" select="normalize-space(ancestor::*[self::mn:clause or self::mn:terms][1]/mn:title/@depth)"/>
18854
+ <xsl:variable name="upper_clause_depth" select="normalize-space(ancestor::*[self::mn:clause or self::mn:terms][1]/mn:fmt-title/@depth)"/>
18716
18855
  <xsl:choose>
18717
18856
  <xsl:when test="string(number($upper_clause_depth)) != 'NaN'">
18718
18857
  <xsl:value-of select="number($upper_clause_depth + 1)"/>
@@ -18728,8 +18867,8 @@
18728
18867
  <xsl:when test="parent::mn:annex">
18729
18868
  <xsl:value-of select="$level_total - 1"/>
18730
18869
  </xsl:when>
18731
- <xsl:when test="ancestor::mn:annex and self::mn:title">
18732
- <xsl:variable name="upper_clause_depth" select="normalize-space(ancestor::mn:clause[2]/mn:title/@depth)"/>
18870
+ <xsl:when test="ancestor::mn:annex and self::mn:fmt-title">
18871
+ <xsl:variable name="upper_clause_depth" select="normalize-space(ancestor::mn:clause[2]/mn:fmt-title/@depth)"/>
18733
18872
  <xsl:choose>
18734
18873
  <xsl:when test="string(number($upper_clause_depth)) != 'NaN'">
18735
18874
  <xsl:value-of select="number($upper_clause_depth + 1)"/>
@@ -18762,7 +18901,7 @@
18762
18901
  </xsl:when>
18763
18902
  <xsl:otherwise>
18764
18903
  <xsl:variable name="title_level_">
18765
- <xsl:for-each select="../preceding-sibling::mn:title[1]">
18904
+ <xsl:for-each select="../preceding-sibling::mn:fmt-title[1]">
18766
18905
  <xsl:call-template name="getLevel"/>
18767
18906
  </xsl:for-each>
18768
18907
  </xsl:variable>
@@ -18839,15 +18978,17 @@
18839
18978
  </xsl:template>
18840
18979
 
18841
18980
  <xsl:template name="setNamedDestination">
18842
- <!-- skip GUID, e.g. _33eac3cb-9663-4291-ae26-1d4b6f4635fc -->
18843
- <xsl:if test="@id and normalize-space(java:matches(java:java.lang.String.new(@id), '_[0-9a-z]{8}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{12}')) = 'false'">
18844
- <fox:destination internal-destination="{@id}"/>
18845
- </xsl:if>
18846
- <xsl:for-each select=". | mn:title | mn:name">
18847
- <xsl:if test="@named_dest">
18848
- <fox:destination internal-destination="{@named_dest}"/>
18981
+ <xsl:if test="$isGenerateTableIF = 'false'">
18982
+ <!-- skip GUID, e.g. _33eac3cb-9663-4291-ae26-1d4b6f4635fc -->
18983
+ <xsl:if test="@id and normalize-space(java:matches(java:java.lang.String.new(@id), '_[0-9a-z]{8}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{12}')) = 'false'">
18984
+ <fox:destination internal-destination="{@id}"/>
18849
18985
  </xsl:if>
18850
- </xsl:for-each>
18986
+ <xsl:for-each select=". | mn:fmt-title | mn:fmt-name">
18987
+ <xsl:if test="@named_dest">
18988
+ <fox:destination internal-destination="{@named_dest}"/>
18989
+ </xsl:if>
18990
+ </xsl:for-each>
18991
+ </xsl:if>
18851
18992
  </xsl:template>
18852
18993
 
18853
18994
  <xsl:template name="add-letter-spacing">
@@ -19195,7 +19336,7 @@
19195
19336
  </xsl:when>
19196
19337
  <xsl:otherwise>
19197
19338
  <!-- namespace-uri(ancestor::mn:title) != '' to skip title from $contents -->
19198
- <xsl:if test="namespace-uri(ancestor::mn:title) != '' and ($char_prev = '' and ../preceding-sibling::node())">
19339
+ <xsl:if test="namespace-uri(ancestor::mn:fmt-title) != '' and ($char_prev = '' and ../preceding-sibling::node())">
19199
19340
  <fo:inline padding-left="1mm"><xsl:value-of select="$zero_width_space"/></fo:inline>
19200
19341
  </xsl:if>
19201
19342
  <fo:inline-container text-align="center" alignment-baseline="central" width="1em" margin="0" padding="0" text-indent="0mm" last-line-end-indent="0mm" start-indent="0mm" end-indent="0mm" role="SKIP" text-align-last="center">
@@ -19229,7 +19370,7 @@
19229
19370
  </fo:block>
19230
19371
  </fo:block-container>
19231
19372
  </fo:inline-container>
19232
- <xsl:if test="namespace-uri(ancestor::mn:title) != '' and ($char_next != '' or ../following-sibling::node())">
19373
+ <xsl:if test="namespace-uri(ancestor::mn:fmt-title) != '' and ($char_next != '' or ../following-sibling::node())">
19233
19374
  <fo:inline padding-left="1mm"><xsl:value-of select="$zero_width_space"/></fo:inline>
19234
19375
  </xsl:if>
19235
19376
  </xsl:otherwise>