metanorma-iso 1.10.1 → 1.10.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/ubuntu.yml +1 -1
- data/Gemfile +1 -1
- data/lib/asciidoctor/iso/base.rb +1 -1
- data/lib/asciidoctor/iso/basicdoc.rng +1 -11
- data/lib/asciidoctor/iso/biblio.rng +0 -2
- data/lib/asciidoctor/iso/front.rb +17 -4
- data/lib/asciidoctor/iso/front_id.rb +20 -17
- data/lib/asciidoctor/iso/isodoc.rng +61 -19
- data/lib/asciidoctor/iso/isostandard-amd.rng +1 -1
- data/lib/asciidoctor/iso/isostandard.rng +15 -3
- data/lib/asciidoctor/iso/reqt.rng +1 -1
- data/lib/asciidoctor/iso/section.rb +1 -1
- data/lib/asciidoctor/iso/validate.rb +1 -1
- data/lib/asciidoctor/iso/validate_image.rb +1 -1
- data/lib/asciidoctor/iso/validate_section.rb +1 -1
- data/lib/isodoc/iso/base_convert.rb +14 -31
- data/lib/isodoc/iso/html/isodoc.css +0 -1
- data/lib/isodoc/iso/html/isodoc.scss +0 -1
- data/lib/isodoc/iso/html/style-human.css +40 -9
- data/lib/isodoc/iso/html/style-human.scss +36 -9
- data/lib/isodoc/iso/html/style-iso.css +35 -6
- data/lib/isodoc/iso/html/style-iso.scss +31 -6
- data/lib/isodoc/iso/html/wordstyle.css +10 -8
- data/lib/isodoc/iso/html/wordstyle.scss +10 -8
- data/lib/isodoc/iso/html_convert.rb +81 -22
- data/lib/isodoc/iso/index.rb +53 -45
- data/lib/isodoc/iso/iso.amendment.xsl +333 -113
- data/lib/isodoc/iso/iso.international-standard.xsl +333 -113
- data/lib/isodoc/iso/isosts_convert.rb +6 -2
- data/lib/isodoc/iso/metadata.rb +27 -22
- data/lib/isodoc/iso/presentation_xml_convert.rb +60 -25
- data/lib/isodoc/iso/sts_convert.rb +3 -2
- data/lib/isodoc/iso/word_convert.rb +0 -2
- data/lib/metanorma/iso/processor.rb +2 -2
- data/lib/metanorma/iso/version.rb +1 -1
- data/metanorma-iso.gemspec +3 -3
- data/spec/asciidoctor/base_spec.rb +397 -545
- data/spec/asciidoctor/blocks_spec.rb +4 -4
- data/spec/asciidoctor/cleanup_spec.rb +15 -12
- data/spec/asciidoctor/refs_spec.rb +87 -84
- data/spec/isodoc/amd_spec.rb +261 -250
- data/spec/isodoc/i18n_spec.rb +7 -7
- data/spec/isodoc/inline_spec.rb +242 -216
- data/spec/isodoc/iso_spec.rb +3 -1
- data/spec/isodoc/postproc_spec.rb +111 -28
- data/spec/isodoc/section_spec.rb +3 -3
- data/spec/isodoc/terms_spec.rb +34 -41
- data/spec/isodoc/xref_spec.rb +3 -3
- data/spec/metanorma/processor_spec.rb +110 -14
- data/spec/vcr_cassettes/docrels.yml +37 -427
- metadata +8 -8
@@ -9,7 +9,7 @@
|
|
9
9
|
|
10
10
|
|
11
11
|
|
12
|
-
<xsl:key name="kfn" match="
|
12
|
+
<xsl:key name="kfn" match="*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure') and not(ancestor::*[local-name() = 'name'])])]" use="@reference"/>
|
13
13
|
|
14
14
|
<xsl:key name="attachments" match="iso:eref[contains(@bibitemid, '.exp')]" use="@bibitemid"/>
|
15
15
|
|
@@ -1423,7 +1423,9 @@
|
|
1423
1423
|
|
1424
1424
|
<xsl:template name="getListItemFormat">
|
1425
1425
|
<xsl:choose>
|
1426
|
-
<xsl:when test="local-name(..) = 'ul'"
|
1426
|
+
<xsl:when test="local-name(..) = 'ul'">
|
1427
|
+
<xsl:call-template name="setULLabel"/>
|
1428
|
+
</xsl:when>
|
1427
1429
|
<xsl:otherwise> <!-- for ordered lists -->
|
1428
1430
|
<xsl:choose>
|
1429
1431
|
<xsl:when test="../@type = 'arabic'">
|
@@ -1545,7 +1547,7 @@
|
|
1545
1547
|
</xsl:choose>
|
1546
1548
|
</xsl:template>
|
1547
1549
|
|
1548
|
-
<xsl:template match="iso:title">
|
1550
|
+
<xsl:template match="iso:title" name="title">
|
1549
1551
|
|
1550
1552
|
<xsl:variable name="level">
|
1551
1553
|
<xsl:call-template name="getLevel"/>
|
@@ -1686,69 +1688,19 @@
|
|
1686
1688
|
<xsl:template match="iso:li//iso:p//text()">
|
1687
1689
|
<xsl:choose>
|
1688
1690
|
<xsl:when test="contains(., '	')">
|
1691
|
+
<!-- <fo:inline white-space="pre"><xsl:value-of select="translate(., $thinspace, ' ')"/></fo:inline> -->
|
1689
1692
|
<fo:inline white-space="pre"><xsl:value-of select="."/></fo:inline>
|
1690
1693
|
</xsl:when>
|
1691
1694
|
<xsl:otherwise>
|
1695
|
+
<!-- <xsl:value-of select="translate(., $thinspace, ' ')"/> -->
|
1692
1696
|
<xsl:value-of select="."/>
|
1693
1697
|
</xsl:otherwise>
|
1694
1698
|
</xsl:choose>
|
1695
1699
|
|
1696
1700
|
</xsl:template>
|
1697
1701
|
|
1698
|
-
<!--
|
1699
|
-
<fn reference="1">
|
1700
|
-
<p id="_8e5cf917-f75a-4a49-b0aa-1714cb6cf954">Formerly denoted as 15 % (m/m).</p>
|
1701
|
-
</fn>
|
1702
|
-
-->
|
1703
1702
|
|
1704
|
-
<xsl:variable name="p_fn">
|
1705
|
-
<xsl:for-each select="//iso:p/iso:fn[generate-id(.)=generate-id(key('kfn',@reference)[1])]">
|
1706
|
-
<!-- copy unique fn -->
|
1707
|
-
<fn gen_id="{generate-id(.)}">
|
1708
|
-
<xsl:copy-of select="@*"/>
|
1709
|
-
<xsl:copy-of select="node()"/>
|
1710
|
-
</fn>
|
1711
|
-
</xsl:for-each>
|
1712
|
-
</xsl:variable>
|
1713
1703
|
|
1714
|
-
<xsl:template match="iso:p/iso:fn" priority="2">
|
1715
|
-
<xsl:variable name="gen_id" select="generate-id(.)"/>
|
1716
|
-
<xsl:variable name="reference" select="@reference"/>
|
1717
|
-
<xsl:variable name="number">
|
1718
|
-
<!-- <xsl:number level="any" count="iso:p/iso:fn"/> -->
|
1719
|
-
<xsl:value-of select="count(xalan:nodeset($p_fn)//fn[@reference = $reference]/preceding-sibling::fn) + 1"/>
|
1720
|
-
</xsl:variable>
|
1721
|
-
<xsl:choose>
|
1722
|
-
<xsl:when test="xalan:nodeset($p_fn)//fn[@gen_id = $gen_id]">
|
1723
|
-
<fo:footnote>
|
1724
|
-
<fo:inline font-size="80%" keep-with-previous.within-line="always" vertical-align="super">
|
1725
|
-
<fo:basic-link internal-destination="footnote_{@reference}_{$number}" fox:alt-text="footnote {@reference} {$number}">
|
1726
|
-
<!-- <xsl:value-of select="@reference"/> -->
|
1727
|
-
<xsl:value-of select="$number + count(//iso:bibitem[ancestor::iso:references[@normative='true']]/iso:note)"/><xsl:text>)</xsl:text>
|
1728
|
-
</fo:basic-link>
|
1729
|
-
</fo:inline>
|
1730
|
-
<fo:footnote-body>
|
1731
|
-
<fo:block font-size="10pt" margin-bottom="12pt">
|
1732
|
-
<fo:inline id="footnote_{@reference}_{$number}" keep-with-next.within-line="always" padding-right="3mm"> <!-- font-size="60%" alignment-baseline="hanging" -->
|
1733
|
-
<xsl:value-of select="$number + count(//iso:bibitem[ancestor::iso:references[@normative='true']]/iso:note)"/><xsl:text>)</xsl:text>
|
1734
|
-
</fo:inline>
|
1735
|
-
<xsl:for-each select="iso:p">
|
1736
|
-
<xsl:apply-templates/>
|
1737
|
-
</xsl:for-each>
|
1738
|
-
</fo:block>
|
1739
|
-
</fo:footnote-body>
|
1740
|
-
</fo:footnote>
|
1741
|
-
</xsl:when>
|
1742
|
-
<xsl:otherwise>
|
1743
|
-
<fo:inline font-size="60%" keep-with-previous.within-line="always" vertical-align="super">
|
1744
|
-
<fo:basic-link internal-destination="footnote_{@reference}_{$number}" fox:alt-text="footnote {@reference} {$number}">
|
1745
|
-
<xsl:value-of select="$number + count(//iso:bibitem/iso:note)"/>
|
1746
|
-
</fo:basic-link>
|
1747
|
-
</fo:inline>
|
1748
|
-
</xsl:otherwise>
|
1749
|
-
</xsl:choose>
|
1750
|
-
</xsl:template>
|
1751
|
-
|
1752
1704
|
<xsl:template match="iso:p/iso:fn/iso:p">
|
1753
1705
|
<xsl:apply-templates/>
|
1754
1706
|
</xsl:template>
|
@@ -1801,6 +1753,7 @@
|
|
1801
1753
|
<xsl:apply-templates select="ancestor::iso:term[1]/iso:name" mode="presentation"/>
|
1802
1754
|
</fo:block>
|
1803
1755
|
<fo:block font-weight="bold" keep-with-next="always">
|
1756
|
+
<xsl:call-template name="setStyle_preferred"/>
|
1804
1757
|
<xsl:apply-templates/>
|
1805
1758
|
</fo:block>
|
1806
1759
|
</fo:block>
|
@@ -2010,6 +1963,11 @@
|
|
2010
1963
|
<!-- End of Index processing -->
|
2011
1964
|
<!-- =================== -->
|
2012
1965
|
|
1966
|
+
<!-- <xsl:variable name="thinspace" select="' '"/>
|
1967
|
+
<xsl:template match="text()[contains(., $thinspace)]">
|
1968
|
+
<xsl:value-of select="translate(., $thinspace, ' ')"/>
|
1969
|
+
</xsl:template> -->
|
1970
|
+
|
2013
1971
|
|
2014
1972
|
<xsl:template name="insertHeaderFooter">
|
2015
1973
|
<xsl:param name="font-weight" select="'bold'"/>
|
@@ -2740,6 +2698,76 @@
|
|
2740
2698
|
|
2741
2699
|
</xsl:attribute-set><xsl:attribute-set name="toc-style">
|
2742
2700
|
<xsl:attribute name="line-height">135%</xsl:attribute>
|
2701
|
+
</xsl:attribute-set><xsl:attribute-set name="fn-style">
|
2702
|
+
<xsl:attribute name="keep-with-previous.within-line">always</xsl:attribute>
|
2703
|
+
</xsl:attribute-set><xsl:attribute-set name="fn-num-style">
|
2704
|
+
<xsl:attribute name="keep-with-previous.within-line">always</xsl:attribute>
|
2705
|
+
|
2706
|
+
|
2707
|
+
|
2708
|
+
|
2709
|
+
|
2710
|
+
|
2711
|
+
|
2712
|
+
|
2713
|
+
<xsl:attribute name="font-size">80%</xsl:attribute>
|
2714
|
+
<xsl:attribute name="vertical-align">super</xsl:attribute>
|
2715
|
+
|
2716
|
+
|
2717
|
+
|
2718
|
+
|
2719
|
+
|
2720
|
+
|
2721
|
+
|
2722
|
+
|
2723
|
+
|
2724
|
+
</xsl:attribute-set><xsl:attribute-set name="fn-body-style">
|
2725
|
+
<xsl:attribute name="font-weight">normal</xsl:attribute>
|
2726
|
+
<xsl:attribute name="font-style">normal</xsl:attribute>
|
2727
|
+
<xsl:attribute name="text-indent">0</xsl:attribute>
|
2728
|
+
<xsl:attribute name="start-indent">0</xsl:attribute>
|
2729
|
+
|
2730
|
+
|
2731
|
+
|
2732
|
+
|
2733
|
+
|
2734
|
+
|
2735
|
+
|
2736
|
+
|
2737
|
+
<xsl:attribute name="font-size">10pt</xsl:attribute>
|
2738
|
+
<xsl:attribute name="margin-bottom">12pt</xsl:attribute>
|
2739
|
+
|
2740
|
+
|
2741
|
+
|
2742
|
+
|
2743
|
+
|
2744
|
+
|
2745
|
+
|
2746
|
+
|
2747
|
+
|
2748
|
+
|
2749
|
+
|
2750
|
+
</xsl:attribute-set><xsl:attribute-set name="fn-body-num-style">
|
2751
|
+
<xsl:attribute name="keep-with-next.within-line">always</xsl:attribute>
|
2752
|
+
|
2753
|
+
|
2754
|
+
|
2755
|
+
|
2756
|
+
|
2757
|
+
|
2758
|
+
|
2759
|
+
|
2760
|
+
<xsl:attribute name="padding-right">3mm</xsl:attribute>
|
2761
|
+
|
2762
|
+
|
2763
|
+
|
2764
|
+
|
2765
|
+
|
2766
|
+
|
2767
|
+
|
2768
|
+
|
2769
|
+
|
2770
|
+
|
2743
2771
|
</xsl:attribute-set><xsl:variable name="border-block-added">2.5pt solid rgb(0, 176, 80)</xsl:variable><xsl:variable name="border-block-deleted">2.5pt solid rgb(255, 0, 0)</xsl:variable><xsl:template name="OLD_processPrefaceSectionsDefault_Contents">
|
2744
2772
|
<xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='abstract']" mode="contents"/>
|
2745
2773
|
<xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='foreword']" mode="contents"/>
|
@@ -2765,7 +2793,8 @@
|
|
2765
2793
|
<xsl:apply-templates select="/*/*[local-name()='bibliography']/*[local-name()='references'][not(@normative='true')] | /*/*[local-name()='bibliography']/*[local-name()='clause'][*[local-name()='references'][not(@normative='true')]]" mode="contents"/>
|
2766
2794
|
|
2767
2795
|
</xsl:template><xsl:template name="processMainSectionsDefault_Contents">
|
2768
|
-
|
2796
|
+
|
2797
|
+
<xsl:for-each select="/*/*[local-name()='sections']/* | /*/*[local-name()='bibliography']/*[local-name()='references'][@normative='true'] | /*/*[local-name()='bibliography']/*[local-name()='clause'][*[local-name()='references'][@normative='true']]">
|
2769
2798
|
<xsl:sort select="@displayorder" data-type="number"/>
|
2770
2799
|
<xsl:apply-templates select="." mode="contents"/>
|
2771
2800
|
</xsl:for-each>
|
@@ -2775,7 +2804,7 @@
|
|
2775
2804
|
<xsl:apply-templates select="." mode="contents"/>
|
2776
2805
|
</xsl:for-each>
|
2777
2806
|
|
2778
|
-
<xsl:for-each select="/*/*[local-name()='bibliography']/*[not(@normative='true')] | /*/*[local-name()='bibliography']/*[local-name()='clause'][*[local-name()='references'][not(@normative='true')]]">
|
2807
|
+
<xsl:for-each select="/*/*[local-name()='bibliography']/*[not(@normative='true') and not(*[local-name()='references'][@normative='true'])] | /*/*[local-name()='bibliography']/*[local-name()='clause'][*[local-name()='references'][not(@normative='true')]]">
|
2779
2808
|
<xsl:sort select="@displayorder" data-type="number"/>
|
2780
2809
|
<xsl:apply-templates select="." mode="contents"/>
|
2781
2810
|
</xsl:for-each>
|
@@ -3781,6 +3810,104 @@
|
|
3781
3810
|
|
3782
3811
|
</xsl:template><xsl:template match="*[local-name()='table']/*[local-name()='note']/*[local-name()='name']" mode="process"/><xsl:template match="*[local-name()='table']/*[local-name()='note']/*[local-name()='p']" mode="process">
|
3783
3812
|
<xsl:apply-templates/>
|
3813
|
+
</xsl:template><xsl:template match="*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure') and not(ancestor::*[local-name() = 'name'])])]" priority="2" name="fn">
|
3814
|
+
|
3815
|
+
<!-- list of footnotes to calculate actual footnotes number -->
|
3816
|
+
<xsl:variable name="p_fn_">
|
3817
|
+
<xsl:choose>
|
3818
|
+
<xsl:when test="@current_fn_number"> <!-- for BSI, footnote reference number calculated already -->
|
3819
|
+
<fn gen_id="{generate-id(.)}">
|
3820
|
+
<xsl:copy-of select="@*"/>
|
3821
|
+
<xsl:copy-of select="node()"/>
|
3822
|
+
</fn>
|
3823
|
+
</xsl:when>
|
3824
|
+
<xsl:otherwise>
|
3825
|
+
<!-- itetation for:
|
3826
|
+
footnotes in bibdata/title
|
3827
|
+
footnotes in bibliography
|
3828
|
+
footnotes in document's body (except table's head/body/foot and figure text)
|
3829
|
+
-->
|
3830
|
+
<xsl:for-each select="ancestor::*[contains(local-name(), '-standard')]/*[local-name() = 'bibdata']/*[local-name() = 'note'][@type='title-footnote']">
|
3831
|
+
<fn gen_id="{generate-id(.)}">
|
3832
|
+
<xsl:copy-of select="@*"/>
|
3833
|
+
<xsl:copy-of select="node()"/>
|
3834
|
+
</fn>
|
3835
|
+
</xsl:for-each>
|
3836
|
+
<xsl:for-each select="ancestor::*[contains(local-name(), '-standard')]/*[local-name()='preface']/* | ancestor::*[contains(local-name(), '-standard')]/*[local-name()='sections']/* | ancestor::*[contains(local-name(), '-standard')]/*[local-name()='annex'] | ancestor::*[contains(local-name(), '-standard')]/*[local-name()='bibliography']/*">
|
3837
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
3838
|
+
<xsl:for-each select=".//*[local-name() = 'bibitem'][ancestor::*[local-name() = 'references']]/*[local-name() = 'note'] | .//*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure') and not(ancestor::*[local-name() = 'name'])])][generate-id(.)=generate-id(key('kfn',@reference)[1])]">
|
3839
|
+
<!-- copy unique fn -->
|
3840
|
+
<fn gen_id="{generate-id(.)}">
|
3841
|
+
<xsl:copy-of select="@*"/>
|
3842
|
+
<xsl:copy-of select="node()"/>
|
3843
|
+
</fn>
|
3844
|
+
</xsl:for-each>
|
3845
|
+
</xsl:for-each>
|
3846
|
+
</xsl:otherwise>
|
3847
|
+
</xsl:choose>
|
3848
|
+
</xsl:variable>
|
3849
|
+
<xsl:variable name="p_fn" select="xalan:nodeset($p_fn_)"/>
|
3850
|
+
|
3851
|
+
<xsl:variable name="gen_id" select="generate-id(.)"/>
|
3852
|
+
<xsl:variable name="lang" select="ancestor::*[contains(local-name(), '-standard')]/*[local-name()='bibdata']//*[local-name()='language'][@current = 'true']"/>
|
3853
|
+
<xsl:variable name="reference" select="@reference"/>
|
3854
|
+
<!-- fn sequence number in document -->
|
3855
|
+
<xsl:variable name="current_fn_number">
|
3856
|
+
<xsl:choose>
|
3857
|
+
<xsl:when test="@current_fn_number"><xsl:value-of select="@current_fn_number"/></xsl:when> <!-- for BSI -->
|
3858
|
+
<xsl:otherwise>
|
3859
|
+
<xsl:value-of select="count($p_fn//fn[@reference = $reference]/preceding-sibling::fn) + 1"/>
|
3860
|
+
</xsl:otherwise>
|
3861
|
+
</xsl:choose>
|
3862
|
+
</xsl:variable>
|
3863
|
+
<xsl:variable name="current_fn_number_text">
|
3864
|
+
<xsl:value-of select="$current_fn_number"/>
|
3865
|
+
|
3866
|
+
|
3867
|
+
<xsl:text>)</xsl:text>
|
3868
|
+
|
3869
|
+
</xsl:variable>
|
3870
|
+
|
3871
|
+
<xsl:variable name="ref_id" select="concat('footnote_', $lang, '_', $reference, '_', $current_fn_number)"/>
|
3872
|
+
<xsl:variable name="footnote_inline">
|
3873
|
+
<fo:inline xsl:use-attribute-sets="fn-num-style">
|
3874
|
+
|
3875
|
+
<fo:basic-link internal-destination="{$ref_id}" fox:alt-text="footnote {$current_fn_number}">
|
3876
|
+
<xsl:value-of select="$current_fn_number_text"/>
|
3877
|
+
</fo:basic-link>
|
3878
|
+
</fo:inline>
|
3879
|
+
</xsl:variable>
|
3880
|
+
<!-- DEBUG: p_fn=<xsl:copy-of select="$p_fn"/>
|
3881
|
+
gen_id=<xsl:value-of select="$gen_id"/> -->
|
3882
|
+
<xsl:choose>
|
3883
|
+
<xsl:when test="normalize-space(@skip_footnote_body) = 'true'">
|
3884
|
+
<xsl:copy-of select="$footnote_inline"/>
|
3885
|
+
</xsl:when>
|
3886
|
+
<xsl:when test="$p_fn//fn[@gen_id = $gen_id] or normalize-space(@skip_footnote_body) = 'false'">
|
3887
|
+
<fo:footnote xsl:use-attribute-sets="fn-style">
|
3888
|
+
<xsl:copy-of select="$footnote_inline"/>
|
3889
|
+
<fo:footnote-body>
|
3890
|
+
|
3891
|
+
<fo:block-container text-indent="0" start-indent="0">
|
3892
|
+
|
3893
|
+
|
3894
|
+
<fo:block xsl:use-attribute-sets="fn-body-style">
|
3895
|
+
|
3896
|
+
|
3897
|
+
<fo:inline id="{$ref_id}" xsl:use-attribute-sets="fn-body-num-style">
|
3898
|
+
|
3899
|
+
<xsl:value-of select="$current_fn_number_text"/>
|
3900
|
+
</fo:inline>
|
3901
|
+
<xsl:apply-templates/>
|
3902
|
+
</fo:block>
|
3903
|
+
</fo:block-container>
|
3904
|
+
</fo:footnote-body>
|
3905
|
+
</fo:footnote>
|
3906
|
+
</xsl:when>
|
3907
|
+
<xsl:otherwise>
|
3908
|
+
<xsl:copy-of select="$footnote_inline"/>
|
3909
|
+
</xsl:otherwise>
|
3910
|
+
</xsl:choose>
|
3784
3911
|
</xsl:template><xsl:template name="fn_display">
|
3785
3912
|
<xsl:variable name="references">
|
3786
3913
|
|
@@ -3982,6 +4109,8 @@
|
|
3982
4109
|
|
3983
4110
|
</fo:basic-link>
|
3984
4111
|
</fo:inline>
|
4112
|
+
</xsl:template><xsl:template match="*[local-name()='fn']/text()[normalize-space() != '']">
|
4113
|
+
<fo:inline><xsl:value-of select="."/></fo:inline>
|
3985
4114
|
</xsl:template><xsl:template match="*[local-name()='fn']/*[local-name()='p']">
|
3986
4115
|
<fo:inline>
|
3987
4116
|
<xsl:apply-templates/>
|
@@ -4355,6 +4484,7 @@
|
|
4355
4484
|
</xsl:template><xsl:template match="*[local-name()='dd']" mode="dl"/><xsl:template match="*[local-name()='dd']" mode="dl_process">
|
4356
4485
|
<xsl:apply-templates/>
|
4357
4486
|
</xsl:template><xsl:template match="*[local-name()='dd']"/><xsl:template match="*[local-name()='dd']" mode="process">
|
4487
|
+
<xsl:apply-templates select="@language"/>
|
4358
4488
|
<xsl:apply-templates/>
|
4359
4489
|
</xsl:template><xsl:template match="*[local-name()='dd']/*[local-name()='p']" mode="inline">
|
4360
4490
|
<fo:inline><xsl:text> </xsl:text><xsl:apply-templates/></fo:inline>
|
@@ -4995,22 +5125,6 @@
|
|
4995
5125
|
<xsl:if test="not(preceding-sibling::*[local-name() = 'p'])"><xsl:value-of select="$callout"/></xsl:if>
|
4996
5126
|
<xsl:apply-templates/>
|
4997
5127
|
</fo:inline>
|
4998
|
-
</xsl:template><xsl:template match="*[local-name() = 'modification']">
|
4999
|
-
<xsl:variable name="title-modified">
|
5000
|
-
|
5001
|
-
<xsl:call-template name="getLocalizedString">
|
5002
|
-
<xsl:with-param name="key">modified</xsl:with-param>
|
5003
|
-
</xsl:call-template>
|
5004
|
-
|
5005
|
-
|
5006
|
-
</xsl:variable>
|
5007
|
-
|
5008
|
-
<xsl:variable name="text"><xsl:apply-templates/></xsl:variable>
|
5009
|
-
<xsl:choose>
|
5010
|
-
<xsl:when test="$lang = 'zh'"><xsl:text>、</xsl:text><xsl:value-of select="$title-modified"/><xsl:if test="normalize-space($text) != ''"><xsl:text>—</xsl:text></xsl:if></xsl:when>
|
5011
|
-
<xsl:otherwise><xsl:text>, </xsl:text><xsl:value-of select="$title-modified"/><xsl:if test="normalize-space($text) != ''"><xsl:text> — </xsl:text></xsl:if></xsl:otherwise>
|
5012
|
-
</xsl:choose>
|
5013
|
-
<xsl:apply-templates/>
|
5014
5128
|
</xsl:template><xsl:template match="*[local-name() = 'xref']">
|
5015
5129
|
<fo:basic-link internal-destination="{@target}" fox:alt-text="{@target}" xsl:use-attribute-sets="xref-style">
|
5016
5130
|
|
@@ -5579,12 +5693,12 @@
|
|
5579
5693
|
</xsl:template><xsl:template match="*[local-name() = 'emf']"/><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'table']/*[local-name() = 'name'] | *[local-name() = 'permission']/*[local-name() = 'name'] | *[local-name() = 'recommendation']/*[local-name() = 'name'] | *[local-name() = 'requirement']/*[local-name() = 'name']" mode="contents">
|
5580
5694
|
<xsl:apply-templates mode="contents"/>
|
5581
5695
|
<xsl:text> </xsl:text>
|
5582
|
-
</xsl:template><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'table']/*[local-name() = 'name'] | *[local-name() = 'permission']/*[local-name() = 'name'] | *[local-name() = 'recommendation']/*[local-name() = 'name'] | *[local-name() = 'requirement']/*[local-name() = 'name']" mode="bookmarks">
|
5696
|
+
</xsl:template><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'table']/*[local-name() = 'name'] | *[local-name() = 'permission']/*[local-name() = 'name'] | *[local-name() = 'recommendation']/*[local-name() = 'name'] | *[local-name() = 'requirement']/*[local-name() = 'name'] | *[local-name() = 'sourcecode']/*[local-name() = 'name']" mode="bookmarks">
|
5583
5697
|
<xsl:apply-templates mode="bookmarks"/>
|
5584
5698
|
<xsl:text> </xsl:text>
|
5585
5699
|
</xsl:template><xsl:template match="*[local-name() = 'figure' or local-name() = 'table' or local-name() = 'permission' or local-name() = 'recommendation' or local-name() = 'requirement']/*[local-name() = 'name']/text()" mode="contents" priority="2">
|
5586
5700
|
<xsl:value-of select="."/>
|
5587
|
-
</xsl:template><xsl:template match="*[local-name() = 'figure' or local-name() = 'table' or local-name() = 'permission' or local-name() = 'recommendation' or local-name() = 'requirement']/*[local-name() = 'name']//text()" mode="bookmarks" priority="2">
|
5701
|
+
</xsl:template><xsl:template match="*[local-name() = 'figure' or local-name() = 'table' or local-name() = 'permission' or local-name() = 'recommendation' or local-name() = 'requirement' or local-name() = 'sourcecode']/*[local-name() = 'name']//text()" mode="bookmarks" priority="2">
|
5588
5702
|
<xsl:value-of select="."/>
|
5589
5703
|
</xsl:template><xsl:template match="node()" mode="contents">
|
5590
5704
|
<xsl:apply-templates mode="contents"/>
|
@@ -5854,6 +5968,8 @@
|
|
5854
5968
|
|
5855
5969
|
|
5856
5970
|
|
5971
|
+
|
5972
|
+
|
5857
5973
|
<fo:block xsl:use-attribute-sets="sourcecode-style">
|
5858
5974
|
<xsl:variable name="_font-size">
|
5859
5975
|
|
@@ -5887,13 +6003,17 @@
|
|
5887
6003
|
|
5888
6004
|
|
5889
6005
|
|
6006
|
+
|
6007
|
+
|
5890
6008
|
<xsl:apply-templates/>
|
5891
6009
|
</fo:block>
|
5892
|
-
|
6010
|
+
|
5893
6011
|
|
5894
6012
|
<xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
|
5895
6013
|
|
5896
6014
|
|
6015
|
+
|
6016
|
+
|
5897
6017
|
</fo:block-container>
|
5898
6018
|
</fo:block-container>
|
5899
6019
|
</xsl:template><xsl:template match="*[local-name()='sourcecode']/text()" priority="2">
|
@@ -6245,60 +6365,69 @@
|
|
6245
6365
|
<xsl:variable name="termsource_text">
|
6246
6366
|
<xsl:apply-templates/>
|
6247
6367
|
</xsl:variable>
|
6248
|
-
|
6249
|
-
<xsl:choose>
|
6368
|
+
<xsl:copy-of select="$termsource_text"/>
|
6369
|
+
<!-- <xsl:choose>
|
6250
6370
|
<xsl:when test="starts-with(normalize-space($termsource_text), '[')">
|
6251
|
-
<!-- <xsl:apply-templates /> -->
|
6252
6371
|
<xsl:copy-of select="$termsource_text"/>
|
6253
6372
|
</xsl:when>
|
6254
6373
|
<xsl:otherwise>
|
6255
|
-
|
6256
|
-
|
6374
|
+
<xsl:if test="$namespace = 'bsi'">
|
6375
|
+
<xsl:choose>
|
6376
|
+
<xsl:when test="$document_type = 'PAS' and starts-with(*[local-name() = 'origin']/@citeas, '[')"><xsl:text>{</xsl:text></xsl:when>
|
6377
|
+
<xsl:otherwise><xsl:text>[</xsl:text></xsl:otherwise>
|
6378
|
+
</xsl:choose>
|
6379
|
+
</xsl:if>
|
6380
|
+
<xsl:if test="$namespace = 'gb' or $namespace = 'iso' or $namespace = 'iec' or $namespace = 'itu' or $namespace = 'unece' or $namespace = 'unece-rec' or $namespace = 'nist-cswp' or $namespace = 'nist-sp' or $namespace = 'ogc-white-paper' or $namespace = 'csa' or $namespace = 'csd' or $namespace = 'm3d' or $namespace = 'iho' or $namespace = 'bipm' or $namespace = 'jcgm'">
|
6257
6381
|
<xsl:text>[</xsl:text>
|
6258
|
-
|
6259
|
-
<!-- <xsl:apply-templates /> -->
|
6382
|
+
</xsl:if>
|
6260
6383
|
<xsl:copy-of select="$termsource_text"/>
|
6261
|
-
|
6262
|
-
|
6384
|
+
<xsl:if test="$namespace = 'bsi'">
|
6385
|
+
<xsl:choose>
|
6386
|
+
<xsl:when test="$document_type = 'PAS' and starts-with(*[local-name() = 'origin']/@citeas, '[')"><xsl:text>}</xsl:text></xsl:when>
|
6387
|
+
<xsl:otherwise><xsl:text>]</xsl:text></xsl:otherwise>
|
6388
|
+
</xsl:choose>
|
6389
|
+
</xsl:if>
|
6390
|
+
<xsl:if test="$namespace = 'gb' or $namespace = 'iso' or $namespace = 'iec' or $namespace = 'itu' or $namespace = 'unece' or $namespace = 'unece-rec' or $namespace = 'nist-cswp' or $namespace = 'nist-sp' or $namespace = 'ogc-white-paper' or $namespace = 'csa' or $namespace = 'csd' or $namespace = 'm3d' or $namespace = 'iho' or $namespace = 'bipm' or $namespace = 'jcgm'">
|
6263
6391
|
<xsl:text>]</xsl:text>
|
6264
|
-
|
6392
|
+
</xsl:if>
|
6265
6393
|
</xsl:otherwise>
|
6266
|
-
</xsl:choose>
|
6394
|
+
</xsl:choose> -->
|
6267
6395
|
</fo:block>
|
6268
6396
|
</xsl:template><xsl:template match="*[local-name() = 'termsource']/text()">
|
6269
6397
|
<xsl:if test="normalize-space() != ''">
|
6270
6398
|
<xsl:value-of select="."/>
|
6271
6399
|
</xsl:if>
|
6272
|
-
</xsl:template><xsl:
|
6273
|
-
<
|
6274
|
-
|
6275
|
-
|
6276
|
-
|
6400
|
+
</xsl:template><xsl:template match="*[local-name() = 'termsource']/*[local-name() = 'strong'][1][following-sibling::*[1][local-name() = 'origin']]/text()">
|
6401
|
+
<fo:inline>
|
6402
|
+
|
6403
|
+
|
6404
|
+
<xsl:value-of select="."/>
|
6405
|
+
</fo:inline>
|
6406
|
+
</xsl:template><xsl:template match="*[local-name() = 'origin']">
|
6277
6407
|
<fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}">
|
6278
6408
|
<xsl:if test="normalize-space(@citeas) = ''">
|
6279
6409
|
<xsl:attribute name="fox:alt-text"><xsl:value-of select="@bibitemid"/></xsl:attribute>
|
6280
6410
|
</xsl:if>
|
6281
|
-
|
6282
|
-
|
6283
|
-
<fo:inline>
|
6284
|
-
|
6285
|
-
|
6286
|
-
|
6287
|
-
|
6288
|
-
|
6289
|
-
<xsl:value-of select="$localized.source"/>
|
6290
|
-
<xsl:text>: </xsl:text>
|
6291
|
-
|
6292
|
-
|
6293
|
-
|
6294
|
-
|
6295
|
-
</fo:inline>
|
6296
|
-
|
6297
6411
|
<fo:inline xsl:use-attribute-sets="origin-style">
|
6298
6412
|
<xsl:apply-templates/>
|
6299
6413
|
</fo:inline>
|
6414
|
+
</fo:basic-link>
|
6415
|
+
</xsl:template><xsl:template match="*[local-name() = 'modification']">
|
6416
|
+
<xsl:variable name="title-modified">
|
6300
6417
|
|
6301
|
-
|
6418
|
+
<xsl:call-template name="getLocalizedString">
|
6419
|
+
<xsl:with-param name="key">modified</xsl:with-param>
|
6420
|
+
</xsl:call-template>
|
6421
|
+
|
6422
|
+
|
6423
|
+
</xsl:variable>
|
6424
|
+
|
6425
|
+
<xsl:variable name="text"><xsl:apply-templates/></xsl:variable>
|
6426
|
+
<xsl:choose>
|
6427
|
+
<xsl:when test="$lang = 'zh'"><xsl:text>、</xsl:text><xsl:value-of select="$title-modified"/><xsl:if test="normalize-space($text) != ''"><xsl:text>—</xsl:text></xsl:if></xsl:when>
|
6428
|
+
<xsl:otherwise><xsl:text>, </xsl:text><xsl:value-of select="$title-modified"/><xsl:if test="normalize-space($text) != ''"><xsl:text> — </xsl:text></xsl:if></xsl:otherwise>
|
6429
|
+
</xsl:choose>
|
6430
|
+
<xsl:apply-templates/>
|
6302
6431
|
</xsl:template><xsl:template match="*[local-name() = 'modification']/*[local-name() = 'p']">
|
6303
6432
|
<fo:inline><xsl:apply-templates/></fo:inline>
|
6304
6433
|
</xsl:template><xsl:template match="*[local-name() = 'modification']/text()">
|
@@ -6489,15 +6618,20 @@
|
|
6489
6618
|
<fo:block xsl:use-attribute-sets="deprecates-style">
|
6490
6619
|
<xsl:value-of select="$title-deprecated"/>: <xsl:apply-templates/>
|
6491
6620
|
</fo:block>
|
6621
|
+
</xsl:template><xsl:template name="setStyle_preferred">
|
6622
|
+
<xsl:if test="*[local-name() = 'strong']">
|
6623
|
+
<xsl:attribute name="font-weight">normal</xsl:attribute>
|
6624
|
+
</xsl:if>
|
6492
6625
|
</xsl:template><xsl:template match="*[local-name() = 'definition']">
|
6493
6626
|
<fo:block xsl:use-attribute-sets="definition-style">
|
6494
6627
|
<xsl:apply-templates/>
|
6495
6628
|
</fo:block>
|
6496
6629
|
</xsl:template><xsl:template match="*[local-name() = 'definition'][preceding-sibling::*[local-name() = 'domain']]">
|
6497
6630
|
<xsl:apply-templates/>
|
6498
|
-
</xsl:template><xsl:template match="*[local-name() = 'definition'][preceding-sibling::*[local-name() = 'domain']]/*[local-name() = 'p']">
|
6631
|
+
</xsl:template><xsl:template match="*[local-name() = 'definition'][preceding-sibling::*[local-name() = 'domain']]/*[local-name() = 'p'][1]">
|
6499
6632
|
<fo:inline> <xsl:apply-templates/></fo:inline>
|
6500
|
-
<fo:block
|
6633
|
+
<!-- <fo:block> </fo:block> -->
|
6634
|
+
<fo:block/>
|
6501
6635
|
</xsl:template><xsl:template match="/*/*[local-name() = 'sections']/*" priority="2">
|
6502
6636
|
|
6503
6637
|
<fo:block>
|
@@ -6558,6 +6692,51 @@
|
|
6558
6692
|
</xsl:template><xsl:template match="*[local-name() = 'name']/text()">
|
6559
6693
|
<!-- 0xA0 to space replacement -->
|
6560
6694
|
<xsl:value-of select="java:replaceAll(java:java.lang.String.new(.),' ',' ')"/>
|
6695
|
+
</xsl:template><xsl:variable name="ul_labels_">
|
6696
|
+
|
6697
|
+
|
6698
|
+
|
6699
|
+
|
6700
|
+
|
6701
|
+
|
6702
|
+
|
6703
|
+
<label>—</label> <!-- em dash -->
|
6704
|
+
|
6705
|
+
|
6706
|
+
|
6707
|
+
|
6708
|
+
|
6709
|
+
|
6710
|
+
|
6711
|
+
|
6712
|
+
|
6713
|
+
|
6714
|
+
|
6715
|
+
</xsl:variable><xsl:variable name="ul_labels" select="xalan:nodeset($ul_labels_)"/><xsl:template name="setULLabel">
|
6716
|
+
<xsl:variable name="list_level_" select="count(ancestor::*[local-name() = 'ul']) + count(ancestor::*[local-name() = 'ol'])"/>
|
6717
|
+
<xsl:variable name="list_level">
|
6718
|
+
<xsl:choose>
|
6719
|
+
<xsl:when test="$list_level_ <= 3"><xsl:value-of select="$list_level_"/></xsl:when>
|
6720
|
+
<xsl:otherwise><xsl:value-of select="$list_level_ mod 3"/></xsl:otherwise>
|
6721
|
+
</xsl:choose>
|
6722
|
+
</xsl:variable>
|
6723
|
+
<xsl:choose>
|
6724
|
+
<xsl:when test="$ul_labels/label[not(@level)]"> <!-- one label for all levels -->
|
6725
|
+
<xsl:apply-templates select="$ul_labels/label[not(@level)]" mode="ul_labels"/>
|
6726
|
+
</xsl:when>
|
6727
|
+
<xsl:when test="$list_level mod 3 = 0">
|
6728
|
+
<xsl:apply-templates select="$ul_labels/label[@level = 3]" mode="ul_labels"/>
|
6729
|
+
</xsl:when>
|
6730
|
+
<xsl:when test="$list_level mod 2 = 0">
|
6731
|
+
<xsl:apply-templates select="$ul_labels/label[@level = 2]" mode="ul_labels"/>
|
6732
|
+
</xsl:when>
|
6733
|
+
<xsl:otherwise>
|
6734
|
+
<xsl:apply-templates select="$ul_labels/label[@level = 1]" mode="ul_labels"/>
|
6735
|
+
</xsl:otherwise>
|
6736
|
+
</xsl:choose>
|
6737
|
+
</xsl:template><xsl:template match="label" mode="ul_labels">
|
6738
|
+
<xsl:copy-of select="@*[not(local-name() = 'level')]"/>
|
6739
|
+
<xsl:value-of select="."/>
|
6561
6740
|
</xsl:template><xsl:template match="*[local-name() = 'ul'] | *[local-name() = 'ol']">
|
6562
6741
|
<xsl:choose>
|
6563
6742
|
<xsl:when test="parent::*[local-name() = 'note'] or parent::*[local-name() = 'termnote']">
|
@@ -6922,7 +7101,31 @@
|
|
6922
7101
|
<fo:block-container border="1pt solid black" width="50%">
|
6923
7102
|
<fo:block> </fo:block>
|
6924
7103
|
</fo:block-container>
|
6925
|
-
</xsl:template><xsl:
|
7104
|
+
</xsl:template><xsl:variable name="toc_level">
|
7105
|
+
<xsl:choose>
|
7106
|
+
<xsl:when test="1 = 2"/> <!-- to do https://github.com/metanorma/mn-native-pdf/issues/337: if there is value in xml -->
|
7107
|
+
<xsl:otherwise><!-- default value -->
|
7108
|
+
|
7109
|
+
|
7110
|
+
|
7111
|
+
|
7112
|
+
|
7113
|
+
|
7114
|
+
|
7115
|
+
|
7116
|
+
|
7117
|
+
|
7118
|
+
|
7119
|
+
|
7120
|
+
|
7121
|
+
|
7122
|
+
|
7123
|
+
|
7124
|
+
|
7125
|
+
|
7126
|
+
</xsl:otherwise>
|
7127
|
+
</xsl:choose>
|
7128
|
+
</xsl:variable><xsl:template match="*[local-name() = 'toc']">
|
6926
7129
|
<xsl:param name="colwidths"/>
|
6927
7130
|
<xsl:variable name="colwidths_">
|
6928
7131
|
<xsl:choose>
|
@@ -7013,6 +7216,10 @@
|
|
7013
7216
|
</svg>
|
7014
7217
|
</fo:instream-foreign-object>
|
7015
7218
|
</fo:inline>
|
7219
|
+
</xsl:template><xsl:template match="@language">
|
7220
|
+
<xsl:copy-of select="."/>
|
7221
|
+
</xsl:template><xsl:template match="*[local-name() = 'p'][@type = 'floating-title']" priority="4">
|
7222
|
+
<xsl:call-template name="title"/>
|
7016
7223
|
</xsl:template><xsl:template name="convertDate">
|
7017
7224
|
<xsl:param name="date"/>
|
7018
7225
|
<xsl:param name="format" select="'short'"/>
|
@@ -7457,12 +7664,15 @@
|
|
7457
7664
|
<xsl:param name="default">left</xsl:param>
|
7458
7665
|
<xsl:attribute name="text-align">
|
7459
7666
|
<xsl:choose>
|
7460
|
-
<xsl:when test="@align"><xsl:value-of select="@align"/></xsl:when>
|
7667
|
+
<xsl:when test="@align and not(@align = 'indent')"><xsl:value-of select="@align"/></xsl:when>
|
7461
7668
|
<xsl:when test="ancestor::*[local-name() = 'td']/@align"><xsl:value-of select="ancestor::*[local-name() = 'td']/@align"/></xsl:when>
|
7462
7669
|
<xsl:when test="ancestor::*[local-name() = 'th']/@align"><xsl:value-of select="ancestor::*[local-name() = 'th']/@align"/></xsl:when>
|
7463
7670
|
<xsl:otherwise><xsl:value-of select="$default"/></xsl:otherwise>
|
7464
7671
|
</xsl:choose>
|
7465
7672
|
</xsl:attribute>
|
7673
|
+
<xsl:if test="@align = 'indent'">
|
7674
|
+
<xsl:attribute name="margin-left">7mm</xsl:attribute>
|
7675
|
+
</xsl:if>
|
7466
7676
|
</xsl:template><xsl:template name="number-to-words">
|
7467
7677
|
<xsl:param name="number"/>
|
7468
7678
|
<xsl:param name="first"/>
|
@@ -7559,4 +7769,14 @@
|
|
7559
7769
|
</xsl:otherwise>
|
7560
7770
|
</xsl:choose>
|
7561
7771
|
</xsl:if>
|
7772
|
+
</xsl:template><xsl:template name="setAltText">
|
7773
|
+
<xsl:param name="value"/>
|
7774
|
+
<xsl:attribute name="fox:alt-text">
|
7775
|
+
<xsl:choose>
|
7776
|
+
<xsl:when test="normalize-space($value) != ''">
|
7777
|
+
<xsl:value-of select="$value"/>
|
7778
|
+
</xsl:when>
|
7779
|
+
<xsl:otherwise>_</xsl:otherwise>
|
7780
|
+
</xsl:choose>
|
7781
|
+
</xsl:attribute>
|
7562
7782
|
</xsl:template></xsl:stylesheet>
|