metanorma-ogc 2.0.2 → 2.0.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/isodoc/ogc/base_convert.rb +8 -6
- data/lib/isodoc/ogc/html/ogc.css +1 -2
- data/lib/isodoc/ogc/html/ogc.scss +0 -1
- data/lib/isodoc/ogc/html/ogc_wp.css +1 -2
- data/lib/isodoc/ogc/html/ogc_wp.scss +0 -1
- data/lib/isodoc/ogc/html_convert.rb +6 -6
- data/lib/isodoc/ogc/ogc.abstract-specification-topic.xsl +1258 -513
- data/lib/isodoc/ogc/ogc.best-practice.xsl +1258 -513
- data/lib/isodoc/ogc/ogc.change-request-supporting-document.xsl +1258 -513
- data/lib/isodoc/ogc/ogc.community-practice.xsl +1258 -513
- data/lib/isodoc/ogc/ogc.community-standard.xsl +1258 -513
- data/lib/isodoc/ogc/ogc.discussion-paper.xsl +1258 -513
- data/lib/isodoc/ogc/ogc.engineering-report.xsl +1258 -513
- data/lib/isodoc/ogc/ogc.other.xsl +1258 -513
- data/lib/isodoc/ogc/ogc.policy.xsl +1258 -513
- data/lib/isodoc/ogc/ogc.reference-model.xsl +1258 -513
- data/lib/isodoc/ogc/ogc.release-notes.xsl +1258 -513
- data/lib/isodoc/ogc/ogc.standard.xsl +1258 -513
- data/lib/isodoc/ogc/ogc.test-suite.xsl +1258 -513
- data/lib/isodoc/ogc/ogc.user-guide.xsl +1258 -513
- data/lib/isodoc/ogc/ogc.white-paper.xsl +1120 -397
- data/lib/isodoc/ogc/presentation_xml_convert.rb +25 -34
- data/lib/isodoc/ogc/reqt.rb +2 -1
- data/lib/isodoc/ogc/word_convert.rb +2 -78
- data/lib/isodoc/ogc/xref.rb +13 -6
- data/lib/metanorma/ogc/basicdoc.rng +5 -3
- data/lib/metanorma/ogc/biblio.rng +5 -3
- data/lib/metanorma/ogc/converter.rb +7 -0
- data/lib/metanorma/ogc/isodoc.rng +73 -3
- data/lib/metanorma/ogc/processor.rb +10 -10
- data/lib/metanorma/ogc/version.rb +1 -1
- metadata +2 -2
@@ -1,19 +1,9 @@
|
|
1
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:ogc="https://www.metanorma.org/ns/ogc" 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:java="http://xml.apache.org/xalan/java" exclude-result-prefixes="java" version="1.0">
|
2
2
|
|
3
3
|
<xsl:output version="1.0" method="xml" encoding="UTF-8" indent="no"/>
|
4
|
-
|
5
|
-
<xsl:param name="svg_images"/>
|
6
|
-
<xsl:param name="external_index"/><!-- path to index xml, generated on 1st pass, based on FOP Intermediate Format -->
|
7
|
-
<xsl:variable name="images" select="document($svg_images)"/>
|
8
|
-
<xsl:param name="basepath"/>
|
9
|
-
|
4
|
+
|
10
5
|
<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"/>
|
11
6
|
|
12
|
-
<xsl:variable name="marginLeftRight1" select="35"/>
|
13
|
-
<xsl:variable name="marginLeftRight2" select="17"/>
|
14
|
-
<xsl:variable name="marginTop" select="16.5"/>
|
15
|
-
<xsl:variable name="marginBottom" select="22.5"/>
|
16
|
-
|
17
7
|
|
18
8
|
|
19
9
|
<xsl:variable name="debug">false</xsl:variable>
|
@@ -67,8 +57,21 @@
|
|
67
57
|
<xsl:copy-of select="@id"/>
|
68
58
|
<xsl:variable name="title">
|
69
59
|
<xsl:apply-templates select=".//ogc:p[@class = 'RecommendationTitle'][ancestor::ogc:table[1][@id= $table_id]]/node()"/>
|
60
|
+
<xsl:if test=".//ogc:p[@class = 'RecommendationLabel'][ancestor::ogc:table[1][@id= $table_id]]/node()">
|
61
|
+
<xsl:text>: </xsl:text>
|
62
|
+
<xsl:variable name="recommendationLabel">
|
63
|
+
<tt><xsl:copy-of select=".//ogc:p[@class = 'RecommendationLabel'][ancestor::ogc:table[1][@id= $table_id]]/node()"/></tt>
|
64
|
+
</xsl:variable>
|
65
|
+
<xsl:apply-templates select="xalan:nodeset($recommendationLabel)/node()"/>
|
66
|
+
</xsl:if>
|
67
|
+
</xsl:variable>
|
68
|
+
<xsl:variable name="bookmark">
|
69
|
+
<xsl:value-of select="normalize-space(.//ogc:p[@class = 'RecommendationTitle'][ancestor::ogc:table[1][@id= $table_id]]/node())"/>
|
70
|
+
<xsl:if test=".//ogc:p[@class = 'RecommendationLabel'][ancestor::ogc:table[1][@id= $table_id]]/node()">
|
71
|
+
<xsl:text>: </xsl:text>
|
72
|
+
<xsl:value-of select="normalize-space(.//ogc:p[@class = 'RecommendationLabel'][ancestor::ogc:table[1][@id= $table_id]]/node())"/>
|
73
|
+
</xsl:if>
|
70
74
|
</xsl:variable>
|
71
|
-
<xsl:variable name="bookmark" select="normalize-space(.//ogc:p[@class = 'RecommendationTitle'][ancestor::ogc:table[1][@id= $table_id]]/node())"/>
|
72
75
|
<xsl:variable name="regex_str" select="'^([^0-9]+) (\d+).*'"/>
|
73
76
|
<xsl:variable name="class" select="java:replaceAll(java:java.lang.String.new($bookmark), $regex_str, '$1')"/>
|
74
77
|
<xsl:variable name="num" select="java:replaceAll(java:java.lang.String.new($bookmark), $regex_str, '$2')"/>
|
@@ -110,45 +113,20 @@
|
|
110
113
|
</xsl:for-each>
|
111
114
|
</xsl:variable>
|
112
115
|
|
113
|
-
<xsl:variable name="
|
116
|
+
<xsl:variable name="contents_">
|
114
117
|
<contents>
|
115
|
-
|
116
118
|
<!-- Abstract, Keywords, Preface, Submitting Organizations, Submitters -->
|
117
|
-
|
118
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:abstract" mode="contents"/>
|
119
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:clause[@type = 'executivesummary']" mode="contents"/>
|
120
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:clause[@type = 'keywords']" mode="contents"/>
|
121
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:foreword" mode="contents"/>
|
122
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:clause[@type = 'security']" mode="contents"/>
|
123
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:clause[@type = 'submitting_orgs']" mode="contents"/>
|
124
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:submitters" mode="contents"/>
|
125
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:introduction" mode="contents"/>
|
126
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:clause[not(@type = 'executivesummary') and not(@type = 'security') and not(@type = 'submitting_orgs') and not(@type = 'keywords')]" mode="contents"/>
|
127
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:acknowledgements" mode="contents"/>
|
128
|
-
|
129
|
-
|
130
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:sections/ogc:clause[@type='scope']" mode="contents"/>
|
131
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:sections/ogc:clause[@type='conformance']" mode="contents"/>
|
132
|
-
<!-- Normative references -->
|
133
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:bibliography/ogc:references[@normative='true']" mode="contents"/>
|
134
|
-
<!-- Terms and definitions -->
|
135
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:sections/ogc:terms" mode="contents"/>
|
136
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:sections/ogc:definitions" mode="contents"/>
|
137
|
-
|
138
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:sections/ogc:clause[not(@type='scope') and not(@type='conformance')]" mode="contents"/>
|
139
|
-
|
140
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:annex" mode="contents"/>
|
141
|
-
|
142
|
-
<!-- Bibliography -->
|
143
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:bibliography/ogc:references[not(@normative='true')]" mode="contents"/>
|
119
|
+
<xsl:call-template name="processPrefaceSectionsDefault_Contents"/>
|
144
120
|
|
121
|
+
<xsl:call-template name="processMainSectionsDefault_Contents"/>
|
122
|
+
<xsl:apply-templates select="//ogc:indexsect" mode="contents"/>
|
145
123
|
|
124
|
+
<xsl:call-template name="processTablesFigures_Contents">
|
125
|
+
<xsl:with-param name="always">true</xsl:with-param>
|
126
|
+
</xsl:call-template>
|
146
127
|
</contents>
|
147
128
|
</xsl:variable>
|
148
|
-
|
149
|
-
<xsl:variable name="lang">
|
150
|
-
<xsl:call-template name="getLang"/>
|
151
|
-
</xsl:variable>
|
129
|
+
<xsl:variable name="contents" select="xalan:nodeset($contents_)"/>
|
152
130
|
|
153
131
|
<xsl:template match="/">
|
154
132
|
<xsl:call-template name="namespaceCheck"/>
|
@@ -249,9 +227,22 @@
|
|
249
227
|
</fo:table>
|
250
228
|
</fo:block>
|
251
229
|
|
252
|
-
<fo:block-container absolute-position="fixed" left="16.5mm" top="83mm" height="90mm">
|
253
|
-
|
230
|
+
<!-- <fo:block-container absolute-position="fixed" left="16.5mm" top="83mm" height="90mm"> -->
|
231
|
+
<fo:block-container absolute-position="fixed" left="16.5mm" top="40mm" height="170mm">
|
232
|
+
<fo:block-container width="155mm" height="99%" display-align="center">
|
254
233
|
<fo:block font-size="33pt" role="H1">
|
234
|
+
<xsl:variable name="length_title" select="string-length($doctitle)"/>
|
235
|
+
<xsl:variable name="fit_font-size">
|
236
|
+
<xsl:choose>
|
237
|
+
<xsl:when test="$length_title > 230">20</xsl:when>
|
238
|
+
<xsl:when test="$length_title > 170">26</xsl:when>
|
239
|
+
<xsl:when test="$length_title > 155">28</xsl:when>
|
240
|
+
<xsl:when test="$length_title > 130">30</xsl:when>
|
241
|
+
</xsl:choose>
|
242
|
+
</xsl:variable>
|
243
|
+
<xsl:if test="normalize-space($fit_font-size) != ''">
|
244
|
+
<xsl:attribute name="font-size"><xsl:value-of select="$fit_font-size"/>pt</xsl:attribute>
|
245
|
+
</xsl:if>
|
255
246
|
<xsl:call-template name="addLetterSpacing">
|
256
247
|
<xsl:with-param name="text" select="java:toUpperCase(java:java.lang.String.new($doctitle))"/>
|
257
248
|
<xsl:with-param name="letter-spacing" select="1.1"/>
|
@@ -446,7 +437,7 @@
|
|
446
437
|
|
447
438
|
<fo:block-container line-height="130%">
|
448
439
|
<fo:block role="TOC">
|
449
|
-
<xsl:for-each select="
|
440
|
+
<xsl:for-each select="$contents//item[@display = 'true' and normalize-space(@id) != '']">
|
450
441
|
|
451
442
|
<fo:block role="TOCI">
|
452
443
|
<xsl:if test="@level = 1">
|
@@ -455,7 +446,7 @@
|
|
455
446
|
<xsl:if test="@level = 1 or @parent = 'annex'">
|
456
447
|
<xsl:attribute name="font-size">12pt</xsl:attribute>
|
457
448
|
</xsl:if>
|
458
|
-
<xsl:if test="@level >= 2 and not(@parent = 'annex')
|
449
|
+
<xsl:if test="@level >= 2"> <!-- and not(@parent = 'annex') -->
|
459
450
|
<xsl:attribute name="font-size">10pt</xsl:attribute>
|
460
451
|
</xsl:if>
|
461
452
|
|
@@ -523,100 +514,37 @@
|
|
523
514
|
</fo:block>
|
524
515
|
</fo:block-container>
|
525
516
|
|
526
|
-
|
527
|
-
|
528
|
-
|
529
|
-
|
530
|
-
|
531
|
-
</xsl:
|
532
|
-
|
533
|
-
<fo:block-container margin-left="-18mm" keep-with-next="always" margin-bottom="10pt" space-before="36pt">
|
534
|
-
<fo:block-container margin-left="0mm">
|
535
|
-
<xsl:call-template name="insertSectionTitle">
|
536
|
-
<xsl:with-param name="title" select="$title-list-tables"/>
|
537
|
-
</xsl:call-template>
|
538
|
-
</fo:block-container>
|
539
|
-
</fo:block-container>
|
517
|
+
|
518
|
+
<!-- List of Tables -->
|
519
|
+
<xsl:if test="$contents//tables/table">
|
520
|
+
<xsl:call-template name="insertListOf_Title">
|
521
|
+
<xsl:with-param name="title" select="$title-list-tables"/>
|
522
|
+
</xsl:call-template>
|
540
523
|
<fo:block-container line-height="130%">
|
541
|
-
<xsl:for-each select="//
|
542
|
-
<
|
543
|
-
<fo:basic-link internal-destination="{@id}">
|
544
|
-
<xsl:call-template name="setAltText">
|
545
|
-
<xsl:with-param name="value" select="ogc:name"/>
|
546
|
-
</xsl:call-template>
|
547
|
-
<xsl:apply-templates select="ogc:name" mode="contents"/>
|
548
|
-
<fo:inline keep-together.within-line="always">
|
549
|
-
<fo:leader leader-pattern="dots"/>
|
550
|
-
<fo:page-number-citation ref-id="{@id}"/>
|
551
|
-
</fo:inline>
|
552
|
-
</fo:basic-link>
|
553
|
-
</fo:block>
|
524
|
+
<xsl:for-each select="$contents//tables/table">
|
525
|
+
<xsl:call-template name="insertListOf_Item"/>
|
554
526
|
</xsl:for-each>
|
555
|
-
</fo:block-container>
|
527
|
+
</fo:block-container>
|
556
528
|
</xsl:if>
|
557
529
|
|
558
|
-
|
559
|
-
|
560
|
-
|
561
|
-
|
562
|
-
|
563
|
-
</xsl:for-each>
|
564
|
-
</xsl:variable>
|
565
|
-
<xsl:variable name="list_of_figures" select="xalan:nodeset($list_of_figures_)"/>
|
566
|
-
|
567
|
-
<!-- <xsl:if test="//ogc:figure[@id and ogc:name and not(@unnumbered = 'true')] or //*[@id and starts-with(ogc:name, 'Figure ')]"> --> <!-- contains(ogc:name, '—') -->
|
568
|
-
<xsl:if test="$list_of_figures//figure">
|
569
|
-
<xsl:variable name="title-list-figures">
|
570
|
-
<xsl:call-template name="getTitle">
|
571
|
-
<xsl:with-param name="name" select="'title-list-figures'"/>
|
572
|
-
</xsl:call-template>
|
573
|
-
</xsl:variable>
|
574
|
-
<fo:block-container margin-left="-18mm" keep-with-next="always" margin-bottom="10pt" space-before="36pt">
|
575
|
-
<fo:block-container margin-left="0mm">
|
576
|
-
<xsl:call-template name="insertSectionTitle">
|
577
|
-
<xsl:with-param name="title" select="$title-list-figures"/>
|
578
|
-
</xsl:call-template>
|
579
|
-
</fo:block-container>
|
580
|
-
</fo:block-container>
|
581
|
-
|
530
|
+
<!-- List of Figures -->
|
531
|
+
<xsl:if test="$contents//figures/figure">
|
532
|
+
<xsl:call-template name="insertListOf_Title">
|
533
|
+
<xsl:with-param name="title" select="$title-list-figures"/>
|
534
|
+
</xsl:call-template>
|
582
535
|
<fo:block-container line-height="130%">
|
583
|
-
|
584
|
-
|
585
|
-
<fo:block text-align-last="justify" margin-top="2pt" role="TOCI">
|
586
|
-
<fo:basic-link internal-destination="{@id}">
|
587
|
-
<xsl:call-template name="setAltText">
|
588
|
-
<xsl:with-param name="value" select="@alt-text"/>
|
589
|
-
</xsl:call-template>
|
590
|
-
<!-- <xsl:apply-templates select="ogc:name" mode="contents"/> -->
|
591
|
-
<xsl:copy-of select="node()"/>
|
592
|
-
<fo:inline keep-together.within-line="always">
|
593
|
-
<fo:leader leader-pattern="dots"/>
|
594
|
-
<fo:page-number-citation ref-id="{@id}"/>
|
595
|
-
</fo:inline>
|
596
|
-
</fo:basic-link>
|
597
|
-
</fo:block>
|
536
|
+
<xsl:for-each select="$contents//figures/figure">
|
537
|
+
<xsl:call-template name="insertListOf_Item"/>
|
598
538
|
</xsl:for-each>
|
599
|
-
</fo:block-container>
|
539
|
+
</fo:block-container>
|
600
540
|
</xsl:if>
|
601
541
|
|
602
|
-
<!--
|
542
|
+
<!-- List of Recommendations -->
|
603
543
|
<xsl:if test="//ogc:table[.//ogc:p[@class = 'RecommendationTitle']]">
|
604
|
-
<xsl:
|
605
|
-
<xsl:
|
606
|
-
|
607
|
-
</xsl:call-template>
|
608
|
-
</xsl:variable>
|
609
|
-
|
610
|
-
<fo:block-container margin-left="-18mm" keep-with-next="always" margin-bottom="10pt" space-before="36pt">
|
611
|
-
<fo:block-container margin-left="0mm">
|
612
|
-
<xsl:call-template name="insertSectionTitle">
|
613
|
-
<xsl:with-param name="title" select="$title-list-recommendations"/>
|
614
|
-
</xsl:call-template>
|
615
|
-
</fo:block-container>
|
616
|
-
</fo:block-container>
|
617
|
-
|
544
|
+
<xsl:call-template name="insertListOf_Title">
|
545
|
+
<xsl:with-param name="title" select="$title-list-recommendations"/>
|
546
|
+
</xsl:call-template>
|
618
547
|
<fo:block-container line-height="130%">
|
619
|
-
<!-- <xsl:for-each select="//ogc:table[.//ogc:p[@class = 'RecommendationTitle']]"> -->
|
620
548
|
<xsl:for-each select="xalan:nodeset($toc_recommendations)/*[normalize-space(@id) != '']">
|
621
549
|
<fo:block text-align-last="justify" margin-top="6pt" role="TOCI">
|
622
550
|
<fo:basic-link internal-destination="{@id}">
|
@@ -633,7 +561,6 @@
|
|
633
561
|
</fo:block>
|
634
562
|
</xsl:for-each>
|
635
563
|
</fo:block-container>
|
636
|
-
|
637
564
|
</xsl:if>
|
638
565
|
|
639
566
|
</fo:block>
|
@@ -642,75 +569,89 @@
|
|
642
569
|
|
643
570
|
<fo:block line-height="125%">
|
644
571
|
<!-- Abstract, Keywords, Preface, Submitting Organizations, Submitters -->
|
645
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:abstract"/>
|
646
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:clause[@type = 'executivesummary']"/>
|
647
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:clause[@type = 'keywords']"/>
|
648
|
-
<xsl:if test="/ogc:ogc-standard/ogc:preface/ogc:foreword">
|
649
|
-
<fo:block break-after="page"/>
|
650
|
-
</xsl:if>
|
651
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:foreword"/>
|
652
|
-
|
653
|
-
<xsl:if test="/ogc:ogc-standard/ogc:preface/ogc:clause[@type = 'security']">
|
654
|
-
<fo:block break-after="page"/>
|
655
|
-
</xsl:if>
|
656
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:clause[@type = 'security']"/>
|
657
|
-
|
658
|
-
<xsl:if test="/ogc:ogc-standard/ogc:preface/ogc:clause[@type = 'submitting_orgs']">
|
659
|
-
<fo:block break-after="page"/>
|
660
|
-
</xsl:if>
|
661
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:clause[@type = 'submitting_orgs']"/>
|
662
|
-
|
663
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:submitters"/>
|
664
|
-
<xsl:if test="/ogc:ogc-standard/ogc:preface/ogc:introduction">
|
665
|
-
<fo:block break-after="page"/>
|
666
|
-
</xsl:if>
|
667
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:introduction"/>
|
668
|
-
|
669
572
|
|
573
|
+
<xsl:for-each select="/*/*[local-name()='preface']/*">
|
574
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
575
|
+
|
576
|
+
<xsl:if test="local-name() = 'foreword' or (local-name() = 'clause' and @type = 'security') or (local-name() = 'clause' and @type = 'submitting_orgs') or local-name() = 'introduction'">
|
577
|
+
<fo:block break-after="page"/>
|
578
|
+
</xsl:if>
|
579
|
+
|
580
|
+
<xsl:apply-templates select="."/>
|
581
|
+
</xsl:for-each>
|
670
582
|
|
671
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:clause[not(@type = 'executivesummary') and not(@type = 'security') and not(@type = 'submitting_orgs') and not(@type = 'keywords')]"/>
|
672
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:acknowledgements"/>
|
673
583
|
</fo:block>
|
674
584
|
</fo:flow>
|
675
585
|
</fo:page-sequence>
|
676
586
|
|
677
587
|
|
678
588
|
<!-- Document Pages -->
|
589
|
+
<xsl:for-each select="/*/*[local-name()='sections']/* | /*/*[local-name()='bibliography']/*[local-name()='references'][@normative='true']">
|
590
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
591
|
+
<xsl:choose>
|
592
|
+
<xsl:when test="local-name() = 'clause' and @type='scope'">
|
593
|
+
<xsl:apply-templates select="." mode="sections">
|
594
|
+
<xsl:with-param name="initial-page-number" select="1"/>
|
595
|
+
</xsl:apply-templates>
|
596
|
+
</xsl:when>
|
597
|
+
<xsl:otherwise>
|
598
|
+
<xsl:apply-templates select="." mode="sections"/>
|
599
|
+
</xsl:otherwise>
|
600
|
+
</xsl:choose>
|
601
|
+
</xsl:for-each>
|
679
602
|
|
680
|
-
<xsl:
|
681
|
-
<xsl:
|
682
|
-
|
683
|
-
|
684
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:sections/ogc:clause[@type='conformance']" mode="sections"/>
|
685
|
-
|
686
|
-
<!-- Normative references -->
|
687
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:bibliography/ogc:references[@normative='true']" mode="sections"/>
|
688
|
-
|
689
|
-
<!-- Terms and definitions -->
|
690
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:sections/ogc:terms" mode="sections"/>
|
691
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:sections/ogc:definitions" mode="sections"/>
|
692
|
-
|
693
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:sections/ogc:clause[not(@type='scope') and not(@type='conformance')]" mode="sections"/>
|
694
|
-
|
695
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:annex" mode="sections"/>
|
603
|
+
<xsl:for-each select="/*/*[local-name()='annex']">
|
604
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
605
|
+
<xsl:apply-templates select="." mode="sections"/>
|
606
|
+
</xsl:for-each>
|
696
607
|
|
697
608
|
<!-- Bibliography -->
|
698
|
-
<xsl:
|
609
|
+
<xsl:for-each select="/*/*[local-name()='bibliography']/*[not(@normative='true')] | /*/*[local-name()='bibliography']/*[local-name()='clause'][*[local-name()='references'][not(@normative='true')]]">
|
610
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
611
|
+
<xsl:apply-templates select="." mode="sections"/>
|
612
|
+
</xsl:for-each>
|
613
|
+
|
614
|
+
<xsl:apply-templates select="//ogc:indexsect" mode="sections"/>
|
699
615
|
|
700
616
|
<!-- End Document Pages -->
|
701
617
|
|
702
618
|
</fo:root>
|
703
619
|
</xsl:template>
|
704
620
|
|
705
|
-
<xsl:
|
621
|
+
<xsl:template name="insertListOf_Title">
|
622
|
+
<xsl:param name="title"/>
|
623
|
+
<fo:block-container margin-left="-18mm" keep-with-next="always" margin-bottom="10pt" space-before="36pt">
|
624
|
+
<fo:block-container margin-left="0mm">
|
625
|
+
<xsl:call-template name="insertSectionTitle">
|
626
|
+
<xsl:with-param name="title" select="$title"/>
|
627
|
+
</xsl:call-template>
|
628
|
+
</fo:block-container>
|
629
|
+
</fo:block-container>
|
630
|
+
</xsl:template>
|
631
|
+
|
632
|
+
<xsl:template name="insertListOf_Item">
|
633
|
+
<fo:block text-align-last="justify" margin-top="2pt" role="TOCI">
|
634
|
+
<fo:basic-link internal-destination="{@id}">
|
635
|
+
<xsl:call-template name="setAltText">
|
636
|
+
<xsl:with-param name="value" select="@alt-text"/>
|
637
|
+
</xsl:call-template>
|
638
|
+
<!-- <xsl:copy-of select="node()"/> -->
|
639
|
+
<xsl:apply-templates select="." mode="contents"/>
|
640
|
+
<fo:inline keep-together.within-line="always">
|
641
|
+
<fo:leader leader-pattern="dots"/>
|
642
|
+
<fo:page-number-citation ref-id="{@id}"/>
|
643
|
+
</fo:inline>
|
644
|
+
</fo:basic-link>
|
645
|
+
</fo:block>
|
646
|
+
</xsl:template>
|
706
647
|
|
707
648
|
<!-- Lato font doesn't contain 'thin space' glyph -->
|
708
649
|
<xsl:template match="text()" priority="1">
|
709
|
-
<xsl:value-of select="translate(., $
|
650
|
+
<xsl:value-of select="translate(., $thin_space, ' ')"/>
|
710
651
|
</xsl:template>
|
711
652
|
|
712
653
|
<xsl:template match="ogc:title//text() | ogc:name//text()" priority="3" mode="contents">
|
713
|
-
<xsl:value-of select="translate(., $
|
654
|
+
<xsl:value-of select="translate(., $thin_space, ' ')"/>
|
714
655
|
</xsl:template>
|
715
656
|
|
716
657
|
<xsl:template match="*[local-name()='td']//text() | *[local-name()='th']//text()" priority="2">
|
@@ -719,7 +660,7 @@
|
|
719
660
|
</xsl:variable>
|
720
661
|
<!-- add zero-width space in the words like 'adeOfAbstractTransportaonSpace' to split it in the table's cell -->
|
721
662
|
<xsl:variable name="content2" select="java:replaceAll(java:java.lang.String.new($content),'([a-z]{2,})([A-Z])(.?)','$1$2$3')"/>
|
722
|
-
<xsl:value-of select="translate($content2, $
|
663
|
+
<xsl:value-of select="translate($content2, $thin_space, ' ')"/>
|
723
664
|
</xsl:template>
|
724
665
|
|
725
666
|
|
@@ -1028,9 +969,11 @@
|
|
1028
969
|
</xsl:choose>
|
1029
970
|
</xsl:variable>
|
1030
971
|
<xsl:element name="{$element-name}">
|
1031
|
-
<xsl:
|
1032
|
-
<xsl:
|
1033
|
-
|
972
|
+
<xsl:if test="@id">
|
973
|
+
<xsl:attribute name="id">
|
974
|
+
<xsl:value-of select="@id"/>
|
975
|
+
</xsl:attribute>
|
976
|
+
</xsl:if>
|
1034
977
|
<xsl:attribute name="text-align">
|
1035
978
|
<xsl:choose>
|
1036
979
|
<!-- <xsl:when test="ancestor::ogc:preface">justify</xsl:when> -->
|
@@ -1070,8 +1013,15 @@
|
|
1070
1013
|
|
1071
1014
|
|
1072
1015
|
|
1073
|
-
<xsl:template match="ogc:ul | ogc:ol" mode="
|
1016
|
+
<xsl:template match="ogc:ul | ogc:ol" mode="list" priority="2">
|
1017
|
+
<xsl:variable name="ul_indent">6mm</xsl:variable>
|
1074
1018
|
<fo:block-container margin-left="13mm">
|
1019
|
+
<xsl:if test="self::ogc:ul and not(ancestor::ogc:ul) and not(ancestor::ogc:ol)"> <!-- if first level -->
|
1020
|
+
<xsl:attribute name="margin-left">4mm</xsl:attribute>
|
1021
|
+
</xsl:if>
|
1022
|
+
<xsl:if test="self::ogc:ul and ancestor::*[2][self::ogc:ul]"> <!-- ul/li/ul -->
|
1023
|
+
<xsl:attribute name="margin-left"><xsl:value-of select="$ul_indent"/></xsl:attribute>
|
1024
|
+
</xsl:if>
|
1075
1025
|
<xsl:if test="ancestor::ogc:table">
|
1076
1026
|
<xsl:attribute name="margin-left">4mm</xsl:attribute>
|
1077
1027
|
</xsl:if>
|
@@ -1082,7 +1032,10 @@
|
|
1082
1032
|
</xsl:if>
|
1083
1033
|
</xsl:if>
|
1084
1034
|
<fo:block-container margin-left="0mm">
|
1085
|
-
<fo:list-block
|
1035
|
+
<fo:list-block xsl:use-attribute-sets="list-style">
|
1036
|
+
<xsl:if test="self::ogc:ul">
|
1037
|
+
<xsl:attribute name="provisional-distance-between-starts"><xsl:value-of select="$ul_indent"/></xsl:attribute>
|
1038
|
+
</xsl:if>
|
1086
1039
|
<xsl:if test="ancestor::ogc:table">
|
1087
1040
|
<xsl:attribute name="provisional-distance-between-starts">5mm</xsl:attribute>
|
1088
1041
|
</xsl:if>
|
@@ -1101,58 +1054,6 @@
|
|
1101
1054
|
</fo:block-container>
|
1102
1055
|
</xsl:template>
|
1103
1056
|
|
1104
|
-
<xsl:template match="ogc:li">
|
1105
|
-
<fo:list-item id="{@id}">
|
1106
|
-
<fo:list-item-label end-indent="label-end()">
|
1107
|
-
<fo:block>
|
1108
|
-
<xsl:choose>
|
1109
|
-
<xsl:when test="local-name(..) = 'ul'">
|
1110
|
-
<xsl:call-template name="setULLabel"/>
|
1111
|
-
</xsl:when>
|
1112
|
-
<xsl:otherwise> <!-- for ordered lists -->
|
1113
|
-
<xsl:choose>
|
1114
|
-
<xsl:when test="../@class = 'steps'">
|
1115
|
-
<xsl:number format="1."/>
|
1116
|
-
</xsl:when>
|
1117
|
-
<xsl:when test="../@type = 'arabic'">
|
1118
|
-
<xsl:number format="a)" lang="en"/>
|
1119
|
-
</xsl:when>
|
1120
|
-
<xsl:when test="../@type = 'alphabet'">
|
1121
|
-
<xsl:number format="1."/>
|
1122
|
-
</xsl:when>
|
1123
|
-
<xsl:when test="../@type = 'alphabet_upper'">
|
1124
|
-
<xsl:number format="A)" lang="en"/>
|
1125
|
-
</xsl:when>
|
1126
|
-
<xsl:when test="../@type = 'roman'">
|
1127
|
-
<xsl:number format="i)"/>
|
1128
|
-
</xsl:when>
|
1129
|
-
<xsl:otherwise>
|
1130
|
-
<xsl:variable name="level" select="count(ancestor-or-self::ogc:li)"/>
|
1131
|
-
<xsl:choose>
|
1132
|
-
<xsl:when test="$level = 1"><xsl:number format="a)" lang="en"/></xsl:when>
|
1133
|
-
<xsl:when test="$level = 2"><xsl:number format="1."/></xsl:when>
|
1134
|
-
<xsl:when test="$level = 3"><xsl:number format="i)"/></xsl:when>
|
1135
|
-
<xsl:otherwise><xsl:number format="a)" lang="en"/></xsl:otherwise>
|
1136
|
-
</xsl:choose>
|
1137
|
-
</xsl:otherwise>
|
1138
|
-
</xsl:choose>
|
1139
|
-
</xsl:otherwise>
|
1140
|
-
</xsl:choose>
|
1141
|
-
</fo:block>
|
1142
|
-
</fo:list-item-label>
|
1143
|
-
<fo:list-item-body start-indent="body-start()" line-height-shift-adjustment="disregard-shifts">
|
1144
|
-
<fo:block margin-bottom="10pt">
|
1145
|
-
<xsl:if test="ancestor::ogc:table[not(@class)]">
|
1146
|
-
<xsl:attribute name="margin-bottom">1mm</xsl:attribute>
|
1147
|
-
</xsl:if>
|
1148
|
-
<xsl:if test="not(following-sibling::*) and not(../following-sibling::*)">
|
1149
|
-
<xsl:attribute name="margin-bottom">0pt</xsl:attribute>
|
1150
|
-
</xsl:if>
|
1151
|
-
<xsl:apply-templates/>
|
1152
|
-
</fo:block>
|
1153
|
-
</fo:list-item-body>
|
1154
|
-
</fo:list-item>
|
1155
|
-
</xsl:template>
|
1156
1057
|
|
1157
1058
|
<xsl:template match="ogc:ul/ogc:note | ogc:ol/ogc:note" priority="2">
|
1158
1059
|
<fo:list-item font-size="10pt">
|
@@ -1225,30 +1126,6 @@
|
|
1225
1126
|
</xsl:template>
|
1226
1127
|
|
1227
1128
|
|
1228
|
-
|
1229
|
-
<xsl:template match="ogc:formula/ogc:stem">
|
1230
|
-
<fo:block margin-top="6pt" margin-bottom="12pt">
|
1231
|
-
<fo:table table-layout="fixed" width="100%">
|
1232
|
-
<fo:table-column column-width="95%"/>
|
1233
|
-
<fo:table-column column-width="5%"/>
|
1234
|
-
<fo:table-body>
|
1235
|
-
<fo:table-row>
|
1236
|
-
<fo:table-cell display-align="center">
|
1237
|
-
<fo:block text-align="left"> <!-- margin-left="5mm" -->
|
1238
|
-
<xsl:apply-templates/>
|
1239
|
-
</fo:block>
|
1240
|
-
</fo:table-cell>
|
1241
|
-
<fo:table-cell display-align="center">
|
1242
|
-
<fo:block text-align="right">
|
1243
|
-
<xsl:apply-templates select="../ogc:name" mode="formula_number"/>
|
1244
|
-
</fo:block>
|
1245
|
-
</fo:table-cell>
|
1246
|
-
</fo:table-row>
|
1247
|
-
</fo:table-body>
|
1248
|
-
</fo:table>
|
1249
|
-
</fo:block>
|
1250
|
-
</xsl:template>
|
1251
|
-
|
1252
1129
|
<xsl:template match="*[local-name()='th']//text()" priority="2">
|
1253
1130
|
<xsl:variable name="text">
|
1254
1131
|
<xsl:call-template name="add-zero-spaces-java"/>
|
@@ -1574,11 +1451,21 @@
|
|
1574
1451
|
</fo:static-content>
|
1575
1452
|
</xsl:template>
|
1576
1453
|
|
1577
|
-
<xsl:variable name="
|
1454
|
+
<xsl:param name="svg_images"/><xsl:variable name="images" select="document($svg_images)"/><xsl:param name="basepath"/><xsl:param name="external_index"/><xsl:param name="syntax-highlight">false</xsl:param><xsl:key name="bibitems" match="*[local-name() = 'bibitem']" use="@id"/><xsl:key name="bibitems_hidden" match="*[local-name() = 'bibitem'][@hidden='true'] | *[local-name() = 'references'][@hidden='true']//*[local-name() = 'bibitem']" use="@id"/><xsl:variable name="lang">
|
1455
|
+
<xsl:call-template name="getLang"/>
|
1456
|
+
</xsl:variable><xsl:variable name="pageWidth_">
|
1578
1457
|
215.9
|
1579
1458
|
</xsl:variable><xsl:variable name="pageWidth" select="normalize-space($pageWidth_)"/><xsl:variable name="pageHeight_">
|
1580
1459
|
279.4
|
1581
|
-
</xsl:variable><xsl:variable name="pageHeight" select="normalize-space($pageHeight_)"/><xsl:variable name="
|
1460
|
+
</xsl:variable><xsl:variable name="pageHeight" select="normalize-space($pageHeight_)"/><xsl:variable name="marginLeftRight1_">
|
1461
|
+
35
|
1462
|
+
</xsl:variable><xsl:variable name="marginLeftRight1" select="normalize-space($marginLeftRight1_)"/><xsl:variable name="marginLeftRight2_">
|
1463
|
+
17
|
1464
|
+
</xsl:variable><xsl:variable name="marginLeftRight2" select="normalize-space($marginLeftRight2_)"/><xsl:variable name="marginTop_">
|
1465
|
+
16.5
|
1466
|
+
</xsl:variable><xsl:variable name="marginTop" select="normalize-space($marginTop_)"/><xsl:variable name="marginBottom_">
|
1467
|
+
22.5
|
1468
|
+
</xsl:variable><xsl:variable name="marginBottom" select="normalize-space($marginBottom_)"/><xsl:variable name="titles_">
|
1582
1469
|
|
1583
1470
|
<title-edition lang="en">
|
1584
1471
|
|
@@ -1590,6 +1477,10 @@
|
|
1590
1477
|
<xsl:text>Édition </xsl:text>
|
1591
1478
|
</title-edition>
|
1592
1479
|
|
1480
|
+
<title-edition lang="ru">
|
1481
|
+
<xsl:text>Издание </xsl:text>
|
1482
|
+
</title-edition>
|
1483
|
+
|
1593
1484
|
<!-- These titles of Table of contents renders different than determined in localized-strings -->
|
1594
1485
|
<title-toc lang="en">
|
1595
1486
|
|
@@ -1606,7 +1497,7 @@
|
|
1606
1497
|
<xsl:text>Contents</xsl:text>
|
1607
1498
|
|
1608
1499
|
</title-toc>
|
1609
|
-
|
1500
|
+
|
1610
1501
|
<title-descriptors lang="en">Descriptors</title-descriptors>
|
1611
1502
|
|
1612
1503
|
<title-part lang="en">
|
@@ -1618,7 +1509,11 @@
|
|
1618
1509
|
|
1619
1510
|
|
1620
1511
|
|
1621
|
-
</title-part>
|
1512
|
+
</title-part>
|
1513
|
+
<title-part lang="ru">
|
1514
|
+
|
1515
|
+
|
1516
|
+
</title-part>
|
1622
1517
|
<title-part lang="zh">第 # 部分:</title-part>
|
1623
1518
|
|
1624
1519
|
<title-subpart lang="en">Sub-part #</title-subpart>
|
@@ -1634,13 +1529,38 @@
|
|
1634
1529
|
|
1635
1530
|
<title-summary lang="en">Summary</title-summary>
|
1636
1531
|
|
1532
|
+
<title-continued lang="ru">(продолжение)</title-continued>
|
1637
1533
|
<title-continued lang="en">(continued)</title-continued>
|
1638
1534
|
<title-continued lang="fr">(continué)</title-continued>
|
1639
1535
|
|
1640
|
-
</xsl:variable><xsl:variable name="titles" select="xalan:nodeset($titles_)"/><xsl:variable name="
|
1536
|
+
</xsl:variable><xsl:variable name="titles" select="xalan:nodeset($titles_)"/><xsl:variable name="title-list-tables">
|
1537
|
+
<xsl:variable name="toc_table_title" select="//*[contains(local-name(), '-standard')]/*[local-name() = 'misc-container']/*[local-name() = 'toc'][@type='table']/*[local-name() = 'title']"/>
|
1538
|
+
<xsl:value-of select="$toc_table_title"/>
|
1539
|
+
<xsl:if test="normalize-space($toc_table_title) = ''">
|
1540
|
+
<xsl:call-template name="getTitle">
|
1541
|
+
<xsl:with-param name="name" select="'title-list-tables'"/>
|
1542
|
+
</xsl:call-template>
|
1543
|
+
</xsl:if>
|
1544
|
+
</xsl:variable><xsl:variable name="title-list-figures">
|
1545
|
+
<xsl:variable name="toc_figure_title" select="//*[contains(local-name(), '-standard')]/*[local-name() = 'misc-container']/*[local-name() = 'toc'][@type='figure']/*[local-name() = 'title']"/>
|
1546
|
+
<xsl:value-of select="$toc_figure_title"/>
|
1547
|
+
<xsl:if test="normalize-space($toc_figure_title) = ''">
|
1548
|
+
<xsl:call-template name="getTitle">
|
1549
|
+
<xsl:with-param name="name" select="'title-list-figures'"/>
|
1550
|
+
</xsl:call-template>
|
1551
|
+
</xsl:if>
|
1552
|
+
</xsl:variable><xsl:variable name="title-list-recommendations">
|
1553
|
+
<xsl:variable name="toc_requirement_title" select="//*[contains(local-name(), '-standard')]/*[local-name() = 'misc-container']/*[local-name() = 'toc'][@type='requirement']/*[local-name() = 'title']"/>
|
1554
|
+
<xsl:value-of select="$toc_requirement_title"/>
|
1555
|
+
<xsl:if test="normalize-space($toc_requirement_title) = ''">
|
1556
|
+
<xsl:call-template name="getTitle">
|
1557
|
+
<xsl:with-param name="name" select="'title-list-recommendations'"/>
|
1558
|
+
</xsl:call-template>
|
1559
|
+
</xsl:if>
|
1560
|
+
</xsl:variable><xsl:variable name="bibdata">
|
1641
1561
|
<xsl:copy-of select="//*[contains(local-name(), '-standard')]/*[local-name() = 'bibdata']"/>
|
1642
1562
|
<xsl:copy-of select="//*[contains(local-name(), '-standard')]/*[local-name() = 'localized-strings']"/>
|
1643
|
-
</xsl:variable><xsl:variable name="tab_zh"> </xsl:variable><xsl:template name="getTitle">
|
1563
|
+
</xsl:variable><xsl:variable name="linebreak">
</xsl:variable><xsl:variable name="tab_zh"> </xsl:variable><xsl:variable name="non_breaking_hyphen">‑</xsl:variable><xsl:variable name="thin_space"> </xsl:variable><xsl:variable name="zero_width_space"></xsl:variable><xsl:variable name="en_dash">–</xsl:variable><xsl:template name="getTitle">
|
1644
1564
|
<xsl:param name="name"/>
|
1645
1565
|
<xsl:param name="lang"/>
|
1646
1566
|
<xsl:variable name="lang_">
|
@@ -1663,7 +1583,7 @@
|
|
1663
1583
|
<xsl:value-of select="$titles/*[local-name() = $name][@lang = 'en']"/>
|
1664
1584
|
</xsl:otherwise>
|
1665
1585
|
</xsl:choose>
|
1666
|
-
</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:
|
1586
|
+
</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:attribute-set name="root-style">
|
1667
1587
|
|
1668
1588
|
|
1669
1589
|
|
@@ -1890,7 +1810,7 @@
|
|
1890
1810
|
|
1891
1811
|
|
1892
1812
|
</xsl:attribute-set><xsl:attribute-set name="example-name-style">
|
1893
|
-
|
1813
|
+
|
1894
1814
|
|
1895
1815
|
|
1896
1816
|
|
@@ -2284,11 +2204,11 @@
|
|
2284
2204
|
|
2285
2205
|
|
2286
2206
|
</xsl:attribute-set><xsl:attribute-set name="quote-style">
|
2287
|
-
<xsl:attribute name="
|
2207
|
+
<xsl:attribute name="margin-left">12mm</xsl:attribute>
|
2208
|
+
<xsl:attribute name="margin-right">12mm</xsl:attribute>
|
2288
2209
|
|
2289
2210
|
<xsl:attribute name="margin-top">12pt</xsl:attribute>
|
2290
2211
|
<xsl:attribute name="margin-left">13mm</xsl:attribute>
|
2291
|
-
<xsl:attribute name="margin-right">12mm</xsl:attribute>
|
2292
2212
|
|
2293
2213
|
|
2294
2214
|
|
@@ -2297,12 +2217,11 @@
|
|
2297
2217
|
|
2298
2218
|
|
2299
2219
|
</xsl:attribute-set><xsl:attribute-set name="quote-source-style">
|
2220
|
+
<xsl:attribute name="text-align">right</xsl:attribute>
|
2300
2221
|
|
2301
|
-
<xsl:attribute name="text-align">right</xsl:attribute>
|
2302
2222
|
<xsl:attribute name="margin-right">25mm</xsl:attribute>
|
2303
2223
|
|
2304
2224
|
|
2305
|
-
|
2306
2225
|
</xsl:attribute-set><xsl:attribute-set name="termsource-style">
|
2307
2226
|
|
2308
2227
|
|
@@ -2327,6 +2246,9 @@
|
|
2327
2246
|
|
2328
2247
|
</xsl:attribute-set><xsl:attribute-set name="term-style">
|
2329
2248
|
|
2249
|
+
</xsl:attribute-set><xsl:attribute-set name="term-name-style">
|
2250
|
+
<xsl:attribute name="keep-with-next">always</xsl:attribute>
|
2251
|
+
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
2330
2252
|
</xsl:attribute-set><xsl:attribute-set name="figure-style">
|
2331
2253
|
|
2332
2254
|
</xsl:attribute-set><xsl:attribute-set name="figure-name-style">
|
@@ -2360,6 +2282,35 @@
|
|
2360
2282
|
|
2361
2283
|
|
2362
2284
|
</xsl:attribute-set><xsl:attribute-set name="formula-style">
|
2285
|
+
<xsl:attribute name="margin-top">6pt</xsl:attribute>
|
2286
|
+
<xsl:attribute name="margin-bottom">12pt</xsl:attribute>
|
2287
|
+
|
2288
|
+
|
2289
|
+
|
2290
|
+
|
2291
|
+
|
2292
|
+
|
2293
|
+
</xsl:attribute-set><xsl:attribute-set name="formula-stem-block-style">
|
2294
|
+
<xsl:attribute name="text-align">center</xsl:attribute>
|
2295
|
+
|
2296
|
+
|
2297
|
+
|
2298
|
+
|
2299
|
+
|
2300
|
+
|
2301
|
+
|
2302
|
+
|
2303
|
+
|
2304
|
+
<xsl:attribute name="text-align">left</xsl:attribute>
|
2305
|
+
|
2306
|
+
|
2307
|
+
|
2308
|
+
</xsl:attribute-set><xsl:attribute-set name="formula-stem-number-style">
|
2309
|
+
<xsl:attribute name="text-align">right</xsl:attribute>
|
2310
|
+
|
2311
|
+
|
2312
|
+
|
2313
|
+
|
2363
2314
|
|
2364
2315
|
</xsl:attribute-set><xsl:attribute-set name="image-style">
|
2365
2316
|
<xsl:attribute name="text-align">center</xsl:attribute>
|
@@ -2398,6 +2349,18 @@
|
|
2398
2349
|
<xsl:attribute name="margin-bottom">12pt</xsl:attribute>
|
2399
2350
|
<xsl:attribute name="keep-with-previous">always</xsl:attribute>
|
2400
2351
|
|
2352
|
+
</xsl:attribute-set><xsl:attribute-set name="preferred-block-style">
|
2353
|
+
|
2354
|
+
|
2355
|
+
|
2356
|
+
|
2357
|
+
|
2358
|
+
|
2359
|
+
</xsl:attribute-set><xsl:attribute-set name="preferred-term-style">
|
2360
|
+
<xsl:attribute name="keep-with-next">always</xsl:attribute>
|
2361
|
+
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
2362
|
+
|
2363
|
+
|
2401
2364
|
</xsl:attribute-set><xsl:attribute-set name="domain-style">
|
2402
2365
|
|
2403
2366
|
</xsl:attribute-set><xsl:attribute-set name="admitted-style">
|
@@ -2418,13 +2381,19 @@
|
|
2418
2381
|
</xsl:attribute-set><xsl:variable name="color-added-text">
|
2419
2382
|
<xsl:text>rgb(0, 255, 0)</xsl:text>
|
2420
2383
|
</xsl:variable><xsl:attribute-set name="add-style">
|
2421
|
-
|
2422
|
-
|
2423
|
-
|
2424
|
-
|
2425
|
-
|
2426
|
-
|
2427
|
-
|
2384
|
+
|
2385
|
+
<xsl:attribute name="color">red</xsl:attribute>
|
2386
|
+
<xsl:attribute name="text-decoration">underline</xsl:attribute>
|
2387
|
+
<!-- <xsl:attribute name="color">black</xsl:attribute>
|
2388
|
+
<xsl:attribute name="background-color"><xsl:value-of select="$color-added-text"/></xsl:attribute>
|
2389
|
+
<xsl:attribute name="padding-top">1mm</xsl:attribute>
|
2390
|
+
<xsl:attribute name="padding-bottom">0.5mm</xsl:attribute> -->
|
2391
|
+
|
2392
|
+
</xsl:attribute-set><xsl:variable name="add-style">
|
2393
|
+
<add-style xsl:use-attribute-sets="add-style"/>
|
2394
|
+
</xsl:variable><xsl:template name="append_add-style">
|
2395
|
+
<xsl:copy-of select="xalan:nodeset($add-style)/add-style/@*"/>
|
2396
|
+
</xsl:template><xsl:variable name="color-deleted-text">
|
2428
2397
|
<xsl:text>red</xsl:text>
|
2429
2398
|
</xsl:variable><xsl:attribute-set name="del-style">
|
2430
2399
|
<xsl:attribute name="color"><xsl:value-of select="$color-deleted-text"/></xsl:attribute>
|
@@ -2435,6 +2404,39 @@
|
|
2435
2404
|
|
2436
2405
|
</xsl:attribute-set><xsl:attribute-set name="list-style">
|
2437
2406
|
|
2407
|
+
|
2408
|
+
|
2409
|
+
|
2410
|
+
|
2411
|
+
|
2412
|
+
|
2413
|
+
|
2414
|
+
|
2415
|
+
|
2416
|
+
|
2417
|
+
|
2418
|
+
|
2419
|
+
<xsl:attribute name="provisional-distance-between-starts">12mm</xsl:attribute>
|
2420
|
+
<xsl:attribute name="space-after">12pt</xsl:attribute>
|
2421
|
+
<xsl:attribute name="line-height">115%</xsl:attribute>
|
2422
|
+
|
2423
|
+
|
2424
|
+
|
2425
|
+
|
2426
|
+
|
2427
|
+
</xsl:attribute-set><xsl:attribute-set name="list-item-style">
|
2428
|
+
|
2429
|
+
|
2430
|
+
</xsl:attribute-set><xsl:attribute-set name="list-item-label-style">
|
2431
|
+
|
2432
|
+
|
2433
|
+
|
2434
|
+
</xsl:attribute-set><xsl:attribute-set name="list-item-body-style">
|
2435
|
+
|
2436
|
+
|
2437
|
+
<xsl:attribute name="line-height-shift-adjustment">disregard-shifts</xsl:attribute>
|
2438
|
+
|
2439
|
+
|
2438
2440
|
</xsl:attribute-set><xsl:attribute-set name="toc-style">
|
2439
2441
|
<xsl:attribute name="line-height">135%</xsl:attribute>
|
2440
2442
|
</xsl:attribute-set><xsl:attribute-set name="fn-reference-style">
|
@@ -2729,18 +2731,151 @@
|
|
2729
2731
|
|
2730
2732
|
<xsl:attribute name="line-height">120%</xsl:attribute>
|
2731
2733
|
|
2732
|
-
</xsl:attribute-set><xsl:
|
2733
|
-
<xsl:
|
2734
|
-
|
2735
|
-
|
2736
|
-
|
2737
|
-
|
2738
|
-
|
2739
|
-
<xsl:
|
2740
|
-
|
2741
|
-
|
2742
|
-
|
2743
|
-
|
2734
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-doctag">
|
2735
|
+
<xsl:attribute name="color">#d73a49</xsl:attribute>
|
2736
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-keyword">
|
2737
|
+
<xsl:attribute name="color">#d73a49</xsl:attribute>
|
2738
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-meta_hljs-keyword">
|
2739
|
+
<xsl:attribute name="color">#d73a49</xsl:attribute>
|
2740
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-template-tag">
|
2741
|
+
<xsl:attribute name="color">#d73a49</xsl:attribute>
|
2742
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-template-variable">
|
2743
|
+
<xsl:attribute name="color">#d73a49</xsl:attribute>
|
2744
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-type">
|
2745
|
+
<xsl:attribute name="color">#d73a49</xsl:attribute>
|
2746
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-variable_and_language_">
|
2747
|
+
<xsl:attribute name="color">#d73a49</xsl:attribute>
|
2748
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-title">
|
2749
|
+
<xsl:attribute name="color">#6f42c1</xsl:attribute>
|
2750
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-title_and_class_">
|
2751
|
+
<xsl:attribute name="color">#6f42c1</xsl:attribute>
|
2752
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-title_and_class__and_inherited__">
|
2753
|
+
<xsl:attribute name="color">#6f42c1</xsl:attribute>
|
2754
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-title_and_function_">
|
2755
|
+
<xsl:attribute name="color">#6f42c1</xsl:attribute>
|
2756
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-attr">
|
2757
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
2758
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-attribute">
|
2759
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
2760
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-literal">
|
2761
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
2762
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-meta">
|
2763
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
2764
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-number">
|
2765
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
2766
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-operator">
|
2767
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
2768
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-variable">
|
2769
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
2770
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-selector-attr">
|
2771
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
2772
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-selector-class">
|
2773
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
2774
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-selector-id">
|
2775
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
2776
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-regexp">
|
2777
|
+
<xsl:attribute name="color">#032f62</xsl:attribute>
|
2778
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-string">
|
2779
|
+
<xsl:attribute name="color">#032f62</xsl:attribute>
|
2780
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-meta_hljs-string">
|
2781
|
+
<xsl:attribute name="color">#032f62</xsl:attribute>
|
2782
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-built_in">
|
2783
|
+
<xsl:attribute name="color">#e36209</xsl:attribute>
|
2784
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-symbol">
|
2785
|
+
<xsl:attribute name="color">#e36209</xsl:attribute>
|
2786
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-comment">
|
2787
|
+
<xsl:attribute name="color">#6a737d</xsl:attribute>
|
2788
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-code">
|
2789
|
+
<xsl:attribute name="color">#6a737d</xsl:attribute>
|
2790
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-formula">
|
2791
|
+
<xsl:attribute name="color">#6a737d</xsl:attribute>
|
2792
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-name">
|
2793
|
+
<xsl:attribute name="color">#22863a</xsl:attribute>
|
2794
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-quote">
|
2795
|
+
<xsl:attribute name="color">#22863a</xsl:attribute>
|
2796
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-selector-tag">
|
2797
|
+
<xsl:attribute name="color">#22863a</xsl:attribute>
|
2798
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-selector-pseudo">
|
2799
|
+
<xsl:attribute name="color">#22863a</xsl:attribute>
|
2800
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-subst">
|
2801
|
+
<xsl:attribute name="color">#24292e</xsl:attribute>
|
2802
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-section">
|
2803
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
2804
|
+
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
2805
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-bullet">
|
2806
|
+
<xsl:attribute name="color">#735c0f</xsl:attribute>
|
2807
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-emphasis">
|
2808
|
+
<xsl:attribute name="color">#24292e</xsl:attribute>
|
2809
|
+
<xsl:attribute name="font-style">italic</xsl:attribute>
|
2810
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-strong">
|
2811
|
+
<xsl:attribute name="color">#24292e</xsl:attribute>
|
2812
|
+
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
2813
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-addition">
|
2814
|
+
<xsl:attribute name="color">#22863a</xsl:attribute>
|
2815
|
+
<xsl:attribute name="background-color">#f0fff4</xsl:attribute>
|
2816
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-deletion">
|
2817
|
+
<xsl:attribute name="color">#b31d28</xsl:attribute>
|
2818
|
+
<xsl:attribute name="background-color">#ffeef0</xsl:attribute>
|
2819
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-char_and_escape_">
|
2820
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-link">
|
2821
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-params">
|
2822
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-property">
|
2823
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-punctuation">
|
2824
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-tag">
|
2825
|
+
</xsl:attribute-set><xsl:attribute-set name="indexsect-title-style">
|
2826
|
+
<xsl:attribute name="role">H1</xsl:attribute>
|
2827
|
+
|
2828
|
+
|
2829
|
+
|
2830
|
+
|
2831
|
+
|
2832
|
+
</xsl:attribute-set><xsl:attribute-set name="indexsect-clause-title-style">
|
2833
|
+
<xsl:attribute name="keep-with-next">always</xsl:attribute>
|
2834
|
+
|
2835
|
+
|
2836
|
+
|
2837
|
+
|
2838
|
+
|
2839
|
+
</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:variable name="ace_tag">ace-tag_</xsl:variable><xsl:template name="processPrefaceSectionsDefault_Contents">
|
2840
|
+
<xsl:variable name="nodes_preface_">
|
2841
|
+
<xsl:for-each select="/*/*[local-name()='preface']/*">
|
2842
|
+
<node id="{@id}"/>
|
2843
|
+
</xsl:for-each>
|
2844
|
+
</xsl:variable>
|
2845
|
+
<xsl:variable name="nodes_preface" select="xalan:nodeset($nodes_preface_)"/>
|
2846
|
+
|
2847
|
+
<xsl:for-each select="/*/*[local-name()='preface']/*">
|
2848
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
2849
|
+
|
2850
|
+
<!-- process Section's title -->
|
2851
|
+
<xsl:variable name="preceding-sibling_id" select="$nodes_preface/node[@id = current()/@id]/preceding-sibling::node[1]/@id"/>
|
2852
|
+
<xsl:if test="$preceding-sibling_id != ''">
|
2853
|
+
<xsl:apply-templates select="parent::*/*[@type = 'section-title' and @id = $preceding-sibling_id and not(@displayorder)]" mode="contents_no_displayorder"/>
|
2854
|
+
</xsl:if>
|
2855
|
+
|
2856
|
+
<xsl:apply-templates select="." mode="contents"/>
|
2857
|
+
</xsl:for-each>
|
2858
|
+
</xsl:template><xsl:template name="processMainSectionsDefault_Contents">
|
2859
|
+
|
2860
|
+
<xsl:variable name="nodes_sections_">
|
2861
|
+
<xsl:for-each select="/*/*[local-name()='sections']/*">
|
2862
|
+
<node id="{@id}"/>
|
2863
|
+
</xsl:for-each>
|
2864
|
+
</xsl:variable>
|
2865
|
+
<xsl:variable name="nodes_sections" select="xalan:nodeset($nodes_sections_)"/>
|
2866
|
+
|
2867
|
+
<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']]">
|
2868
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
2869
|
+
|
2870
|
+
<!-- process Section's title -->
|
2871
|
+
<xsl:variable name="preceding-sibling_id" select="$nodes_sections/node[@id = current()/@id]/preceding-sibling::node[1]/@id"/>
|
2872
|
+
<xsl:if test="$preceding-sibling_id != ''">
|
2873
|
+
<xsl:apply-templates select="parent::*/*[@type = 'section-title' and @id = $preceding-sibling_id and not(@displayorder)]" mode="contents_no_displayorder"/>
|
2874
|
+
</xsl:if>
|
2875
|
+
|
2876
|
+
<xsl:apply-templates select="." mode="contents"/>
|
2877
|
+
</xsl:for-each>
|
2878
|
+
|
2744
2879
|
<xsl:for-each select="/*/*[local-name()='annex']">
|
2745
2880
|
<xsl:sort select="@displayorder" data-type="number"/>
|
2746
2881
|
<xsl:apply-templates select="." mode="contents"/>
|
@@ -2750,6 +2885,30 @@
|
|
2750
2885
|
<xsl:sort select="@displayorder" data-type="number"/>
|
2751
2886
|
<xsl:apply-templates select="." mode="contents"/>
|
2752
2887
|
</xsl:for-each>
|
2888
|
+
</xsl:template><xsl:template name="processTablesFigures_Contents">
|
2889
|
+
<xsl:param name="always"/>
|
2890
|
+
<xsl:if test="(//*[contains(local-name(), '-standard')]/*[local-name() = 'misc-container']/*[local-name() = 'toc'][@type='table']/*[local-name() = 'title']) or normalize-space($always) = 'true'">
|
2891
|
+
<xsl:call-template name="processTables_Contents"/>
|
2892
|
+
</xsl:if>
|
2893
|
+
<xsl:if test="(//*[contains(local-name(), '-standard')]/*[local-name() = 'misc-container']/*[local-name() = 'toc'][@type='figure']/*[local-name() = 'title']) or normalize-space($always) = 'true'">
|
2894
|
+
<xsl:call-template name="processFigures_Contents"/>
|
2895
|
+
</xsl:if>
|
2896
|
+
</xsl:template><xsl:template name="processTables_Contents">
|
2897
|
+
<tables>
|
2898
|
+
<xsl:for-each select="//*[local-name() = 'table'][@id and *[local-name() = 'name'] and normalize-space(@id) != '']">
|
2899
|
+
<table id="{@id}" alt-text="{*[local-name() = 'name']}">
|
2900
|
+
<xsl:copy-of select="*[local-name() = 'name']"/>
|
2901
|
+
</table>
|
2902
|
+
</xsl:for-each>
|
2903
|
+
</tables>
|
2904
|
+
</xsl:template><xsl:template name="processFigures_Contents">
|
2905
|
+
<figures>
|
2906
|
+
<xsl:for-each select="//*[local-name() = 'figure'][@id and *[local-name() = 'name'] and not(@unnumbered = 'true') and normalize-space(@id) != ''] | //*[@id and starts-with(*[local-name() = 'name'], 'Figure ') and normalize-space(@id) != '']">
|
2907
|
+
<figure id="{@id}" alt-text="{*[local-name() = 'name']}">
|
2908
|
+
<xsl:copy-of select="*[local-name() = 'name']"/>
|
2909
|
+
</figure>
|
2910
|
+
</xsl:for-each>
|
2911
|
+
</figures>
|
2753
2912
|
</xsl:template><xsl:template name="processPrefaceSectionsDefault">
|
2754
2913
|
<xsl:for-each select="/*/*[local-name()='preface']/*">
|
2755
2914
|
<xsl:sort select="@displayorder" data-type="number"/>
|
@@ -2836,9 +2995,12 @@
|
|
2836
2995
|
|
2837
2996
|
|
2838
2997
|
</xsl:template><xsl:template match="*[local-name()='legal-statement']//*[local-name()='p']">
|
2998
|
+
<xsl:param name="margin"/>
|
2839
2999
|
|
2840
3000
|
<!-- process in the template 'paragraph' -->
|
2841
|
-
<xsl:call-template name="paragraph"
|
3001
|
+
<xsl:call-template name="paragraph">
|
3002
|
+
<xsl:with-param name="margin" select="$margin"/>
|
3003
|
+
</xsl:call-template>
|
2842
3004
|
|
2843
3005
|
</xsl:template><xsl:template match="*[local-name()='feedback-statement']">
|
2844
3006
|
<fo:block xsl:use-attribute-sets="feedback-statement-style">
|
@@ -2850,6 +3012,7 @@
|
|
2850
3012
|
<xsl:call-template name="title"/>
|
2851
3013
|
|
2852
3014
|
</xsl:template><xsl:template match="*[local-name()='feedback-statement']//*[local-name()='p']">
|
3015
|
+
<xsl:param name="margin"/>
|
2853
3016
|
|
2854
3017
|
<fo:block xsl:use-attribute-sets="feedback-statement-p-style">
|
2855
3018
|
<xsl:apply-templates/>
|
@@ -2894,7 +3057,7 @@
|
|
2894
3057
|
</xsl:call-template>
|
2895
3058
|
</xsl:if>
|
2896
3059
|
</xsl:variable>
|
2897
|
-
<!-- colwidths=<xsl:copy-of select="$colwidths"/> -->
|
3060
|
+
<!-- DEBUG colwidths=<xsl:copy-of select="$colwidths"/> -->
|
2898
3061
|
|
2899
3062
|
|
2900
3063
|
<xsl:variable name="margin-side">
|
@@ -3160,7 +3323,7 @@
|
|
3160
3323
|
<!-- <xsl:with-param name="text" select="translate(td[$curr-col],'- —:', ' ')"/> -->
|
3161
3324
|
<!-- 2009 thinspace -->
|
3162
3325
|
<!-- <xsl:with-param name="text" select="translate(normalize-space($td_text),'- —:', ' ')"/> -->
|
3163
|
-
<xsl:with-param name="text" select="normalize-space(translate($string_with_added_zerospaces, '
|
3326
|
+
<xsl:with-param name="text" select="normalize-space(translate($string_with_added_zerospaces, '', ' '))"/> <!-- replace zero-width-space and soft-hyphen to space -->
|
3164
3327
|
</xsl:call-template>
|
3165
3328
|
</xsl:variable>
|
3166
3329
|
<xsl:variable name="max_length">
|
@@ -3201,8 +3364,7 @@
|
|
3201
3364
|
</xsl:call-template>
|
3202
3365
|
</xsl:if>
|
3203
3366
|
</xsl:template><xsl:template match="text()" mode="td_text">
|
3204
|
-
<xsl:
|
3205
|
-
<xsl:value-of select="translate(., $zero-space, ' ')"/><xsl:text> </xsl:text>
|
3367
|
+
<xsl:value-of select="translate(., $zero_width_space, ' ')"/><xsl:text> </xsl:text>
|
3206
3368
|
</xsl:template><xsl:template match="*[local-name()='termsource']" mode="td_text">
|
3207
3369
|
<xsl:value-of select="*[local-name()='origin']/@citeas"/>
|
3208
3370
|
</xsl:template><xsl:template match="*[local-name()='link']" mode="td_text">
|
@@ -3552,37 +3714,7 @@
|
|
3552
3714
|
|
3553
3715
|
<!-- list of footnotes to calculate actual footnotes number -->
|
3554
3716
|
<xsl:variable name="p_fn_">
|
3555
|
-
<xsl:
|
3556
|
-
<xsl:when test="@current_fn_number"> <!-- for BSI, footnote reference number calculated already -->
|
3557
|
-
<fn gen_id="{generate-id(.)}">
|
3558
|
-
<xsl:copy-of select="@*"/>
|
3559
|
-
<xsl:copy-of select="node()"/>
|
3560
|
-
</fn>
|
3561
|
-
</xsl:when>
|
3562
|
-
<xsl:otherwise>
|
3563
|
-
<!-- itetation for:
|
3564
|
-
footnotes in bibdata/title
|
3565
|
-
footnotes in bibliography
|
3566
|
-
footnotes in document's body (except table's head/body/foot and figure text)
|
3567
|
-
-->
|
3568
|
-
<xsl:for-each select="ancestor::*[contains(local-name(), '-standard')]/*[local-name() = 'bibdata']/*[local-name() = 'note'][@type='title-footnote']">
|
3569
|
-
<fn gen_id="{generate-id(.)}">
|
3570
|
-
<xsl:copy-of select="@*"/>
|
3571
|
-
<xsl:copy-of select="node()"/>
|
3572
|
-
</fn>
|
3573
|
-
</xsl:for-each>
|
3574
|
-
<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']/*">
|
3575
|
-
<xsl:sort select="@displayorder" data-type="number"/>
|
3576
|
-
<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])]">
|
3577
|
-
<!-- copy unique fn -->
|
3578
|
-
<fn gen_id="{generate-id(.)}">
|
3579
|
-
<xsl:copy-of select="@*"/>
|
3580
|
-
<xsl:copy-of select="node()"/>
|
3581
|
-
</fn>
|
3582
|
-
</xsl:for-each>
|
3583
|
-
</xsl:for-each>
|
3584
|
-
</xsl:otherwise>
|
3585
|
-
</xsl:choose>
|
3717
|
+
<xsl:call-template name="get_fn_list"/>
|
3586
3718
|
</xsl:variable>
|
3587
3719
|
<xsl:variable name="p_fn" select="xalan:nodeset($p_fn_)"/>
|
3588
3720
|
|
@@ -3643,6 +3775,38 @@
|
|
3643
3775
|
<xsl:copy-of select="$footnote_inline"/>
|
3644
3776
|
</xsl:otherwise>
|
3645
3777
|
</xsl:choose>
|
3778
|
+
</xsl:template><xsl:template name="get_fn_list">
|
3779
|
+
<xsl:choose>
|
3780
|
+
<xsl:when test="@current_fn_number"> <!-- for BSI, footnote reference number calculated already -->
|
3781
|
+
<fn gen_id="{generate-id(.)}">
|
3782
|
+
<xsl:copy-of select="@*"/>
|
3783
|
+
<xsl:copy-of select="node()"/>
|
3784
|
+
</fn>
|
3785
|
+
</xsl:when>
|
3786
|
+
<xsl:otherwise>
|
3787
|
+
<!-- itetation for:
|
3788
|
+
footnotes in bibdata/title
|
3789
|
+
footnotes in bibliography
|
3790
|
+
footnotes in document's body (except table's head/body/foot and figure text)
|
3791
|
+
-->
|
3792
|
+
<xsl:for-each select="ancestor::*[contains(local-name(), '-standard')]/*[local-name() = 'bibdata']/*[local-name() = 'note'][@type='title-footnote']">
|
3793
|
+
<fn gen_id="{generate-id(.)}">
|
3794
|
+
<xsl:copy-of select="@*"/>
|
3795
|
+
<xsl:copy-of select="node()"/>
|
3796
|
+
</fn>
|
3797
|
+
</xsl:for-each>
|
3798
|
+
<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']/*">
|
3799
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
3800
|
+
<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])]">
|
3801
|
+
<!-- copy unique fn -->
|
3802
|
+
<fn gen_id="{generate-id(.)}">
|
3803
|
+
<xsl:copy-of select="@*"/>
|
3804
|
+
<xsl:copy-of select="node()"/>
|
3805
|
+
</fn>
|
3806
|
+
</xsl:for-each>
|
3807
|
+
</xsl:for-each>
|
3808
|
+
</xsl:otherwise>
|
3809
|
+
</xsl:choose>
|
3646
3810
|
</xsl:template><xsl:template name="table_fn_display">
|
3647
3811
|
<xsl:variable name="references">
|
3648
3812
|
|
@@ -3825,7 +3989,7 @@
|
|
3825
3989
|
</fo:inline>
|
3826
3990
|
</xsl:template><xsl:template match="*[local-name()='fn']/text()[normalize-space() != '']">
|
3827
3991
|
<fo:inline><xsl:value-of select="."/></fo:inline>
|
3828
|
-
</xsl:template><xsl:template match="*[local-name()='fn']
|
3992
|
+
</xsl:template><xsl:template match="*[local-name()='fn']//*[local-name()='p']">
|
3829
3993
|
<fo:inline>
|
3830
3994
|
<xsl:apply-templates/>
|
3831
3995
|
</fo:inline>
|
@@ -4188,20 +4352,44 @@
|
|
4188
4352
|
<fo:inline text-decoration="underline">
|
4189
4353
|
<xsl:apply-templates/>
|
4190
4354
|
</fo:inline>
|
4191
|
-
</xsl:template><xsl:template match="*[local-name()='add']">
|
4355
|
+
</xsl:template><xsl:template match="*[local-name()='add']" name="tag_add">
|
4192
4356
|
<xsl:param name="skip">true</xsl:param>
|
4357
|
+
<xsl:param name="block">false</xsl:param>
|
4358
|
+
<xsl:param name="type"/>
|
4359
|
+
<xsl:param name="text-align"/>
|
4193
4360
|
<xsl:choose>
|
4194
4361
|
<xsl:when test="starts-with(., $ace_tag)"> <!-- examples: ace-tag_A1_start, ace-tag_A2_end, C1_start, AC_start -->
|
4195
4362
|
<xsl:choose>
|
4196
|
-
<xsl:when test="$skip = 'true' and ((local-name(../..) = 'note' and not(preceding-sibling::node())) or (local-name(..) = 'title' and preceding-sibling::node()[1][local-name() = 'tab'])) and ../node()[last()][local-name() = 'add'][starts-with(text(), $ace_tag)]"><!-- start tag displayed in template name="note" and title --></xsl:when>
|
4363
|
+
<xsl:when test="$skip = 'true' and ((local-name(../..) = 'note' and not(preceding-sibling::node())) or (local-name(..) = 'title' and preceding-sibling::node()[1][local-name() = 'tab']) or local-name(..) = 'formattedref' and not(preceding-sibling::node())) and ../node()[last()][local-name() = 'add'][starts-with(text(), $ace_tag)]"><!-- start tag displayed in template name="note" and title --></xsl:when>
|
4197
4364
|
<xsl:otherwise>
|
4198
|
-
<
|
4365
|
+
<xsl:variable name="tag">
|
4199
4366
|
<xsl:call-template name="insertTag">
|
4200
|
-
<xsl:with-param name="type"
|
4367
|
+
<xsl:with-param name="type">
|
4368
|
+
<xsl:choose>
|
4369
|
+
<xsl:when test="$type = ''"><xsl:value-of select="substring-after(substring-after(., $ace_tag), '_')"/> <!-- start or end --></xsl:when>
|
4370
|
+
<xsl:otherwise><xsl:value-of select="$type"/></xsl:otherwise>
|
4371
|
+
</xsl:choose>
|
4372
|
+
</xsl:with-param>
|
4201
4373
|
<xsl:with-param name="kind" select="substring(substring-before(substring-after(., $ace_tag), '_'), 1, 1)"/> <!-- A or C -->
|
4202
4374
|
<xsl:with-param name="value" select="substring(substring-before(substring-after(., $ace_tag), '_'), 2)"/> <!-- 1, 2, C -->
|
4203
4375
|
</xsl:call-template>
|
4204
|
-
</
|
4376
|
+
</xsl:variable>
|
4377
|
+
<xsl:choose>
|
4378
|
+
<xsl:when test="$block = 'false'">
|
4379
|
+
<fo:inline>
|
4380
|
+
<xsl:copy-of select="$tag"/>
|
4381
|
+
</fo:inline>
|
4382
|
+
</xsl:when>
|
4383
|
+
<xsl:otherwise>
|
4384
|
+
<fo:block> <!-- for around figures -->
|
4385
|
+
<xsl:if test="$text-align != ''">
|
4386
|
+
<xsl:attribute name="text-align"><xsl:value-of select="$text-align"/></xsl:attribute>
|
4387
|
+
</xsl:if>
|
4388
|
+
<xsl:copy-of select="$tag"/>
|
4389
|
+
</fo:block>
|
4390
|
+
</xsl:otherwise>
|
4391
|
+
</xsl:choose>
|
4392
|
+
|
4205
4393
|
</xsl:otherwise>
|
4206
4394
|
</xsl:choose>
|
4207
4395
|
</xsl:when>
|
@@ -4560,17 +4748,21 @@
|
|
4560
4748
|
</xsl:apply-templates>
|
4561
4749
|
</xsl:template><xsl:template name="getLang">
|
4562
4750
|
<xsl:variable name="language_current" select="normalize-space(//*[local-name()='bibdata']//*[local-name()='language'][@current = 'true'])"/>
|
4563
|
-
<xsl:variable name="language_current_2" select="normalize-space(xalan:nodeset($bibdata)//*[local-name()='bibdata']//*[local-name()='language'][@current = 'true'])"/>
|
4564
4751
|
<xsl:variable name="language">
|
4565
4752
|
<xsl:choose>
|
4566
4753
|
<xsl:when test="$language_current != ''">
|
4567
4754
|
<xsl:value-of select="$language_current"/>
|
4568
4755
|
</xsl:when>
|
4569
|
-
<xsl:when test="$language_current_2 != ''">
|
4570
|
-
<xsl:value-of select="$language_current_2"/>
|
4571
|
-
</xsl:when>
|
4572
4756
|
<xsl:otherwise>
|
4573
|
-
<xsl:
|
4757
|
+
<xsl:variable name="language_current_2" select="normalize-space(xalan:nodeset($bibdata)//*[local-name()='bibdata']//*[local-name()='language'][@current = 'true'])"/>
|
4758
|
+
<xsl:choose>
|
4759
|
+
<xsl:when test="$language_current_2 != ''">
|
4760
|
+
<xsl:value-of select="$language_current_2"/>
|
4761
|
+
</xsl:when>
|
4762
|
+
<xsl:otherwise>
|
4763
|
+
<xsl:value-of select="//*[local-name()='bibdata']//*[local-name()='language']"/>
|
4764
|
+
</xsl:otherwise>
|
4765
|
+
</xsl:choose>
|
4574
4766
|
</xsl:otherwise>
|
4575
4767
|
</xsl:choose>
|
4576
4768
|
</xsl:variable>
|
@@ -4773,6 +4965,9 @@
|
|
4773
4965
|
</fo:inline>
|
4774
4966
|
</xsl:template><xsl:template match="*[local-name() = 'xref']">
|
4775
4967
|
<fo:basic-link internal-destination="{@target}" fox:alt-text="{@target}" xsl:use-attribute-sets="xref-style">
|
4968
|
+
<xsl:if test="parent::*[local-name() = 'add']">
|
4969
|
+
<xsl:call-template name="append_add-style"/>
|
4970
|
+
</xsl:if>
|
4776
4971
|
<xsl:apply-templates/>
|
4777
4972
|
</fo:basic-link>
|
4778
4973
|
</xsl:template><xsl:template match="*[local-name() = 'formula']" name="formula">
|
@@ -4787,8 +4982,8 @@
|
|
4787
4982
|
|
4788
4983
|
</xsl:if>
|
4789
4984
|
<fo:block-container margin-left="0mm">
|
4790
|
-
<fo:block id="{@id}"
|
4791
|
-
<xsl:apply-templates/>
|
4985
|
+
<fo:block id="{@id}">
|
4986
|
+
<xsl:apply-templates select="node()[not(local-name() = 'name')]"/> <!-- formula's number will be process in 'stem' template -->
|
4792
4987
|
</fo:block>
|
4793
4988
|
</fo:block-container>
|
4794
4989
|
</fo:block-container>
|
@@ -4800,10 +4995,43 @@
|
|
4800
4995
|
<fo:inline>
|
4801
4996
|
<xsl:apply-templates/>
|
4802
4997
|
</fo:inline>
|
4803
|
-
</xsl:template><xsl:template match="*[local-name() = 'formula']/*[local-name() = 'name']"
|
4998
|
+
</xsl:template><xsl:template match="*[local-name() = 'formula']/*[local-name() = 'name']"> <!-- show in 'stem' template -->
|
4804
4999
|
<xsl:if test="normalize-space() != ''">
|
4805
5000
|
<xsl:text>(</xsl:text><xsl:apply-templates/><xsl:text>)</xsl:text>
|
4806
5001
|
</xsl:if>
|
5002
|
+
</xsl:template><xsl:template match="*[local-name() = 'formula'][*[local-name() = 'name']]/*[local-name() = 'stem']">
|
5003
|
+
<fo:block xsl:use-attribute-sets="formula-style">
|
5004
|
+
|
5005
|
+
|
5006
|
+
|
5007
|
+
<fo:table table-layout="fixed" width="100%">
|
5008
|
+
<fo:table-column column-width="95%"/>
|
5009
|
+
<fo:table-column column-width="5%"/>
|
5010
|
+
<fo:table-body>
|
5011
|
+
<fo:table-row>
|
5012
|
+
<fo:table-cell display-align="center">
|
5013
|
+
<fo:block xsl:use-attribute-sets="formula-stem-block-style">
|
5014
|
+
|
5015
|
+
|
5016
|
+
|
5017
|
+
<xsl:apply-templates/>
|
5018
|
+
</fo:block>
|
5019
|
+
</fo:table-cell>
|
5020
|
+
<fo:table-cell display-align="center">
|
5021
|
+
<fo:block xsl:use-attribute-sets="formula-stem-number-style">
|
5022
|
+
<xsl:apply-templates select="../*[local-name() = 'name']"/>
|
5023
|
+
</fo:block>
|
5024
|
+
</fo:table-cell>
|
5025
|
+
</fo:table-row>
|
5026
|
+
</fo:table-body>
|
5027
|
+
</fo:table>
|
5028
|
+
</fo:block>
|
5029
|
+
</xsl:template><xsl:template match="*[local-name() = 'formula'][not(*[local-name() = 'name'])]/*[local-name() = 'stem']">
|
5030
|
+
<fo:block xsl:use-attribute-sets="formula-style">
|
5031
|
+
<fo:block xsl:use-attribute-sets="formula-stem-block-style">
|
5032
|
+
<xsl:apply-templates/>
|
5033
|
+
</fo:block>
|
5034
|
+
</fo:block>
|
4807
5035
|
</xsl:template><xsl:template match="*[local-name() = 'note']" name="note">
|
4808
5036
|
|
4809
5037
|
<fo:block-container id="{@id}" xsl:use-attribute-sets="note-style">
|
@@ -4841,6 +5069,13 @@
|
|
4841
5069
|
|
4842
5070
|
|
4843
5071
|
|
5072
|
+
<!-- if 'p' contains all text in 'add' first and last elements in first p are 'add' -->
|
5073
|
+
<!-- <xsl:if test="*[not(local-name()='name')][1][node()[normalize-space() != ''][1][local-name() = 'add'] and node()[normalize-space() != ''][last()][local-name() = 'add']]"> -->
|
5074
|
+
<xsl:if test="*[not(local-name()='name')][1][count(node()[normalize-space() != '']) = 1 and *[local-name() = 'add']]">
|
5075
|
+
<xsl:call-template name="append_add-style"/>
|
5076
|
+
</xsl:if>
|
5077
|
+
|
5078
|
+
|
4844
5079
|
<!-- if note contains only one element and first and last childs are `add` ace-tag, then move start ace-tag before NOTE's name-->
|
4845
5080
|
<xsl:if test="count(*[not(local-name() = 'name')]) = 1 and *[not(local-name() = 'name')]/node()[last()][local-name() = 'add'][starts-with(text(), $ace_tag)]">
|
4846
5081
|
<xsl:apply-templates select="*[not(local-name() = 'name')]/node()[1][local-name() = 'add'][starts-with(text(), $ace_tag)]">
|
@@ -4879,6 +5114,12 @@
|
|
4879
5114
|
|
4880
5115
|
|
4881
5116
|
|
5117
|
+
<!-- if 'p' contains all text in 'add' first and last elements in first p are 'add' -->
|
5118
|
+
<!-- <xsl:if test="*[not(local-name()='name')][1][node()[normalize-space() != ''][1][local-name() = 'add'] and node()[normalize-space() != ''][last()][local-name() = 'add']]"> -->
|
5119
|
+
<xsl:if test="*[not(local-name()='name')][1][count(node()[normalize-space() != '']) = 1 and *[local-name() = 'add']]">
|
5120
|
+
<xsl:call-template name="append_add-style"/>
|
5121
|
+
</xsl:if>
|
5122
|
+
|
4882
5123
|
<xsl:apply-templates select="*[local-name() = 'name']"/>
|
4883
5124
|
|
4884
5125
|
</fo:inline>
|
@@ -4932,6 +5173,7 @@
|
|
4932
5173
|
</fo:block>
|
4933
5174
|
</xsl:template><xsl:template match="*[local-name() = 'term']">
|
4934
5175
|
<fo:block id="{@id}" xsl:use-attribute-sets="term-style">
|
5176
|
+
|
4935
5177
|
|
4936
5178
|
|
4937
5179
|
|
@@ -5370,7 +5612,11 @@
|
|
5370
5612
|
<xsl:value-of select="."/>
|
5371
5613
|
</xsl:template><xsl:template match="node()" mode="contents">
|
5372
5614
|
<xsl:apply-templates mode="contents"/>
|
5373
|
-
</xsl:template><xsl:template match="*[local-name() = 'p'][@type = '
|
5615
|
+
</xsl:template><xsl:template match="*[local-name() = 'preface' or local-name() = 'sections']/*[local-name() = 'p'][@type = 'section-title' and not(@displayorder)]" priority="3" mode="contents"/><xsl:template match="*[local-name() = 'p'][@type = 'section-title' and not(@displayorder)]" mode="contents_no_displayorder">
|
5616
|
+
<xsl:call-template name="contents_section-title"/>
|
5617
|
+
</xsl:template><xsl:template match="*[local-name() = 'p'][@type = 'section-title']" mode="contents_in_clause">
|
5618
|
+
<xsl:call-template name="contents_section-title"/>
|
5619
|
+
</xsl:template><xsl:template match="*[local-name() = 'clause']/*[local-name() = 'p'][@type = 'section-title' and (@depth != ../*[local-name() = 'title']/@depth or ../*[local-name() = 'title']/@depth = 1)]" priority="3" mode="contents"/><xsl:template match="*[local-name() = 'p'][@type = 'floating-title' or @type = 'section-title']" priority="2" name="contents_section-title" mode="contents">
|
5374
5620
|
<xsl:variable name="level">
|
5375
5621
|
<xsl:call-template name="getLevel">
|
5376
5622
|
<xsl:with-param name="depth" select="@depth"/>
|
@@ -5439,13 +5685,14 @@
|
|
5439
5685
|
<xsl:apply-templates mode="bookmarks"/>
|
5440
5686
|
</xsl:template><xsl:template name="addBookmarks">
|
5441
5687
|
<xsl:param name="contents"/>
|
5442
|
-
<xsl:
|
5688
|
+
<xsl:variable name="contents_nodes" select="xalan:nodeset($contents)"/>
|
5689
|
+
<xsl:if test="$contents_nodes//item">
|
5443
5690
|
<fo:bookmark-tree>
|
5444
5691
|
<xsl:choose>
|
5445
|
-
<xsl:when test="
|
5692
|
+
<xsl:when test="$contents_nodes/doc">
|
5446
5693
|
<xsl:choose>
|
5447
|
-
<xsl:when test="count(
|
5448
|
-
<xsl:for-each select="
|
5694
|
+
<xsl:when test="count($contents_nodes/doc) > 1">
|
5695
|
+
<xsl:for-each select="$contents_nodes/doc">
|
5449
5696
|
<fo:bookmark internal-destination="{contents/item[1]/@id}" starting-state="hide">
|
5450
5697
|
<xsl:if test="@bundle = 'true'">
|
5451
5698
|
<xsl:attribute name="internal-destination"><xsl:value-of select="@firstpage_id"/></xsl:attribute>
|
@@ -5496,7 +5743,7 @@
|
|
5496
5743
|
</xsl:for-each>
|
5497
5744
|
</xsl:when>
|
5498
5745
|
<xsl:otherwise>
|
5499
|
-
<xsl:for-each select="
|
5746
|
+
<xsl:for-each select="$contents_nodes/doc">
|
5500
5747
|
|
5501
5748
|
<xsl:apply-templates select="contents/item" mode="bookmark"/>
|
5502
5749
|
|
@@ -5514,97 +5761,89 @@
|
|
5514
5761
|
</xsl:choose>
|
5515
5762
|
</xsl:when>
|
5516
5763
|
<xsl:otherwise>
|
5517
|
-
<xsl:apply-templates select="
|
5764
|
+
<xsl:apply-templates select="$contents_nodes/contents/item" mode="bookmark"/>
|
5765
|
+
|
5766
|
+
<xsl:call-template name="insertFigureBookmarks">
|
5767
|
+
<xsl:with-param name="contents" select="$contents_nodes/contents"/>
|
5768
|
+
</xsl:call-template>
|
5769
|
+
|
5770
|
+
<xsl:call-template name="insertTableBookmarks">
|
5771
|
+
<xsl:with-param name="contents" select="$contents_nodes/contents"/>
|
5772
|
+
<xsl:with-param name="lang" select="@lang"/>
|
5773
|
+
</xsl:call-template>
|
5774
|
+
|
5518
5775
|
</xsl:otherwise>
|
5519
5776
|
</xsl:choose>
|
5520
5777
|
|
5778
|
+
|
5521
5779
|
|
5522
5780
|
|
5523
5781
|
|
5524
5782
|
|
5525
|
-
|
5526
|
-
<xsl:variable name="list_of_tables_">
|
5527
|
-
<xsl:for-each select="//*[local-name() = 'table'][@id and *[local-name() = 'name']]"> <!-- contains(*[local-name() = 'name'], '—') -->
|
5528
|
-
<table id="{@id}"><xsl:apply-templates select="*[local-name() = 'name']" mode="bookmarks"/></table>
|
5529
|
-
</xsl:for-each>
|
5530
|
-
</xsl:variable>
|
5531
|
-
<xsl:variable name="list_of_tables" select="xalan:nodeset($list_of_tables_)"/>
|
5532
|
-
|
5533
|
-
<xsl:variable name="list_of_figures_">
|
5534
|
-
<xsl:for-each select="//*[local-name() = 'figure'][@id and *[local-name() = 'name'] and not(@unnumbered = 'true')] | //*[@id and starts-with(*[local-name() = 'name'], 'Figure ')]"> <!-- contains(*[local-name() = 'name'], '—') -->
|
5535
|
-
<figure id="{@id}"><xsl:apply-templates select="*[local-name() = 'name']" mode="bookmarks"/></figure>
|
5536
|
-
</xsl:for-each>
|
5537
|
-
</xsl:variable>
|
5538
|
-
<xsl:variable name="list_of_figures" select="xalan:nodeset($list_of_figures_)"/>
|
5539
|
-
|
5540
|
-
<xsl:if test="$list_of_tables//table or $list_of_figures/figure or //*[local-name() = 'table'][.//*[local-name() = 'p'][@class = 'RecommendationTitle']]">
|
5783
|
+
<xsl:if test="$contents//tables/table or $contents//figures/figure or //*[local-name() = 'table'][.//*[local-name() = 'p'][@class = 'RecommendationTitle']]">
|
5541
5784
|
<fo:bookmark internal-destination="empty_bookmark">
|
5542
5785
|
<fo:bookmark-title>—————</fo:bookmark-title>
|
5543
5786
|
</fo:bookmark>
|
5544
5787
|
</xsl:if>
|
5545
5788
|
|
5546
|
-
<xsl:if test="$
|
5547
|
-
<fo:bookmark internal-destination="empty_bookmark" starting-state="hide">
|
5789
|
+
<xsl:if test="$contents//tables/table">
|
5790
|
+
<fo:bookmark internal-destination="empty_bookmark" starting-state="hide">
|
5548
5791
|
<fo:bookmark-title>
|
5549
|
-
<xsl:
|
5550
|
-
<xsl:with-param name="name" select="'title-list-tables'"/>
|
5551
|
-
</xsl:call-template>
|
5792
|
+
<xsl:value-of select="$title-list-tables"/>
|
5552
5793
|
</fo:bookmark-title>
|
5553
|
-
<xsl:for-each select="$
|
5794
|
+
<xsl:for-each select="$contents//tables/table">
|
5554
5795
|
<fo:bookmark internal-destination="{@id}">
|
5555
|
-
<
|
5796
|
+
<xsl:variable name="title">
|
5797
|
+
<xsl:apply-templates select="*[local-name() = 'name']" mode="bookmarks"/>
|
5798
|
+
</xsl:variable>
|
5799
|
+
<fo:bookmark-title><xsl:value-of select="$title"/></fo:bookmark-title>
|
5556
5800
|
</fo:bookmark>
|
5557
5801
|
</xsl:for-each>
|
5558
5802
|
</fo:bookmark>
|
5559
5803
|
</xsl:if>
|
5560
5804
|
|
5561
|
-
<xsl:if test="$
|
5562
|
-
<fo:bookmark internal-destination="empty_bookmark" starting-state="hide">
|
5805
|
+
<xsl:if test="$contents//figures/figure">
|
5806
|
+
<fo:bookmark internal-destination="empty_bookmark" starting-state="hide">
|
5563
5807
|
<fo:bookmark-title>
|
5564
|
-
|
5565
|
-
<xsl:call-template name="getTitle">
|
5566
|
-
<xsl:with-param name="name" select="'title-list-figures'"/>
|
5567
|
-
</xsl:call-template>
|
5568
|
-
|
5569
|
-
|
5808
|
+
<xsl:value-of select="$title-list-figures"/>
|
5570
5809
|
</fo:bookmark-title>
|
5571
|
-
<xsl:for-each select="$
|
5810
|
+
<xsl:for-each select="$contents//figures/figure">
|
5572
5811
|
<fo:bookmark internal-destination="{@id}">
|
5573
|
-
<
|
5812
|
+
<xsl:variable name="title">
|
5813
|
+
<xsl:apply-templates select="*[local-name() = 'name']" mode="bookmarks"/>
|
5814
|
+
</xsl:variable>
|
5815
|
+
<fo:bookmark-title><xsl:value-of select="$title"/></fo:bookmark-title>
|
5574
5816
|
</fo:bookmark>
|
5575
5817
|
</xsl:for-each>
|
5576
5818
|
</fo:bookmark>
|
5577
5819
|
</xsl:if>
|
5578
5820
|
|
5579
|
-
|
5580
5821
|
<xsl:if test="//*[local-name() = 'table'][.//*[local-name() = 'p'][@class = 'RecommendationTitle']]">
|
5581
|
-
<fo:bookmark internal-destination="empty_bookmark" starting-state="hide">
|
5822
|
+
<fo:bookmark internal-destination="empty_bookmark" starting-state="hide">
|
5582
5823
|
<fo:bookmark-title>
|
5583
|
-
<xsl:
|
5584
|
-
<xsl:with-param name="name" select="'title-list-recommendations'"/>
|
5585
|
-
</xsl:call-template>
|
5824
|
+
<xsl:value-of select="$title-list-recommendations"/>
|
5586
5825
|
</fo:bookmark-title>
|
5587
|
-
<!-- <xsl:for-each select="//*[local-name() = 'table'][.//*[local-name() = 'p'][@class = 'RecommendationTitle']]"> -->
|
5588
5826
|
<xsl:for-each select="xalan:nodeset($toc_recommendations)/*">
|
5589
|
-
<xsl:variable name="table_id" select="@id"/>
|
5590
5827
|
<fo:bookmark internal-destination="{@id}">
|
5591
5828
|
<fo:bookmark-title><xsl:value-of select="bookmark"/></fo:bookmark-title>
|
5592
5829
|
</fo:bookmark>
|
5593
5830
|
</xsl:for-each>
|
5594
5831
|
</fo:bookmark>
|
5595
5832
|
</xsl:if>
|
5833
|
+
<!-- $namespace = 'ogc' -->
|
5596
5834
|
|
5597
5835
|
|
5598
|
-
|
5836
|
+
|
5599
5837
|
|
5600
5838
|
</fo:bookmark-tree>
|
5601
5839
|
</xsl:if>
|
5602
5840
|
</xsl:template><xsl:template name="insertFigureBookmarks">
|
5603
5841
|
<xsl:param name="contents"/>
|
5604
|
-
<xsl:
|
5605
|
-
|
5842
|
+
<xsl:variable name="contents_nodes" select="xalan:nodeset($contents)"/>
|
5843
|
+
<xsl:if test="$contents_nodes/figure">
|
5844
|
+
<fo:bookmark internal-destination="{$contents_nodes/figure[1]/@id}" starting-state="hide">
|
5606
5845
|
<fo:bookmark-title>Figures</fo:bookmark-title>
|
5607
|
-
<xsl:for-each select="
|
5846
|
+
<xsl:for-each select="$contents_nodes/figure">
|
5608
5847
|
<fo:bookmark internal-destination="{@id}">
|
5609
5848
|
<fo:bookmark-title>
|
5610
5849
|
<xsl:value-of select="normalize-space(title)"/>
|
@@ -5613,18 +5852,21 @@
|
|
5613
5852
|
</xsl:for-each>
|
5614
5853
|
</fo:bookmark>
|
5615
5854
|
</xsl:if>
|
5855
|
+
|
5856
|
+
<!-- see template addBookmarks -->
|
5616
5857
|
</xsl:template><xsl:template name="insertTableBookmarks">
|
5617
5858
|
<xsl:param name="contents"/>
|
5618
5859
|
<xsl:param name="lang"/>
|
5619
|
-
<xsl:
|
5620
|
-
|
5860
|
+
<xsl:variable name="contents_nodes" select="xalan:nodeset($contents)"/>
|
5861
|
+
<xsl:if test="$contents_nodes/table">
|
5862
|
+
<fo:bookmark internal-destination="{$contents_nodes/table[1]/@id}" starting-state="hide">
|
5621
5863
|
<fo:bookmark-title>
|
5622
5864
|
<xsl:choose>
|
5623
5865
|
<xsl:when test="$lang = 'fr'">Tableaux</xsl:when>
|
5624
5866
|
<xsl:otherwise>Tables</xsl:otherwise>
|
5625
5867
|
</xsl:choose>
|
5626
5868
|
</fo:bookmark-title>
|
5627
|
-
<xsl:for-each select="
|
5869
|
+
<xsl:for-each select="$contents_nodes/table">
|
5628
5870
|
<fo:bookmark internal-destination="{@id}">
|
5629
5871
|
<fo:bookmark-title>
|
5630
5872
|
<xsl:value-of select="normalize-space(title)"/>
|
@@ -5633,6 +5875,8 @@
|
|
5633
5875
|
</xsl:for-each>
|
5634
5876
|
</fo:bookmark>
|
5635
5877
|
</xsl:if>
|
5878
|
+
|
5879
|
+
<!-- see template addBookmarks -->
|
5636
5880
|
</xsl:template><xsl:template name="getLangVersion">
|
5637
5881
|
<xsl:param name="lang"/>
|
5638
5882
|
<xsl:param name="doctype" select="''"/>
|
@@ -5843,12 +6087,140 @@
|
|
5843
6087
|
</fo:block-container>
|
5844
6088
|
</fo:block-container>
|
5845
6089
|
</xsl:template><xsl:template match="*[local-name()='sourcecode']/text()" priority="2">
|
5846
|
-
<xsl:
|
6090
|
+
<xsl:choose>
|
6091
|
+
<xsl:when test="normalize-space($syntax-highlight) = 'true' and normalize-space(../@lang) != ''"> <!-- condition for turn on of highlighting -->
|
6092
|
+
<xsl:variable name="syntax" select="java:org.metanorma.fop.Util.syntaxHighlight(., ../@lang)"/>
|
6093
|
+
<xsl:choose>
|
6094
|
+
<xsl:when test="normalize-space($syntax) != ''"><!-- if there is highlighted result -->
|
6095
|
+
<xsl:apply-templates select="xalan:nodeset($syntax)" mode="syntax_highlight"/> <!-- process span tags -->
|
6096
|
+
</xsl:when>
|
6097
|
+
<xsl:otherwise> <!-- if case of non-succesfull syntax highlight (for instance, unknown lang), process without highlighting -->
|
6098
|
+
<xsl:call-template name="add_spaces_to_sourcecode"/>
|
6099
|
+
</xsl:otherwise>
|
6100
|
+
</xsl:choose>
|
6101
|
+
</xsl:when>
|
6102
|
+
<xsl:otherwise>
|
6103
|
+
<xsl:call-template name="add_spaces_to_sourcecode"/>
|
6104
|
+
</xsl:otherwise>
|
6105
|
+
</xsl:choose>
|
6106
|
+
|
6107
|
+
</xsl:template><xsl:template name="add_spaces_to_sourcecode">
|
6108
|
+
<xsl:variable name="text_step1">
|
5847
6109
|
<xsl:call-template name="add-zero-spaces-equal"/>
|
5848
6110
|
</xsl:variable>
|
5849
|
-
<xsl:
|
5850
|
-
<xsl:
|
5851
|
-
|
6111
|
+
<xsl:variable name="text_step2">
|
6112
|
+
<xsl:call-template name="add-zero-spaces-java">
|
6113
|
+
<xsl:with-param name="text" select="$text_step1"/>
|
6114
|
+
</xsl:call-template>
|
6115
|
+
</xsl:variable>
|
6116
|
+
<xsl:value-of select="$text_step2"/>
|
6117
|
+
</xsl:template><xsl:template match="*" mode="syntax_highlight">
|
6118
|
+
<xsl:apply-templates mode="syntax_highlight"/>
|
6119
|
+
</xsl:template><xsl:variable name="syntax_highlight_styles_">
|
6120
|
+
<style class="hljs-addition" xsl:use-attribute-sets="hljs-addition"/>
|
6121
|
+
<style class="hljs-attr" xsl:use-attribute-sets="hljs-attr"/>
|
6122
|
+
<style class="hljs-attribute" xsl:use-attribute-sets="hljs-attribute"/>
|
6123
|
+
<style class="hljs-built_in" xsl:use-attribute-sets="hljs-built_in"/>
|
6124
|
+
<style class="hljs-bullet" xsl:use-attribute-sets="hljs-bullet"/>
|
6125
|
+
<style class="hljs-char_and_escape_" xsl:use-attribute-sets="hljs-char_and_escape_"/>
|
6126
|
+
<style class="hljs-code" xsl:use-attribute-sets="hljs-code"/>
|
6127
|
+
<style class="hljs-comment" xsl:use-attribute-sets="hljs-comment"/>
|
6128
|
+
<style class="hljs-deletion" xsl:use-attribute-sets="hljs-deletion"/>
|
6129
|
+
<style class="hljs-doctag" xsl:use-attribute-sets="hljs-doctag"/>
|
6130
|
+
<style class="hljs-emphasis" xsl:use-attribute-sets="hljs-emphasis"/>
|
6131
|
+
<style class="hljs-formula" xsl:use-attribute-sets="hljs-formula"/>
|
6132
|
+
<style class="hljs-keyword" xsl:use-attribute-sets="hljs-keyword"/>
|
6133
|
+
<style class="hljs-link" xsl:use-attribute-sets="hljs-link"/>
|
6134
|
+
<style class="hljs-literal" xsl:use-attribute-sets="hljs-literal"/>
|
6135
|
+
<style class="hljs-meta" xsl:use-attribute-sets="hljs-meta"/>
|
6136
|
+
<style class="hljs-meta_hljs-string" xsl:use-attribute-sets="hljs-meta_hljs-string"/>
|
6137
|
+
<style class="hljs-meta_hljs-keyword" xsl:use-attribute-sets="hljs-meta_hljs-keyword"/>
|
6138
|
+
<style class="hljs-name" xsl:use-attribute-sets="hljs-name"/>
|
6139
|
+
<style class="hljs-number" xsl:use-attribute-sets="hljs-number"/>
|
6140
|
+
<style class="hljs-operator" xsl:use-attribute-sets="hljs-operator"/>
|
6141
|
+
<style class="hljs-params" xsl:use-attribute-sets="hljs-params"/>
|
6142
|
+
<style class="hljs-property" xsl:use-attribute-sets="hljs-property"/>
|
6143
|
+
<style class="hljs-punctuation" xsl:use-attribute-sets="hljs-punctuation"/>
|
6144
|
+
<style class="hljs-quote" xsl:use-attribute-sets="hljs-quote"/>
|
6145
|
+
<style class="hljs-regexp" xsl:use-attribute-sets="hljs-regexp"/>
|
6146
|
+
<style class="hljs-section" xsl:use-attribute-sets="hljs-section"/>
|
6147
|
+
<style class="hljs-selector-attr" xsl:use-attribute-sets="hljs-selector-attr"/>
|
6148
|
+
<style class="hljs-selector-class" xsl:use-attribute-sets="hljs-selector-class"/>
|
6149
|
+
<style class="hljs-selector-id" xsl:use-attribute-sets="hljs-selector-id"/>
|
6150
|
+
<style class="hljs-selector-pseudo" xsl:use-attribute-sets="hljs-selector-pseudo"/>
|
6151
|
+
<style class="hljs-selector-tag" xsl:use-attribute-sets="hljs-selector-tag"/>
|
6152
|
+
<style class="hljs-string" xsl:use-attribute-sets="hljs-string"/>
|
6153
|
+
<style class="hljs-strong" xsl:use-attribute-sets="hljs-strong"/>
|
6154
|
+
<style class="hljs-subst" xsl:use-attribute-sets="hljs-subst"/>
|
6155
|
+
<style class="hljs-symbol" xsl:use-attribute-sets="hljs-symbol"/>
|
6156
|
+
<style class="hljs-tag" xsl:use-attribute-sets="hljs-tag"/>
|
6157
|
+
<!-- <style class="hljs-tag_hljs-attr" xsl:use-attribute-sets="hljs-tag_hljs-attr"></style> -->
|
6158
|
+
<!-- <style class="hljs-tag_hljs-name" xsl:use-attribute-sets="hljs-tag_hljs-name"></style> -->
|
6159
|
+
<style class="hljs-template-tag" xsl:use-attribute-sets="hljs-template-tag"/>
|
6160
|
+
<style class="hljs-template-variable" xsl:use-attribute-sets="hljs-template-variable"/>
|
6161
|
+
<style class="hljs-title" xsl:use-attribute-sets="hljs-title"/>
|
6162
|
+
<style class="hljs-title_and_class_" xsl:use-attribute-sets="hljs-title_and_class_"/>
|
6163
|
+
<style class="hljs-title_and_class__and_inherited__" xsl:use-attribute-sets="hljs-title_and_class__and_inherited__"/>
|
6164
|
+
<style class="hljs-title_and_function_" xsl:use-attribute-sets="hljs-title_and_function_"/>
|
6165
|
+
<style class="hljs-type" xsl:use-attribute-sets="hljs-type"/>
|
6166
|
+
<style class="hljs-variable" xsl:use-attribute-sets="hljs-variable"/>
|
6167
|
+
<style class="hljs-variable_and_language_" xsl:use-attribute-sets="hljs-variable_and_language_"/>
|
6168
|
+
</xsl:variable><xsl:variable name="syntax_highlight_styles" select="xalan:nodeset($syntax_highlight_styles_)"/><xsl:template match="span" mode="syntax_highlight" priority="2">
|
6169
|
+
<!-- <fo:inline color="green" font-style="italic"><xsl:apply-templates mode="syntax_highlight"/></fo:inline> -->
|
6170
|
+
<fo:inline>
|
6171
|
+
<xsl:variable name="classes_">
|
6172
|
+
<xsl:call-template name="split">
|
6173
|
+
<xsl:with-param name="pText" select="@class"/>
|
6174
|
+
<xsl:with-param name="sep" select="' '"/>
|
6175
|
+
</xsl:call-template>
|
6176
|
+
<!-- a few classes together (_and_ suffix) -->
|
6177
|
+
<xsl:if test="contains(@class, 'hljs-char') and contains(@class, 'escape_')">
|
6178
|
+
<item>hljs-char_and_escape_</item>
|
6179
|
+
</xsl:if>
|
6180
|
+
<xsl:if test="contains(@class, 'hljs-title') and contains(@class, 'class_')">
|
6181
|
+
<item>hljs-title_and_class_</item>
|
6182
|
+
</xsl:if>
|
6183
|
+
<xsl:if test="contains(@class, 'hljs-title') and contains(@class, 'class_') and contains(@class, 'inherited__')">
|
6184
|
+
<item>hljs-title_and_class__and_inherited__</item>
|
6185
|
+
</xsl:if>
|
6186
|
+
<xsl:if test="contains(@class, 'hljs-title') and contains(@class, 'function_')">
|
6187
|
+
<item>hljs-title_and_function_</item>
|
6188
|
+
</xsl:if>
|
6189
|
+
<xsl:if test="contains(@class, 'hljs-variable') and contains(@class, 'language_')">
|
6190
|
+
<item>hljs-variable_and_language_</item>
|
6191
|
+
</xsl:if>
|
6192
|
+
<!-- with parent classes (_ suffix) -->
|
6193
|
+
<xsl:if test="contains(@class, 'hljs-keyword') and contains(ancestor::*/@class, 'hljs-meta')">
|
6194
|
+
<item>hljs-meta_hljs-keyword</item>
|
6195
|
+
</xsl:if>
|
6196
|
+
<xsl:if test="contains(@class, 'hljs-string') and contains(ancestor::*/@class, 'hljs-meta')">
|
6197
|
+
<item>hljs-meta_hljs-string</item>
|
6198
|
+
</xsl:if>
|
6199
|
+
</xsl:variable>
|
6200
|
+
<xsl:variable name="classes" select="xalan:nodeset($classes_)"/>
|
6201
|
+
|
6202
|
+
<xsl:for-each select="$classes/item">
|
6203
|
+
<xsl:variable name="class_name" select="."/>
|
6204
|
+
<xsl:for-each select="$syntax_highlight_styles/style[@class = $class_name]/@*[not(local-name() = 'class')]">
|
6205
|
+
<xsl:attribute name="{local-name()}"><xsl:value-of select="."/></xsl:attribute>
|
6206
|
+
</xsl:for-each>
|
6207
|
+
</xsl:for-each>
|
6208
|
+
|
6209
|
+
<!-- <xsl:variable name="class_name">
|
6210
|
+
<xsl:choose>
|
6211
|
+
<xsl:when test="@class = 'hljs-attr' and ancestor::*/@class = 'hljs-tag'">hljs-tag_hljs-attr</xsl:when>
|
6212
|
+
<xsl:when test="@class = 'hljs-name' and ancestor::*/@class = 'hljs-tag'">hljs-tag_hljs-name</xsl:when>
|
6213
|
+
<xsl:when test="@class = 'hljs-string' and ancestor::*/@class = 'hljs-meta'">hljs-meta_hljs-string</xsl:when>
|
6214
|
+
<xsl:otherwise><xsl:value-of select="@class"/></xsl:otherwise>
|
6215
|
+
</xsl:choose>
|
6216
|
+
</xsl:variable>
|
6217
|
+
<xsl:for-each select="$syntax_highlight_styles/style[@class = $class_name]/@*[not(local-name() = 'class')]">
|
6218
|
+
<xsl:attribute name="{local-name()}"><xsl:value-of select="."/></xsl:attribute>
|
6219
|
+
</xsl:for-each> -->
|
6220
|
+
|
6221
|
+
<xsl:apply-templates mode="syntax_highlight"/></fo:inline>
|
6222
|
+
</xsl:template><xsl:template match="text()" mode="syntax_highlight" priority="2">
|
6223
|
+
<xsl:call-template name="add_spaces_to_sourcecode"/>
|
5852
6224
|
</xsl:template><xsl:template match="*[local-name() = 'sourcecode']/*[local-name() = 'name']">
|
5853
6225
|
<xsl:if test="normalize-space() != ''">
|
5854
6226
|
<fo:block xsl:use-attribute-sets="sourcecode-name-style">
|
@@ -6183,6 +6555,8 @@
|
|
6183
6555
|
</xsl:otherwise>
|
6184
6556
|
</xsl:choose> -->
|
6185
6557
|
</fo:block>
|
6558
|
+
</xsl:template><xsl:template match="*[local-name() = 'termsource']/text()[starts-with(., '[SOURCE: Adapted from: ')]" priority="2">
|
6559
|
+
<xsl:text>[</xsl:text><xsl:value-of select="substring-after(., '[SOURCE: ')"/>
|
6186
6560
|
</xsl:template><xsl:template match="*[local-name() = 'termsource']/text()">
|
6187
6561
|
<xsl:if test="normalize-space() != ''">
|
6188
6562
|
<xsl:value-of select="."/>
|
@@ -6229,11 +6603,14 @@
|
|
6229
6603
|
|
6230
6604
|
|
6231
6605
|
<fo:block-container margin-left="0mm">
|
6232
|
-
|
6233
|
-
<fo:block xsl:use-attribute-sets="quote-style">
|
6606
|
+
<fo:block-container xsl:use-attribute-sets="quote-style">
|
6234
6607
|
|
6235
|
-
<
|
6236
|
-
|
6608
|
+
<fo:block-container margin-left="0mm" margin-right="0mm">
|
6609
|
+
<fo:block role="BlockQuote">
|
6610
|
+
<xsl:apply-templates select="./node()[not(local-name() = 'author') and not(local-name() = 'source')]"/> <!-- process all nested nodes, except author and source -->
|
6611
|
+
</fo:block>
|
6612
|
+
</fo:block-container>
|
6613
|
+
</fo:block-container>
|
6237
6614
|
<xsl:if test="*[local-name() = 'author'] or *[local-name() = 'source']">
|
6238
6615
|
<fo:block xsl:use-attribute-sets="quote-source-style">
|
6239
6616
|
<!-- — ISO, ISO 7301:2011, Clause 1 -->
|
@@ -6254,26 +6631,11 @@
|
|
6254
6631
|
</xsl:template><xsl:template match="*[local-name() = 'author']">
|
6255
6632
|
<xsl:text>— </xsl:text>
|
6256
6633
|
<xsl:apply-templates/>
|
6257
|
-
</xsl:template><xsl:
|
6258
|
-
<xsl:
|
6259
|
-
|
6260
|
-
</xsl:for-each>
|
6261
|
-
<xsl:for-each select="//*[local-name() = 'references'][@hidden='true']/*[local-name() = 'bibitem']">
|
6262
|
-
<xsl:copy-of select="."/>
|
6263
|
-
</xsl:for-each>
|
6264
|
-
</xsl:variable><xsl:variable name="bibitem_hidden" select="xalan:nodeset($bibitem_hidden_)"/><xsl:template match="*[local-name() = 'eref']">
|
6265
|
-
|
6266
|
-
<xsl:variable name="bibitemid">
|
6267
|
-
<xsl:choose>
|
6268
|
-
<!-- <xsl:when test="//*[local-name() = 'bibitem'][@hidden='true' and @id = current()/@bibitemid]"></xsl:when>
|
6269
|
-
<xsl:when test="//*[local-name() = 'references'][@hidden='true']/*[local-name() = 'bibitem'][@id = current()/@bibitemid]"></xsl:when> -->
|
6270
|
-
<xsl:when test="$bibitem_hidden/*[local-name() = 'bibitem'][@id = current()/@bibitemid]"/>
|
6271
|
-
<xsl:otherwise><xsl:value-of select="@bibitemid"/></xsl:otherwise>
|
6272
|
-
</xsl:choose>
|
6273
|
-
</xsl:variable>
|
6274
|
-
|
6634
|
+
</xsl:template><xsl:template match="*[local-name() = 'eref']">
|
6635
|
+
<xsl:variable name="current_bibitemid" select="@bibitemid"/>
|
6636
|
+
<xsl:variable name="external-destination" select="normalize-space(key('bibitems', $current_bibitemid)/*[local-name() = 'uri'][@type = 'citation'])"/>
|
6275
6637
|
<xsl:choose>
|
6276
|
-
<xsl:when test="
|
6638
|
+
<xsl:when test="$external-destination != '' or not(key('bibitems_hidden', $current_bibitemid))"> <!-- if in the bibliography there is the item with @bibitemid (and not hidden), then create link (internal to the bibitem or external) -->
|
6277
6639
|
<fo:inline xsl:use-attribute-sets="eref-style">
|
6278
6640
|
<xsl:if test="@type = 'footnote'">
|
6279
6641
|
<xsl:attribute name="keep-together.within-line">always</xsl:attribute>
|
@@ -6287,8 +6649,8 @@
|
|
6287
6649
|
<xsl:variable name="text" select="normalize-space()"/>
|
6288
6650
|
|
6289
6651
|
|
6290
|
-
|
6291
|
-
<fo:basic-link
|
6652
|
+
|
6653
|
+
<fo:basic-link fox:alt-text="{@citeas}">
|
6292
6654
|
<xsl:if test="normalize-space(@citeas) = ''">
|
6293
6655
|
<xsl:attribute name="fox:alt-text"><xsl:value-of select="."/></xsl:attribute>
|
6294
6656
|
</xsl:if>
|
@@ -6298,14 +6660,21 @@
|
|
6298
6660
|
|
6299
6661
|
</xsl:if>
|
6300
6662
|
|
6301
|
-
|
6663
|
+
<xsl:choose>
|
6664
|
+
<xsl:when test="$external-destination != ''"> <!-- external hyperlink -->
|
6665
|
+
<xsl:attribute name="external-destination"><xsl:value-of select="$external-destination"/></xsl:attribute>
|
6666
|
+
</xsl:when>
|
6667
|
+
<xsl:otherwise>
|
6668
|
+
<xsl:attribute name="internal-destination"><xsl:value-of select="@bibitemid"/></xsl:attribute>
|
6669
|
+
</xsl:otherwise>
|
6670
|
+
</xsl:choose>
|
6302
6671
|
|
6303
6672
|
<xsl:apply-templates/>
|
6304
6673
|
</fo:basic-link>
|
6305
|
-
|
6674
|
+
|
6306
6675
|
</fo:inline>
|
6307
6676
|
</xsl:when>
|
6308
|
-
<xsl:otherwise>
|
6677
|
+
<xsl:otherwise> <!-- if there is key('bibitems_hidden', $current_bibitemid) -->
|
6309
6678
|
<fo:inline><xsl:apply-templates/></fo:inline>
|
6310
6679
|
</xsl:otherwise>
|
6311
6680
|
</xsl:choose>
|
@@ -6378,6 +6747,31 @@
|
|
6378
6747
|
<xsl:with-param name="count" select="$count - 1"/>
|
6379
6748
|
</xsl:call-template>
|
6380
6749
|
</xsl:if>
|
6750
|
+
</xsl:template><xsl:template match="*[local-name() = 'preferred']">
|
6751
|
+
<xsl:variable name="level">
|
6752
|
+
<xsl:call-template name="getLevel"/>
|
6753
|
+
</xsl:variable>
|
6754
|
+
<xsl:variable name="font-size">
|
6755
|
+
inherit
|
6756
|
+
</xsl:variable>
|
6757
|
+
<xsl:variable name="levelTerm">
|
6758
|
+
<xsl:call-template name="getLevelTermName"/>
|
6759
|
+
</xsl:variable>
|
6760
|
+
<fo:block font-size="{normalize-space($font-size)}" role="H{$levelTerm}" xsl:use-attribute-sets="preferred-block-style">
|
6761
|
+
|
6762
|
+
|
6763
|
+
|
6764
|
+
<xsl:if test="parent::*[local-name() = 'term'] and not(preceding-sibling::*[local-name() = 'preferred'])"> <!-- if first preffered in term, then display term's name -->
|
6765
|
+
<fo:block xsl:use-attribute-sets="term-name-style">
|
6766
|
+
<xsl:apply-templates select="ancestor::*[local-name() = 'term'][1]/*[local-name() = 'name']"/>
|
6767
|
+
</fo:block>
|
6768
|
+
</xsl:if>
|
6769
|
+
|
6770
|
+
<fo:block xsl:use-attribute-sets="preferred-term-style">
|
6771
|
+
<xsl:call-template name="setStyle_preferred"/>
|
6772
|
+
<xsl:apply-templates/>
|
6773
|
+
</fo:block>
|
6774
|
+
</fo:block>
|
6381
6775
|
</xsl:template><xsl:template match="*[local-name() = 'domain']">
|
6382
6776
|
<fo:inline xsl:use-attribute-sets="domain-style"><<xsl:apply-templates/>></fo:inline>
|
6383
6777
|
<xsl:text> </xsl:text>
|
@@ -6466,24 +6860,8 @@
|
|
6466
6860
|
<xsl:value-of select="java:replaceAll(java:java.lang.String.new(.),' ',' ')"/>
|
6467
6861
|
</xsl:template><xsl:variable name="ul_labels_">
|
6468
6862
|
|
6469
|
-
|
6470
|
-
|
6471
|
-
|
6472
|
-
|
6473
|
-
|
6474
|
-
|
6475
|
-
|
6476
|
-
|
6477
|
-
|
6478
|
-
|
6479
|
-
|
6480
|
-
|
6481
|
-
<label color="{$color_design}">•</label>
|
6482
|
-
|
6483
|
-
|
6484
|
-
|
6485
|
-
|
6486
|
-
|
6863
|
+
<label color="{$color_design}">•</label>
|
6864
|
+
|
6487
6865
|
</xsl:variable><xsl:variable name="ul_labels" select="xalan:nodeset($ul_labels_)"/><xsl:template name="setULLabel">
|
6488
6866
|
<xsl:variable name="list_level_" select="count(ancestor::*[local-name() = 'ul']) + count(ancestor::*[local-name() = 'ol'])"/>
|
6489
6867
|
<xsl:variable name="list_level">
|
@@ -6509,6 +6887,91 @@
|
|
6509
6887
|
</xsl:template><xsl:template match="label" mode="ul_labels">
|
6510
6888
|
<xsl:copy-of select="@*[not(local-name() = 'level')]"/>
|
6511
6889
|
<xsl:value-of select="."/>
|
6890
|
+
</xsl:template><xsl:template name="getListItemFormat">
|
6891
|
+
<!-- Example: for BSI <?list-type loweralpha?> -->
|
6892
|
+
<xsl:variable name="processing_instruction_type" select="normalize-space(../preceding-sibling::*[1]/processing-instruction('list-type'))"/>
|
6893
|
+
<xsl:choose>
|
6894
|
+
<xsl:when test="local-name(..) = 'ul'">
|
6895
|
+
<xsl:choose>
|
6896
|
+
<xsl:when test="normalize-space($processing_instruction_type) = 'simple'"/>
|
6897
|
+
<xsl:otherwise><xsl:call-template name="setULLabel"/></xsl:otherwise>
|
6898
|
+
</xsl:choose>
|
6899
|
+
</xsl:when>
|
6900
|
+
<xsl:otherwise> <!-- for ordered lists 'ol' -->
|
6901
|
+
|
6902
|
+
<!-- Example: for BSI <?list-start 2?> -->
|
6903
|
+
<xsl:variable name="processing_instruction_start" select="normalize-space(../preceding-sibling::*[1]/processing-instruction('list-start'))"/>
|
6904
|
+
|
6905
|
+
<xsl:variable name="start_value">
|
6906
|
+
<xsl:choose>
|
6907
|
+
<xsl:when test="normalize-space($processing_instruction_start) != ''">
|
6908
|
+
<xsl:value-of select="number($processing_instruction_start) - 1"/><!-- if start="3" then start_value=2 + xsl:number(1) = 3 -->
|
6909
|
+
</xsl:when>
|
6910
|
+
<xsl:when test="normalize-space(../@start) != ''">
|
6911
|
+
<xsl:value-of select="number(../@start) - 1"/><!-- if start="3" then start_value=2 + xsl:number(1) = 3 -->
|
6912
|
+
</xsl:when>
|
6913
|
+
<xsl:otherwise>0</xsl:otherwise>
|
6914
|
+
</xsl:choose>
|
6915
|
+
</xsl:variable>
|
6916
|
+
|
6917
|
+
<xsl:variable name="curr_value"><xsl:number/></xsl:variable>
|
6918
|
+
|
6919
|
+
<xsl:variable name="type">
|
6920
|
+
<xsl:choose>
|
6921
|
+
<xsl:when test="normalize-space($processing_instruction_type) != ''"><xsl:value-of select="$processing_instruction_type"/></xsl:when>
|
6922
|
+
<xsl:when test="normalize-space(../@type) != ''"><xsl:value-of select="../@type"/></xsl:when>
|
6923
|
+
|
6924
|
+
<xsl:otherwise> <!-- if no @type or @class = 'steps' -->
|
6925
|
+
|
6926
|
+
<xsl:variable name="list_level_" select="count(ancestor::*[local-name() = 'ul']) + count(ancestor::*[local-name() = 'ol'])"/>
|
6927
|
+
<xsl:variable name="list_level">
|
6928
|
+
<xsl:choose>
|
6929
|
+
<xsl:when test="$list_level_ <= 5"><xsl:value-of select="$list_level_"/></xsl:when>
|
6930
|
+
<xsl:otherwise><xsl:value-of select="$list_level_ mod 5"/></xsl:otherwise>
|
6931
|
+
</xsl:choose>
|
6932
|
+
</xsl:variable>
|
6933
|
+
|
6934
|
+
<xsl:choose>
|
6935
|
+
<xsl:when test="$list_level mod 5 = 0">roman_upper</xsl:when> <!-- level 5 -->
|
6936
|
+
<xsl:when test="$list_level mod 4 = 0">alphabet_upper</xsl:when> <!-- level 4 -->
|
6937
|
+
<xsl:when test="$list_level mod 3 = 0">roman</xsl:when> <!-- level 3 -->
|
6938
|
+
<xsl:when test="$list_level mod 2 = 0 and ancestor::*/@class = 'steps'">alphabet</xsl:when> <!-- level 2 and @class = 'steps'-->
|
6939
|
+
<xsl:when test="$list_level mod 2 = 0">arabic</xsl:when> <!-- level 2 -->
|
6940
|
+
<xsl:otherwise> <!-- level 1 -->
|
6941
|
+
<xsl:choose>
|
6942
|
+
<xsl:when test="ancestor::*/@class = 'steps'">arabic</xsl:when>
|
6943
|
+
<xsl:otherwise>alphabet</xsl:otherwise>
|
6944
|
+
</xsl:choose>
|
6945
|
+
</xsl:otherwise>
|
6946
|
+
</xsl:choose>
|
6947
|
+
|
6948
|
+
</xsl:otherwise>
|
6949
|
+
</xsl:choose>
|
6950
|
+
</xsl:variable>
|
6951
|
+
|
6952
|
+
<xsl:variable name="format">
|
6953
|
+
<xsl:choose>
|
6954
|
+
<xsl:when test="$type = 'arabic'">
|
6955
|
+
1.
|
6956
|
+
</xsl:when>
|
6957
|
+
<xsl:when test="$type = 'alphabet'">
|
6958
|
+
a)
|
6959
|
+
</xsl:when>
|
6960
|
+
<xsl:when test="$type = 'alphabet_upper'">
|
6961
|
+
A)
|
6962
|
+
</xsl:when>
|
6963
|
+
<xsl:when test="$type = 'roman'">
|
6964
|
+
i)
|
6965
|
+
</xsl:when>
|
6966
|
+
<xsl:when test="$type = 'roman_upper'">I.</xsl:when>
|
6967
|
+
<xsl:otherwise>1.</xsl:otherwise> <!-- for any case, if $type has non-determined value, not using -->
|
6968
|
+
</xsl:choose>
|
6969
|
+
</xsl:variable>
|
6970
|
+
|
6971
|
+
<xsl:number value="$start_value + $curr_value" format="{normalize-space($format)}" lang="en"/>
|
6972
|
+
|
6973
|
+
</xsl:otherwise>
|
6974
|
+
</xsl:choose>
|
6512
6975
|
</xsl:template><xsl:template match="*[local-name() = 'ul'] | *[local-name() = 'ol']">
|
6513
6976
|
<xsl:choose>
|
6514
6977
|
<xsl:when test="parent::*[local-name() = 'note'] or parent::*[local-name() = 'termnote']">
|
@@ -6524,18 +6987,79 @@
|
|
6524
6987
|
|
6525
6988
|
<fo:block-container margin-left="0mm">
|
6526
6989
|
<fo:block>
|
6527
|
-
<xsl:apply-templates select="." mode="
|
6990
|
+
<xsl:apply-templates select="." mode="list"/>
|
6528
6991
|
</fo:block>
|
6529
6992
|
</fo:block-container>
|
6530
6993
|
</fo:block-container>
|
6531
6994
|
</xsl:when>
|
6532
6995
|
<xsl:otherwise>
|
6533
6996
|
<fo:block>
|
6534
|
-
<xsl:apply-templates select="." mode="
|
6997
|
+
<xsl:apply-templates select="." mode="list"/>
|
6535
6998
|
</fo:block>
|
6536
6999
|
</xsl:otherwise>
|
6537
7000
|
</xsl:choose>
|
6538
|
-
</xsl:template><xsl:
|
7001
|
+
</xsl:template><xsl:template match="*[local-name()='ul'] | *[local-name()='ol']" mode="list" name="list">
|
7002
|
+
<fo:list-block xsl:use-attribute-sets="list-style">
|
7003
|
+
|
7004
|
+
|
7005
|
+
|
7006
|
+
|
7007
|
+
|
7008
|
+
|
7009
|
+
|
7010
|
+
|
7011
|
+
|
7012
|
+
<xsl:apply-templates select="node()[not(local-name() = 'note')]"/>
|
7013
|
+
</fo:list-block>
|
7014
|
+
<!-- <xsl:for-each select="./iho:note">
|
7015
|
+
<xsl:call-template name="note"/>
|
7016
|
+
</xsl:for-each> -->
|
7017
|
+
<xsl:apply-templates select="./*[local-name() = 'note']"/>
|
7018
|
+
</xsl:template><xsl:template match="*[local-name()='li']">
|
7019
|
+
<fo:list-item xsl:use-attribute-sets="list-item-style">
|
7020
|
+
<xsl:copy-of select="@id"/>
|
7021
|
+
|
7022
|
+
|
7023
|
+
|
7024
|
+
<fo:list-item-label end-indent="label-end()">
|
7025
|
+
<fo:block xsl:use-attribute-sets="list-item-label-style">
|
7026
|
+
|
7027
|
+
|
7028
|
+
|
7029
|
+
<!-- if 'p' contains all text in 'add' first and last elements in first p are 'add' -->
|
7030
|
+
<xsl:if test="*[1][count(node()[normalize-space() != '']) = 1 and *[local-name() = 'add']]">
|
7031
|
+
<xsl:call-template name="append_add-style"/>
|
7032
|
+
</xsl:if>
|
7033
|
+
|
7034
|
+
<xsl:call-template name="getListItemFormat"/>
|
7035
|
+
</fo:block>
|
7036
|
+
</fo:list-item-label>
|
7037
|
+
<fo:list-item-body start-indent="body-start()" xsl:use-attribute-sets="list-item-body-style">
|
7038
|
+
<fo:block>
|
7039
|
+
|
7040
|
+
|
7041
|
+
|
7042
|
+
|
7043
|
+
<xsl:attribute name="margin-bottom">10pt</xsl:attribute>
|
7044
|
+
<xsl:if test="ancestor::ogc:table[not(@class)]">
|
7045
|
+
<xsl:attribute name="margin-bottom">1mm</xsl:attribute>
|
7046
|
+
</xsl:if>
|
7047
|
+
<xsl:if test="not(following-sibling::*) and not(../following-sibling::*)">
|
7048
|
+
<xsl:attribute name="margin-bottom">0pt</xsl:attribute>
|
7049
|
+
</xsl:if>
|
7050
|
+
|
7051
|
+
|
7052
|
+
<xsl:apply-templates/>
|
7053
|
+
|
7054
|
+
<!-- <xsl:apply-templates select="node()[not(local-name() = 'note')]" />
|
7055
|
+
|
7056
|
+
<xsl:for-each select="./bsi:note">
|
7057
|
+
<xsl:call-template name="note"/>
|
7058
|
+
</xsl:for-each> -->
|
7059
|
+
</fo:block>
|
7060
|
+
</fo:list-item-body>
|
7061
|
+
</fo:list-item>
|
7062
|
+
</xsl:template><xsl:variable name="index" select="document($external_index)"/><xsl:variable name="bookmark_in_fn">
|
6539
7063
|
<xsl:for-each select="//*[local-name() = 'bookmark'][ancestor::*[local-name() = 'fn']]">
|
6540
7064
|
<bookmark><xsl:value-of select="@id"/></bookmark>
|
6541
7065
|
</xsl:for-each>
|
@@ -6557,7 +7081,7 @@
|
|
6557
7081
|
<!-- split <xref target="bm1" to="End" pagenumber="true"> to two xref:
|
6558
7082
|
<xref target="bm1" pagenumber="true"> and <xref target="End" pagenumber="true"> -->
|
6559
7083
|
<xsl:if test="@to">
|
6560
|
-
<xsl:value-of select="$
|
7084
|
+
<xsl:value-of select="$en_dash"/>
|
6561
7085
|
<xsl:copy>
|
6562
7086
|
<xsl:copy-of select="@*"/>
|
6563
7087
|
<xsl:attribute name="target"><xsl:value-of select="@to"/></xsl:attribute>
|
@@ -6582,7 +7106,7 @@
|
|
6582
7106
|
<xsl:param name="target"/>
|
6583
7107
|
<!-- <node></node> -->
|
6584
7108
|
<xsl:choose>
|
6585
|
-
<xsl:when test="self::text() and (normalize-space(.) = ',' or normalize-space(.) = $
|
7109
|
+
<xsl:when test="self::text() and (normalize-space(.) = ',' or normalize-space(.) = $en_dash) and $remove = 'true'">
|
6586
7110
|
<!-- skip text (i.e. remove it) and process next element -->
|
6587
7111
|
<!-- [removed_<xsl:value-of select="."/>] -->
|
6588
7112
|
<xsl:apply-templates select="following-sibling::node()[1]" mode="process_li_element">
|
@@ -6666,12 +7190,22 @@
|
|
6666
7190
|
</xsl:variable>
|
6667
7191
|
<xsl:variable name="xref_number"><xsl:number count="*[local-name() = 'xref']"/></xsl:variable>
|
6668
7192
|
<xsl:value-of select="concat($docid, '_', $item_number, '_', $xref_number)"/> <!-- $level, '_', -->
|
7193
|
+
</xsl:template><xsl:template match="*[local-name() = 'indexsect']/*[local-name() = 'title']" priority="4">
|
7194
|
+
<fo:block xsl:use-attribute-sets="indexsect-title-style">
|
7195
|
+
<!-- Index -->
|
7196
|
+
<xsl:apply-templates/>
|
7197
|
+
</fo:block>
|
7198
|
+
</xsl:template><xsl:template match="*[local-name() = 'indexsect']/*[local-name() = 'clause']/*[local-name() = 'title']" priority="4">
|
7199
|
+
<!-- Letter A, B, C, ... -->
|
7200
|
+
<fo:block xsl:use-attribute-sets="indexsect-clause-title-style">
|
7201
|
+
<xsl:apply-templates/>
|
7202
|
+
</fo:block>
|
6669
7203
|
</xsl:template><xsl:template match="*[local-name() = 'indexsect']/*[local-name() = 'clause']" priority="4">
|
6670
7204
|
<xsl:apply-templates/>
|
6671
7205
|
<fo:block>
|
6672
|
-
|
6673
|
-
|
6674
|
-
|
7206
|
+
<xsl:if test="following-sibling::*[local-name() = 'clause']">
|
7207
|
+
<fo:block> </fo:block>
|
7208
|
+
</xsl:if>
|
6675
7209
|
</fo:block>
|
6676
7210
|
</xsl:template><xsl:template match="*[local-name() = 'indexsect']//*[local-name() = 'ul']" priority="4">
|
6677
7211
|
<xsl:apply-templates/>
|
@@ -6681,6 +7215,9 @@
|
|
6681
7215
|
|
6682
7216
|
<xsl:apply-templates/>
|
6683
7217
|
</fo:block>
|
7218
|
+
</xsl:template><xsl:template match="*[local-name() = 'indexsect']//*[local-name() = 'li']/text()">
|
7219
|
+
<!-- to split by '_' and other chars -->
|
7220
|
+
<xsl:call-template name="add-zero-spaces-java"/>
|
6684
7221
|
</xsl:template><xsl:template match="*[local-name() = 'bookmark']" name="bookmark">
|
6685
7222
|
<fo:inline id="{@id}" font-size="1pt"/>
|
6686
7223
|
</xsl:template><xsl:template match="*[local-name() = 'errata']">
|
@@ -6986,6 +7523,24 @@
|
|
6986
7523
|
<xsl:apply-templates/>
|
6987
7524
|
</fo:inline>
|
6988
7525
|
</xsl:template><xsl:template match="*[local-name() = 'bibitem']/*[local-name() = 'note']" priority="2">
|
7526
|
+
|
7527
|
+
<!-- list of footnotes to calculate actual footnotes number -->
|
7528
|
+
<xsl:variable name="p_fn_">
|
7529
|
+
<xsl:call-template name="get_fn_list"/>
|
7530
|
+
</xsl:variable>
|
7531
|
+
<xsl:variable name="p_fn" select="xalan:nodeset($p_fn_)"/>
|
7532
|
+
<xsl:variable name="gen_id" select="generate-id(.)"/>
|
7533
|
+
<xsl:variable name="lang" select="ancestor::*[contains(local-name(), '-standard')]/*[local-name()='bibdata']//*[local-name()='language'][@current = 'true']"/>
|
7534
|
+
<!-- fn sequence number in document -->
|
7535
|
+
<xsl:variable name="current_fn_number">
|
7536
|
+
<xsl:choose>
|
7537
|
+
<xsl:when test="@current_fn_number"><xsl:value-of select="@current_fn_number"/></xsl:when> <!-- for BSI -->
|
7538
|
+
<xsl:otherwise>
|
7539
|
+
<!-- <xsl:value-of select="count($p_fn//fn[@reference = $reference]/preceding-sibling::fn) + 1" /> -->
|
7540
|
+
<xsl:value-of select="count($p_fn//fn[@gen_id = $gen_id]/preceding-sibling::fn) + 1"/>
|
7541
|
+
</xsl:otherwise>
|
7542
|
+
</xsl:choose>
|
7543
|
+
</xsl:variable>
|
6989
7544
|
<fo:footnote>
|
6990
7545
|
<xsl:variable name="number">
|
6991
7546
|
|
@@ -6994,22 +7549,26 @@
|
|
6994
7549
|
<xsl:number level="any" count="*[local-name() = 'references'][preceding-sibling::*[local-name() = 'references']]//*[local-name() = 'bibitem']/*[local-name() = 'note']"/>
|
6995
7550
|
</xsl:when>
|
6996
7551
|
<xsl:otherwise>
|
6997
|
-
<xsl:
|
7552
|
+
<xsl:value-of select="$current_fn_number"/>
|
6998
7553
|
</xsl:otherwise>
|
6999
7554
|
</xsl:choose>
|
7000
7555
|
|
7001
7556
|
</xsl:variable>
|
7557
|
+
|
7558
|
+
<xsl:variable name="current_fn_number_text">
|
7559
|
+
<xsl:value-of select="$number"/>
|
7560
|
+
|
7561
|
+
</xsl:variable>
|
7562
|
+
|
7002
7563
|
<fo:inline xsl:use-attribute-sets="bibitem-note-fn-style">
|
7003
|
-
<fo:basic-link internal-destination="{
|
7004
|
-
<xsl:value-of select="$
|
7005
|
-
|
7564
|
+
<fo:basic-link internal-destination="{$gen_id}" fox:alt-text="footnote {$number}">
|
7565
|
+
<xsl:value-of select="$current_fn_number_text"/>
|
7006
7566
|
</fo:basic-link>
|
7007
7567
|
</fo:inline>
|
7008
7568
|
<fo:footnote-body>
|
7009
7569
|
<fo:block xsl:use-attribute-sets="bibitem-note-fn-body-style">
|
7010
|
-
<fo:inline id="{
|
7011
|
-
<xsl:value-of select="$
|
7012
|
-
|
7570
|
+
<fo:inline id="{$gen_id}" xsl:use-attribute-sets="bibitem-note-fn-number-style">
|
7571
|
+
<xsl:value-of select="$current_fn_number_text"/>
|
7013
7572
|
</fo:inline>
|
7014
7573
|
<xsl:apply-templates/>
|
7015
7574
|
</fo:block>
|
@@ -7135,7 +7694,7 @@
|
|
7135
7694
|
</fo:table-body>
|
7136
7695
|
</fo:table>
|
7137
7696
|
</fo:block>
|
7138
|
-
</xsl:template><xsl:template match="*[local-name() = 'toc']//*[local-name() = 'li']">
|
7697
|
+
</xsl:template><xsl:template match="*[local-name() = 'toc']//*[local-name() = 'li']" priority="2">
|
7139
7698
|
<fo:table-row min-height="5mm">
|
7140
7699
|
<xsl:apply-templates/>
|
7141
7700
|
</fo:table-row>
|
@@ -7255,6 +7814,78 @@
|
|
7255
7814
|
<xsl:apply-templates/>
|
7256
7815
|
</fo:block>
|
7257
7816
|
|
7817
|
+
</xsl:template><xsl:template match="@*|node()" mode="update_xml_step1">
|
7818
|
+
<xsl:copy>
|
7819
|
+
<xsl:apply-templates select="@*|node()" mode="update_xml_step1"/>
|
7820
|
+
</xsl:copy>
|
7821
|
+
</xsl:template><xsl:template match="*[local-name() = 'preface']" mode="update_xml_step1">
|
7822
|
+
<xsl:copy>
|
7823
|
+
<xsl:copy-of select="@*"/>
|
7824
|
+
|
7825
|
+
<xsl:variable name="nodes_preface_">
|
7826
|
+
<xsl:for-each select="*">
|
7827
|
+
<node id="{@id}"/>
|
7828
|
+
</xsl:for-each>
|
7829
|
+
</xsl:variable>
|
7830
|
+
<xsl:variable name="nodes_preface" select="xalan:nodeset($nodes_preface_)"/>
|
7831
|
+
|
7832
|
+
<xsl:for-each select="*">
|
7833
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
7834
|
+
|
7835
|
+
<!-- process Section's title -->
|
7836
|
+
<xsl:variable name="preceding-sibling_id" select="$nodes_preface/node[@id = current()/@id]/preceding-sibling::node[1]/@id"/>
|
7837
|
+
<xsl:if test="$preceding-sibling_id != ''">
|
7838
|
+
<xsl:apply-templates select="parent::*/*[@type = 'section-title' and @id = $preceding-sibling_id and not(@displayorder)]" mode="update_xml_step1"/>
|
7839
|
+
</xsl:if>
|
7840
|
+
|
7841
|
+
<xsl:choose>
|
7842
|
+
<xsl:when test="@type = 'section-title' and not(@displayorder)"><!-- skip, don't copy, because copied in above 'apply-templates' --></xsl:when>
|
7843
|
+
<xsl:otherwise>
|
7844
|
+
<xsl:apply-templates select="." mode="update_xml_step1"/>
|
7845
|
+
</xsl:otherwise>
|
7846
|
+
</xsl:choose>
|
7847
|
+
|
7848
|
+
</xsl:for-each>
|
7849
|
+
</xsl:copy>
|
7850
|
+
</xsl:template><xsl:template match="*[local-name() = 'sections']" mode="update_xml_step1">
|
7851
|
+
<xsl:copy>
|
7852
|
+
<xsl:copy-of select="@*"/>
|
7853
|
+
|
7854
|
+
<xsl:variable name="nodes_sections_">
|
7855
|
+
<xsl:for-each select="*">
|
7856
|
+
<node id="{@id}"/>
|
7857
|
+
</xsl:for-each>
|
7858
|
+
</xsl:variable>
|
7859
|
+
<xsl:variable name="nodes_sections" select="xalan:nodeset($nodes_sections_)"/>
|
7860
|
+
|
7861
|
+
<!-- move section 'Normative references' inside 'sections' -->
|
7862
|
+
<xsl:for-each select="* | ancestor::*[contains(local-name(), '-standard')]/*[local-name()='bibliography']/*[local-name()='references'][@normative='true'] | ancestor::*[contains(local-name(), '-standard')]/*[local-name()='bibliography']/*[local-name()='clause'][*[local-name()='references'][@normative='true']]">
|
7863
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
7864
|
+
|
7865
|
+
<!-- process Section's title -->
|
7866
|
+
<xsl:variable name="preceding-sibling_id" select="$nodes_sections/node[@id = current()/@id]/preceding-sibling::node[1]/@id"/>
|
7867
|
+
<xsl:if test="$preceding-sibling_id != ''">
|
7868
|
+
<xsl:apply-templates select="parent::*/*[@type = 'section-title' and @id = $preceding-sibling_id and not(@displayorder)]" mode="update_xml_step1"/>
|
7869
|
+
</xsl:if>
|
7870
|
+
|
7871
|
+
<xsl:choose>
|
7872
|
+
<xsl:when test="@type = 'section-title' and not(@displayorder)"><!-- skip, don't copy, because copied in above 'apply-templates' --></xsl:when>
|
7873
|
+
<xsl:otherwise>
|
7874
|
+
<xsl:apply-templates select="." mode="update_xml_step1"/>
|
7875
|
+
</xsl:otherwise>
|
7876
|
+
</xsl:choose>
|
7877
|
+
|
7878
|
+
</xsl:for-each>
|
7879
|
+
</xsl:copy>
|
7880
|
+
</xsl:template><xsl:template match="*[local-name() = 'bibliography']" mode="update_xml_step1">
|
7881
|
+
<xsl:copy>
|
7882
|
+
<xsl:copy-of select="@*"/>
|
7883
|
+
<!-- copy all elements from bibliography except 'Normative references' (moved to 'sections') -->
|
7884
|
+
<xsl:for-each select="*[not(@normative='true') and not(*[*[@normative='true']])]">
|
7885
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
7886
|
+
<xsl:apply-templates select="." mode="update_xml_step1"/>
|
7887
|
+
</xsl:for-each>
|
7888
|
+
</xsl:copy>
|
7258
7889
|
</xsl:template><xsl:template name="convertDate">
|
7259
7890
|
<xsl:param name="date"/>
|
7260
7891
|
<xsl:param name="format" select="'short'"/>
|
@@ -7368,9 +7999,6 @@
|
|
7368
7999
|
<xsl:otherwise><xsl:value-of select="$charAtEnd"/></xsl:otherwise>
|
7369
8000
|
</xsl:choose>
|
7370
8001
|
</xsl:template><xsl:template name="addPDFUAmeta">
|
7371
|
-
<xsl:variable name="lang">
|
7372
|
-
<xsl:call-template name="getLang"/>
|
7373
|
-
</xsl:variable>
|
7374
8002
|
<pdf:catalog xmlns:pdf="http://xmlgraphics.apache.org/fop/extensions/pdf">
|
7375
8003
|
<pdf:dictionary type="normal" key="ViewerPreferences">
|
7376
8004
|
<pdf:boolean key="DisplayDocTitle">true</pdf:boolean>
|
@@ -7598,10 +8226,12 @@
|
|
7598
8226
|
<xsl:param name="key"/>
|
7599
8227
|
<xsl:param name="formatted">false</xsl:param>
|
7600
8228
|
<xsl:param name="lang"/>
|
8229
|
+
<xsl:param name="returnEmptyIfNotFound">false</xsl:param>
|
7601
8230
|
|
7602
8231
|
<xsl:variable name="curr_lang">
|
7603
8232
|
<xsl:choose>
|
7604
8233
|
<xsl:when test="$lang != ''"><xsl:value-of select="$lang"/></xsl:when>
|
8234
|
+
<xsl:when test="$returnEmptyIfNotFound = 'true'"/>
|
7605
8235
|
<xsl:otherwise>
|
7606
8236
|
<xsl:call-template name="getLang"/>
|
7607
8237
|
</xsl:otherwise>
|
@@ -7636,6 +8266,7 @@
|
|
7636
8266
|
</xsl:otherwise>
|
7637
8267
|
</xsl:choose>
|
7638
8268
|
</xsl:when>
|
8269
|
+
<xsl:when test="$returnEmptyIfNotFound = 'true'"/>
|
7639
8270
|
<xsl:otherwise>
|
7640
8271
|
<xsl:variable name="key_">
|
7641
8272
|
<xsl:call-template name="capitalize">
|
@@ -7705,53 +8336,153 @@
|
|
7705
8336
|
<xsl:param name="first"/>
|
7706
8337
|
<xsl:if test="$number != ''">
|
7707
8338
|
<xsl:variable name="words">
|
7708
|
-
|
7709
|
-
<
|
7710
|
-
|
7711
|
-
|
7712
|
-
|
7713
|
-
|
7714
|
-
|
7715
|
-
|
7716
|
-
|
7717
|
-
|
7718
|
-
|
7719
|
-
|
7720
|
-
|
7721
|
-
|
7722
|
-
|
7723
|
-
|
7724
|
-
|
7725
|
-
|
7726
|
-
|
7727
|
-
|
7728
|
-
|
7729
|
-
|
7730
|
-
|
7731
|
-
|
7732
|
-
|
7733
|
-
|
7734
|
-
|
7735
|
-
|
7736
|
-
|
7737
|
-
|
7738
|
-
|
7739
|
-
|
7740
|
-
|
7741
|
-
|
7742
|
-
|
7743
|
-
|
7744
|
-
|
7745
|
-
|
7746
|
-
|
7747
|
-
|
7748
|
-
|
7749
|
-
|
7750
|
-
|
7751
|
-
|
7752
|
-
|
7753
|
-
|
7754
|
-
|
8339
|
+
<words>
|
8340
|
+
<xsl:choose>
|
8341
|
+
<xsl:when test="$lang = 'fr'"> <!-- https://en.wiktionary.org/wiki/Appendix:French_numbers -->
|
8342
|
+
<word cardinal="1">Une-</word>
|
8343
|
+
<word ordinal="1">Première </word>
|
8344
|
+
<word cardinal="2">Deux-</word>
|
8345
|
+
<word ordinal="2">Seconde </word>
|
8346
|
+
<word cardinal="3">Trois-</word>
|
8347
|
+
<word ordinal="3">Tierce </word>
|
8348
|
+
<word cardinal="4">Quatre-</word>
|
8349
|
+
<word ordinal="4">Quatrième </word>
|
8350
|
+
<word cardinal="5">Cinq-</word>
|
8351
|
+
<word ordinal="5">Cinquième </word>
|
8352
|
+
<word cardinal="6">Six-</word>
|
8353
|
+
<word ordinal="6">Sixième </word>
|
8354
|
+
<word cardinal="7">Sept-</word>
|
8355
|
+
<word ordinal="7">Septième </word>
|
8356
|
+
<word cardinal="8">Huit-</word>
|
8357
|
+
<word ordinal="8">Huitième </word>
|
8358
|
+
<word cardinal="9">Neuf-</word>
|
8359
|
+
<word ordinal="9">Neuvième </word>
|
8360
|
+
<word ordinal="10">Dixième </word>
|
8361
|
+
<word ordinal="11">Onzième </word>
|
8362
|
+
<word ordinal="12">Douzième </word>
|
8363
|
+
<word ordinal="13">Treizième </word>
|
8364
|
+
<word ordinal="14">Quatorzième </word>
|
8365
|
+
<word ordinal="15">Quinzième </word>
|
8366
|
+
<word ordinal="16">Seizième </word>
|
8367
|
+
<word ordinal="17">Dix-septième </word>
|
8368
|
+
<word ordinal="18">Dix-huitième </word>
|
8369
|
+
<word ordinal="19">Dix-neuvième </word>
|
8370
|
+
<word cardinal="20">Vingt-</word>
|
8371
|
+
<word ordinal="20">Vingtième </word>
|
8372
|
+
<word cardinal="30">Trente-</word>
|
8373
|
+
<word ordinal="30">Trentième </word>
|
8374
|
+
<word cardinal="40">Quarante-</word>
|
8375
|
+
<word ordinal="40">Quarantième </word>
|
8376
|
+
<word cardinal="50">Cinquante-</word>
|
8377
|
+
<word ordinal="50">Cinquantième </word>
|
8378
|
+
<word cardinal="60">Soixante-</word>
|
8379
|
+
<word ordinal="60">Soixantième </word>
|
8380
|
+
<word cardinal="70">Septante-</word>
|
8381
|
+
<word ordinal="70">Septantième </word>
|
8382
|
+
<word cardinal="80">Huitante-</word>
|
8383
|
+
<word ordinal="80">Huitantième </word>
|
8384
|
+
<word cardinal="90">Nonante-</word>
|
8385
|
+
<word ordinal="90">Nonantième </word>
|
8386
|
+
<word cardinal="100">Cent-</word>
|
8387
|
+
<word ordinal="100">Centième </word>
|
8388
|
+
</xsl:when>
|
8389
|
+
<xsl:when test="$lang = 'ru'">
|
8390
|
+
<word cardinal="1">Одна-</word>
|
8391
|
+
<word ordinal="1">Первое </word>
|
8392
|
+
<word cardinal="2">Две-</word>
|
8393
|
+
<word ordinal="2">Второе </word>
|
8394
|
+
<word cardinal="3">Три-</word>
|
8395
|
+
<word ordinal="3">Третье </word>
|
8396
|
+
<word cardinal="4">Четыре-</word>
|
8397
|
+
<word ordinal="4">Четвертое </word>
|
8398
|
+
<word cardinal="5">Пять-</word>
|
8399
|
+
<word ordinal="5">Пятое </word>
|
8400
|
+
<word cardinal="6">Шесть-</word>
|
8401
|
+
<word ordinal="6">Шестое </word>
|
8402
|
+
<word cardinal="7">Семь-</word>
|
8403
|
+
<word ordinal="7">Седьмое </word>
|
8404
|
+
<word cardinal="8">Восемь-</word>
|
8405
|
+
<word ordinal="8">Восьмое </word>
|
8406
|
+
<word cardinal="9">Девять-</word>
|
8407
|
+
<word ordinal="9">Девятое </word>
|
8408
|
+
<word ordinal="10">Десятое </word>
|
8409
|
+
<word ordinal="11">Одиннадцатое </word>
|
8410
|
+
<word ordinal="12">Двенадцатое </word>
|
8411
|
+
<word ordinal="13">Тринадцатое </word>
|
8412
|
+
<word ordinal="14">Четырнадцатое </word>
|
8413
|
+
<word ordinal="15">Пятнадцатое </word>
|
8414
|
+
<word ordinal="16">Шестнадцатое </word>
|
8415
|
+
<word ordinal="17">Семнадцатое </word>
|
8416
|
+
<word ordinal="18">Восемнадцатое </word>
|
8417
|
+
<word ordinal="19">Девятнадцатое </word>
|
8418
|
+
<word cardinal="20">Двадцать-</word>
|
8419
|
+
<word ordinal="20">Двадцатое </word>
|
8420
|
+
<word cardinal="30">Тридцать-</word>
|
8421
|
+
<word ordinal="30">Тридцатое </word>
|
8422
|
+
<word cardinal="40">Сорок-</word>
|
8423
|
+
<word ordinal="40">Сороковое </word>
|
8424
|
+
<word cardinal="50">Пятьдесят-</word>
|
8425
|
+
<word ordinal="50">Пятидесятое </word>
|
8426
|
+
<word cardinal="60">Шестьдесят-</word>
|
8427
|
+
<word ordinal="60">Шестидесятое </word>
|
8428
|
+
<word cardinal="70">Семьдесят-</word>
|
8429
|
+
<word ordinal="70">Семидесятое </word>
|
8430
|
+
<word cardinal="80">Восемьдесят-</word>
|
8431
|
+
<word ordinal="80">Восьмидесятое </word>
|
8432
|
+
<word cardinal="90">Девяносто-</word>
|
8433
|
+
<word ordinal="90">Девяностое </word>
|
8434
|
+
<word cardinal="100">Сто-</word>
|
8435
|
+
<word ordinal="100">Сотое </word>
|
8436
|
+
</xsl:when>
|
8437
|
+
<xsl:otherwise> <!-- default english -->
|
8438
|
+
<word cardinal="1">One-</word>
|
8439
|
+
<word ordinal="1">First </word>
|
8440
|
+
<word cardinal="2">Two-</word>
|
8441
|
+
<word ordinal="2">Second </word>
|
8442
|
+
<word cardinal="3">Three-</word>
|
8443
|
+
<word ordinal="3">Third </word>
|
8444
|
+
<word cardinal="4">Four-</word>
|
8445
|
+
<word ordinal="4">Fourth </word>
|
8446
|
+
<word cardinal="5">Five-</word>
|
8447
|
+
<word ordinal="5">Fifth </word>
|
8448
|
+
<word cardinal="6">Six-</word>
|
8449
|
+
<word ordinal="6">Sixth </word>
|
8450
|
+
<word cardinal="7">Seven-</word>
|
8451
|
+
<word ordinal="7">Seventh </word>
|
8452
|
+
<word cardinal="8">Eight-</word>
|
8453
|
+
<word ordinal="8">Eighth </word>
|
8454
|
+
<word cardinal="9">Nine-</word>
|
8455
|
+
<word ordinal="9">Ninth </word>
|
8456
|
+
<word ordinal="10">Tenth </word>
|
8457
|
+
<word ordinal="11">Eleventh </word>
|
8458
|
+
<word ordinal="12">Twelfth </word>
|
8459
|
+
<word ordinal="13">Thirteenth </word>
|
8460
|
+
<word ordinal="14">Fourteenth </word>
|
8461
|
+
<word ordinal="15">Fifteenth </word>
|
8462
|
+
<word ordinal="16">Sixteenth </word>
|
8463
|
+
<word ordinal="17">Seventeenth </word>
|
8464
|
+
<word ordinal="18">Eighteenth </word>
|
8465
|
+
<word ordinal="19">Nineteenth </word>
|
8466
|
+
<word cardinal="20">Twenty-</word>
|
8467
|
+
<word ordinal="20">Twentieth </word>
|
8468
|
+
<word cardinal="30">Thirty-</word>
|
8469
|
+
<word ordinal="30">Thirtieth </word>
|
8470
|
+
<word cardinal="40">Forty-</word>
|
8471
|
+
<word ordinal="40">Fortieth </word>
|
8472
|
+
<word cardinal="50">Fifty-</word>
|
8473
|
+
<word ordinal="50">Fiftieth </word>
|
8474
|
+
<word cardinal="60">Sixty-</word>
|
8475
|
+
<word ordinal="60">Sixtieth </word>
|
8476
|
+
<word cardinal="70">Seventy-</word>
|
8477
|
+
<word ordinal="70">Seventieth </word>
|
8478
|
+
<word cardinal="80">Eighty-</word>
|
8479
|
+
<word ordinal="80">Eightieth </word>
|
8480
|
+
<word cardinal="90">Ninety-</word>
|
8481
|
+
<word ordinal="90">Ninetieth </word>
|
8482
|
+
<word cardinal="100">Hundred-</word>
|
8483
|
+
<word ordinal="100">Hundredth </word>
|
8484
|
+
</xsl:otherwise>
|
8485
|
+
</xsl:choose>
|
7755
8486
|
</words>
|
7756
8487
|
</xsl:variable>
|
7757
8488
|
|
@@ -7825,4 +8556,18 @@
|
|
7825
8556
|
<xsl:otherwise>_</xsl:otherwise>
|
7826
8557
|
</xsl:choose>
|
7827
8558
|
</xsl:attribute>
|
8559
|
+
</xsl:template><xsl:template name="substring-after-last">
|
8560
|
+
<xsl:param name="value"/>
|
8561
|
+
<xsl:param name="delimiter"/>
|
8562
|
+
<xsl:choose>
|
8563
|
+
<xsl:when test="contains($value, $delimiter)">
|
8564
|
+
<xsl:call-template name="substring-after-last">
|
8565
|
+
<xsl:with-param name="value" select="substring-after($value, $delimiter)"/>
|
8566
|
+
<xsl:with-param name="delimiter" select="$delimiter"/>
|
8567
|
+
</xsl:call-template>
|
8568
|
+
</xsl:when>
|
8569
|
+
<xsl:otherwise>
|
8570
|
+
<xsl:value-of select="$value"/>
|
8571
|
+
</xsl:otherwise>
|
8572
|
+
</xsl:choose>
|
7828
8573
|
</xsl:template></xsl:stylesheet>
|