metanorma-iso 1.7.4 → 1.8.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/rake.yml +3 -13
- data/.hound.yml +3 -1
- data/.rubocop.yml +3 -7
- data/lib/asciidoctor/iso/base.rb +14 -11
- data/lib/asciidoctor/iso/biblio.rng +1 -0
- data/lib/asciidoctor/iso/cleanup.rb +40 -24
- data/lib/asciidoctor/iso/front.rb +28 -16
- data/lib/asciidoctor/iso/front_id.rb +66 -50
- data/lib/asciidoctor/iso/isodoc.rng +321 -4
- data/lib/asciidoctor/iso/isostandard-amd.rng +3 -0
- data/lib/asciidoctor/iso/isostandard.rng +12 -0
- data/lib/asciidoctor/iso/section.rb +2 -1
- data/lib/asciidoctor/iso/validate.rb +22 -110
- data/lib/asciidoctor/iso/validate_image.rb +97 -0
- data/lib/asciidoctor/iso/validate_requirements.rb +26 -20
- data/lib/asciidoctor/iso/validate_section.rb +55 -29
- data/lib/asciidoctor/iso/validate_style.rb +36 -24
- data/lib/asciidoctor/iso/validate_title.rb +2 -4
- data/lib/isodoc/iso/base_convert.rb +8 -2
- data/lib/isodoc/iso/html/style-human.css +7 -0
- data/lib/isodoc/iso/html/style-iso.css +7 -0
- data/lib/isodoc/iso/html_convert.rb +0 -1
- data/lib/isodoc/iso/iso.amendment.xsl +680 -198
- data/lib/isodoc/iso/iso.international-standard.xsl +680 -198
- data/lib/isodoc/iso/metadata.rb +1 -0
- data/lib/isodoc/iso/presentation_xml_convert.rb +44 -33
- data/lib/isodoc/iso/sts_convert.rb +10 -13
- data/lib/isodoc/iso/word_convert.rb +0 -1
- data/lib/isodoc/iso/xref.rb +52 -34
- data/lib/metanorma/iso/processor.rb +1 -0
- data/lib/metanorma/iso/version.rb +1 -1
- data/metanorma-iso.gemspec +7 -7
- data/spec/asciidoctor/base_spec.rb +426 -305
- data/spec/asciidoctor/blocks_spec.rb +96 -34
- data/spec/asciidoctor/cleanup_spec.rb +383 -25
- data/spec/asciidoctor/section_spec.rb +0 -14
- data/spec/asciidoctor/validate_spec.rb +218 -83
- data/spec/isodoc/postproc_spec.rb +481 -438
- data/spec/spec_helper.rb +16 -15
- metadata +46 -46
- data/lib/isodoc/iso/html/scripts.html +0 -178
@@ -54,14 +54,12 @@ module Asciidoctor
|
|
54
54
|
doctypes = /International\sStandard | Technical\sSpecification |
|
55
55
|
Publicly\sAvailable\sSpecification | Technical\sReport | Guide /xi
|
56
56
|
title_main_en = title_lang_part(root, "main", "en")
|
57
|
-
|
57
|
+
!title_main_en.nil? && doctypes.match(title_main_en.text) and
|
58
58
|
@log.add("Style", title_main_en, "Main Title may name document type")
|
59
|
-
end
|
60
59
|
title_intro_en = title_lang_part(root, "intro", "en")
|
61
|
-
|
60
|
+
!title_intro_en.nil? && doctypes.match(title_intro_en.text) and
|
62
61
|
@log.add("Style", title_intro_en,
|
63
62
|
"Title Intro may name document type")
|
64
|
-
end
|
65
63
|
end
|
66
64
|
|
67
65
|
# ISO/IEC DIR 2, 22.2
|
@@ -15,6 +15,7 @@ module IsoDoc
|
|
15
15
|
|
16
16
|
def implicit_reference(b)
|
17
17
|
return true if b&.at(ns("./docidentifier"))&.text == "IEV"
|
18
|
+
|
18
19
|
super
|
19
20
|
end
|
20
21
|
|
@@ -27,8 +28,9 @@ module IsoDoc
|
|
27
28
|
end
|
28
29
|
end
|
29
30
|
|
30
|
-
def example_span_label(
|
31
|
+
def example_span_label(_node, div, name)
|
31
32
|
return if name.nil?
|
33
|
+
|
32
34
|
div.span **{ class: "example_label" } do |p|
|
33
35
|
name.children.each { |n| parse(n, div) }
|
34
36
|
end
|
@@ -56,6 +58,7 @@ module IsoDoc
|
|
56
58
|
node.elements.each do |e|
|
57
59
|
next if e.name == "name"
|
58
60
|
return true if e.name == "p"
|
61
|
+
|
59
62
|
return false
|
60
63
|
end
|
61
64
|
false
|
@@ -74,6 +77,7 @@ module IsoDoc
|
|
74
77
|
def insertall_after_here(node, insert, name)
|
75
78
|
node.children.each do |n|
|
76
79
|
next unless n.name == name
|
80
|
+
|
77
81
|
insert.next = n.remove
|
78
82
|
insert = n
|
79
83
|
end
|
@@ -83,6 +87,7 @@ module IsoDoc
|
|
83
87
|
def termexamples_before_termnotes(node)
|
84
88
|
return unless node.at(ns("./termnote")) && node.at(ns("./termexample"))
|
85
89
|
return unless insert = node.at(ns("./definition"))
|
90
|
+
|
86
91
|
insert = insertall_after_here(node, insert, "termexample")
|
87
92
|
insert = insertall_after_here(node, insert, "termnote")
|
88
93
|
end
|
@@ -110,6 +115,7 @@ module IsoDoc
|
|
110
115
|
return super unless (dl&.xpath(ns("./dt"))&.size == 1 &&
|
111
116
|
dl&.at(ns("./dd"))&.elements&.size == 1 &&
|
112
117
|
dl&.at(ns("./dd/p")))
|
118
|
+
|
113
119
|
out.span **{ class: "zzMoveToFollowing" } do |s|
|
114
120
|
s << "#{@i18n.where} "
|
115
121
|
dl.at(ns("./dt")).children.each { |n| parse(n, s) }
|
@@ -149,7 +155,7 @@ module IsoDoc
|
|
149
155
|
|
150
156
|
def figure_name_parse(node, div, name)
|
151
157
|
div.p **{ class: "FigureTitle", style: "text-align:center;" } do |p|
|
152
|
-
name
|
158
|
+
name&.children&.each { |n| parse(n, div) }
|
153
159
|
end
|
154
160
|
end
|
155
161
|
|
@@ -115,6 +115,13 @@ a.FootnoteRef + a.FootnoteRef:before {
|
|
115
115
|
content: ", ";
|
116
116
|
vertical-align: super; }
|
117
117
|
|
118
|
+
.addition {
|
119
|
+
color: blue; }
|
120
|
+
|
121
|
+
.deletion {
|
122
|
+
color: red;
|
123
|
+
text-decoration: line-through; }
|
124
|
+
|
118
125
|
#standard-band {
|
119
126
|
background-color: #0AC442; }
|
120
127
|
|
@@ -115,6 +115,13 @@ a.FootnoteRef + a.FootnoteRef:before {
|
|
115
115
|
content: ", ";
|
116
116
|
vertical-align: super; }
|
117
117
|
|
118
|
+
.addition {
|
119
|
+
color: blue; }
|
120
|
+
|
121
|
+
.deletion {
|
122
|
+
color: red;
|
123
|
+
text-decoration: line-through; }
|
124
|
+
|
118
125
|
#standard-band {
|
119
126
|
background-color: #0AC442; }
|
120
127
|
|
@@ -1,4 +1,4 @@
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?><xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:mathml="http://www.w3.org/1998/Math/MathML" xmlns:xalan="http://xml.apache.org/xalan" xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" xmlns:pdf="http://xmlgraphics.apache.org/fop/extensions/pdf" xmlns:java="http://xml.apache.org/xalan/java" exclude-result-prefixes="java" version="1.0">
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?><xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:mathml="http://www.w3.org/1998/Math/MathML" xmlns:xalan="http://xml.apache.org/xalan" xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" xmlns:pdf="http://xmlgraphics.apache.org/fop/extensions/pdf" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:java="http://xml.apache.org/xalan/java" exclude-result-prefixes="java" version="1.0">
|
2
2
|
|
3
3
|
<xsl:output method="xml" encoding="UTF-8" indent="no"/>
|
4
4
|
|
@@ -948,22 +948,24 @@
|
|
948
948
|
/iso:iso-standard/iso:bibdata/iso:ext/iso:editorialgroup/iso:workgroup/@type, ' ',
|
949
949
|
/iso:iso-standard/iso:bibdata/iso:ext/iso:editorialgroup/iso:workgroup/@number)"/>
|
950
950
|
-->
|
951
|
-
|
952
|
-
|
953
|
-
|
954
|
-
<
|
955
|
-
<xsl:text
|
956
|
-
|
957
|
-
|
958
|
-
|
959
|
-
<xsl:
|
960
|
-
|
961
|
-
|
962
|
-
|
963
|
-
<xsl:
|
964
|
-
|
965
|
-
|
966
|
-
|
951
|
+
|
952
|
+
<xsl:if test="/iso:iso-standard/iso:bibdata/iso:ext/iso:editorialgroup/iso:technical-committee[normalize-space(@number) != ''] or /iso:iso-standard/iso:bibdata/iso:ext/iso:editorialgroup/iso:subcommittee[normalize-space(@number) != ''] or /iso:iso-standard/iso:bibdata/iso:ext/iso:editorialgroup/iso:workgroup[normalize-space(@number) != '']">
|
953
|
+
<!-- ISO/TC 34/SC 4/WG 3 -->
|
954
|
+
<fo:block margin-bottom="12pt">
|
955
|
+
<xsl:text>ISO</xsl:text>
|
956
|
+
<xsl:for-each select="/iso:iso-standard/iso:bibdata/iso:ext/iso:editorialgroup/iso:technical-committee[normalize-space(@number) != '']">
|
957
|
+
<xsl:text>/TC </xsl:text><xsl:value-of select="@number"/>
|
958
|
+
</xsl:for-each>
|
959
|
+
<xsl:for-each select="/iso:iso-standard/iso:bibdata/iso:ext/iso:editorialgroup/iso:subcommittee[normalize-space(@number) != '']">
|
960
|
+
<xsl:text>/SC </xsl:text>
|
961
|
+
<xsl:value-of select="@number"/>
|
962
|
+
</xsl:for-each>
|
963
|
+
<xsl:for-each select="/iso:iso-standard/iso:bibdata/iso:ext/iso:editorialgroup/iso:workgroup[normalize-space(@number) != '']">
|
964
|
+
<xsl:text>/WG </xsl:text>
|
965
|
+
<xsl:value-of select="@number"/>
|
966
|
+
</xsl:for-each>
|
967
|
+
</fo:block>
|
968
|
+
</xsl:if>
|
967
969
|
<!-- Secretariat: AFNOR -->
|
968
970
|
|
969
971
|
<fo:block margin-bottom="100pt">
|
@@ -1025,7 +1027,15 @@
|
|
1025
1027
|
<fo:block font-size="11pt" margin-bottom="8pt"><xsl:value-of select="$linebreak"/></fo:block>
|
1026
1028
|
<fo:block-container font-size="40pt" text-align="center" margin-bottom="12pt" border="0.5pt solid black">
|
1027
1029
|
<xsl:variable name="stage-title" select="substring-after(substring-before($docidentifierISO, ' '), '/')"/>
|
1028
|
-
<
|
1030
|
+
<xsl:choose>
|
1031
|
+
<xsl:when test="normalize-space($stage-title) != ''">
|
1032
|
+
<fo:block padding-top="2mm"><xsl:value-of select="$stage-title"/><xsl:text> stage</xsl:text></fo:block>
|
1033
|
+
</xsl:when>
|
1034
|
+
<xsl:otherwise>
|
1035
|
+
<xsl:attribute name="border">0pt solid white</xsl:attribute>
|
1036
|
+
<fo:block> </fo:block>
|
1037
|
+
</xsl:otherwise>
|
1038
|
+
</xsl:choose>
|
1029
1039
|
</fo:block-container>
|
1030
1040
|
<fo:block><xsl:value-of select="$linebreak"/></fo:block>
|
1031
1041
|
|
@@ -1415,7 +1425,7 @@
|
|
1415
1425
|
</xsl:if>
|
1416
1426
|
</xsl:template>
|
1417
1427
|
|
1418
|
-
|
1428
|
+
<xsl:template match="iso:p | iso:termsource | iso:termnote" mode="contents"/>
|
1419
1429
|
|
1420
1430
|
<xsl:template name="getListItemFormat">
|
1421
1431
|
<xsl:choose>
|
@@ -1742,61 +1752,7 @@
|
|
1742
1752
|
<xsl:apply-templates/>
|
1743
1753
|
</xsl:template>
|
1744
1754
|
|
1745
|
-
|
1746
|
-
|
1747
|
-
<xsl:template match="iso:bibitem">
|
1748
|
-
<fo:block id="{@id}" margin-bottom="6pt"> <!-- 12 pt -->
|
1749
|
-
<xsl:variable name="docidentifier">
|
1750
|
-
<xsl:if test="iso:docidentifier">
|
1751
|
-
<xsl:choose>
|
1752
|
-
<xsl:when test="iso:docidentifier/@type = 'metanorma'"/>
|
1753
|
-
<xsl:otherwise><xsl:value-of select="iso:docidentifier"/></xsl:otherwise>
|
1754
|
-
</xsl:choose>
|
1755
|
-
</xsl:if>
|
1756
|
-
</xsl:variable>
|
1757
|
-
<xsl:value-of select="$docidentifier"/>
|
1758
|
-
<xsl:apply-templates select="iso:note"/>
|
1759
|
-
<xsl:if test="normalize-space($docidentifier) != ''">, </xsl:if>
|
1760
|
-
<fo:inline font-style="italic">
|
1761
|
-
<xsl:choose>
|
1762
|
-
<xsl:when test="iso:title[@type = 'main' and @language = $lang]">
|
1763
|
-
<xsl:value-of select="iso:title[@type = 'main' and @language = $lang]"/>
|
1764
|
-
</xsl:when>
|
1765
|
-
<xsl:when test="iso:title[@type = 'main' and @language = 'en']">
|
1766
|
-
<xsl:value-of select="iso:title[@type = 'main' and @language = 'en']"/>
|
1767
|
-
</xsl:when>
|
1768
|
-
<xsl:otherwise>
|
1769
|
-
<xsl:value-of select="iso:title"/>
|
1770
|
-
</xsl:otherwise>
|
1771
|
-
</xsl:choose>
|
1772
|
-
</fo:inline>
|
1773
|
-
</fo:block>
|
1774
|
-
</xsl:template>
|
1775
|
-
|
1776
|
-
|
1777
|
-
<xsl:template match="iso:bibitem/iso:note" priority="2">
|
1778
|
-
<fo:footnote>
|
1779
|
-
<xsl:variable name="number">
|
1780
|
-
<xsl:number level="any" count="iso:bibitem/iso:note"/>
|
1781
|
-
</xsl:variable>
|
1782
|
-
<fo:inline font-size="8pt" keep-with-previous.within-line="always" baseline-shift="30%"> <!--85% vertical-align="super"-->
|
1783
|
-
<fo:basic-link internal-destination="{generate-id()}" fox:alt-text="footnote {$number}">
|
1784
|
-
<xsl:value-of select="$number"/><xsl:text>)</xsl:text>
|
1785
|
-
</fo:basic-link>
|
1786
|
-
</fo:inline>
|
1787
|
-
<fo:footnote-body>
|
1788
|
-
<fo:block font-size="10pt" margin-bottom="4pt" start-indent="0pt">
|
1789
|
-
<fo:inline id="{generate-id()}" keep-with-next.within-line="always" alignment-baseline="hanging" padding-right="3mm"><!-- font-size="60%" -->
|
1790
|
-
<xsl:value-of select="$number"/><xsl:text>)</xsl:text>
|
1791
|
-
</fo:inline>
|
1792
|
-
<xsl:apply-templates/>
|
1793
|
-
</fo:block>
|
1794
|
-
</fo:footnote-body>
|
1795
|
-
</fo:footnote>
|
1796
|
-
</xsl:template>
|
1797
|
-
|
1798
|
-
|
1799
|
-
|
1755
|
+
|
1800
1756
|
<xsl:template match="iso:ul | iso:ol" mode="ul_ol">
|
1801
1757
|
<fo:list-block provisional-distance-between-starts="7mm" margin-top="8pt"> <!-- margin-bottom="8pt" -->
|
1802
1758
|
<xsl:apply-templates/>
|
@@ -1806,7 +1762,7 @@
|
|
1806
1762
|
</xsl:for-each>
|
1807
1763
|
</xsl:template>
|
1808
1764
|
|
1809
|
-
<xsl:template match="iso:ul
|
1765
|
+
<xsl:template match="iso:ul/iso:note | iso:ol/iso:note | iso:ul/iso:li/iso:note | iso:ol/iso:li/iso:note" priority="2"/>
|
1810
1766
|
|
1811
1767
|
<xsl:template match="iso:li">
|
1812
1768
|
<fo:list-item id="{@id}">
|
@@ -1818,7 +1774,10 @@
|
|
1818
1774
|
<fo:list-item-body start-indent="body-start()">
|
1819
1775
|
<fo:block>
|
1820
1776
|
<xsl:apply-templates/>
|
1821
|
-
<xsl:apply-templates select=".//iso:note" mode="process"/>
|
1777
|
+
<!-- <xsl:apply-templates select=".//iso:note" mode="process"/> -->
|
1778
|
+
<xsl:for-each select="./iso:note">
|
1779
|
+
<xsl:call-template name="note"/>
|
1780
|
+
</xsl:for-each>
|
1822
1781
|
</fo:block>
|
1823
1782
|
</fo:list-item-body>
|
1824
1783
|
</fo:list-item>
|
@@ -1828,6 +1787,10 @@
|
|
1828
1787
|
<xsl:call-template name="note"/>
|
1829
1788
|
</xsl:template>
|
1830
1789
|
|
1790
|
+
<xsl:template match="*" mode="process">
|
1791
|
+
<xsl:apply-templates select="."/>
|
1792
|
+
</xsl:template>
|
1793
|
+
|
1831
1794
|
<xsl:template match="iso:preferred">
|
1832
1795
|
<fo:block line-height="1.1">
|
1833
1796
|
<fo:block font-weight="bold" keep-with-next="always">
|
@@ -1855,6 +1818,34 @@
|
|
1855
1818
|
</xsl:template>
|
1856
1819
|
|
1857
1820
|
|
1821
|
+
<xsl:template match="iso:bibitem">
|
1822
|
+
<fo:block id="{@id}" margin-bottom="6pt">
|
1823
|
+
<xsl:call-template name="processBibitem"/>
|
1824
|
+
</fo:block>
|
1825
|
+
</xsl:template>
|
1826
|
+
|
1827
|
+
|
1828
|
+
<xsl:template match="iso:bibitem/iso:note" priority="2">
|
1829
|
+
<fo:footnote>
|
1830
|
+
<xsl:variable name="number">
|
1831
|
+
<xsl:number level="any" count="iso:bibitem/iso:note"/>
|
1832
|
+
</xsl:variable>
|
1833
|
+
<fo:inline font-size="8pt" keep-with-previous.within-line="always" baseline-shift="30%"> <!--85% vertical-align="super"-->
|
1834
|
+
<fo:basic-link internal-destination="{generate-id()}" fox:alt-text="footnote {$number}">
|
1835
|
+
<xsl:value-of select="$number"/><xsl:text>)</xsl:text>
|
1836
|
+
</fo:basic-link>
|
1837
|
+
</fo:inline>
|
1838
|
+
<fo:footnote-body>
|
1839
|
+
<fo:block font-size="10pt" margin-bottom="4pt" start-indent="0pt">
|
1840
|
+
<fo:inline id="{generate-id()}" keep-with-next.within-line="always" alignment-baseline="hanging" padding-right="3mm"><!-- font-size="60%" -->
|
1841
|
+
<xsl:value-of select="$number"/><xsl:text>)</xsl:text>
|
1842
|
+
</fo:inline>
|
1843
|
+
<xsl:apply-templates/>
|
1844
|
+
</fo:block>
|
1845
|
+
</fo:footnote-body>
|
1846
|
+
</fo:footnote>
|
1847
|
+
</xsl:template>
|
1848
|
+
|
1858
1849
|
<!-- Example: [1] ISO 9:1995, Information and documentation – Transliteration of Cyrillic characters into Latin characters – Slavic and non-Slavic languages -->
|
1859
1850
|
<!-- <xsl:template match="iso:references[@id = '_bibliography']/iso:bibitem"> -->
|
1860
1851
|
<xsl:template match="iso:references[not(@normative='true')]/iso:bibitem">
|
@@ -1869,60 +1860,24 @@
|
|
1869
1860
|
</fo:list-item-label>
|
1870
1861
|
<fo:list-item-body start-indent="body-start()">
|
1871
1862
|
<fo:block>
|
1872
|
-
<xsl:
|
1873
|
-
<xsl:if test="iso:docidentifier">
|
1874
|
-
<xsl:choose>
|
1875
|
-
<xsl:when test="iso:docidentifier/@type = 'metanorma'"/>
|
1876
|
-
<xsl:otherwise><xsl:value-of select="iso:docidentifier"/></xsl:otherwise>
|
1877
|
-
</xsl:choose>
|
1878
|
-
</xsl:if>
|
1879
|
-
</xsl:variable>
|
1880
|
-
<xsl:value-of select="$docidentifier"/>
|
1881
|
-
<xsl:apply-templates select="iso:note"/>
|
1882
|
-
<xsl:if test="normalize-space($docidentifier) != ''">, </xsl:if>
|
1883
|
-
<xsl:choose>
|
1884
|
-
<xsl:when test="iso:title[@type = 'main' and @language = $lang]">
|
1885
|
-
<xsl:apply-templates select="iso:title[@type = 'main' and @language = $lang]"/>
|
1886
|
-
</xsl:when>
|
1887
|
-
<xsl:when test="iso:title[@type = 'main' and @language = 'en']">
|
1888
|
-
<xsl:apply-templates select="iso:title[@type = 'main' and @language = 'en']"/>
|
1889
|
-
</xsl:when>
|
1890
|
-
<xsl:otherwise>
|
1891
|
-
<xsl:apply-templates select="iso:title"/>
|
1892
|
-
</xsl:otherwise>
|
1893
|
-
</xsl:choose>
|
1894
|
-
<xsl:apply-templates select="iso:formattedref"/>
|
1863
|
+
<xsl:call-template name="processBibitem"/>
|
1895
1864
|
</fo:block>
|
1896
1865
|
</fo:list-item-body>
|
1897
1866
|
</fo:list-item>
|
1898
1867
|
</fo:list-block>
|
1899
1868
|
</xsl:template>
|
1900
1869
|
|
1901
|
-
<!-- <xsl:template match="iso:references[@id = '_bibliography']/iso:bibitem" mode="contents"/> -->
|
1902
|
-
<xsl:template match="iso:references
|
1870
|
+
<!-- <xsl:template match="iso:references[@id = '_bibliography']/iso:bibitem" mode="contents"/> [not(@normative='true')] -->
|
1871
|
+
<xsl:template match="iso:references/iso:bibitem" mode="contents"/>
|
1903
1872
|
|
1904
|
-
<!-- <xsl:template match="iso:references[@id = '_bibliography']/iso:bibitem/iso:title"> -->
|
1905
|
-
<xsl:template match="iso:
|
1873
|
+
<!-- <xsl:template match="iso:references[@id = '_bibliography']/iso:bibitem/iso:title"> iso:references[not(@normative='true')]/ -->
|
1874
|
+
<xsl:template match="iso:bibitem/iso:title">
|
1906
1875
|
<fo:inline font-style="italic">
|
1907
1876
|
<xsl:apply-templates/>
|
1908
1877
|
</fo:inline>
|
1909
1878
|
</xsl:template>
|
1910
1879
|
|
1911
1880
|
|
1912
|
-
<xsl:template match="mathml:math" priority="2">
|
1913
|
-
<fo:inline font-family="Cambria Math">
|
1914
|
-
<xsl:variable name="mathml">
|
1915
|
-
<xsl:apply-templates select="." mode="mathml"/>
|
1916
|
-
</xsl:variable>
|
1917
|
-
<fo:instream-foreign-object fox:alt-text="Math">
|
1918
|
-
<!-- <xsl:copy-of select="."/> -->
|
1919
|
-
<xsl:copy-of select="xalan:nodeset($mathml)"/>
|
1920
|
-
</fo:instream-foreign-object>
|
1921
|
-
</fo:inline>
|
1922
|
-
</xsl:template>
|
1923
|
-
|
1924
|
-
|
1925
|
-
|
1926
1881
|
<xsl:template match="iso:admonition">
|
1927
1882
|
<fo:block margin-bottom="12pt" font-weight="bold"> <!-- text-align="center" -->
|
1928
1883
|
<xsl:variable name="type">
|
@@ -1964,7 +1919,24 @@
|
|
1964
1919
|
<!-- SVG images processing -->
|
1965
1920
|
<!-- =================== -->
|
1966
1921
|
<xsl:template match="*[local-name() = 'figure'][not(*[local-name() = 'image']) and *[local-name() = 'svg']]/*[local-name() = 'name']/*[local-name() = 'bookmark']" priority="2"/>
|
1967
|
-
<xsl:template match="*[local-name() = 'figure'][not(*[local-name() = 'image'])]/*[local-name() = 'svg']" priority="2">
|
1922
|
+
<xsl:template match="*[local-name() = 'figure'][not(*[local-name() = 'image'])]/*[local-name() = 'svg']" priority="2" name="image_svg">
|
1923
|
+
<xsl:param name="name"/>
|
1924
|
+
|
1925
|
+
<xsl:variable name="svg_content">
|
1926
|
+
<xsl:apply-templates select="." mode="svg_update"/>
|
1927
|
+
</xsl:variable>
|
1928
|
+
|
1929
|
+
<xsl:variable name="alt-text">
|
1930
|
+
<xsl:choose>
|
1931
|
+
<xsl:when test="normalize-space(../*[local-name() = 'name']) != ''">
|
1932
|
+
<xsl:value-of select="../*[local-name() = 'name']"/>
|
1933
|
+
</xsl:when>
|
1934
|
+
<xsl:when test="normalize-space($name) != ''">
|
1935
|
+
<xsl:value-of select="$name"/>
|
1936
|
+
</xsl:when>
|
1937
|
+
<xsl:otherwise>Figure</xsl:otherwise>
|
1938
|
+
</xsl:choose>
|
1939
|
+
</xsl:variable>
|
1968
1940
|
|
1969
1941
|
<xsl:choose>
|
1970
1942
|
<xsl:when test=".//*[local-name() = 'a'][*[local-name() = 'rect'] or *[local-name() = 'polygon'] or *[local-name() = 'circle'] or *[local-name() = 'ellipse']]">
|
@@ -2021,13 +1993,14 @@
|
|
2021
1993
|
</fo:block>
|
2022
1994
|
</xsl:if>
|
2023
1995
|
<fo:block text-depth="0" line-height="0" font-size="0">
|
2024
|
-
|
1996
|
+
|
1997
|
+
<fo:instream-foreign-object fox:alt-text="{$alt-text}">
|
2025
1998
|
<xsl:attribute name="width">100%</xsl:attribute>
|
2026
1999
|
<xsl:attribute name="content-height">100%</xsl:attribute>
|
2027
2000
|
<xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
|
2028
2001
|
<xsl:attribute name="scaling">uniform</xsl:attribute>
|
2029
2002
|
|
2030
|
-
<xsl:apply-templates select="
|
2003
|
+
<xsl:apply-templates select="xalan:nodeset($svg_content)" mode="svg_remove_a"/>
|
2031
2004
|
</fo:instream-foreign-object>
|
2032
2005
|
</fo:block>
|
2033
2006
|
|
@@ -2045,7 +2018,7 @@
|
|
2045
2018
|
</xsl:when>
|
2046
2019
|
<xsl:otherwise>
|
2047
2020
|
<fo:block xsl:use-attribute-sets="image-style">
|
2048
|
-
<fo:instream-foreign-object fox:alt-text="{
|
2021
|
+
<fo:instream-foreign-object fox:alt-text="{$alt-text}">
|
2049
2022
|
<xsl:attribute name="width">100%</xsl:attribute>
|
2050
2023
|
<xsl:attribute name="content-height">100%</xsl:attribute>
|
2051
2024
|
<xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
|
@@ -2057,13 +2030,35 @@
|
|
2057
2030
|
<xsl:attribute name="width"><xsl:value-of select="$width"/>%</xsl:attribute>
|
2058
2031
|
</xsl:if>
|
2059
2032
|
<xsl:attribute name="scaling">uniform</xsl:attribute>
|
2060
|
-
<xsl:copy-of select="
|
2033
|
+
<xsl:copy-of select="$svg_content"/>
|
2061
2034
|
</fo:instream-foreign-object>
|
2062
2035
|
</fo:block>
|
2063
2036
|
</xsl:otherwise>
|
2064
2037
|
</xsl:choose>
|
2065
2038
|
</xsl:template>
|
2066
2039
|
|
2040
|
+
<xsl:template match="@*|node()" mode="svg_update">
|
2041
|
+
<xsl:copy>
|
2042
|
+
<xsl:apply-templates select="@*|node()" mode="svg_update"/>
|
2043
|
+
</xsl:copy>
|
2044
|
+
</xsl:template>
|
2045
|
+
|
2046
|
+
<xsl:template match="*[local-name() = 'image']/@href" mode="svg_update">
|
2047
|
+
<xsl:attribute name="href" namespace="http://www.w3.org/1999/xlink">
|
2048
|
+
<xsl:value-of select="."/>
|
2049
|
+
</xsl:attribute>
|
2050
|
+
</xsl:template>
|
2051
|
+
|
2052
|
+
<xsl:template match="*[local-name() = 'figure']/*[local-name() = 'image'][@mimetype = 'image/svg+xml' and @src[not(starts-with(., 'data:image/'))]]" priority="2">
|
2053
|
+
<xsl:variable name="svg_content" select="document(@src)"/>
|
2054
|
+
<xsl:variable name="name" select="ancestor::*[local-name() = 'figure']/*[local-name() = 'name']"/>
|
2055
|
+
<xsl:for-each select="xalan:nodeset($svg_content)/node()">
|
2056
|
+
<xsl:call-template name="image_svg">
|
2057
|
+
<xsl:with-param name="name" select="$name"/>
|
2058
|
+
</xsl:call-template>
|
2059
|
+
</xsl:for-each>
|
2060
|
+
</xsl:template>
|
2061
|
+
|
2067
2062
|
<xsl:template match="@*|node()" mode="svg_remove_a">
|
2068
2063
|
<xsl:copy>
|
2069
2064
|
<xsl:apply-templates select="@*|node()" mode="svg_remove_a"/>
|
@@ -2630,6 +2625,9 @@
|
|
2630
2625
|
<title-continued lang="en">(continued)</title-continued>
|
2631
2626
|
<title-continued lang="fr">(continué)</title-continued>
|
2632
2627
|
|
2628
|
+
</xsl:variable><xsl:variable name="bibdata">
|
2629
|
+
<xsl:copy-of select="//*[contains(local-name(), '-standard')]/*[local-name() = 'bibdata']"/>
|
2630
|
+
<xsl:copy-of select="//*[contains(local-name(), '-standard')]/*[local-name() = 'localized-strings']"/>
|
2633
2631
|
</xsl:variable><xsl:variable name="tab_zh"> </xsl:variable><xsl:template name="getTitle">
|
2634
2632
|
<xsl:param name="name"/>
|
2635
2633
|
<xsl:param name="lang"/>
|
@@ -2655,13 +2653,16 @@
|
|
2655
2653
|
</xsl:choose>
|
2656
2654
|
</xsl:template><xsl:variable name="lower">abcdefghijklmnopqrstuvwxyz</xsl:variable><xsl:variable name="upper">ABCDEFGHIJKLMNOPQRSTUVWXYZ</xsl:variable><xsl:variable name="en_chars" select="concat($lower,$upper,',.`1234567890-=~!@#$%^*()_+[]{}\|?/')"/><xsl:variable name="linebreak" select="'
'"/><xsl:attribute-set name="root-style">
|
2657
2655
|
|
2656
|
+
|
2658
2657
|
</xsl:attribute-set><xsl:attribute-set name="link-style">
|
2659
2658
|
|
2659
|
+
|
2660
2660
|
<xsl:attribute name="color">blue</xsl:attribute>
|
2661
2661
|
<xsl:attribute name="text-decoration">underline</xsl:attribute>
|
2662
2662
|
|
2663
2663
|
|
2664
2664
|
|
2665
|
+
|
2665
2666
|
</xsl:attribute-set><xsl:attribute-set name="sourcecode-style">
|
2666
2667
|
<xsl:attribute name="white-space">pre</xsl:attribute>
|
2667
2668
|
<xsl:attribute name="wrap-option">wrap</xsl:attribute>
|
@@ -2728,6 +2729,7 @@
|
|
2728
2729
|
|
2729
2730
|
|
2730
2731
|
|
2732
|
+
|
2731
2733
|
</xsl:attribute-set><xsl:attribute-set name="example-body-style">
|
2732
2734
|
|
2733
2735
|
|
@@ -2737,6 +2739,7 @@
|
|
2737
2739
|
|
2738
2740
|
|
2739
2741
|
<xsl:attribute name="padding-right">5mm</xsl:attribute>
|
2742
|
+
<xsl:attribute name="keep-with-next">always</xsl:attribute>
|
2740
2743
|
|
2741
2744
|
|
2742
2745
|
|
@@ -2746,9 +2749,7 @@
|
|
2746
2749
|
|
2747
2750
|
|
2748
2751
|
|
2749
|
-
|
2750
|
-
|
2751
|
-
|
2752
|
+
|
2752
2753
|
|
2753
2754
|
|
2754
2755
|
|
@@ -2783,6 +2784,7 @@
|
|
2783
2784
|
|
2784
2785
|
</xsl:attribute-set><xsl:attribute-set name="table-name-style">
|
2785
2786
|
<xsl:attribute name="keep-with-next">always</xsl:attribute>
|
2787
|
+
|
2786
2788
|
|
2787
2789
|
|
2788
2790
|
|
@@ -2801,6 +2803,7 @@
|
|
2801
2803
|
|
2802
2804
|
|
2803
2805
|
|
2806
|
+
|
2804
2807
|
</xsl:attribute-set><xsl:attribute-set name="appendix-style">
|
2805
2808
|
|
2806
2809
|
<xsl:attribute name="font-size">12pt</xsl:attribute>
|
@@ -2821,19 +2824,23 @@
|
|
2821
2824
|
</xsl:attribute-set><xsl:attribute-set name="xref-style">
|
2822
2825
|
|
2823
2826
|
|
2827
|
+
|
2824
2828
|
<xsl:attribute name="color">blue</xsl:attribute>
|
2825
2829
|
<xsl:attribute name="text-decoration">underline</xsl:attribute>
|
2826
2830
|
|
2827
2831
|
|
2832
|
+
|
2828
2833
|
</xsl:attribute-set><xsl:attribute-set name="eref-style">
|
2829
2834
|
|
2830
2835
|
|
2831
2836
|
|
2832
2837
|
|
2838
|
+
|
2833
2839
|
</xsl:attribute-set><xsl:attribute-set name="note-style">
|
2834
2840
|
|
2835
2841
|
|
2836
2842
|
|
2843
|
+
|
2837
2844
|
|
2838
2845
|
|
2839
2846
|
|
@@ -2857,6 +2864,7 @@
|
|
2857
2864
|
|
2858
2865
|
|
2859
2866
|
|
2867
|
+
|
2860
2868
|
<xsl:attribute name="padding-right">6mm</xsl:attribute>
|
2861
2869
|
|
2862
2870
|
|
@@ -2886,6 +2894,7 @@
|
|
2886
2894
|
|
2887
2895
|
|
2888
2896
|
|
2897
|
+
|
2889
2898
|
<xsl:attribute name="font-size">10pt</xsl:attribute>
|
2890
2899
|
<xsl:attribute name="margin-top">8pt</xsl:attribute>
|
2891
2900
|
<xsl:attribute name="margin-bottom">8pt</xsl:attribute>
|
@@ -2894,6 +2903,7 @@
|
|
2894
2903
|
|
2895
2904
|
|
2896
2905
|
</xsl:attribute-set><xsl:attribute-set name="termnote-name-style">
|
2906
|
+
|
2897
2907
|
|
2898
2908
|
|
2899
2909
|
</xsl:attribute-set><xsl:attribute-set name="quote-style">
|
@@ -2920,18 +2930,22 @@
|
|
2920
2930
|
|
2921
2931
|
|
2922
2932
|
|
2933
|
+
|
2923
2934
|
<xsl:attribute name="margin-bottom">8pt</xsl:attribute>
|
2924
2935
|
|
2936
|
+
|
2925
2937
|
</xsl:attribute-set><xsl:attribute-set name="origin-style">
|
2926
2938
|
|
2927
2939
|
|
2928
2940
|
|
2941
|
+
|
2929
2942
|
</xsl:attribute-set><xsl:attribute-set name="term-style">
|
2930
2943
|
|
2931
2944
|
<xsl:attribute name="margin-bottom">10pt</xsl:attribute>
|
2932
2945
|
|
2933
2946
|
</xsl:attribute-set><xsl:attribute-set name="figure-name-style">
|
2934
2947
|
|
2948
|
+
|
2935
2949
|
|
2936
2950
|
|
2937
2951
|
|
@@ -2964,10 +2978,12 @@
|
|
2964
2978
|
|
2965
2979
|
|
2966
2980
|
|
2981
|
+
|
2967
2982
|
</xsl:attribute-set><xsl:attribute-set name="figure-pseudocode-p-style">
|
2968
2983
|
|
2969
2984
|
</xsl:attribute-set><xsl:attribute-set name="image-graphic-style">
|
2970
2985
|
|
2986
|
+
|
2971
2987
|
<xsl:attribute name="width">100%</xsl:attribute>
|
2972
2988
|
<xsl:attribute name="content-height">scale-to-fit</xsl:attribute>
|
2973
2989
|
<xsl:attribute name="scaling">uniform</xsl:attribute>
|
@@ -2993,15 +3009,38 @@
|
|
2993
3009
|
|
2994
3010
|
</xsl:attribute-set><xsl:attribute-set name="admitted-style">
|
2995
3011
|
|
2996
|
-
|
3012
|
+
|
3013
|
+
|
2997
3014
|
</xsl:attribute-set><xsl:attribute-set name="deprecates-style">
|
2998
3015
|
|
3016
|
+
|
2999
3017
|
</xsl:attribute-set><xsl:attribute-set name="definition-style">
|
3000
3018
|
|
3001
3019
|
|
3002
3020
|
<xsl:attribute name="margin-bottom">6pt</xsl:attribute>
|
3003
3021
|
|
3004
|
-
|
3022
|
+
|
3023
|
+
</xsl:attribute-set><xsl:variable name="color-added-text">
|
3024
|
+
<xsl:text>rgb(0, 255, 0)</xsl:text>
|
3025
|
+
</xsl:variable><xsl:attribute-set name="add-style">
|
3026
|
+
<xsl:attribute name="color">red</xsl:attribute>
|
3027
|
+
<xsl:attribute name="text-decoration">underline</xsl:attribute>
|
3028
|
+
<!-- <xsl:attribute name="color">black</xsl:attribute>
|
3029
|
+
<xsl:attribute name="background-color"><xsl:value-of select="$color-added-text"/></xsl:attribute>
|
3030
|
+
<xsl:attribute name="padding-top">1mm</xsl:attribute>
|
3031
|
+
<xsl:attribute name="padding-bottom">0.5mm</xsl:attribute> -->
|
3032
|
+
</xsl:attribute-set><xsl:variable name="color-deleted-text">
|
3033
|
+
<xsl:text>red</xsl:text>
|
3034
|
+
</xsl:variable><xsl:attribute-set name="del-style">
|
3035
|
+
<xsl:attribute name="color"><xsl:value-of select="$color-deleted-text"/></xsl:attribute>
|
3036
|
+
<xsl:attribute name="text-decoration">line-through</xsl:attribute>
|
3037
|
+
</xsl:attribute-set><xsl:attribute-set name="mathml-style">
|
3038
|
+
<xsl:attribute name="font-family">STIX Two Math</xsl:attribute>
|
3039
|
+
|
3040
|
+
<xsl:attribute name="font-family">Cambria Math</xsl:attribute>
|
3041
|
+
|
3042
|
+
|
3043
|
+
</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="processPrefaceSectionsDefault_Contents">
|
3005
3044
|
<xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='abstract']" mode="contents"/>
|
3006
3045
|
<xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='foreword']" mode="contents"/>
|
3007
3046
|
<xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='introduction']" mode="contents"/>
|
@@ -3046,16 +3085,17 @@
|
|
3046
3085
|
<xsl:call-template name="add-zero-spaces-java"/>
|
3047
3086
|
</xsl:template><xsl:template match="*[local-name()='table']" name="table">
|
3048
3087
|
|
3088
|
+
<xsl:variable name="table-preamble">
|
3089
|
+
|
3090
|
+
|
3091
|
+
</xsl:variable>
|
3092
|
+
|
3049
3093
|
<xsl:variable name="table">
|
3050
3094
|
|
3051
3095
|
<xsl:variable name="simple-table">
|
3052
3096
|
<xsl:call-template name="getSimpleTable"/>
|
3053
3097
|
</xsl:variable>
|
3054
3098
|
|
3055
|
-
|
3056
|
-
|
3057
|
-
|
3058
|
-
|
3059
3099
|
<!-- <xsl:if test="$namespace = 'bipm'">
|
3060
3100
|
<fo:block> </fo:block>
|
3061
3101
|
</xsl:if> -->
|
@@ -3066,7 +3106,7 @@
|
|
3066
3106
|
|
3067
3107
|
|
3068
3108
|
|
3069
|
-
<xsl:variable name="cols-count" select="count(xalan:nodeset($simple-table)
|
3109
|
+
<xsl:variable name="cols-count" select="count(xalan:nodeset($simple-table)/*/tr[1]/td)"/>
|
3070
3110
|
|
3071
3111
|
<!-- <xsl:variable name="cols-count">
|
3072
3112
|
<xsl:choose>
|
@@ -3085,8 +3125,6 @@
|
|
3085
3125
|
<!-- cols-count=<xsl:copy-of select="$cols-count"/> -->
|
3086
3126
|
<!-- cols-count2=<xsl:copy-of select="$cols-count2"/> -->
|
3087
3127
|
|
3088
|
-
|
3089
|
-
|
3090
3128
|
<xsl:variable name="colwidths">
|
3091
3129
|
<xsl:if test="not(*[local-name()='colgroup']/*[local-name()='col'])">
|
3092
3130
|
<xsl:call-template name="calculate-column-widths">
|
@@ -3114,8 +3152,10 @@
|
|
3114
3152
|
</xsl:choose>
|
3115
3153
|
</xsl:variable>
|
3116
3154
|
|
3155
|
+
|
3117
3156
|
<fo:block-container margin-left="-{$margin-left}mm" margin-right="-{$margin-left}mm">
|
3118
3157
|
|
3158
|
+
|
3119
3159
|
<xsl:attribute name="font-size">10pt</xsl:attribute>
|
3120
3160
|
|
3121
3161
|
|
@@ -3127,6 +3167,7 @@
|
|
3127
3167
|
|
3128
3168
|
|
3129
3169
|
|
3170
|
+
|
3130
3171
|
<xsl:attribute name="margin-top">12pt</xsl:attribute>
|
3131
3172
|
<xsl:attribute name="margin-left">0mm</xsl:attribute>
|
3132
3173
|
<xsl:attribute name="margin-right">0mm</xsl:attribute>
|
@@ -3136,6 +3177,7 @@
|
|
3136
3177
|
|
3137
3178
|
|
3138
3179
|
|
3180
|
+
|
3139
3181
|
<xsl:variable name="table_width">
|
3140
3182
|
<!-- for centered table always 100% (@width will be set for middle/second cell of outer table) -->
|
3141
3183
|
100%
|
@@ -3149,12 +3191,19 @@
|
|
3149
3191
|
<attribute name="margin-left"><xsl:value-of select="$margin-left"/>mm</attribute>
|
3150
3192
|
<attribute name="margin-right"><xsl:value-of select="$margin-left"/>mm</attribute>
|
3151
3193
|
|
3194
|
+
|
3152
3195
|
<attribute name="border">1.5pt solid black</attribute>
|
3153
3196
|
<xsl:if test="*[local-name()='thead']">
|
3154
3197
|
<attribute name="border-top">1pt solid black</attribute>
|
3155
3198
|
</xsl:if>
|
3156
3199
|
|
3157
3200
|
|
3201
|
+
<xsl:if test="ancestor::*[local-name() = 'table']">
|
3202
|
+
<!-- for internal table in table cell -->
|
3203
|
+
<attribute name="border">0.5pt solid black</attribute>
|
3204
|
+
</xsl:if>
|
3205
|
+
|
3206
|
+
|
3158
3207
|
|
3159
3208
|
|
3160
3209
|
<attribute name="margin-left">0mm</attribute>
|
@@ -3249,7 +3298,8 @@
|
|
3249
3298
|
</fo:block-container>
|
3250
3299
|
</xsl:variable>
|
3251
3300
|
|
3252
|
-
|
3301
|
+
<xsl:variable name="isAdded" select="@added"/>
|
3302
|
+
<xsl:variable name="isDeleted" select="@deleted"/>
|
3253
3303
|
|
3254
3304
|
<xsl:choose>
|
3255
3305
|
<xsl:when test="@width">
|
@@ -3263,7 +3313,14 @@
|
|
3263
3313
|
<fo:table-body>
|
3264
3314
|
<fo:table-row>
|
3265
3315
|
<fo:table-cell column-number="2">
|
3266
|
-
<
|
3316
|
+
<xsl:copy-of select="$table-preamble"/>
|
3317
|
+
<fo:block>
|
3318
|
+
<xsl:call-template name="setTrackChangesStyles">
|
3319
|
+
<xsl:with-param name="isAdded" select="$isAdded"/>
|
3320
|
+
<xsl:with-param name="isDeleted" select="$isDeleted"/>
|
3321
|
+
</xsl:call-template>
|
3322
|
+
<xsl:copy-of select="$table"/>
|
3323
|
+
</fo:block>
|
3267
3324
|
</fo:table-cell>
|
3268
3325
|
</fo:table-row>
|
3269
3326
|
</fo:table-body>
|
@@ -3274,18 +3331,46 @@
|
|
3274
3331
|
|
3275
3332
|
</xsl:when>
|
3276
3333
|
<xsl:otherwise>
|
3277
|
-
<xsl:
|
3334
|
+
<xsl:choose>
|
3335
|
+
<xsl:when test="$isAdded = 'true' or $isDeleted = 'true'">
|
3336
|
+
<xsl:copy-of select="$table-preamble"/>
|
3337
|
+
<fo:block>
|
3338
|
+
<xsl:call-template name="setTrackChangesStyles">
|
3339
|
+
<xsl:with-param name="isAdded" select="$isAdded"/>
|
3340
|
+
<xsl:with-param name="isDeleted" select="$isDeleted"/>
|
3341
|
+
</xsl:call-template>
|
3342
|
+
<xsl:copy-of select="$table"/>
|
3343
|
+
</fo:block>
|
3344
|
+
</xsl:when>
|
3345
|
+
<xsl:otherwise>
|
3346
|
+
<xsl:copy-of select="$table-preamble"/>
|
3347
|
+
<xsl:copy-of select="$table"/>
|
3348
|
+
</xsl:otherwise>
|
3349
|
+
</xsl:choose>
|
3278
3350
|
</xsl:otherwise>
|
3279
3351
|
</xsl:choose>
|
3280
3352
|
|
3281
3353
|
</xsl:template><xsl:template match="*[local-name()='table']/*[local-name() = 'name']"/><xsl:template match="*[local-name()='table']/*[local-name() = 'name']" mode="presentation">
|
3354
|
+
<xsl:param name="continued"/>
|
3282
3355
|
<xsl:if test="normalize-space() != ''">
|
3283
3356
|
<fo:block xsl:use-attribute-sets="table-name-style">
|
3284
3357
|
|
3285
3358
|
<xsl:attribute name="margin-bottom">0pt</xsl:attribute>
|
3286
3359
|
|
3287
3360
|
|
3288
|
-
<xsl:
|
3361
|
+
<xsl:choose>
|
3362
|
+
<xsl:when test="$continued = 'true'">
|
3363
|
+
<!-- <xsl:if test="$namespace = 'bsi'"></xsl:if> -->
|
3364
|
+
|
3365
|
+
<xsl:apply-templates/>
|
3366
|
+
|
3367
|
+
</xsl:when>
|
3368
|
+
<xsl:otherwise>
|
3369
|
+
<xsl:apply-templates/>
|
3370
|
+
</xsl:otherwise>
|
3371
|
+
</xsl:choose>
|
3372
|
+
|
3373
|
+
|
3289
3374
|
</fo:block>
|
3290
3375
|
</xsl:if>
|
3291
3376
|
</xsl:template><xsl:template name="calculate-columns-numbers">
|
@@ -3337,7 +3422,7 @@
|
|
3337
3422
|
</xsl:for-each>
|
3338
3423
|
</xsl:when>
|
3339
3424
|
<xsl:otherwise>
|
3340
|
-
<xsl:for-each select="xalan:nodeset($table)
|
3425
|
+
<xsl:for-each select="xalan:nodeset($table)/*/tr">
|
3341
3426
|
<xsl:variable name="td_text">
|
3342
3427
|
<xsl:apply-templates select="td[$curr-col]" mode="td_text"/>
|
3343
3428
|
|
@@ -3429,18 +3514,23 @@
|
|
3429
3514
|
<xsl:apply-templates/>
|
3430
3515
|
</fo:table-header>
|
3431
3516
|
</xsl:template><xsl:template name="table-header-title">
|
3432
|
-
<xsl:param name="cols-count"/>
|
3517
|
+
<xsl:param name="cols-count"/>
|
3433
3518
|
<!-- row for title -->
|
3434
3519
|
<fo:table-row>
|
3435
3520
|
<fo:table-cell number-columns-spanned="{$cols-count}" border-left="1.5pt solid white" border-right="1.5pt solid white" border-top="1.5pt solid white" border-bottom="1.5pt solid black">
|
3436
|
-
|
3521
|
+
|
3522
|
+
<xsl:apply-templates select="ancestor::*[local-name()='table']/*[local-name()='name']" mode="presentation">
|
3523
|
+
<xsl:with-param name="continued">true</xsl:with-param>
|
3524
|
+
</xsl:apply-templates>
|
3437
3525
|
<xsl:for-each select="ancestor::*[local-name()='table'][1]">
|
3438
3526
|
<xsl:call-template name="fn_name_display"/>
|
3439
|
-
</xsl:for-each>
|
3440
|
-
|
3441
|
-
<
|
3442
|
-
|
3443
|
-
|
3527
|
+
</xsl:for-each>
|
3528
|
+
|
3529
|
+
<fo:block text-align="right" font-style="italic">
|
3530
|
+
<xsl:text> </xsl:text>
|
3531
|
+
<fo:retrieve-table-marker retrieve-class-name="table_continued"/>
|
3532
|
+
</fo:block>
|
3533
|
+
|
3444
3534
|
</fo:table-cell>
|
3445
3535
|
</fo:table-row>
|
3446
3536
|
</xsl:template><xsl:template match="*[local-name()='thead']" mode="process_tbody">
|
@@ -3661,19 +3751,25 @@
|
|
3661
3751
|
<xsl:call-template name="getTitle">
|
3662
3752
|
<xsl:with-param name="name" select="'title-continued'"/>
|
3663
3753
|
</xsl:call-template>
|
3664
|
-
</xsl:variable>
|
3754
|
+
</xsl:variable>
|
3755
|
+
|
3756
|
+
<xsl:variable name="title_start" select="ancestor::*[local-name()='table'][1]/*[local-name()='name']/node()[1][self::text()]"/>
|
3757
|
+
<xsl:variable name="table_number" select="substring-before($title_start, '—')"/>
|
3758
|
+
|
3665
3759
|
<fo:table-row height="0" keep-with-next.within-page="always">
|
3666
3760
|
<fo:table-cell>
|
3667
|
-
|
3761
|
+
|
3762
|
+
|
3763
|
+
<fo:marker marker-class-name="table_continued"/>
|
3764
|
+
|
3668
3765
|
<fo:block/>
|
3669
3766
|
</fo:table-cell>
|
3670
3767
|
</fo:table-row>
|
3671
3768
|
<fo:table-row height="0" keep-with-next.within-page="always">
|
3672
3769
|
<fo:table-cell>
|
3673
|
-
|
3674
|
-
|
3675
|
-
|
3676
|
-
<!-- </fo:inline> -->
|
3770
|
+
|
3771
|
+
<fo:marker marker-class-name="table_continued">
|
3772
|
+
<xsl:value-of select="$title_continued"/>
|
3677
3773
|
</fo:marker>
|
3678
3774
|
<fo:block/>
|
3679
3775
|
</fo:table-cell>
|
@@ -3711,6 +3807,7 @@
|
|
3711
3807
|
|
3712
3808
|
|
3713
3809
|
|
3810
|
+
|
3714
3811
|
</xsl:if>
|
3715
3812
|
<xsl:if test="$parent-name = 'tfoot'">
|
3716
3813
|
|
@@ -3735,12 +3832,14 @@
|
|
3735
3832
|
<xsl:attribute name="text-align">
|
3736
3833
|
<xsl:choose>
|
3737
3834
|
<xsl:when test="@align">
|
3738
|
-
<xsl:
|
3835
|
+
<xsl:call-template name="setAlignment"/>
|
3836
|
+
<!-- <xsl:value-of select="@align"/> -->
|
3739
3837
|
</xsl:when>
|
3740
3838
|
<xsl:otherwise>center</xsl:otherwise>
|
3741
3839
|
</xsl:choose>
|
3742
3840
|
</xsl:attribute>
|
3743
3841
|
|
3842
|
+
|
3744
3843
|
<xsl:attribute name="padding-top">1mm</xsl:attribute>
|
3745
3844
|
|
3746
3845
|
|
@@ -3753,6 +3852,10 @@
|
|
3753
3852
|
|
3754
3853
|
|
3755
3854
|
|
3855
|
+
|
3856
|
+
<xsl:if test="$lang = 'ar'">
|
3857
|
+
<xsl:attribute name="padding-right">1mm</xsl:attribute>
|
3858
|
+
</xsl:if>
|
3756
3859
|
<xsl:if test="@colspan">
|
3757
3860
|
<xsl:attribute name="number-columns-spanned">
|
3758
3861
|
<xsl:value-of select="@colspan"/>
|
@@ -3784,16 +3887,21 @@
|
|
3784
3887
|
<xsl:attribute name="text-align">
|
3785
3888
|
<xsl:choose>
|
3786
3889
|
<xsl:when test="@align">
|
3787
|
-
<xsl:
|
3890
|
+
<xsl:call-template name="setAlignment"/>
|
3891
|
+
<!-- <xsl:value-of select="@align"/> -->
|
3788
3892
|
</xsl:when>
|
3789
3893
|
<xsl:otherwise>left</xsl:otherwise>
|
3790
3894
|
</xsl:choose>
|
3791
3895
|
</xsl:attribute>
|
3896
|
+
<xsl:if test="$lang = 'ar'">
|
3897
|
+
<xsl:attribute name="padding-right">1mm</xsl:attribute>
|
3898
|
+
</xsl:if>
|
3792
3899
|
<!-- and ancestor::*[local-name() = 'thead'] -->
|
3793
3900
|
<xsl:attribute name="padding-top">0.5mm</xsl:attribute>
|
3794
3901
|
|
3795
3902
|
|
3796
3903
|
|
3904
|
+
|
3797
3905
|
<xsl:if test="ancestor::*[local-name() = 'tfoot']">
|
3798
3906
|
<xsl:attribute name="border">solid black 0</xsl:attribute>
|
3799
3907
|
</xsl:if>
|
@@ -3806,6 +3914,9 @@
|
|
3806
3914
|
|
3807
3915
|
|
3808
3916
|
|
3917
|
+
<xsl:if test=".//*[local-name() = 'table']">
|
3918
|
+
<xsl:attribute name="padding-right">1mm</xsl:attribute>
|
3919
|
+
</xsl:if>
|
3809
3920
|
<xsl:if test="@colspan">
|
3810
3921
|
<xsl:attribute name="number-columns-spanned">
|
3811
3922
|
<xsl:value-of select="@colspan"/>
|
@@ -3939,13 +4050,13 @@
|
|
3939
4050
|
</xsl:choose>
|
3940
4051
|
</xsl:variable>
|
3941
4052
|
<!-- <xsl:variable name="ns" select="substring-before(name(/*), '-')"/> -->
|
3942
|
-
<xsl:element name="{$ns}:table">
|
4053
|
+
<!-- <xsl:element name="{$ns}:table"> -->
|
3943
4054
|
<xsl:for-each select="*[local-name() = 'dl'][1]">
|
3944
4055
|
<tbody>
|
3945
4056
|
<xsl:apply-templates mode="dl"/>
|
3946
4057
|
</tbody>
|
3947
4058
|
</xsl:for-each>
|
3948
|
-
</xsl:element>
|
4059
|
+
<!-- </xsl:element> -->
|
3949
4060
|
</xsl:variable>
|
3950
4061
|
|
3951
4062
|
<xsl:call-template name="calculate-column-widths">
|
@@ -4042,6 +4153,8 @@
|
|
4042
4153
|
<xsl:apply-templates/>
|
4043
4154
|
</fo:inline>
|
4044
4155
|
</xsl:template><xsl:template match="*[local-name()='dl']">
|
4156
|
+
<xsl:variable name="isAdded" select="@added"/>
|
4157
|
+
<xsl:variable name="isDeleted" select="@deleted"/>
|
4045
4158
|
<fo:block-container>
|
4046
4159
|
|
4047
4160
|
<xsl:if test="not(ancestor::*[local-name() = 'quote'])">
|
@@ -4058,6 +4171,12 @@
|
|
4058
4171
|
</xsl:attribute>
|
4059
4172
|
|
4060
4173
|
</xsl:if>
|
4174
|
+
|
4175
|
+
<xsl:call-template name="setTrackChangesStyles">
|
4176
|
+
<xsl:with-param name="isAdded" select="$isAdded"/>
|
4177
|
+
<xsl:with-param name="isDeleted" select="$isDeleted"/>
|
4178
|
+
</xsl:call-template>
|
4179
|
+
|
4061
4180
|
<fo:block-container>
|
4062
4181
|
|
4063
4182
|
<xsl:attribute name="margin-left">0mm</xsl:attribute>
|
@@ -4122,6 +4241,7 @@
|
|
4122
4241
|
|
4123
4242
|
|
4124
4243
|
|
4244
|
+
|
4125
4245
|
<xsl:variable name="title-key">
|
4126
4246
|
|
4127
4247
|
<xsl:call-template name="getLocalizedString">
|
@@ -4179,11 +4299,11 @@
|
|
4179
4299
|
</xsl:choose>
|
4180
4300
|
</xsl:variable>
|
4181
4301
|
<!-- <xsl:variable name="ns" select="substring-before(name(/*), '-')"/> -->
|
4182
|
-
<xsl:element name="{$ns}:table">
|
4302
|
+
<!-- <xsl:element name="{$ns}:table"> -->
|
4183
4303
|
<tbody>
|
4184
4304
|
<xsl:apply-templates mode="dl"/>
|
4185
4305
|
</tbody>
|
4186
|
-
</xsl:element>
|
4306
|
+
<!-- </xsl:element> -->
|
4187
4307
|
</xsl:variable>
|
4188
4308
|
<!-- html-table<xsl:copy-of select="$html-table"/> -->
|
4189
4309
|
<xsl:variable name="colwidths">
|
@@ -4410,6 +4530,8 @@
|
|
4410
4530
|
|
4411
4531
|
<xsl:apply-templates/>
|
4412
4532
|
</fo:inline>
|
4533
|
+
</xsl:template><xsl:template match="*[local-name()='padding']">
|
4534
|
+
<fo:inline padding-right="{@value}"> </fo:inline>
|
4413
4535
|
</xsl:template><xsl:template match="*[local-name()='sup']">
|
4414
4536
|
<fo:inline font-size="80%" vertical-align="super">
|
4415
4537
|
<xsl:apply-templates/>
|
@@ -4435,6 +4557,7 @@
|
|
4435
4557
|
|
4436
4558
|
|
4437
4559
|
|
4560
|
+
|
4438
4561
|
|
4439
4562
|
</xsl:variable>
|
4440
4563
|
<xsl:variable name="font-size" select="normalize-space($_font-size)"/>
|
@@ -4452,8 +4575,74 @@
|
|
4452
4575
|
<fo:inline text-decoration="underline">
|
4453
4576
|
<xsl:apply-templates/>
|
4454
4577
|
</fo:inline>
|
4578
|
+
</xsl:template><xsl:template match="*[local-name()='add']">
|
4579
|
+
<xsl:choose>
|
4580
|
+
<xsl:when test="@amendment">
|
4581
|
+
<fo:inline>
|
4582
|
+
<xsl:call-template name="insertTag">
|
4583
|
+
<xsl:with-param name="kind">A</xsl:with-param>
|
4584
|
+
<xsl:with-param name="value"><xsl:value-of select="@amendment"/></xsl:with-param>
|
4585
|
+
</xsl:call-template>
|
4586
|
+
<xsl:apply-templates/>
|
4587
|
+
<xsl:call-template name="insertTag">
|
4588
|
+
<xsl:with-param name="type">closing</xsl:with-param>
|
4589
|
+
<xsl:with-param name="kind">A</xsl:with-param>
|
4590
|
+
<xsl:with-param name="value"><xsl:value-of select="@amendment"/></xsl:with-param>
|
4591
|
+
</xsl:call-template>
|
4592
|
+
</fo:inline>
|
4593
|
+
</xsl:when>
|
4594
|
+
<xsl:when test="@corrigenda">
|
4595
|
+
<fo:inline>
|
4596
|
+
<xsl:call-template name="insertTag">
|
4597
|
+
<xsl:with-param name="kind">C</xsl:with-param>
|
4598
|
+
<xsl:with-param name="value"><xsl:value-of select="@corrigenda"/></xsl:with-param>
|
4599
|
+
</xsl:call-template>
|
4600
|
+
<xsl:apply-templates/>
|
4601
|
+
<xsl:call-template name="insertTag">
|
4602
|
+
<xsl:with-param name="type">closing</xsl:with-param>
|
4603
|
+
<xsl:with-param name="kind">C</xsl:with-param>
|
4604
|
+
<xsl:with-param name="value"><xsl:value-of select="@corrigenda"/></xsl:with-param>
|
4605
|
+
</xsl:call-template>
|
4606
|
+
</fo:inline>
|
4607
|
+
</xsl:when>
|
4608
|
+
<xsl:otherwise>
|
4609
|
+
<fo:inline xsl:use-attribute-sets="add-style">
|
4610
|
+
<xsl:apply-templates/>
|
4611
|
+
</fo:inline>
|
4612
|
+
</xsl:otherwise>
|
4613
|
+
</xsl:choose>
|
4614
|
+
|
4615
|
+
</xsl:template><xsl:template name="insertTag">
|
4616
|
+
<xsl:param name="type"/>
|
4617
|
+
<xsl:param name="kind"/>
|
4618
|
+
<xsl:param name="value"/>
|
4619
|
+
<xsl:variable name="add_width" select="string-length($value) * 20"/>
|
4620
|
+
<xsl:variable name="maxwidth" select="60 + $add_width"/>
|
4621
|
+
<fo:instream-foreign-object fox:alt-text="OpeningTag" baseline-shift="-20%"><!-- alignment-baseline="middle" -->
|
4622
|
+
<!-- <xsl:attribute name="width">7mm</xsl:attribute>
|
4623
|
+
<xsl:attribute name="content-height">100%</xsl:attribute> -->
|
4624
|
+
<xsl:attribute name="height">5mm</xsl:attribute>
|
4625
|
+
<xsl:attribute name="content-width">100%</xsl:attribute>
|
4626
|
+
<xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
|
4627
|
+
<xsl:attribute name="scaling">uniform</xsl:attribute>
|
4628
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="{$maxwidth + 32}" height="80">
|
4629
|
+
<g>
|
4630
|
+
<xsl:if test="$type = 'closing'">
|
4631
|
+
<xsl:attribute name="transform">scale(-1 1) translate(-<xsl:value-of select="$maxwidth + 32"/>,0)</xsl:attribute>
|
4632
|
+
</xsl:if>
|
4633
|
+
<polyline points="0,0 {$maxwidth},0 {$maxwidth + 30},40 {$maxwidth},80 0,80 " stroke="black" stroke-width="5" fill="white"/>
|
4634
|
+
<line x1="0" y1="0" x2="0" y2="80" stroke="black" stroke-width="20"/>
|
4635
|
+
</g>
|
4636
|
+
<text font-family="Arial" x="15" y="57" font-size="40pt">
|
4637
|
+
<xsl:if test="$type = 'closing'">
|
4638
|
+
<xsl:attribute name="x">25</xsl:attribute>
|
4639
|
+
</xsl:if>
|
4640
|
+
<xsl:value-of select="$kind"/><tspan dy="10" font-size="30pt"><xsl:value-of select="$value"/></tspan>
|
4641
|
+
</text>
|
4642
|
+
</svg>
|
4643
|
+
</fo:instream-foreign-object>
|
4455
4644
|
</xsl:template><xsl:template match="*[local-name()='del']">
|
4456
|
-
<fo:inline
|
4645
|
+
<fo:inline xsl:use-attribute-sets="del-style">
|
4457
4646
|
<xsl:apply-templates/>
|
4458
4647
|
</fo:inline>
|
4459
4648
|
</xsl:template><xsl:template match="*[local-name()='hi']">
|
@@ -4750,11 +4939,15 @@
|
|
4750
4939
|
</xsl:apply-templates>
|
4751
4940
|
</xsl:template><xsl:template name="getLang">
|
4752
4941
|
<xsl:variable name="language_current" select="normalize-space(//*[local-name()='bibdata']//*[local-name()='language'][@current = 'true'])"/>
|
4942
|
+
<xsl:variable name="language_current_2" select="normalize-space(xalan:nodeset($bibdata)//*[local-name()='bibdata']//*[local-name()='language'][@current = 'true'])"/>
|
4753
4943
|
<xsl:variable name="language">
|
4754
4944
|
<xsl:choose>
|
4755
4945
|
<xsl:when test="$language_current != ''">
|
4756
4946
|
<xsl:value-of select="$language_current"/>
|
4757
4947
|
</xsl:when>
|
4948
|
+
<xsl:when test="$language_current_2 != ''">
|
4949
|
+
<xsl:value-of select="$language_current_2"/>
|
4950
|
+
</xsl:when>
|
4758
4951
|
<xsl:otherwise>
|
4759
4952
|
<xsl:value-of select="//*[local-name()='bibdata']//*[local-name()='language']"/>
|
4760
4953
|
</xsl:otherwise>
|
@@ -4794,13 +4987,30 @@
|
|
4794
4987
|
<xsl:value-of select="java:toUpperCase(java:java.lang.String.new(substring($str, 1, 1)))"/>
|
4795
4988
|
<xsl:value-of select="substring($str, 2)"/>
|
4796
4989
|
</xsl:template><xsl:template match="mathml:math">
|
4797
|
-
<
|
4990
|
+
<xsl:variable name="isAdded" select="@added"/>
|
4991
|
+
<xsl:variable name="isDeleted" select="@deleted"/>
|
4992
|
+
|
4993
|
+
<fo:inline xsl:use-attribute-sets="mathml-style">
|
4994
|
+
|
4995
|
+
|
4996
|
+
<xsl:call-template name="setTrackChangesStyles">
|
4997
|
+
<xsl:with-param name="isAdded" select="$isAdded"/>
|
4998
|
+
<xsl:with-param name="isDeleted" select="$isDeleted"/>
|
4999
|
+
</xsl:call-template>
|
4798
5000
|
|
4799
5001
|
<xsl:variable name="mathml">
|
4800
5002
|
<xsl:apply-templates select="." mode="mathml"/>
|
4801
5003
|
</xsl:variable>
|
4802
5004
|
<fo:instream-foreign-object fox:alt-text="Math">
|
4803
5005
|
|
5006
|
+
|
5007
|
+
<xsl:if test="count(ancestor::*[local-name() = 'table']) > 1">
|
5008
|
+
<xsl:attribute name="width">95%</xsl:attribute>
|
5009
|
+
<xsl:attribute name="content-height">100%</xsl:attribute>
|
5010
|
+
<xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
|
5011
|
+
<xsl:attribute name="scaling">uniform</xsl:attribute>
|
5012
|
+
</xsl:if>
|
5013
|
+
|
4804
5014
|
<!-- <xsl:copy-of select="."/> -->
|
4805
5015
|
<xsl:copy-of select="xalan:nodeset($mathml)"/>
|
4806
5016
|
</fo:instream-foreign-object>
|
@@ -4821,6 +5031,16 @@
|
|
4821
5031
|
<mathml:mspace width="0.5ex"/>
|
4822
5032
|
</xsl:template><xsl:template match="mathml:math/*[local-name()='unit']" mode="mathml"/><xsl:template match="mathml:math/*[local-name()='prefix']" mode="mathml"/><xsl:template match="mathml:math/*[local-name()='dimension']" mode="mathml"/><xsl:template match="mathml:math/*[local-name()='quantity']" mode="mathml"/><xsl:template match="*[local-name()='localityStack']"/><xsl:template match="*[local-name()='link']" name="link">
|
4823
5033
|
<xsl:variable name="target">
|
5034
|
+
<xsl:choose>
|
5035
|
+
<xsl:when test="@updatetype = 'true'">
|
5036
|
+
<xsl:value-of select="concat(normalize-space(@target), '.pdf')"/>
|
5037
|
+
</xsl:when>
|
5038
|
+
<xsl:otherwise>
|
5039
|
+
<xsl:value-of select="normalize-space(@target)"/>
|
5040
|
+
</xsl:otherwise>
|
5041
|
+
</xsl:choose>
|
5042
|
+
</xsl:variable>
|
5043
|
+
<xsl:variable name="target_text">
|
4824
5044
|
<xsl:choose>
|
4825
5045
|
<xsl:when test="starts-with(normalize-space(@target), 'mailto:')">
|
4826
5046
|
<xsl:value-of select="normalize-space(substring-after(@target, 'mailto:'))"/>
|
@@ -4833,19 +5053,19 @@
|
|
4833
5053
|
<fo:inline xsl:use-attribute-sets="link-style">
|
4834
5054
|
|
4835
5055
|
<xsl:choose>
|
4836
|
-
<xsl:when test="$
|
5056
|
+
<xsl:when test="$target_text = ''">
|
4837
5057
|
<xsl:apply-templates/>
|
4838
5058
|
</xsl:when>
|
4839
5059
|
<xsl:otherwise>
|
4840
|
-
<fo:basic-link external-destination="{
|
5060
|
+
<fo:basic-link external-destination="{$target}" fox:alt-text="{$target}">
|
4841
5061
|
<xsl:choose>
|
4842
5062
|
<xsl:when test="normalize-space(.) = ''">
|
4843
|
-
<!-- <xsl:value-of select="$target"/> -->
|
4844
5063
|
<xsl:call-template name="add-zero-spaces-link-java">
|
4845
|
-
<xsl:with-param name="text" select="$
|
5064
|
+
<xsl:with-param name="text" select="$target_text"/>
|
4846
5065
|
</xsl:call-template>
|
4847
5066
|
</xsl:when>
|
4848
5067
|
<xsl:otherwise>
|
5068
|
+
<!-- output text from <link>text</link> -->
|
4849
5069
|
<xsl:apply-templates/>
|
4850
5070
|
</xsl:otherwise>
|
4851
5071
|
</xsl:choose>
|
@@ -4957,6 +5177,7 @@
|
|
4957
5177
|
|
4958
5178
|
|
4959
5179
|
<fo:inline xsl:use-attribute-sets="note-name-style">
|
5180
|
+
|
4960
5181
|
<xsl:apply-templates select="*[local-name() = 'name']" mode="presentation"/>
|
4961
5182
|
</fo:inline>
|
4962
5183
|
<xsl:apply-templates/>
|
@@ -4983,6 +5204,7 @@
|
|
4983
5204
|
</xsl:template><xsl:template match="*[local-name() = 'termnote']">
|
4984
5205
|
<fo:block id="{@id}" xsl:use-attribute-sets="termnote-style">
|
4985
5206
|
<fo:inline xsl:use-attribute-sets="termnote-name-style">
|
5207
|
+
|
4986
5208
|
<xsl:apply-templates select="*[local-name() = 'name']" mode="presentation"/>
|
4987
5209
|
</fo:inline>
|
4988
5210
|
<xsl:apply-templates/>
|
@@ -5046,8 +5268,15 @@
|
|
5046
5268
|
</fo:inline>
|
5047
5269
|
</xsl:if>
|
5048
5270
|
</xsl:template><xsl:template match="*[local-name() = 'figure']" name="figure">
|
5271
|
+
<xsl:variable name="isAdded" select="@added"/>
|
5272
|
+
<xsl:variable name="isDeleted" select="@deleted"/>
|
5049
5273
|
<fo:block-container id="{@id}">
|
5050
5274
|
|
5275
|
+
<xsl:call-template name="setTrackChangesStyles">
|
5276
|
+
<xsl:with-param name="isAdded" select="$isAdded"/>
|
5277
|
+
<xsl:with-param name="isDeleted" select="$isDeleted"/>
|
5278
|
+
</xsl:call-template>
|
5279
|
+
|
5051
5280
|
<fo:block>
|
5052
5281
|
<xsl:apply-templates/>
|
5053
5282
|
</fo:block>
|
@@ -5055,7 +5284,10 @@
|
|
5055
5284
|
<xsl:for-each select="*[local-name() = 'note']">
|
5056
5285
|
<xsl:call-template name="note"/>
|
5057
5286
|
</xsl:for-each>
|
5058
|
-
|
5287
|
+
|
5288
|
+
|
5289
|
+
<xsl:apply-templates select="*[local-name() = 'name']" mode="presentation"/>
|
5290
|
+
|
5059
5291
|
</fo:block-container>
|
5060
5292
|
</xsl:template><xsl:template match="*[local-name() = 'figure'][@class = 'pseudocode']">
|
5061
5293
|
<fo:block id="{@id}">
|
@@ -5067,37 +5299,122 @@
|
|
5067
5299
|
<xsl:apply-templates/>
|
5068
5300
|
</fo:block>
|
5069
5301
|
</xsl:template><xsl:template match="*[local-name() = 'image']">
|
5070
|
-
<
|
5071
|
-
|
5072
|
-
|
5073
|
-
<xsl:
|
5074
|
-
<
|
5075
|
-
<xsl:
|
5076
|
-
<xsl:
|
5077
|
-
</xsl:
|
5078
|
-
<
|
5079
|
-
|
5080
|
-
|
5081
|
-
|
5082
|
-
|
5083
|
-
|
5084
|
-
|
5085
|
-
|
5302
|
+
<xsl:variable name="isAdded" select="../@added"/>
|
5303
|
+
<xsl:variable name="isDeleted" select="../@deleted"/>
|
5304
|
+
<xsl:choose>
|
5305
|
+
<xsl:when test="ancestor::*[local-name() = 'title']">
|
5306
|
+
<fo:inline padding-left="1mm" padding-right="1mm">
|
5307
|
+
<xsl:variable name="src">
|
5308
|
+
<xsl:call-template name="image_src"/>
|
5309
|
+
</xsl:variable>
|
5310
|
+
<fo:external-graphic src="{$src}" fox:alt-text="Image {@alt}" vertical-align="middle"/>
|
5311
|
+
</fo:inline>
|
5312
|
+
</xsl:when>
|
5313
|
+
<xsl:otherwise>
|
5314
|
+
<fo:block xsl:use-attribute-sets="image-style">
|
5315
|
+
|
5316
|
+
<xsl:variable name="src">
|
5317
|
+
<xsl:call-template name="image_src"/>
|
5318
|
+
</xsl:variable>
|
5319
|
+
|
5320
|
+
<xsl:choose>
|
5321
|
+
<xsl:when test="$isDeleted = 'true'">
|
5322
|
+
<!-- enclose in svg -->
|
5323
|
+
<fo:instream-foreign-object fox:alt-text="Image {@alt}">
|
5324
|
+
<xsl:attribute name="width">100%</xsl:attribute>
|
5325
|
+
<xsl:attribute name="content-height">100%</xsl:attribute>
|
5326
|
+
<xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
|
5327
|
+
<xsl:attribute name="scaling">uniform</xsl:attribute>
|
5328
|
+
|
5329
|
+
|
5330
|
+
<xsl:apply-templates select="." mode="cross_image"/>
|
5331
|
+
|
5332
|
+
</fo:instream-foreign-object>
|
5333
|
+
</xsl:when>
|
5334
|
+
<xsl:otherwise>
|
5335
|
+
<fo:external-graphic src="{$src}" fox:alt-text="Image {@alt}" xsl:use-attribute-sets="image-graphic-style"/>
|
5336
|
+
</xsl:otherwise>
|
5337
|
+
</xsl:choose>
|
5338
|
+
|
5339
|
+
</fo:block>
|
5340
|
+
</xsl:otherwise>
|
5341
|
+
</xsl:choose>
|
5342
|
+
</xsl:template><xsl:template name="image_src">
|
5343
|
+
<xsl:choose>
|
5344
|
+
<xsl:when test="@mimetype = 'image/svg+xml' and $images/images/image[@id = current()/@id]">
|
5345
|
+
<xsl:value-of select="$images/images/image[@id = current()/@id]/@src"/>
|
5346
|
+
</xsl:when>
|
5347
|
+
<xsl:when test="not(starts-with(@src, 'data:'))">
|
5348
|
+
<xsl:value-of select="concat('url(file:',$basepath, @src, ')')"/>
|
5349
|
+
</xsl:when>
|
5350
|
+
<xsl:otherwise>
|
5351
|
+
<xsl:value-of select="@src"/>
|
5352
|
+
</xsl:otherwise>
|
5353
|
+
</xsl:choose>
|
5354
|
+
</xsl:template><xsl:template match="*[local-name() = 'image']" mode="cross_image">
|
5355
|
+
<xsl:choose>
|
5356
|
+
<xsl:when test="@mimetype = 'image/svg+xml' and $images/images/image[@id = current()/@id]">
|
5357
|
+
<xsl:variable name="src">
|
5358
|
+
<xsl:value-of select="$images/images/image[@id = current()/@id]/@src"/>
|
5359
|
+
</xsl:variable>
|
5360
|
+
<xsl:variable name="width" select="document($src)/@width"/>
|
5361
|
+
<xsl:variable name="height" select="document($src)/@height"/>
|
5362
|
+
<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" style="enable-background:new 0 0 595.28 841.89;" height="{$height}" width="{$width}" viewBox="0 0 {$width} {$height}" y="0px" x="0px" id="Layer_1" version="1.1">
|
5363
|
+
<image xlink:href="{$src}" style="overflow:visible;"/>
|
5364
|
+
</svg>
|
5365
|
+
</xsl:when>
|
5366
|
+
<xsl:when test="not(starts-with(@src, 'data:'))">
|
5367
|
+
<xsl:variable name="src">
|
5368
|
+
<xsl:value-of select="concat('url(file:',$basepath, @src, ')')"/>
|
5369
|
+
</xsl:variable>
|
5370
|
+
<xsl:variable name="file" select="java:java.io.File.new(@src)"/>
|
5371
|
+
<xsl:variable name="bufferedImage" select="java:javax.imageio.ImageIO.read($file)"/>
|
5372
|
+
<xsl:variable name="width" select="java:getWidth($bufferedImage)"/>
|
5373
|
+
<xsl:variable name="height" select="java:getHeight($bufferedImage)"/>
|
5374
|
+
<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" style="enable-background:new 0 0 595.28 841.89;" height="{$height}" width="{$width}" viewBox="0 0 {$width} {$height}" y="0px" x="0px" id="Layer_1" version="1.1">
|
5375
|
+
<image xlink:href="{$src}" style="overflow:visible;"/>
|
5376
|
+
</svg>
|
5377
|
+
</xsl:when>
|
5378
|
+
<xsl:otherwise>
|
5379
|
+
<xsl:variable name="base64String" select="substring-after(@src, 'base64,')"/>
|
5380
|
+
<xsl:variable name="decoder" select="java:java.util.Base64.getDecoder()"/>
|
5381
|
+
<xsl:variable name="fileContent" select="java:decode($decoder, $base64String)"/>
|
5382
|
+
<xsl:variable name="bis" select="java:java.io.ByteArrayInputStream.new($fileContent)"/>
|
5383
|
+
<xsl:variable name="bufferedImage" select="java:javax.imageio.ImageIO.read($bis)"/>
|
5384
|
+
<xsl:variable name="width" select="java:getWidth($bufferedImage)"/>
|
5385
|
+
<!-- width=<xsl:value-of select="$width"/> -->
|
5386
|
+
<xsl:variable name="height" select="java:getHeight($bufferedImage)"/>
|
5387
|
+
<!-- height=<xsl:value-of select="$height"/> -->
|
5388
|
+
<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" style="enable-background:new 0 0 595.28 841.89;" height="{$height}" width="{$width}" viewBox="0 0 {$width} {$height}" y="0px" x="0px" id="Layer_1" version="1.1">
|
5389
|
+
<image xlink:href="{@src}" height="{$height}" width="{$width}" style="overflow:visible;"/>
|
5390
|
+
<xsl:call-template name="svg_cross">
|
5391
|
+
<xsl:with-param name="width" select="$width"/>
|
5392
|
+
<xsl:with-param name="height" select="$height"/>
|
5393
|
+
</xsl:call-template>
|
5394
|
+
</svg>
|
5395
|
+
</xsl:otherwise>
|
5396
|
+
</xsl:choose>
|
5397
|
+
|
5398
|
+
</xsl:template><xsl:template name="svg_cross">
|
5399
|
+
<xsl:param name="width"/>
|
5400
|
+
<xsl:param name="height"/>
|
5401
|
+
<line xmlns="http://www.w3.org/2000/svg" x1="0" y1="0" x2="{$width}" y2="{$height}" style="stroke: rgb(255, 0, 0); stroke-width:4px; "/>
|
5402
|
+
<line xmlns="http://www.w3.org/2000/svg" x1="0" y1="{$height}" x2="{$width}" y2="0" style="stroke: rgb(255, 0, 0); stroke-width:4px; "/>
|
5086
5403
|
</xsl:template><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">
|
5087
5404
|
<xsl:apply-templates mode="contents"/>
|
5088
5405
|
<xsl:text> </xsl:text>
|
5089
5406
|
</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">
|
5090
5407
|
<xsl:apply-templates mode="bookmarks"/>
|
5091
5408
|
<xsl:text> </xsl:text>
|
5092
|
-
</xsl:template><xsl:template match="*[local-name() = 'name']/text()" mode="contents" priority="2">
|
5409
|
+
</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">
|
5093
5410
|
<xsl:value-of select="."/>
|
5094
|
-
</xsl:template><xsl:template match="*[local-name() = 'name']/text()" mode="bookmarks" priority="2">
|
5411
|
+
</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">
|
5095
5412
|
<xsl:value-of select="."/>
|
5096
5413
|
</xsl:template><xsl:template match="node()" mode="contents">
|
5097
5414
|
<xsl:apply-templates mode="contents"/>
|
5098
5415
|
</xsl:template><xsl:template match="node()" mode="bookmarks">
|
5099
5416
|
<xsl:apply-templates mode="bookmarks"/>
|
5100
|
-
</xsl:template><xsl:template match="*[local-name() = 'stem']" mode="contents">
|
5417
|
+
</xsl:template><xsl:template match="*[local-name() = 'title' or local-name() = 'name']//*[local-name() = 'stem']" mode="contents">
|
5101
5418
|
<xsl:apply-templates select="."/>
|
5102
5419
|
</xsl:template><xsl:template match="*[local-name() = 'references'][@hidden='true']" mode="contents" priority="3"/><xsl:template match="*[local-name() = 'stem']" mode="bookmarks">
|
5103
5420
|
<xsl:apply-templates mode="bookmarks"/>
|
@@ -5296,6 +5613,8 @@
|
|
5296
5613
|
</fo:list-item-body>
|
5297
5614
|
</fo:list-item>
|
5298
5615
|
</fo:list-block>
|
5616
|
+
</xsl:template><xsl:template name="extractSection">
|
5617
|
+
<xsl:value-of select="*[local-name() = 'tab'][1]/preceding-sibling::node()"/>
|
5299
5618
|
</xsl:template><xsl:template name="extractTitle">
|
5300
5619
|
<xsl:choose>
|
5301
5620
|
<xsl:when test="*[local-name() = 'tab']">
|
@@ -5322,6 +5641,7 @@
|
|
5322
5641
|
</xsl:template><xsl:template match="*[local-name()='sourcecode']" name="sourcecode">
|
5323
5642
|
|
5324
5643
|
<fo:block-container margin-left="0mm">
|
5644
|
+
<xsl:copy-of select="@id"/>
|
5325
5645
|
<xsl:if test="parent::*[local-name() = 'note']">
|
5326
5646
|
<xsl:attribute name="margin-left">
|
5327
5647
|
<xsl:choose>
|
@@ -5343,6 +5663,7 @@
|
|
5343
5663
|
9
|
5344
5664
|
|
5345
5665
|
|
5666
|
+
|
5346
5667
|
|
5347
5668
|
|
5348
5669
|
|
@@ -5598,6 +5919,7 @@
|
|
5598
5919
|
</xsl:template><xsl:template match="*[local-name() = 'example']">
|
5599
5920
|
<fo:block id="{@id}" xsl:use-attribute-sets="example-style">
|
5600
5921
|
|
5922
|
+
|
5601
5923
|
<xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
|
5602
5924
|
|
5603
5925
|
<xsl:variable name="element">
|
@@ -5625,6 +5947,7 @@
|
|
5625
5947
|
<xsl:variable name="element">
|
5626
5948
|
|
5627
5949
|
inline
|
5950
|
+
<xsl:if test="following-sibling::*[1][local-name() = 'table']">block</xsl:if>
|
5628
5951
|
</xsl:variable>
|
5629
5952
|
<xsl:choose>
|
5630
5953
|
<xsl:when test="ancestor::*[local-name() = 'appendix']">
|
@@ -5632,7 +5955,7 @@
|
|
5632
5955
|
<xsl:apply-templates/>
|
5633
5956
|
</fo:inline>
|
5634
5957
|
</xsl:when>
|
5635
|
-
<xsl:when test="normalize-space($element)
|
5958
|
+
<xsl:when test="contains(normalize-space($element), 'block')">
|
5636
5959
|
<fo:block xsl:use-attribute-sets="example-name-style">
|
5637
5960
|
<xsl:apply-templates/>
|
5638
5961
|
</fo:block>
|
@@ -5669,7 +5992,7 @@
|
|
5669
5992
|
</fo:inline>
|
5670
5993
|
</xsl:otherwise>
|
5671
5994
|
</xsl:choose>
|
5672
|
-
</xsl:template><xsl:template match="*[local-name() = 'termsource']">
|
5995
|
+
</xsl:template><xsl:template match="*[local-name() = 'termsource']" name="termsource">
|
5673
5996
|
<fo:block xsl:use-attribute-sets="termsource-style">
|
5674
5997
|
<!-- Example: [SOURCE: ISO 5127:2017, 3.1.6.02] -->
|
5675
5998
|
<xsl:variable name="termsource_text">
|
@@ -5678,13 +6001,15 @@
|
|
5678
6001
|
|
5679
6002
|
<xsl:choose>
|
5680
6003
|
<xsl:when test="starts-with(normalize-space($termsource_text), '[')">
|
5681
|
-
<xsl:apply-templates/>
|
6004
|
+
<!-- <xsl:apply-templates /> -->
|
6005
|
+
<xsl:copy-of select="$termsource_text"/>
|
5682
6006
|
</xsl:when>
|
5683
6007
|
<xsl:otherwise>
|
5684
6008
|
|
5685
6009
|
<xsl:text>[</xsl:text>
|
5686
6010
|
|
5687
|
-
<xsl:apply-templates/>
|
6011
|
+
<!-- <xsl:apply-templates /> -->
|
6012
|
+
<xsl:copy-of select="$termsource_text"/>
|
5688
6013
|
|
5689
6014
|
<xsl:text>]</xsl:text>
|
5690
6015
|
|
@@ -5695,20 +6020,25 @@
|
|
5695
6020
|
<xsl:if test="normalize-space() != ''">
|
5696
6021
|
<xsl:value-of select="."/>
|
5697
6022
|
</xsl:if>
|
5698
|
-
</xsl:template><xsl:
|
6023
|
+
</xsl:template><xsl:variable name="localized.source">
|
6024
|
+
<xsl:call-template name="getLocalizedString">
|
6025
|
+
<xsl:with-param name="key">source</xsl:with-param>
|
6026
|
+
</xsl:call-template>
|
6027
|
+
</xsl:variable><xsl:template match="*[local-name() = 'origin']">
|
5699
6028
|
<fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}">
|
6029
|
+
<xsl:if test="normalize-space(@citeas) = ''">
|
6030
|
+
<xsl:attribute name="fox:alt-text"><xsl:value-of select="@bibitemid"/></xsl:attribute>
|
6031
|
+
</xsl:if>
|
5700
6032
|
|
5701
6033
|
<fo:inline>
|
5702
6034
|
|
5703
6035
|
|
6036
|
+
<xsl:value-of select="$localized.source"/>
|
6037
|
+
<xsl:text>: </xsl:text>
|
5704
6038
|
|
5705
|
-
<xsl:call-template name="getLocalizedString">
|
5706
|
-
<xsl:with-param name="key">source</xsl:with-param>
|
5707
|
-
</xsl:call-template>
|
5708
6039
|
|
5709
6040
|
|
5710
6041
|
|
5711
|
-
<xsl:text>: </xsl:text>
|
5712
6042
|
</fo:inline>
|
5713
6043
|
|
5714
6044
|
<fo:inline xsl:use-attribute-sets="origin-style">
|
@@ -5814,6 +6144,7 @@
|
|
5814
6144
|
|
5815
6145
|
|
5816
6146
|
|
6147
|
+
|
5817
6148
|
<xsl:choose>
|
5818
6149
|
<xsl:when test="$depth = 2">3</xsl:when>
|
5819
6150
|
<xsl:otherwise>4</xsl:otherwise>
|
@@ -5856,7 +6187,8 @@
|
|
5856
6187
|
</fo:inline>
|
5857
6188
|
</xsl:when>
|
5858
6189
|
<xsl:otherwise>
|
5859
|
-
<
|
6190
|
+
<xsl:variable name="direction"><xsl:if test="$lang = 'ar'"><xsl:value-of select="$RLM"/></xsl:if></xsl:variable>
|
6191
|
+
<fo:inline padding-right="{$padding-right}mm"><xsl:value-of select="$direction"/></fo:inline>
|
5860
6192
|
</xsl:otherwise>
|
5861
6193
|
</xsl:choose>
|
5862
6194
|
|
@@ -5915,7 +6247,6 @@
|
|
5915
6247
|
|
5916
6248
|
|
5917
6249
|
|
5918
|
-
|
5919
6250
|
<xsl:apply-templates/>
|
5920
6251
|
</fo:block>
|
5921
6252
|
|
@@ -5958,7 +6289,7 @@
|
|
5958
6289
|
<xsl:value-of select="java:replaceAll(java:java.lang.String.new(.),' ',' ')"/>
|
5959
6290
|
</xsl:template><xsl:template match="*[local-name() = 'ul'] | *[local-name() = 'ol']">
|
5960
6291
|
<xsl:choose>
|
5961
|
-
<xsl:when test="parent::*[local-name() = 'note']">
|
6292
|
+
<xsl:when test="parent::*[local-name() = 'note'] or parent::*[local-name() = 'termnote']">
|
5962
6293
|
<fo:block-container>
|
5963
6294
|
<xsl:attribute name="margin-left">
|
5964
6295
|
<xsl:choose>
|
@@ -5968,6 +6299,7 @@
|
|
5968
6299
|
</xsl:attribute>
|
5969
6300
|
|
5970
6301
|
|
6302
|
+
|
5971
6303
|
<fo:block-container margin-left="0mm">
|
5972
6304
|
<fo:block>
|
5973
6305
|
<xsl:apply-templates select="." mode="ul_ol"/>
|
@@ -6169,6 +6501,36 @@
|
|
6169
6501
|
|
6170
6502
|
|
6171
6503
|
|
6504
|
+
|
6505
|
+
|
6506
|
+
<!-- start ISO bibtem processing -->
|
6507
|
+
<xsl:variable name="docidentifier">
|
6508
|
+
<xsl:if test="*[local-name() = 'docidentifier']">
|
6509
|
+
<xsl:choose>
|
6510
|
+
<xsl:when test="*[local-name() = 'docidentifier']/@type = 'metanorma'"/>
|
6511
|
+
<xsl:otherwise><xsl:value-of select="*[local-name() = 'docidentifier']"/></xsl:otherwise>
|
6512
|
+
</xsl:choose>
|
6513
|
+
</xsl:if>
|
6514
|
+
</xsl:variable>
|
6515
|
+
<xsl:value-of select="$docidentifier"/>
|
6516
|
+
<xsl:apply-templates select="*[local-name() = 'note']"/>
|
6517
|
+
<xsl:if test="normalize-space($docidentifier) != ''">, </xsl:if>
|
6518
|
+
<xsl:choose>
|
6519
|
+
<xsl:when test="*[local-name() = 'title'][@type = 'main' and @language = $lang]">
|
6520
|
+
<xsl:apply-templates select="*[local-name() = 'title'][@type = 'main' and @language = $lang]"/>
|
6521
|
+
</xsl:when>
|
6522
|
+
<xsl:when test="*[local-name() = 'title'][@type = 'main' and @language = 'en']">
|
6523
|
+
<xsl:apply-templates select="*[local-name() = 'title'][@type = 'main' and @language = 'en']"/>
|
6524
|
+
</xsl:when>
|
6525
|
+
<xsl:otherwise>
|
6526
|
+
<xsl:apply-templates select="*[local-name() = 'title']"/>
|
6527
|
+
</xsl:otherwise>
|
6528
|
+
</xsl:choose>
|
6529
|
+
<xsl:apply-templates select="*[local-name() = 'formattedref']"/>
|
6530
|
+
<!-- end ISO bibitem processing -->
|
6531
|
+
|
6532
|
+
|
6533
|
+
|
6172
6534
|
</xsl:template><xsl:template name="processBibitemDocId">
|
6173
6535
|
<xsl:variable name="_doc_ident" select="*[local-name() = 'docidentifier'][not(@type = 'DOI' or @type = 'metanorma' or @type = 'ISSN' or @type = 'ISBN' or @type = 'rfc-anchor')]"/>
|
6174
6536
|
<xsl:choose>
|
@@ -6225,6 +6587,70 @@
|
|
6225
6587
|
<xsl:value-of select="substring(.,1,1)"/>
|
6226
6588
|
</xsl:template><xsl:template match="*[local-name() = 'title']" mode="title">
|
6227
6589
|
<fo:inline><xsl:apply-templates/></fo:inline>
|
6590
|
+
</xsl:template><xsl:template match="*[local-name() = 'form']">
|
6591
|
+
<fo:block>
|
6592
|
+
<xsl:apply-templates/>
|
6593
|
+
</fo:block>
|
6594
|
+
</xsl:template><xsl:template match="*[local-name() = 'form']//*[local-name() = 'label']">
|
6595
|
+
<fo:inline><xsl:apply-templates/></fo:inline>
|
6596
|
+
</xsl:template><xsl:template match="*[local-name() = 'form']//*[local-name() = 'input'][@type = 'text' or @type = 'date' or @type = 'file' or @type = 'password']">
|
6597
|
+
<fo:inline>
|
6598
|
+
<xsl:call-template name="text_input"/>
|
6599
|
+
</fo:inline>
|
6600
|
+
</xsl:template><xsl:template name="text_input">
|
6601
|
+
<xsl:variable name="count">
|
6602
|
+
<xsl:choose>
|
6603
|
+
<xsl:when test="normalize-space(@maxlength) != ''"><xsl:value-of select="@maxlength"/></xsl:when>
|
6604
|
+
<xsl:when test="normalize-space(@size) != ''"><xsl:value-of select="@size"/></xsl:when>
|
6605
|
+
<xsl:otherwise>10</xsl:otherwise>
|
6606
|
+
</xsl:choose>
|
6607
|
+
</xsl:variable>
|
6608
|
+
<xsl:call-template name="repeat">
|
6609
|
+
<xsl:with-param name="char" select="'_'"/>
|
6610
|
+
<xsl:with-param name="count" select="$count"/>
|
6611
|
+
</xsl:call-template>
|
6612
|
+
<xsl:text> </xsl:text>
|
6613
|
+
</xsl:template><xsl:template match="*[local-name() = 'form']//*[local-name() = 'input'][@type = 'button']">
|
6614
|
+
<xsl:variable name="caption">
|
6615
|
+
<xsl:choose>
|
6616
|
+
<xsl:when test="normalize-space(@value) != ''"><xsl:value-of select="@value"/></xsl:when>
|
6617
|
+
<xsl:otherwise>BUTTON</xsl:otherwise>
|
6618
|
+
</xsl:choose>
|
6619
|
+
</xsl:variable>
|
6620
|
+
<fo:inline>[<xsl:value-of select="$caption"/>]</fo:inline>
|
6621
|
+
</xsl:template><xsl:template match="*[local-name() = 'form']//*[local-name() = 'input'][@type = 'checkbox']">
|
6622
|
+
<fo:inline padding-right="1mm">
|
6623
|
+
<fo:instream-foreign-object fox:alt-text="Box" baseline-shift="-10%">
|
6624
|
+
<xsl:attribute name="height">3.5mm</xsl:attribute>
|
6625
|
+
<xsl:attribute name="content-width">100%</xsl:attribute>
|
6626
|
+
<xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
|
6627
|
+
<xsl:attribute name="scaling">uniform</xsl:attribute>
|
6628
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="80" height="80">
|
6629
|
+
<polyline points="0,0 80,0 80,80 0,80 0,0" stroke="black" stroke-width="5" fill="white"/>
|
6630
|
+
</svg>
|
6631
|
+
</fo:instream-foreign-object>
|
6632
|
+
</fo:inline>
|
6633
|
+
</xsl:template><xsl:template match="*[local-name() = 'form']//*[local-name() = 'input'][@type = 'radio']">
|
6634
|
+
<fo:inline padding-right="1mm">
|
6635
|
+
<fo:instream-foreign-object fox:alt-text="Box" baseline-shift="-10%">
|
6636
|
+
<xsl:attribute name="height">3.5mm</xsl:attribute>
|
6637
|
+
<xsl:attribute name="content-width">100%</xsl:attribute>
|
6638
|
+
<xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
|
6639
|
+
<xsl:attribute name="scaling">uniform</xsl:attribute>
|
6640
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="80" height="80">
|
6641
|
+
<circle cx="40" cy="40" r="30" stroke="black" stroke-width="5" fill="white"/>
|
6642
|
+
<circle cx="40" cy="40" r="15" stroke="black" stroke-width="5" fill="white"/>
|
6643
|
+
</svg>
|
6644
|
+
</fo:instream-foreign-object>
|
6645
|
+
</fo:inline>
|
6646
|
+
</xsl:template><xsl:template match="*[local-name() = 'form']//*[local-name() = 'select']">
|
6647
|
+
<fo:inline>
|
6648
|
+
<xsl:call-template name="text_input"/>
|
6649
|
+
</fo:inline>
|
6650
|
+
</xsl:template><xsl:template match="*[local-name() = 'form']//*[local-name() = 'textarea']">
|
6651
|
+
<fo:block-container border="1pt solid black" width="50%">
|
6652
|
+
<fo:block> </fo:block>
|
6653
|
+
</fo:block-container>
|
6228
6654
|
</xsl:template><xsl:template name="convertDate">
|
6229
6655
|
<xsl:param name="date"/>
|
6230
6656
|
<xsl:param name="format" select="'short'"/>
|
@@ -6432,6 +6858,9 @@
|
|
6432
6858
|
<xsl:when test="parent::*[local-name() = 'preface']">
|
6433
6859
|
<xsl:value-of select="$level_total - 1"/>
|
6434
6860
|
</xsl:when>
|
6861
|
+
<xsl:when test="ancestor::*[local-name() = 'preface'] and not(ancestor::*[local-name() = 'foreword']) and not(ancestor::*[local-name() = 'introduction'])"> <!-- for preface/clause -->
|
6862
|
+
<xsl:value-of select="$level_total - 1"/>
|
6863
|
+
</xsl:when>
|
6435
6864
|
<xsl:when test="ancestor::*[local-name() = 'preface']">
|
6436
6865
|
<xsl:value-of select="$level_total - 2"/>
|
6437
6866
|
</xsl:when>
|
@@ -6487,6 +6916,7 @@
|
|
6487
6916
|
<xsl:variable name="documentNS" select="namespace-uri(/*)"/>
|
6488
6917
|
<xsl:variable name="XSLNS">
|
6489
6918
|
|
6919
|
+
|
6490
6920
|
<xsl:value-of select="document('')//*/namespace::iso"/>
|
6491
6921
|
|
6492
6922
|
|
@@ -6556,17 +6986,69 @@
|
|
6556
6986
|
</xsl:call-template>
|
6557
6987
|
</xsl:if>
|
6558
6988
|
</xsl:template><xsl:template name="getLocalizedString">
|
6559
|
-
<xsl:param name="key"/>
|
6989
|
+
<xsl:param name="key"/>
|
6560
6990
|
|
6561
6991
|
<xsl:variable name="curr_lang">
|
6562
6992
|
<xsl:call-template name="getLang"/>
|
6563
6993
|
</xsl:variable>
|
6564
6994
|
|
6995
|
+
<xsl:variable name="data_value" select="normalize-space(xalan:nodeset($bibdata)//*[local-name() = 'localized-string'][@key = $key and @language = $curr_lang])"/>
|
6996
|
+
|
6565
6997
|
<xsl:choose>
|
6998
|
+
<xsl:when test="$data_value != ''">
|
6999
|
+
<xsl:value-of select="$data_value"/>
|
7000
|
+
</xsl:when>
|
6566
7001
|
<xsl:when test="/*/*[local-name() = 'localized-strings']/*[local-name() = 'localized-string'][@key = $key and @language = $curr_lang]">
|
6567
7002
|
<xsl:value-of select="/*/*[local-name() = 'localized-strings']/*[local-name() = 'localized-string'][@key = $key and @language = $curr_lang]"/>
|
6568
7003
|
</xsl:when>
|
6569
|
-
<xsl:otherwise
|
7004
|
+
<xsl:otherwise>
|
7005
|
+
<xsl:variable name="key_">
|
7006
|
+
<xsl:call-template name="capitalize">
|
7007
|
+
<xsl:with-param name="str" select="translate($key, '_', ' ')"/>
|
7008
|
+
</xsl:call-template>
|
7009
|
+
</xsl:variable>
|
7010
|
+
<xsl:value-of select="$key_"/>
|
7011
|
+
</xsl:otherwise>
|
6570
7012
|
</xsl:choose>
|
6571
7013
|
|
7014
|
+
</xsl:template><xsl:template name="setTrackChangesStyles">
|
7015
|
+
<xsl:param name="isAdded"/>
|
7016
|
+
<xsl:param name="isDeleted"/>
|
7017
|
+
<xsl:choose>
|
7018
|
+
<xsl:when test="local-name() = 'math'">
|
7019
|
+
<xsl:if test="$isAdded = 'true'">
|
7020
|
+
<xsl:attribute name="background-color"><xsl:value-of select="$color-added-text"/></xsl:attribute>
|
7021
|
+
</xsl:if>
|
7022
|
+
<xsl:if test="$isDeleted = 'true'">
|
7023
|
+
<xsl:attribute name="background-color"><xsl:value-of select="$color-deleted-text"/></xsl:attribute>
|
7024
|
+
</xsl:if>
|
7025
|
+
</xsl:when>
|
7026
|
+
<xsl:otherwise>
|
7027
|
+
<xsl:if test="$isAdded = 'true'">
|
7028
|
+
<xsl:attribute name="border"><xsl:value-of select="$border-block-added"/></xsl:attribute>
|
7029
|
+
<xsl:attribute name="padding">2mm</xsl:attribute>
|
7030
|
+
</xsl:if>
|
7031
|
+
<xsl:if test="$isDeleted = 'true'">
|
7032
|
+
<xsl:attribute name="border"><xsl:value-of select="$border-block-deleted"/></xsl:attribute>
|
7033
|
+
<xsl:if test="local-name() = 'table'">
|
7034
|
+
<xsl:attribute name="background-color">rgb(255, 185, 185)</xsl:attribute>
|
7035
|
+
</xsl:if>
|
7036
|
+
<!-- <xsl:attribute name="color"><xsl:value-of select="$color-deleted-text"/></xsl:attribute> -->
|
7037
|
+
<xsl:attribute name="padding">2mm</xsl:attribute>
|
7038
|
+
</xsl:if>
|
7039
|
+
</xsl:otherwise>
|
7040
|
+
</xsl:choose>
|
7041
|
+
</xsl:template><xsl:variable name="LRM" select="''"/><xsl:variable name="RLM" select="''"/><xsl:template name="setWritingMode">
|
7042
|
+
<xsl:if test="$lang = 'ar'">
|
7043
|
+
<xsl:attribute name="writing-mode">rl-tb</xsl:attribute>
|
7044
|
+
</xsl:if>
|
7045
|
+
</xsl:template><xsl:template name="setAlignment">
|
7046
|
+
<xsl:param name="align" select="normalize-space(@align)"/>
|
7047
|
+
<xsl:choose>
|
7048
|
+
<xsl:when test="$lang = 'ar' and $align = 'left'">start</xsl:when>
|
7049
|
+
<xsl:when test="$lang = 'ar' and $align = 'right'">end</xsl:when>
|
7050
|
+
<xsl:when test="$align != ''">
|
7051
|
+
<xsl:value-of select="$align"/>
|
7052
|
+
</xsl:when>
|
7053
|
+
</xsl:choose>
|
6572
7054
|
</xsl:template></xsl:stylesheet>
|