metanorma-un 0.3.9 → 0.3.10

Sign up to get free protection for your applications and to get access to all the features.
@@ -89,7 +89,9 @@
89
89
  </xsl:variable>
90
90
  <xsl:value-of select="normalize-space($abstract)"/>
91
91
  </dc:description>
92
- <pdf:Keywords/>
92
+ <pdf:Keywords>
93
+ <xsl:call-template name="insertKeywords"/>
94
+ </pdf:Keywords>
93
95
  </rdf:Description>
94
96
  <rdf:Description xmlns:xmp="http://ns.adobe.com/xap/1.0/" rdf:about="">
95
97
  <!-- XMP properties go here -->
@@ -1337,15 +1339,7 @@
1337
1339
  <xsl:apply-templates/>
1338
1340
  </fo:block>
1339
1341
  </xsl:template>
1340
-
1341
- <xsl:template match="un:sourcecode">
1342
- <fo:block font-family="Courier" font-size="10pt" margin-top="6pt" margin-bottom="6pt">
1343
- <xsl:attribute name="white-space">pre</xsl:attribute>
1344
- <xsl:attribute name="wrap-option">wrap</xsl:attribute>
1345
- <xsl:apply-templates/>
1346
- </fo:block>
1347
- </xsl:template>
1348
-
1342
+
1349
1343
  <xsl:template match="un:references">
1350
1344
  <fo:block>
1351
1345
  <xsl:if test="not(un:title)">
@@ -2467,16 +2461,76 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
2467
2461
  </xsl:text>
2468
2462
  </xsl:variable>
2469
2463
 
2470
- <xsl:variable xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="lower">abcdefghijklmnopqrstuvwxyz</xsl:variable><xsl:variable xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="upper">ABCDEFGHIJKLMNOPQRSTUVWXYZ</xsl:variable><xsl:variable xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="en_chars" select="concat($lower,$upper,',.`1234567890-=~!@#$%^*()_+[]{}\|?/')"/><xsl:variable xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="linebreak" select="'&#8232;'"/><xsl:attribute-set xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="link-style">
2464
+ <xsl:variable xmlns:java="http://xml.apache.org/xalan/java" name="title-table">
2465
+
2466
+ <xsl:text>Table </xsl:text>
2467
+
2468
+
2469
+ </xsl:variable><xsl:variable xmlns:java="http://xml.apache.org/xalan/java" name="title-note">
2470
+
2471
+ <xsl:text>NOTE </xsl:text>
2472
+
2473
+
2474
+ </xsl:variable><xsl:variable xmlns:java="http://xml.apache.org/xalan/java" name="title-figure">
2475
+
2476
+ <xsl:text>Figure </xsl:text>
2477
+
2478
+
2479
+ </xsl:variable><xsl:variable xmlns:java="http://xml.apache.org/xalan/java" name="title-example">
2480
+
2481
+ <xsl:text>EXAMPLE </xsl:text>
2482
+
2483
+
2484
+ </xsl:variable><xsl:variable xmlns:java="http://xml.apache.org/xalan/java" name="title-inequality">Inequality </xsl:variable><xsl:variable xmlns:java="http://xml.apache.org/xalan/java" name="title-equation">Equation </xsl:variable><xsl:variable xmlns:java="http://xml.apache.org/xalan/java" name="title-annex">
2485
+
2486
+ <xsl:text>Annex </xsl:text>
2487
+
2488
+
2489
+ </xsl:variable><xsl:variable xmlns:java="http://xml.apache.org/xalan/java" name="title-appendix">
2490
+ <xsl:text>Appendix </xsl:text>
2491
+ </xsl:variable><xsl:variable xmlns:java="http://xml.apache.org/xalan/java" name="title-clause">
2492
+
2493
+ <xsl:text>Clause </xsl:text>
2494
+
2495
+
2496
+ </xsl:variable><xsl:variable xmlns:java="http://xml.apache.org/xalan/java" name="title-edition">
2497
+ <xsl:text>Edition </xsl:text>
2498
+ </xsl:variable><xsl:variable xmlns:java="http://xml.apache.org/xalan/java" name="title-toc">
2499
+
2500
+
2501
+ </xsl:variable><xsl:variable xmlns:java="http://xml.apache.org/xalan/java" name="title-page">Page</xsl:variable><xsl:variable xmlns:java="http://xml.apache.org/xalan/java" name="title-key">Key</xsl:variable><xsl:variable xmlns:java="http://xml.apache.org/xalan/java" name="title-where">where</xsl:variable><xsl:variable xmlns:java="http://xml.apache.org/xalan/java" name="title-descriptors">Descriptors</xsl:variable><xsl:variable xmlns:java="http://xml.apache.org/xalan/java" name="title-part-en">Part </xsl:variable><xsl:variable xmlns:java="http://xml.apache.org/xalan/java" name="title-part-fr">Partie </xsl:variable><xsl:variable xmlns:java="http://xml.apache.org/xalan/java" name="title-note-to-entry">Note # to entry: </xsl:variable><xsl:variable xmlns:java="http://xml.apache.org/xalan/java" name="title-modified">modified</xsl:variable><xsl:variable xmlns:java="http://xml.apache.org/xalan/java" name="title-source">SOURCE</xsl:variable><xsl:variable xmlns:java="http://xml.apache.org/xalan/java" name="title-keywords">Keywords</xsl:variable><xsl:variable xmlns:java="http://xml.apache.org/xalan/java" name="lower">abcdefghijklmnopqrstuvwxyz</xsl:variable><xsl:variable xmlns:java="http://xml.apache.org/xalan/java" name="upper">ABCDEFGHIJKLMNOPQRSTUVWXYZ</xsl:variable><xsl:variable xmlns:java="http://xml.apache.org/xalan/java" name="en_chars" select="concat($lower,$upper,',.`1234567890-=~!@#$%^*()_+[]{}\|?/')"/><xsl:variable xmlns:java="http://xml.apache.org/xalan/java" name="linebreak" select="'&#8232;'"/><xsl:attribute-set xmlns:java="http://xml.apache.org/xalan/java" name="link-style">
2502
+
2503
+
2504
+ </xsl:attribute-set><xsl:attribute-set xmlns:java="http://xml.apache.org/xalan/java" name="sourcecode-style">
2505
+
2506
+
2507
+
2508
+
2509
+
2510
+ <xsl:attribute name="font-family">Courier</xsl:attribute>
2511
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
2512
+ <xsl:attribute name="margin-top">6pt</xsl:attribute>
2513
+ <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
2514
+
2515
+
2516
+
2517
+
2518
+ </xsl:attribute-set><xsl:attribute-set xmlns:java="http://xml.apache.org/xalan/java" name="appendix-style">
2519
+
2520
+
2521
+
2522
+ </xsl:attribute-set><xsl:attribute-set xmlns:java="http://xml.apache.org/xalan/java" name="appendix-example-style">
2523
+
2471
2524
 
2472
2525
 
2473
- </xsl:attribute-set><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="text()">
2526
+ </xsl:attribute-set><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="text()">
2474
2527
  <xsl:value-of select="."/>
2475
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='br']">
2528
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='br']">
2476
2529
  <xsl:value-of select="$linebreak"/>
2477
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='td']//text() | *[local-name()='th']//text() | *[local-name()='dt']//text() | *[local-name()='dd']//text()" priority="1">
2478
- <xsl:call-template name="add-zero-spaces"/>
2479
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='table']">
2530
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='td']//text() | *[local-name()='th']//text() | *[local-name()='dt']//text() | *[local-name()='dd']//text()" priority="1">
2531
+ <!-- <xsl:call-template name="add-zero-spaces"/> -->
2532
+ <xsl:call-template name="add-zero-spaces-java"/>
2533
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='table']">
2480
2534
 
2481
2535
  <xsl:variable name="simple-table">
2482
2536
  <!-- <xsl:copy> -->
@@ -2513,33 +2567,13 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
2513
2567
 
2514
2568
 
2515
2569
 
2516
- <xsl:text>Table </xsl:text>
2517
- <xsl:choose>
2518
- <xsl:when test="ancestor::*[local-name()='executivesummary']"> <!-- NIST -->
2519
- <xsl:text>ES-</xsl:text><xsl:number format="1" count="*[local-name()='executivesummary']//*[local-name()='table'][not(@unnumbered) or @unnumbered != 'true']"/>
2520
- </xsl:when>
2521
- <xsl:when test="ancestor::*[local-name()='annex']">
2522
-
2523
-
2524
-
2525
-
2526
-
2527
-
2528
-
2529
- <xsl:variable name="annex-id" select="ancestor::*[local-name()='annex']/@id"/>
2530
- <xsl:number format="I." count="*[local-name()='annex']"/>
2531
- <xsl:number format="1" level="any" count="*[local-name()='table'][not(@unnumbered) or @unnumbered != 'true'][ancestor::*[local-name()='annex'][@id = $annex-id]]"/>
2532
-
2533
-
2534
- </xsl:when>
2535
- <xsl:otherwise>
2536
-
2537
-
2538
- <xsl:number format="A." count="*[local-name()='annex']"/>
2539
- <xsl:number format="1" level="any" count="//*[local-name()='table'] [not(ancestor::*[local-name()='annex']) and not(ancestor::*[local-name()='executivesummary']) and not(ancestor::*[local-name()='bibdata'])] [not(@unnumbered) or @unnumbered != 'true']"/>
2540
-
2541
- </xsl:otherwise>
2542
- </xsl:choose>
2570
+
2571
+
2572
+ <xsl:value-of select="$title-table"/>
2573
+
2574
+ <xsl:call-template name="getTableNumber"/>
2575
+
2576
+
2543
2577
  <xsl:if test="*[local-name()='name']">
2544
2578
 
2545
2579
  :
@@ -2609,6 +2643,7 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
2609
2643
 
2610
2644
 
2611
2645
 
2646
+
2612
2647
  <fo:table id="{@id}" table-layout="fixed" width="100%" margin-left="{$margin-left}mm" margin-right="{$margin-left}mm" table-omit-footer-at-break="true">
2613
2648
 
2614
2649
 
@@ -2623,9 +2658,10 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
2623
2658
 
2624
2659
 
2625
2660
 
2661
+
2626
2662
  <xsl:for-each select="xalan:nodeset($colwidths)//column">
2627
2663
  <xsl:choose>
2628
- <xsl:when test=". = 1">
2664
+ <xsl:when test=". = 1 or . = 0">
2629
2665
  <fo:table-column column-width="proportional-column-width(2)"/>
2630
2666
  </xsl:when>
2631
2667
  <xsl:otherwise>
@@ -2639,15 +2675,42 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
2639
2675
 
2640
2676
 
2641
2677
  </fo:block-container>
2642
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='table']/*[local-name()='name']"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='table']/*[local-name()='name']" mode="process">
2678
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" name="getTableNumber">
2679
+ <xsl:choose>
2680
+ <xsl:when test="ancestor::*[local-name()='executivesummary']"> <!-- NIST -->
2681
+ <xsl:text>ES-</xsl:text><xsl:number format="1" count="*[local-name()='executivesummary']//*[local-name()='table'][not(@unnumbered) or @unnumbered != 'true']"/>
2682
+ </xsl:when>
2683
+ <xsl:when test="ancestor::*[local-name()='annex']">
2684
+
2685
+
2686
+
2687
+
2688
+
2689
+
2690
+
2691
+ <xsl:variable name="annex-id" select="ancestor::*[local-name()='annex']/@id"/>
2692
+ <xsl:number format="I." count="*[local-name()='annex']"/>
2693
+ <xsl:number format="1" level="any" count="*[local-name()='table'][not(@unnumbered) or @unnumbered != 'true'][ancestor::*[local-name()='annex'][@id = $annex-id]]"/>
2694
+
2695
+
2696
+ </xsl:when>
2697
+ <xsl:otherwise>
2698
+
2699
+
2700
+ <xsl:number format="A." count="*[local-name()='annex']"/>
2701
+ <xsl:number format="1" level="any" count="//*[local-name()='table'] [not(ancestor::*[local-name()='annex']) and not(ancestor::*[local-name()='executivesummary']) and not(ancestor::*[local-name()='bibdata'])] [not(@unnumbered) or @unnumbered != 'true']"/>
2702
+
2703
+ </xsl:otherwise>
2704
+ </xsl:choose>
2705
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='table']/*[local-name()='name']"/><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='table']/*[local-name()='name']" mode="process">
2643
2706
  <xsl:apply-templates/>
2644
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="calculate-columns-numbers">
2707
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" name="calculate-columns-numbers">
2645
2708
  <xsl:param name="table-row"/>
2646
2709
  <xsl:variable name="columns-count" select="count($table-row/*)"/>
2647
2710
  <xsl:variable name="sum-colspans" select="sum($table-row/*/@colspan)"/>
2648
2711
  <xsl:variable name="columns-with-colspan" select="count($table-row/*[@colspan])"/>
2649
2712
  <xsl:value-of select="$columns-count + $sum-colspans - $columns-with-colspan"/>
2650
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="calculate-column-widths">
2713
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" name="calculate-column-widths">
2651
2714
  <xsl:param name="table"/>
2652
2715
  <xsl:param name="cols-count"/>
2653
2716
  <xsl:param name="curr-col" select="1"/>
@@ -2656,7 +2719,7 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
2656
2719
  <xsl:if test="$curr-col &lt;= $cols-count">
2657
2720
  <xsl:variable name="widths">
2658
2721
  <xsl:choose>
2659
- <xsl:when test="not($table)">
2722
+ <xsl:when test="not($table)"><!-- this branch is not using in production, for debug only -->
2660
2723
  <xsl:for-each select="*[local-name()='thead']//*[local-name()='tr']">
2661
2724
  <xsl:variable name="words">
2662
2725
  <xsl:call-template name="tokenize">
@@ -2695,9 +2758,16 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
2695
2758
  <xsl:apply-templates select="td[$curr-col]" mode="td_text"/>
2696
2759
  </xsl:variable>
2697
2760
  <xsl:variable name="words">
2761
+ <xsl:variable name="string_with_added_zerospaces">
2762
+ <xsl:call-template name="add-zero-spaces-java">
2763
+ <xsl:with-param name="text" select="$td_text"/>
2764
+ </xsl:call-template>
2765
+ </xsl:variable>
2698
2766
  <xsl:call-template name="tokenize">
2699
2767
  <!-- <xsl:with-param name="text" select="translate(td[$curr-col],'- —:', ' ')"/> -->
2700
- <xsl:with-param name="text" select="translate(normalize-space($td_text),'- —:', ' ')"/>
2768
+ <!-- 2009 thinspace -->
2769
+ <!-- <xsl:with-param name="text" select="translate(normalize-space($td_text),'- —:', ' ')"/> -->
2770
+ <xsl:with-param name="text" select="normalize-space(translate($string_with_added_zerospaces, '​', ' '))"/>
2701
2771
  </xsl:call-template>
2702
2772
  </xsl:variable>
2703
2773
  <xsl:variable name="max_length">
@@ -2738,17 +2808,24 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
2738
2808
  <xsl:with-param name="table" select="$table"/>
2739
2809
  </xsl:call-template>
2740
2810
  </xsl:if>
2741
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="text()" mode="td_text">
2811
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="text()" mode="td_text">
2742
2812
  <xsl:variable name="zero-space">​</xsl:variable>
2743
2813
  <xsl:value-of select="translate(., $zero-space, ' ')"/><xsl:text> </xsl:text>
2744
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='table2']"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='thead']"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='thead']" mode="process">
2814
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='termsource']" mode="td_text">
2815
+ <xsl:value-of select="*[local-name()='origin']/@citeas"/>
2816
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='link']" mode="td_text">
2817
+ <xsl:value-of select="@target"/>
2818
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='table2']"/><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='thead']"/><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='thead']" mode="process">
2819
+ <xsl:param name="cols-count"/>
2745
2820
  <!-- font-weight="bold" -->
2746
- <fo:table-header>
2821
+ <fo:table-header>
2822
+
2747
2823
  <xsl:apply-templates/>
2748
2824
  </fo:table-header>
2749
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='tfoot']"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='tfoot']" mode="process">
2825
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='tfoot']"/><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='tfoot']" mode="process">
2750
2826
  <xsl:apply-templates/>
2751
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="insertTableFooter">
2827
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" name="insertTableFooter">
2828
+ <xsl:param name="cols-count"/>
2752
2829
  <xsl:variable name="isNoteOrFnExist" select="../*[local-name()='note'] or ..//*[local-name()='fn'][local-name(..) != 'name']"/>
2753
2830
  <xsl:if test="../*[local-name()='tfoot'] or $isNoteOrFnExist = 'true'">
2754
2831
 
@@ -2759,22 +2836,7 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
2759
2836
  <!-- if there are note(s) or fn(s) then create footer row -->
2760
2837
  <xsl:if test="$isNoteOrFnExist = 'true'">
2761
2838
 
2762
- <xsl:variable name="cols-count">
2763
- <xsl:choose>
2764
- <xsl:when test="../*[local-name()='thead']">
2765
- <!-- <xsl:value-of select="count(../*[local-name()='thead']/*[local-name()='tr']/*[local-name()='th'])"/> -->
2766
- <xsl:call-template name="calculate-columns-numbers">
2767
- <xsl:with-param name="table-row" select="../*[local-name()='thead']/*[local-name()='tr'][1]"/>
2768
- </xsl:call-template>
2769
- </xsl:when>
2770
- <xsl:otherwise>
2771
- <!-- <xsl:value-of select="count(./*[local-name()='tr'][1]/*[local-name()='td'])"/> -->
2772
- <xsl:call-template name="calculate-columns-numbers">
2773
- <xsl:with-param name="table-row" select="./*[local-name()='tr'][1]"/>
2774
- </xsl:call-template>
2775
- </xsl:otherwise>
2776
- </xsl:choose>
2777
- </xsl:variable>
2839
+
2778
2840
 
2779
2841
  <fo:table-row>
2780
2842
  <fo:table-cell border="solid black 1pt" padding-left="1mm" padding-right="1mm" padding-top="1mm" number-columns-spanned="{$cols-count}">
@@ -2802,11 +2864,30 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
2802
2864
  </fo:table-footer>
2803
2865
 
2804
2866
  </xsl:if>
2805
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='tbody']">
2867
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='tbody']">
2806
2868
 
2807
- <xsl:apply-templates select="../*[local-name()='thead']" mode="process"/>
2869
+ <xsl:variable name="cols-count">
2870
+ <xsl:choose>
2871
+ <xsl:when test="../*[local-name()='thead']">
2872
+ <xsl:call-template name="calculate-columns-numbers">
2873
+ <xsl:with-param name="table-row" select="../*[local-name()='thead']/*[local-name()='tr'][1]"/>
2874
+ </xsl:call-template>
2875
+ </xsl:when>
2876
+ <xsl:otherwise>
2877
+ <xsl:call-template name="calculate-columns-numbers">
2878
+ <xsl:with-param name="table-row" select="./*[local-name()='tr'][1]"/>
2879
+ </xsl:call-template>
2880
+ </xsl:otherwise>
2881
+ </xsl:choose>
2882
+ </xsl:variable>
2883
+
2884
+ <xsl:apply-templates select="../*[local-name()='thead']" mode="process">
2885
+ <xsl:with-param name="cols-count" select="$cols-count"/>
2886
+ </xsl:apply-templates>
2808
2887
 
2809
- <xsl:call-template name="insertTableFooter"/>
2888
+ <xsl:call-template name="insertTableFooter">
2889
+ <xsl:with-param name="cols-count" select="$cols-count"/>
2890
+ </xsl:call-template>
2810
2891
 
2811
2892
  <fo:table-body>
2812
2893
  <xsl:apply-templates/>
@@ -2814,7 +2895,7 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
2814
2895
 
2815
2896
  </fo:table-body>
2816
2897
 
2817
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='tr']">
2898
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='tr']">
2818
2899
  <xsl:variable name="parent-name" select="local-name(..)"/>
2819
2900
  <!-- <xsl:variable name="namespace" select="substring-before(name(/*), '-')"/> -->
2820
2901
  <fo:table-row min-height="4mm">
@@ -2838,7 +2919,7 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
2838
2919
 
2839
2920
  <xsl:apply-templates/>
2840
2921
  </fo:table-row>
2841
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='th']">
2922
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='th']">
2842
2923
  <fo:table-cell text-align="{@align}" font-weight="bold" border="solid black 1pt" padding-left="1mm" display-align="center">
2843
2924
 
2844
2925
 
@@ -2870,7 +2951,7 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
2870
2951
  <xsl:apply-templates/>
2871
2952
  </fo:block>
2872
2953
  </fo:table-cell>
2873
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='td']">
2954
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='td']">
2874
2955
  <fo:table-cell text-align="{@align}" display-align="center" border="solid black 1pt" padding-left="1mm">
2875
2956
 
2876
2957
 
@@ -2899,6 +2980,7 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
2899
2980
  </xsl:attribute>
2900
2981
  </xsl:if>
2901
2982
  <fo:block>
2983
+
2902
2984
  <xsl:apply-templates/>
2903
2985
  </fo:block>
2904
2986
  <!-- <xsl:choose>
@@ -2914,16 +2996,18 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
2914
2996
 
2915
2997
 
2916
2998
  </fo:table-cell>
2917
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='table']/*[local-name()='note']"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='table']/*[local-name()='note']" mode="process">
2999
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='table']/*[local-name()='note']"/><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='table']/*[local-name()='note']" mode="process">
2918
3000
 
2919
3001
 
2920
3002
  <fo:block font-size="10pt" margin-bottom="12pt">
2921
3003
 
2922
3004
 
2923
3005
 
3006
+
2924
3007
  <fo:inline padding-right="2mm">
2925
3008
 
2926
- <xsl:text>NOTE </xsl:text>
3009
+
3010
+ <xsl:value-of select="$title-note"/>
2927
3011
 
2928
3012
 
2929
3013
 
@@ -2933,9 +3017,9 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
2933
3017
  <xsl:apply-templates mode="process"/>
2934
3018
  </fo:block>
2935
3019
 
2936
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='table']/*[local-name()='note']/*[local-name()='p']" mode="process">
3020
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='table']/*[local-name()='note']/*[local-name()='p']" mode="process">
2937
3021
  <xsl:apply-templates/>
2938
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="fn_display">
3022
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" name="fn_display">
2939
3023
  <xsl:variable name="references">
2940
3024
  <xsl:for-each select="..//*[local-name()='fn'][local-name(..) != 'name']">
2941
3025
  <fn reference="{@reference}" id="{@reference}_{ancestor::*[@id][1]/@id}">
@@ -2952,6 +3036,7 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
2952
3036
 
2953
3037
 
2954
3038
 
3039
+
2955
3040
  <fo:inline font-size="80%" padding-right="5mm" id="{@id}">
2956
3041
 
2957
3042
  <xsl:attribute name="vertical-align">super</xsl:attribute>
@@ -2971,7 +3056,7 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
2971
3056
  </fo:block>
2972
3057
  </xsl:if>
2973
3058
  </xsl:for-each>
2974
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="fn_name_display">
3059
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" name="fn_name_display">
2975
3060
  <!-- <xsl:variable name="references">
2976
3061
  <xsl:for-each select="*[local-name()='name']//*[local-name()='fn']">
2977
3062
  <fn reference="{@reference}" id="{@reference}_{ancestor::*[@id][1]/@id}">
@@ -2987,7 +3072,7 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
2987
3072
  <xsl:apply-templates/>
2988
3073
  </fo:block>
2989
3074
  </xsl:for-each>
2990
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="fn_display_figure">
3075
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" name="fn_display_figure">
2991
3076
  <xsl:variable name="key_iso">
2992
3077
  <!-- and (not(@class) or @class !='pseudocode') -->
2993
3078
  </xsl:variable>
@@ -3038,7 +3123,7 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
3038
3123
  </fo:block>
3039
3124
  </xsl:if>
3040
3125
 
3041
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='fn']">
3126
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='fn']">
3042
3127
  <!-- <xsl:variable name="namespace" select="substring-before(name(/*), '-')"/> -->
3043
3128
  <fo:inline font-size="80%" keep-with-previous.within-line="always">
3044
3129
 
@@ -3050,11 +3135,11 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
3050
3135
  <xsl:value-of select="@reference"/>
3051
3136
  </fo:basic-link>
3052
3137
  </fo:inline>
3053
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='fn']/*[local-name()='p']">
3138
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='fn']/*[local-name()='p']">
3054
3139
  <fo:inline>
3055
3140
  <xsl:apply-templates/>
3056
3141
  </fo:inline>
3057
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dl']">
3142
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='dl']">
3058
3143
  <xsl:variable name="parent" select="local-name(..)"/>
3059
3144
 
3060
3145
  <xsl:variable name="key_iso">
@@ -3066,8 +3151,8 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
3066
3151
 
3067
3152
 
3068
3153
  <fo:block margin-bottom="12pt" text-align="left">
3069
-
3070
- <xsl:text>where </xsl:text>
3154
+
3155
+ <xsl:value-of select="$title-where"/><xsl:text> </xsl:text>
3071
3156
  <xsl:apply-templates select="*[local-name()='dt']/*"/>
3072
3157
  <xsl:text/>
3073
3158
  <xsl:apply-templates select="*[local-name()='dd']/*" mode="inline"/>
@@ -3080,7 +3165,7 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
3080
3165
 
3081
3166
 
3082
3167
 
3083
- <xsl:text>where</xsl:text>
3168
+ <xsl:value-of select="$title-where"/>
3084
3169
  </fo:block>
3085
3170
  </xsl:when>
3086
3171
  <xsl:when test="$parent = 'figure' and (not(../@class) or ../@class !='pseudocode')">
@@ -3088,7 +3173,7 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
3088
3173
 
3089
3174
 
3090
3175
 
3091
- <xsl:text>Key</xsl:text>
3176
+ <xsl:value-of select="$title-key"/>
3092
3177
  </fo:block>
3093
3178
  </xsl:when>
3094
3179
  </xsl:choose>
@@ -3099,9 +3184,11 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
3099
3184
 
3100
3185
 
3101
3186
 
3187
+
3102
3188
  <fo:block>
3103
3189
 
3104
3190
 
3191
+
3105
3192
  <!-- create virtual html table for dl/[dt and dd] -->
3106
3193
  <xsl:variable name="html-table">
3107
3194
  <xsl:variable name="ns" select="substring-before(name(/*), '-')"/>
@@ -3153,7 +3240,7 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
3153
3240
  <xsl:otherwise>
3154
3241
  <xsl:for-each select="xalan:nodeset($colwidths)//column">
3155
3242
  <xsl:choose>
3156
- <xsl:when test=". = 1">
3243
+ <xsl:when test=". = 1 or . = 0">
3157
3244
  <fo:table-column column-width="proportional-column-width(2)"/>
3158
3245
  </xsl:when>
3159
3246
  <xsl:otherwise>
@@ -3176,7 +3263,7 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
3176
3263
  </fo:block>
3177
3264
  </fo:block>
3178
3265
  </xsl:if>
3179
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dl']/*[local-name()='note']">
3266
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='dl']/*[local-name()='note']">
3180
3267
  <xsl:param name="key_iso"/>
3181
3268
 
3182
3269
  <!-- <tr>
@@ -3192,7 +3279,7 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
3192
3279
  <xsl:if test="normalize-space($key_iso) = 'true'">
3193
3280
  <xsl:attribute name="margin-top">0</xsl:attribute>
3194
3281
  </xsl:if>
3195
- NOTE
3282
+ <xsl:value-of select="$title-note"/>
3196
3283
  </fo:block>
3197
3284
  </fo:table-cell>
3198
3285
  <fo:table-cell>
@@ -3201,7 +3288,7 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
3201
3288
  </fo:block>
3202
3289
  </fo:table-cell>
3203
3290
  </fo:table-row>
3204
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dt']" mode="dl">
3291
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='dt']" mode="dl">
3205
3292
  <tr>
3206
3293
  <td>
3207
3294
  <xsl:apply-templates/>
@@ -3214,11 +3301,12 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
3214
3301
  </td>
3215
3302
  </tr>
3216
3303
 
3217
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dt']">
3304
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='dt']">
3218
3305
  <xsl:param name="key_iso"/>
3219
3306
 
3220
3307
  <fo:table-row>
3221
3308
  <fo:table-cell>
3309
+
3222
3310
  <fo:block margin-top="6pt">
3223
3311
 
3224
3312
 
@@ -3228,6 +3316,9 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
3228
3316
  </xsl:if>
3229
3317
 
3230
3318
 
3319
+
3320
+
3321
+
3231
3322
  <xsl:apply-templates/>
3232
3323
 
3233
3324
  </fo:block>
@@ -3243,37 +3334,37 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
3243
3334
  </fo:table-cell>
3244
3335
  </fo:table-row>
3245
3336
 
3246
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dd']" mode="dl"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dd']" mode="dl_process">
3337
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='dd']" mode="dl"/><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='dd']" mode="dl_process">
3247
3338
  <xsl:apply-templates/>
3248
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dd']"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dd']" mode="process">
3339
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='dd']"/><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='dd']" mode="process">
3249
3340
  <xsl:apply-templates/>
3250
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dd']/*[local-name()='p']" mode="inline">
3341
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='dd']/*[local-name()='p']" mode="inline">
3251
3342
  <fo:inline><xsl:text> </xsl:text><xsl:apply-templates/></fo:inline>
3252
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='em']">
3343
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='em']">
3253
3344
  <fo:inline font-style="italic">
3254
3345
  <xsl:apply-templates/>
3255
3346
  </fo:inline>
3256
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='strong']">
3347
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='strong']">
3257
3348
  <fo:inline font-weight="bold">
3258
3349
  <xsl:apply-templates/>
3259
3350
  </fo:inline>
3260
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='sup']">
3351
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='sup']">
3261
3352
  <fo:inline font-size="80%" vertical-align="super">
3262
3353
  <xsl:apply-templates/>
3263
3354
  </fo:inline>
3264
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='sub']">
3355
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='sub']">
3265
3356
  <fo:inline font-size="80%" vertical-align="sub">
3266
3357
  <xsl:apply-templates/>
3267
3358
  </fo:inline>
3268
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='tt']">
3269
- <fo:inline font-family="Courier" font-size="10pt">
3359
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='tt']">
3360
+ <fo:inline font-family="Courier" font-size="10pt">
3270
3361
  <xsl:apply-templates/>
3271
3362
  </fo:inline>
3272
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='del']">
3363
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='del']">
3273
3364
  <fo:inline font-size="10pt" color="red" text-decoration="line-through">
3274
3365
  <xsl:apply-templates/>
3275
3366
  </fo:inline>
3276
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="text()[ancestor::*[local-name()='smallcap']]">
3367
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="text()[ancestor::*[local-name()='smallcap']]">
3277
3368
  <xsl:variable name="text" select="normalize-space(.)"/>
3278
3369
  <fo:inline font-size="75%">
3279
3370
  <xsl:if test="string-length($text) &gt; 0">
@@ -3282,7 +3373,7 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
3282
3373
  </xsl:call-template>
3283
3374
  </xsl:if>
3284
3375
  </fo:inline>
3285
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="recursiveSmallCaps">
3376
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" name="recursiveSmallCaps">
3286
3377
  <xsl:param name="text"/>
3287
3378
  <xsl:variable name="char" select="substring($text,1,1)"/>
3288
3379
  <xsl:variable name="upperCase" select="translate($char, $lower, $upper)"/>
@@ -3301,7 +3392,7 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
3301
3392
  <xsl:with-param name="text" select="substring($text,2)"/>
3302
3393
  </xsl:call-template>
3303
3394
  </xsl:if>
3304
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="tokenize">
3395
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" name="tokenize">
3305
3396
  <xsl:param name="text"/>
3306
3397
  <xsl:param name="separator" select="' '"/>
3307
3398
  <xsl:choose>
@@ -3349,7 +3440,7 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
3349
3440
  </xsl:call-template>
3350
3441
  </xsl:otherwise>
3351
3442
  </xsl:choose>
3352
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="max_length">
3443
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" name="max_length">
3353
3444
  <xsl:param name="words"/>
3354
3445
  <xsl:for-each select="$words//word">
3355
3446
  <xsl:sort select="." data-type="number" order="descending"/>
@@ -3357,7 +3448,11 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
3357
3448
  <xsl:value-of select="."/>
3358
3449
  </xsl:if>
3359
3450
  </xsl:for-each>
3360
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="add-zero-spaces">
3451
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" name="add-zero-spaces-java">
3452
+ <xsl:param name="text" select="."/>
3453
+ <!-- add zero-width space (#x200B) after characters: dash, dot, colon, equal, underscore, em dash, thin space -->
3454
+ <xsl:value-of select="java:replaceAll(java:java.lang.String.new($text),'(-|\.|:|=|_|—| )','$1​')"/>
3455
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" name="add-zero-spaces">
3361
3456
  <xsl:param name="text" select="."/>
3362
3457
  <xsl:variable name="zero-space-after-chars">-</xsl:variable>
3363
3458
  <xsl:variable name="zero-space-after-dot">.</xsl:variable>
@@ -3410,7 +3505,7 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
3410
3505
  <xsl:value-of select="$text"/>
3411
3506
  </xsl:otherwise>
3412
3507
  </xsl:choose>
3413
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="add-zero-spaces-equal">
3508
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" name="add-zero-spaces-equal">
3414
3509
  <xsl:param name="text" select="."/>
3415
3510
  <xsl:variable name="zero-space-after-equals">==========</xsl:variable>
3416
3511
  <xsl:variable name="zero-space-after-equal">=</xsl:variable>
@@ -3436,7 +3531,7 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
3436
3531
  <xsl:value-of select="$text"/>
3437
3532
  </xsl:otherwise>
3438
3533
  </xsl:choose>
3439
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="getSimpleTable">
3534
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" name="getSimpleTable">
3440
3535
  <xsl:variable name="simple-table">
3441
3536
 
3442
3537
  <!-- Step 1. colspan processing -->
@@ -3463,9 +3558,9 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
3463
3558
  </xsl:choose> -->
3464
3559
  </xsl:variable>
3465
3560
  <xsl:copy-of select="$simple-table"/>
3466
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='thead'] | *[local-name()='tbody']" mode="simple-table-colspan">
3561
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='thead'] | *[local-name()='tbody']" mode="simple-table-colspan">
3467
3562
  <xsl:apply-templates mode="simple-table-colspan"/>
3468
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='fn']" mode="simple-table-colspan"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='th'] | *[local-name()='td']" mode="simple-table-colspan">
3563
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='fn']" mode="simple-table-colspan"/><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='th'] | *[local-name()='td']" mode="simple-table-colspan">
3469
3564
  <xsl:choose>
3470
3565
  <xsl:when test="@colspan">
3471
3566
  <xsl:variable name="td">
@@ -3487,16 +3582,16 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
3487
3582
  </xsl:element>
3488
3583
  </xsl:otherwise>
3489
3584
  </xsl:choose>
3490
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="@colspan" mode="simple-table-colspan"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='tr']" mode="simple-table-colspan">
3585
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="@colspan" mode="simple-table-colspan"/><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='tr']" mode="simple-table-colspan">
3491
3586
  <xsl:element name="tr">
3492
3587
  <xsl:apply-templates select="@*" mode="simple-table-colspan"/>
3493
3588
  <xsl:apply-templates mode="simple-table-colspan"/>
3494
3589
  </xsl:element>
3495
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="@*|node()" mode="simple-table-colspan">
3590
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="@*|node()" mode="simple-table-colspan">
3496
3591
  <xsl:copy>
3497
3592
  <xsl:apply-templates select="@*|node()" mode="simple-table-colspan"/>
3498
3593
  </xsl:copy>
3499
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="repeatNode">
3594
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" name="repeatNode">
3500
3595
  <xsl:param name="count"/>
3501
3596
  <xsl:param name="node"/>
3502
3597
 
@@ -3507,18 +3602,18 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
3507
3602
  </xsl:call-template>
3508
3603
  <xsl:copy-of select="$node"/>
3509
3604
  </xsl:if>
3510
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="@*|node()" mode="simple-table-rowspan">
3605
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="@*|node()" mode="simple-table-rowspan">
3511
3606
  <xsl:copy>
3512
3607
  <xsl:apply-templates select="@*|node()" mode="simple-table-rowspan"/>
3513
3608
  </xsl:copy>
3514
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="tbody" mode="simple-table-rowspan">
3609
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="tbody" mode="simple-table-rowspan">
3515
3610
  <xsl:copy>
3516
3611
  <xsl:copy-of select="tr[1]"/>
3517
3612
  <xsl:apply-templates select="tr[2]" mode="simple-table-rowspan">
3518
3613
  <xsl:with-param name="previousRow" select="tr[1]"/>
3519
3614
  </xsl:apply-templates>
3520
3615
  </xsl:copy>
3521
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="tr" mode="simple-table-rowspan">
3616
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="tr" mode="simple-table-rowspan">
3522
3617
  <xsl:param name="previousRow"/>
3523
3618
  <xsl:variable name="currentRow" select="."/>
3524
3619
 
@@ -3552,13 +3647,13 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
3552
3647
  <xsl:apply-templates select="following-sibling::tr[1]" mode="simple-table-rowspan">
3553
3648
  <xsl:with-param name="previousRow" select="$newRow"/>
3554
3649
  </xsl:apply-templates>
3555
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="getLang">
3650
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" name="getLang">
3556
3651
  <xsl:variable name="language" select="//*[local-name()='bibdata']//*[local-name()='language']"/>
3557
3652
  <xsl:choose>
3558
3653
  <xsl:when test="$language = 'English'">en</xsl:when>
3559
3654
  <xsl:otherwise><xsl:value-of select="$language"/></xsl:otherwise>
3560
3655
  </xsl:choose>
3561
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="capitalizeWords">
3656
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" name="capitalizeWords">
3562
3657
  <xsl:param name="str"/>
3563
3658
  <xsl:variable name="str2" select="translate($str, '-', ' ')"/>
3564
3659
  <xsl:choose>
@@ -3576,19 +3671,19 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
3576
3671
  <xsl:value-of select="substring($str2, 2)"/>
3577
3672
  </xsl:otherwise>
3578
3673
  </xsl:choose>
3579
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="mathml:math">
3674
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="mathml:math">
3580
3675
  <fo:inline font-family="STIX2Math">
3581
3676
  <fo:instream-foreign-object fox:alt-text="Math">
3582
3677
  <xsl:copy-of select="."/>
3583
3678
  </fo:instream-foreign-object>
3584
3679
  </fo:inline>
3585
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='localityStack']">
3680
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='localityStack']">
3586
3681
  <xsl:for-each select="*[local-name()='locality']">
3587
3682
  <xsl:if test="position() =1"><xsl:text>, </xsl:text></xsl:if>
3588
3683
  <xsl:apply-templates select="."/>
3589
3684
  <xsl:if test="position() != last()"><xsl:text>; </xsl:text></xsl:if>
3590
3685
  </xsl:for-each>
3591
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='link']" name="link">
3686
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='link']" name="link">
3592
3687
  <xsl:variable name="target">
3593
3688
  <xsl:choose>
3594
3689
  <xsl:when test="starts-with(normalize-space(@target), 'mailto:')">
@@ -3618,4 +3713,122 @@ k7xSqrdd135+AIqVLd+k6ICjZETxZhgY8HLnv3VGvTZa/+9kz/qlzuHctP4A89UE73L1sCJO
3618
3713
  </xsl:otherwise>
3619
3714
  </xsl:choose>
3620
3715
  </fo:inline>
3716
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='sourcecode']" name="sourcecode">
3717
+ <fo:block xsl:use-attribute-sets="sourcecode-style">
3718
+ <!-- <xsl:choose>
3719
+ <xsl:when test="@lang = 'en'"></xsl:when>
3720
+ <xsl:otherwise> -->
3721
+ <xsl:attribute name="white-space">pre</xsl:attribute>
3722
+ <xsl:attribute name="wrap-option">wrap</xsl:attribute>
3723
+ <!-- </xsl:otherwise>
3724
+ </xsl:choose> -->
3725
+ <xsl:apply-templates/>
3726
+ </fo:block>
3727
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='bookmark']">
3728
+ <fo:inline id="{@id}"/>
3729
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='appendix']">
3730
+ <fo:block id="{@id}" xsl:use-attribute-sets="appendix-style">
3731
+ <fo:inline padding-right="5mm"><xsl:value-of select="$title-appendix"/> <xsl:number/></fo:inline>
3732
+ <xsl:apply-templates select="*[local-name()='title']" mode="process"/>
3733
+ </fo:block>
3734
+ <xsl:apply-templates/>
3735
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='appendix']/*[local-name()='title']"/><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='appendix']/*[local-name()='title']" mode="process">
3736
+ <fo:inline><xsl:apply-templates/></fo:inline>
3737
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='appendix']//*[local-name()='example']">
3738
+ <fo:block xsl:use-attribute-sets="appendix-example-style">
3739
+ <xsl:variable name="claims_id" select="ancestor::*[local-name()='clause'][1]/@id"/>
3740
+ <xsl:value-of select="$title-example"/>
3741
+ <xsl:if test="count(ancestor::*[local-name()='clause'][1]//*[local-name()='example']) &gt; 1">
3742
+ <xsl:number count="*[local-name()='example'][ancestor::*[local-name()='clause'][@id = $claims_id]]" level="any"/><xsl:text> </xsl:text>
3743
+ </xsl:if>
3744
+ <xsl:if test="*[local-name()='name']">
3745
+ <xsl:text>— </xsl:text><xsl:apply-templates select="*[local-name()='name']" mode="process"/>
3746
+ </xsl:if>
3747
+ </fo:block>
3748
+ <xsl:apply-templates/>
3749
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='appendix']//*[local-name()='example']/*[local-name()='name']"/><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name()='appendix']//*[local-name()='example']/*[local-name()='name']" mode="process">
3750
+ <fo:inline><xsl:apply-templates/></fo:inline>
3751
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name() = 'callout']">
3752
+ <fo:basic-link internal-destination="{@target}" fox:alt-text="{@target}">&lt;<xsl:apply-templates/>&gt;</fo:basic-link>
3753
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name() = 'annotation']">
3754
+ <xsl:variable name="annotation-id" select="@id"/>
3755
+ <xsl:variable name="callout" select="//*[@target = $annotation-id]/text()"/>
3756
+ <fo:block id="{$annotation-id}" white-space="nowrap">
3757
+ <fo:inline>
3758
+ <xsl:apply-templates>
3759
+ <xsl:with-param name="callout" select="concat('&lt;', $callout, '&gt; ')"/>
3760
+ </xsl:apply-templates>
3761
+ </fo:inline>
3762
+ </fo:block>
3763
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" match="*[local-name() = 'annotation']/*[local-name() = 'p']">
3764
+ <xsl:param name="callout"/>
3765
+ <fo:inline id="{@id}">
3766
+ <!-- for first p in annotation, put <x> -->
3767
+ <xsl:if test="not(preceding-sibling::*[local-name() = 'p'])"><xsl:value-of select="$callout"/></xsl:if>
3768
+ <xsl:apply-templates/>
3769
+ </fo:inline>
3770
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" name="convertDate">
3771
+ <xsl:param name="date"/>
3772
+ <xsl:param name="format" select="'short'"/>
3773
+ <xsl:variable name="year" select="substring($date, 1, 4)"/>
3774
+ <xsl:variable name="month" select="substring($date, 6, 2)"/>
3775
+ <xsl:variable name="day" select="substring($date, 9, 2)"/>
3776
+ <xsl:variable name="monthStr">
3777
+ <xsl:choose>
3778
+ <xsl:when test="$month = '01'">January</xsl:when>
3779
+ <xsl:when test="$month = '02'">February</xsl:when>
3780
+ <xsl:when test="$month = '03'">March</xsl:when>
3781
+ <xsl:when test="$month = '04'">April</xsl:when>
3782
+ <xsl:when test="$month = '05'">May</xsl:when>
3783
+ <xsl:when test="$month = '06'">June</xsl:when>
3784
+ <xsl:when test="$month = '07'">July</xsl:when>
3785
+ <xsl:when test="$month = '08'">August</xsl:when>
3786
+ <xsl:when test="$month = '09'">September</xsl:when>
3787
+ <xsl:when test="$month = '10'">October</xsl:when>
3788
+ <xsl:when test="$month = '11'">November</xsl:when>
3789
+ <xsl:when test="$month = '12'">December</xsl:when>
3790
+ </xsl:choose>
3791
+ </xsl:variable>
3792
+ <xsl:variable name="result">
3793
+ <xsl:choose>
3794
+ <xsl:when test="$format = 'short' or $day = ''">
3795
+ <xsl:value-of select="normalize-space(concat($monthStr, ' ', $year))"/>
3796
+ </xsl:when>
3797
+ <xsl:otherwise>
3798
+ <xsl:value-of select="normalize-space(concat($monthStr, ' ', $day, ', ' , $year))"/>
3799
+ </xsl:otherwise>
3800
+ </xsl:choose>
3801
+ </xsl:variable>
3802
+ <xsl:value-of select="$result"/>
3803
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" name="insertKeywords">
3804
+ <xsl:param name="sorting" select="'true'"/>
3805
+ <xsl:param name="charAtEnd" select="'.'"/>
3806
+ <xsl:param name="charDelim" select="', '"/>
3807
+ <xsl:choose>
3808
+ <xsl:when test="$sorting = 'true' or $sorting = 'yes'">
3809
+ <xsl:for-each select="/*/*[local-name() = 'bibdata']//*[local-name() = 'keyword']">
3810
+ <xsl:sort data-type="text" order="ascending"/>
3811
+ <xsl:call-template name="insertKeyword">
3812
+ <xsl:with-param name="charAtEnd" select="$charAtEnd"/>
3813
+ <xsl:with-param name="charDelim" select="$charDelim"/>
3814
+ </xsl:call-template>
3815
+ </xsl:for-each>
3816
+ </xsl:when>
3817
+ <xsl:otherwise>
3818
+ <xsl:for-each select="/*/*[local-name() = 'bibdata']//*[local-name() = 'keyword']">
3819
+ <xsl:call-template name="insertKeyword">
3820
+ <xsl:with-param name="charAtEnd" select="$charAtEnd"/>
3821
+ <xsl:with-param name="charDelim" select="$charDelim"/>
3822
+ </xsl:call-template>
3823
+ </xsl:for-each>
3824
+ </xsl:otherwise>
3825
+ </xsl:choose>
3826
+ </xsl:template><xsl:template xmlns:java="http://xml.apache.org/xalan/java" name="insertKeyword">
3827
+ <xsl:param name="charAtEnd"/>
3828
+ <xsl:param name="charDelim"/>
3829
+ <xsl:apply-templates/>
3830
+ <xsl:choose>
3831
+ <xsl:when test="position() != last()"><xsl:value-of select="$charDelim"/></xsl:when>
3832
+ <xsl:otherwise><xsl:value-of select="$charAtEnd"/></xsl:otherwise>
3833
+ </xsl:choose>
3621
3834
  </xsl:template></xsl:stylesheet>