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
@@ -2,17 +2,7 @@
|
|
2
2
|
|
3
3
|
<xsl:output version="1.0" method="xml" encoding="UTF-8" indent="no"/>
|
4
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
|
-
|
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
|
-
|
12
|
-
<xsl:variable name="marginLeftRight1" select="25.4"/>
|
13
|
-
<xsl:variable name="marginLeftRight2" select="25.4"/>
|
14
|
-
<xsl:variable name="marginTop" select="25.4"/>
|
15
|
-
<xsl:variable name="marginBottom" select="25.4"/>
|
16
6
|
|
17
7
|
|
18
8
|
|
@@ -82,45 +72,19 @@
|
|
82
72
|
<xsl:attribute-set name="empty-style">
|
83
73
|
</xsl:attribute-set>
|
84
74
|
|
85
|
-
<xsl:variable name="
|
75
|
+
<xsl:variable name="contents_">
|
86
76
|
<contents>
|
87
|
-
|
88
|
-
|
89
|
-
<!-- <xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/*" mode="contents"/> -->
|
90
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:abstract" mode="contents"/>
|
91
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:clause[@type = 'executivesummary']" mode="contents"/>
|
92
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:clause[@type = 'keyword']" mode="contents"/>
|
93
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:foreword" mode="contents"/>
|
94
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:introduction" mode="contents"/>
|
95
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:clause[@type = 'submitting_orgs']" mode="contents"/>
|
96
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:submitters" mode="contents"/>
|
97
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:clause[not(@type = 'executivesummary') and not(@type = 'submitting_orgs') and not(@type = 'keyword')]" mode="contents"/>
|
98
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:acknowledgements" mode="contents"/>
|
99
|
-
|
100
|
-
|
101
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:sections/ogc:clause[@type='scope']" mode="contents"/>
|
102
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:sections/ogc:clause[@type='conformance']" mode="contents"/>
|
103
|
-
<!-- Normative references -->
|
104
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:bibliography/ogc:references[@normative='true']" mode="contents"/>
|
105
|
-
<!-- Terms and definitions -->
|
106
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:sections/ogc:terms" mode="contents"/>
|
107
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:sections/ogc:definitions" mode="contents"/>
|
108
|
-
|
109
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:sections/ogc:clause[not(@type='scope') and not(@type='conformance')]" mode="contents"/>
|
110
|
-
|
111
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:annex" mode="contents"/>
|
112
|
-
|
113
|
-
<!-- Bibliography -->
|
114
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:bibliography/ogc:references[not(@normative='true')]" mode="contents"/>
|
77
|
+
<!-- Abstract, Keywords, Preface, Submitting Organizations, Submitters -->
|
78
|
+
<xsl:call-template name="processPrefaceSectionsDefault_Contents"/>
|
115
79
|
|
80
|
+
<xsl:call-template name="processMainSectionsDefault_Contents"/>
|
81
|
+
<xsl:apply-templates select="//ogc:indexsect" mode="contents"/>
|
116
82
|
|
83
|
+
<xsl:call-template name="processTablesFigures_Contents"/>
|
117
84
|
</contents>
|
118
85
|
</xsl:variable>
|
119
|
-
|
120
|
-
|
121
|
-
<xsl:call-template name="getLang"/>
|
122
|
-
</xsl:variable>
|
123
|
-
|
86
|
+
<xsl:variable name="contents" select="xalan:nodeset($contents_)"/>
|
87
|
+
|
124
88
|
<xsl:template match="/">
|
125
89
|
<xsl:call-template name="namespaceCheck"/>
|
126
90
|
<fo:root xsl:use-attribute-sets="root-style" xml:lang="{$lang}">
|
@@ -244,7 +208,7 @@
|
|
244
208
|
</xsl:call-template>
|
245
209
|
</fo:block>
|
246
210
|
<xsl:variable name="margin-left">3.9</xsl:variable>
|
247
|
-
<xsl:for-each select="
|
211
|
+
<xsl:for-each select="$contents//item[@display = 'true']">
|
248
212
|
<fo:block margin-top="8pt" margin-bottom="5pt" margin-left="{(@level - 1) * $margin-left}mm" text-align-last="justify" role="TOCI">
|
249
213
|
<fo:basic-link internal-destination="{@id}" fox:alt-text="{title}">
|
250
214
|
<xsl:if test="@section != ''">
|
@@ -285,27 +249,16 @@
|
|
285
249
|
|
286
250
|
|
287
251
|
<!-- Abstract, Keywords, Preface, Submitting Organizations, Submitters -->
|
288
|
-
|
289
|
-
|
290
|
-
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:clause[@type = 'keyword']"/>
|
295
|
-
<xsl:if test="/ogc:ogc-standard/ogc:preface/ogc:foreword">
|
296
|
-
<fo:block break-after="page"/>
|
297
|
-
</xsl:if>
|
298
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:foreword"/>
|
299
|
-
<xsl:if test="/ogc:ogc-standard/ogc:preface/ogc:introduction">
|
300
|
-
<fo:block break-after="page"/>
|
301
|
-
</xsl:if>
|
302
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:introduction"/>
|
303
|
-
|
304
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:clause[@type = 'submitting_orgs']"/>
|
305
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:submitters"/>
|
306
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:clause[not(@type = 'executivesummary') and not(@type = 'submitting_orgs') and not(@type = 'keyword')]"/>
|
307
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:preface/ogc:acknowledgements"/>
|
252
|
+
<xsl:for-each select="/*/*[local-name()='preface']/*">
|
253
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
254
|
+
|
255
|
+
<xsl:if test="local-name() = 'abstract' or local-name() = 'foreword' or local-name() = 'introduction'">
|
256
|
+
<fo:block break-after="page"/>
|
257
|
+
</xsl:if>
|
308
258
|
|
259
|
+
<xsl:apply-templates select="."/>
|
260
|
+
</xsl:for-each>
|
261
|
+
|
309
262
|
</fo:flow>
|
310
263
|
</fo:page-sequence>
|
311
264
|
|
@@ -319,23 +272,7 @@
|
|
319
272
|
|
320
273
|
<fo:block line-height="125%">
|
321
274
|
|
322
|
-
<xsl:
|
323
|
-
|
324
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:sections/ogc:clause[@type='conformance']"/>
|
325
|
-
|
326
|
-
<!-- Normative references -->
|
327
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:bibliography/ogc:references[@normative='true']"/>
|
328
|
-
|
329
|
-
<!-- Terms and definitions -->
|
330
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:sections/ogc:terms"/>
|
331
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:sections/ogc:definitions"/>
|
332
|
-
|
333
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:sections/ogc:clause[not(@type='scope') and not(@type='conformance')]"/>
|
334
|
-
|
335
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:annex"/>
|
336
|
-
|
337
|
-
<!-- Bibliography -->
|
338
|
-
<xsl:apply-templates select="/ogc:ogc-standard/ogc:bibliography/ogc:references[not(@normative='true')]"/>
|
275
|
+
<xsl:call-template name="processMainSectionsDefault"/>
|
339
276
|
|
340
277
|
</fo:block>
|
341
278
|
</fo:flow>
|
@@ -347,22 +284,20 @@
|
|
347
284
|
</xsl:template>
|
348
285
|
|
349
286
|
|
350
|
-
<xsl:variable name="thinspace" select="' '"/>
|
351
|
-
|
352
287
|
<!-- Lato font doesn't contain 'thin space' glyph -->
|
353
288
|
<xsl:template match="text()" priority="1">
|
354
|
-
<xsl:value-of select="translate(., $
|
289
|
+
<xsl:value-of select="translate(., $thin_space, ' ')"/>
|
355
290
|
</xsl:template>
|
356
291
|
|
357
292
|
<xsl:template match="text()" priority="3" mode="contents">
|
358
|
-
<xsl:value-of select="translate(., $
|
293
|
+
<xsl:value-of select="translate(., $thin_space, ' ')"/>
|
359
294
|
</xsl:template>
|
360
295
|
|
361
296
|
<xsl:template match="*[local-name()='td']//text() | *[local-name()='th']//text()" priority="2">
|
362
297
|
<xsl:variable name="content">
|
363
298
|
<xsl:call-template name="add-zero-spaces"/>
|
364
299
|
</xsl:variable>
|
365
|
-
<xsl:value-of select="translate($content, $
|
300
|
+
<xsl:value-of select="translate($content, $thin_space, ' ')"/>
|
366
301
|
</xsl:template>
|
367
302
|
|
368
303
|
<xsl:template match="node()">
|
@@ -464,14 +399,6 @@
|
|
464
399
|
</fo:block>
|
465
400
|
</xsl:template>
|
466
401
|
|
467
|
-
<xsl:template match="ogc:ogc-standard/ogc:preface/*" mode="preface">
|
468
|
-
<xsl:if test="local-name() = 'introduction' or local-name() = 'abstract' or local-name() = 'foreword'">
|
469
|
-
<fo:block break-after="page"/>
|
470
|
-
</xsl:if>
|
471
|
-
<xsl:apply-templates select="current()"/>
|
472
|
-
</xsl:template>
|
473
|
-
|
474
|
-
|
475
402
|
|
476
403
|
<!-- ====== -->
|
477
404
|
<!-- title -->
|
@@ -606,8 +533,8 @@
|
|
606
533
|
</xsl:template>
|
607
534
|
|
608
535
|
|
609
|
-
<xsl:template match="ogc:ul | ogc:ol" mode="
|
610
|
-
<fo:list-block
|
536
|
+
<xsl:template match="ogc:ul | ogc:ol" mode="list" priority="2">
|
537
|
+
<fo:list-block xsl:use-attribute-sets="list-style">
|
611
538
|
<xsl:if test="ancestor::ogc:ul | ancestor::ogc:ol">
|
612
539
|
<xsl:attribute name="margin-bottom">0pt</xsl:attribute>
|
613
540
|
</xsl:if>
|
@@ -618,111 +545,20 @@
|
|
618
545
|
</fo:list-block>
|
619
546
|
</xsl:template>
|
620
547
|
|
621
|
-
<xsl:template match="ogc:li">
|
622
|
-
<fo:list-item id="{@id}">
|
623
|
-
<fo:list-item-label end-indent="label-end()">
|
624
|
-
<fo:block>
|
625
|
-
<xsl:choose>
|
626
|
-
<xsl:when test="local-name(..) = 'ul'">
|
627
|
-
<xsl:call-template name="setULLabel"/>
|
628
|
-
</xsl:when>
|
629
|
-
<xsl:otherwise> <!-- for ordered lists -->
|
630
|
-
<xsl:choose>
|
631
|
-
<xsl:when test="../@class = 'steps'">
|
632
|
-
<xsl:number format="1)"/>
|
633
|
-
</xsl:when>
|
634
|
-
<xsl:when test="../@type = 'arabic'">
|
635
|
-
<xsl:number format="a)" lang="en"/>
|
636
|
-
</xsl:when>
|
637
|
-
<xsl:when test="../@type = 'alphabet'">
|
638
|
-
<xsl:number format="1)"/>
|
639
|
-
</xsl:when>
|
640
|
-
<xsl:when test="../@type = 'alphabet_upper'">
|
641
|
-
<xsl:number format="A)" lang="en"/>
|
642
|
-
</xsl:when>
|
643
|
-
|
644
|
-
<xsl:when test="../@type = 'roman'">
|
645
|
-
<xsl:number format="i)"/>
|
646
|
-
</xsl:when>
|
647
|
-
<xsl:otherwise>
|
648
|
-
<xsl:number format="1)"/>
|
649
|
-
</xsl:otherwise>
|
650
|
-
</xsl:choose>
|
651
|
-
</xsl:otherwise>
|
652
|
-
</xsl:choose>
|
653
|
-
</fo:block>
|
654
|
-
</fo:list-item-label>
|
655
|
-
<fo:list-item-body start-indent="body-start()" line-height-shift-adjustment="disregard-shifts">
|
656
|
-
<fo:block>
|
657
|
-
<xsl:apply-templates/>
|
658
|
-
</fo:block>
|
659
|
-
</fo:list-item-body>
|
660
|
-
</fo:list-item>
|
661
|
-
</xsl:template>
|
662
548
|
|
663
549
|
<xsl:template match="ogc:ul/ogc:note | ogc:ol/ogc:note" priority="2">
|
664
550
|
<fo:list-item font-size="10pt">
|
665
551
|
<fo:list-item-label><fo:block/></fo:list-item-label>
|
666
552
|
<fo:list-item-body>
|
667
553
|
<fo:block>
|
668
|
-
<xsl:apply-templates
|
669
|
-
<xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
|
554
|
+
<xsl:apply-templates/>
|
670
555
|
</fo:block>
|
671
556
|
</fo:list-item-body>
|
672
557
|
</fo:list-item>
|
673
558
|
</xsl:template>
|
674
559
|
|
675
560
|
|
676
|
-
|
677
|
-
<xsl:template match="ogc:preferred">
|
678
|
-
<xsl:variable name="level">
|
679
|
-
<xsl:call-template name="getLevel"/>
|
680
|
-
</xsl:variable>
|
681
|
-
<xsl:variable name="font-size">
|
682
|
-
<xsl:choose>
|
683
|
-
<xsl:when test="$level >= 2">11pt</xsl:when>
|
684
|
-
<xsl:otherwise>12pt</xsl:otherwise>
|
685
|
-
</xsl:choose>
|
686
|
-
</xsl:variable>
|
687
|
-
<xsl:variable name="levelTerm">
|
688
|
-
<xsl:call-template name="getLevelTermName"/>
|
689
|
-
</xsl:variable>
|
690
|
-
<fo:block font-size="{$font-size}" role="H{$levelTerm}">
|
691
|
-
<fo:block font-weight="bold" keep-with-next="always">
|
692
|
-
<xsl:apply-templates select="ancestor::ogc:term[1]/ogc:name"/>
|
693
|
-
</fo:block>
|
694
|
-
<fo:block font-weight="bold" keep-with-next="always" line-height="1">
|
695
|
-
<xsl:call-template name="setStyle_preferred"/>
|
696
|
-
<xsl:apply-templates/>
|
697
|
-
</fo:block>
|
698
|
-
</fo:block>
|
699
|
-
</xsl:template>
|
700
|
-
|
701
|
-
|
702
|
-
<xsl:template match="ogc:formula/ogc:stem">
|
703
|
-
<fo:block margin-top="6pt" margin-bottom="12pt">
|
704
|
-
<fo:table table-layout="fixed" width="100%">
|
705
|
-
<fo:table-column column-width="95%"/>
|
706
|
-
<fo:table-column column-width="5%"/>
|
707
|
-
<fo:table-body>
|
708
|
-
<fo:table-row>
|
709
|
-
<fo:table-cell display-align="center">
|
710
|
-
<fo:block text-align="left" margin-left="5mm">
|
711
|
-
<xsl:apply-templates/>
|
712
|
-
</fo:block>
|
713
|
-
</fo:table-cell>
|
714
|
-
<fo:table-cell display-align="center">
|
715
|
-
<fo:block text-align="right">
|
716
|
-
<xsl:apply-templates select="../ogc:name" mode="formula_number"/>
|
717
|
-
</fo:block>
|
718
|
-
</fo:table-cell>
|
719
|
-
</fo:table-row>
|
720
|
-
</fo:table-body>
|
721
|
-
</fo:table>
|
722
|
-
</fo:block>
|
723
|
-
</xsl:template>
|
724
|
-
|
725
|
-
|
561
|
+
|
726
562
|
|
727
563
|
<xsl:template name="insertHeaderFooter">
|
728
564
|
|
@@ -796,11 +632,21 @@
|
|
796
632
|
</xsl:choose>
|
797
633
|
</xsl:template>
|
798
634
|
|
799
|
-
<xsl:variable name="
|
635
|
+
<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">
|
636
|
+
<xsl:call-template name="getLang"/>
|
637
|
+
</xsl:variable><xsl:variable name="pageWidth_">
|
800
638
|
215.9
|
801
639
|
</xsl:variable><xsl:variable name="pageWidth" select="normalize-space($pageWidth_)"/><xsl:variable name="pageHeight_">
|
802
640
|
279.4
|
803
|
-
</xsl:variable><xsl:variable name="pageHeight" select="normalize-space($pageHeight_)"/><xsl:variable name="
|
641
|
+
</xsl:variable><xsl:variable name="pageHeight" select="normalize-space($pageHeight_)"/><xsl:variable name="marginLeftRight1_">
|
642
|
+
25.4
|
643
|
+
</xsl:variable><xsl:variable name="marginLeftRight1" select="normalize-space($marginLeftRight1_)"/><xsl:variable name="marginLeftRight2_">
|
644
|
+
25.4
|
645
|
+
</xsl:variable><xsl:variable name="marginLeftRight2" select="normalize-space($marginLeftRight2_)"/><xsl:variable name="marginTop_">
|
646
|
+
25.4
|
647
|
+
</xsl:variable><xsl:variable name="marginTop" select="normalize-space($marginTop_)"/><xsl:variable name="marginBottom_">
|
648
|
+
25.4
|
649
|
+
</xsl:variable><xsl:variable name="marginBottom" select="normalize-space($marginBottom_)"/><xsl:variable name="titles_">
|
804
650
|
|
805
651
|
<title-edition lang="en">
|
806
652
|
|
@@ -812,6 +658,10 @@
|
|
812
658
|
<xsl:text>Édition </xsl:text>
|
813
659
|
</title-edition>
|
814
660
|
|
661
|
+
<title-edition lang="ru">
|
662
|
+
<xsl:text>Издание </xsl:text>
|
663
|
+
</title-edition>
|
664
|
+
|
815
665
|
<!-- These titles of Table of contents renders different than determined in localized-strings -->
|
816
666
|
<title-toc lang="en">
|
817
667
|
|
@@ -828,7 +678,7 @@
|
|
828
678
|
<xsl:text>Contents</xsl:text>
|
829
679
|
|
830
680
|
</title-toc>
|
831
|
-
|
681
|
+
|
832
682
|
<title-descriptors lang="en">Descriptors</title-descriptors>
|
833
683
|
|
834
684
|
<title-part lang="en">
|
@@ -840,7 +690,11 @@
|
|
840
690
|
|
841
691
|
|
842
692
|
|
843
|
-
</title-part>
|
693
|
+
</title-part>
|
694
|
+
<title-part lang="ru">
|
695
|
+
|
696
|
+
|
697
|
+
</title-part>
|
844
698
|
<title-part lang="zh">第 # 部分:</title-part>
|
845
699
|
|
846
700
|
<title-subpart lang="en">Sub-part #</title-subpart>
|
@@ -856,13 +710,38 @@
|
|
856
710
|
|
857
711
|
<title-summary lang="en">Summary</title-summary>
|
858
712
|
|
713
|
+
<title-continued lang="ru">(продолжение)</title-continued>
|
859
714
|
<title-continued lang="en">(continued)</title-continued>
|
860
715
|
<title-continued lang="fr">(continué)</title-continued>
|
861
716
|
|
862
|
-
</xsl:variable><xsl:variable name="titles" select="xalan:nodeset($titles_)"/><xsl:variable name="
|
717
|
+
</xsl:variable><xsl:variable name="titles" select="xalan:nodeset($titles_)"/><xsl:variable name="title-list-tables">
|
718
|
+
<xsl:variable name="toc_table_title" select="//*[contains(local-name(), '-standard')]/*[local-name() = 'misc-container']/*[local-name() = 'toc'][@type='table']/*[local-name() = 'title']"/>
|
719
|
+
<xsl:value-of select="$toc_table_title"/>
|
720
|
+
<xsl:if test="normalize-space($toc_table_title) = ''">
|
721
|
+
<xsl:call-template name="getTitle">
|
722
|
+
<xsl:with-param name="name" select="'title-list-tables'"/>
|
723
|
+
</xsl:call-template>
|
724
|
+
</xsl:if>
|
725
|
+
</xsl:variable><xsl:variable name="title-list-figures">
|
726
|
+
<xsl:variable name="toc_figure_title" select="//*[contains(local-name(), '-standard')]/*[local-name() = 'misc-container']/*[local-name() = 'toc'][@type='figure']/*[local-name() = 'title']"/>
|
727
|
+
<xsl:value-of select="$toc_figure_title"/>
|
728
|
+
<xsl:if test="normalize-space($toc_figure_title) = ''">
|
729
|
+
<xsl:call-template name="getTitle">
|
730
|
+
<xsl:with-param name="name" select="'title-list-figures'"/>
|
731
|
+
</xsl:call-template>
|
732
|
+
</xsl:if>
|
733
|
+
</xsl:variable><xsl:variable name="title-list-recommendations">
|
734
|
+
<xsl:variable name="toc_requirement_title" select="//*[contains(local-name(), '-standard')]/*[local-name() = 'misc-container']/*[local-name() = 'toc'][@type='requirement']/*[local-name() = 'title']"/>
|
735
|
+
<xsl:value-of select="$toc_requirement_title"/>
|
736
|
+
<xsl:if test="normalize-space($toc_requirement_title) = ''">
|
737
|
+
<xsl:call-template name="getTitle">
|
738
|
+
<xsl:with-param name="name" select="'title-list-recommendations'"/>
|
739
|
+
</xsl:call-template>
|
740
|
+
</xsl:if>
|
741
|
+
</xsl:variable><xsl:variable name="bibdata">
|
863
742
|
<xsl:copy-of select="//*[contains(local-name(), '-standard')]/*[local-name() = 'bibdata']"/>
|
864
743
|
<xsl:copy-of select="//*[contains(local-name(), '-standard')]/*[local-name() = 'localized-strings']"/>
|
865
|
-
</xsl:variable><xsl:variable name="tab_zh"> </xsl:variable><xsl:template name="getTitle">
|
744
|
+
</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">
|
866
745
|
<xsl:param name="name"/>
|
867
746
|
<xsl:param name="lang"/>
|
868
747
|
<xsl:variable name="lang_">
|
@@ -885,7 +764,7 @@
|
|
885
764
|
<xsl:value-of select="$titles/*[local-name() = $name][@lang = 'en']"/>
|
886
765
|
</xsl:otherwise>
|
887
766
|
</xsl:choose>
|
888
|
-
</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:
|
767
|
+
</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">
|
889
768
|
|
890
769
|
|
891
770
|
|
@@ -1112,7 +991,7 @@
|
|
1112
991
|
|
1113
992
|
|
1114
993
|
</xsl:attribute-set><xsl:attribute-set name="example-name-style">
|
1115
|
-
|
994
|
+
|
1116
995
|
|
1117
996
|
|
1118
997
|
|
@@ -1511,11 +1390,11 @@
|
|
1511
1390
|
|
1512
1391
|
|
1513
1392
|
</xsl:attribute-set><xsl:attribute-set name="quote-style">
|
1514
|
-
<xsl:attribute name="
|
1393
|
+
<xsl:attribute name="margin-left">12mm</xsl:attribute>
|
1394
|
+
<xsl:attribute name="margin-right">12mm</xsl:attribute>
|
1515
1395
|
|
1516
1396
|
<xsl:attribute name="margin-top">12pt</xsl:attribute>
|
1517
1397
|
<xsl:attribute name="margin-left">13mm</xsl:attribute>
|
1518
|
-
<xsl:attribute name="margin-right">12mm</xsl:attribute>
|
1519
1398
|
|
1520
1399
|
|
1521
1400
|
|
@@ -1524,12 +1403,11 @@
|
|
1524
1403
|
|
1525
1404
|
|
1526
1405
|
</xsl:attribute-set><xsl:attribute-set name="quote-source-style">
|
1406
|
+
<xsl:attribute name="text-align">right</xsl:attribute>
|
1527
1407
|
|
1528
|
-
<xsl:attribute name="text-align">right</xsl:attribute>
|
1529
1408
|
<xsl:attribute name="margin-right">25mm</xsl:attribute>
|
1530
1409
|
|
1531
1410
|
|
1532
|
-
|
1533
1411
|
</xsl:attribute-set><xsl:attribute-set name="termsource-style">
|
1534
1412
|
|
1535
1413
|
|
@@ -1554,6 +1432,9 @@
|
|
1554
1432
|
|
1555
1433
|
</xsl:attribute-set><xsl:attribute-set name="term-style">
|
1556
1434
|
|
1435
|
+
</xsl:attribute-set><xsl:attribute-set name="term-name-style">
|
1436
|
+
<xsl:attribute name="keep-with-next">always</xsl:attribute>
|
1437
|
+
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
1557
1438
|
</xsl:attribute-set><xsl:attribute-set name="figure-style">
|
1558
1439
|
|
1559
1440
|
</xsl:attribute-set><xsl:attribute-set name="figure-name-style">
|
@@ -1587,6 +1468,36 @@
|
|
1587
1468
|
|
1588
1469
|
|
1589
1470
|
</xsl:attribute-set><xsl:attribute-set name="formula-style">
|
1471
|
+
<xsl:attribute name="margin-top">6pt</xsl:attribute>
|
1472
|
+
<xsl:attribute name="margin-bottom">12pt</xsl:attribute>
|
1473
|
+
|
1474
|
+
|
1475
|
+
|
1476
|
+
|
1477
|
+
|
1478
|
+
|
1479
|
+
</xsl:attribute-set><xsl:attribute-set name="formula-stem-block-style">
|
1480
|
+
<xsl:attribute name="text-align">center</xsl:attribute>
|
1481
|
+
|
1482
|
+
|
1483
|
+
|
1484
|
+
|
1485
|
+
|
1486
|
+
|
1487
|
+
|
1488
|
+
|
1489
|
+
|
1490
|
+
|
1491
|
+
<xsl:attribute name="text-align">left</xsl:attribute>
|
1492
|
+
<xsl:attribute name="margin-left">5mm</xsl:attribute>
|
1493
|
+
|
1494
|
+
|
1495
|
+
</xsl:attribute-set><xsl:attribute-set name="formula-stem-number-style">
|
1496
|
+
<xsl:attribute name="text-align">right</xsl:attribute>
|
1497
|
+
|
1498
|
+
|
1499
|
+
|
1500
|
+
|
1590
1501
|
|
1591
1502
|
</xsl:attribute-set><xsl:attribute-set name="image-style">
|
1592
1503
|
<xsl:attribute name="text-align">center</xsl:attribute>
|
@@ -1625,6 +1536,21 @@
|
|
1625
1536
|
<xsl:attribute name="margin-bottom">12pt</xsl:attribute>
|
1626
1537
|
<xsl:attribute name="keep-with-previous">always</xsl:attribute>
|
1627
1538
|
|
1539
|
+
</xsl:attribute-set><xsl:attribute-set name="preferred-block-style">
|
1540
|
+
|
1541
|
+
|
1542
|
+
|
1543
|
+
|
1544
|
+
|
1545
|
+
|
1546
|
+
|
1547
|
+
</xsl:attribute-set><xsl:attribute-set name="preferred-term-style">
|
1548
|
+
<xsl:attribute name="keep-with-next">always</xsl:attribute>
|
1549
|
+
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
1550
|
+
|
1551
|
+
|
1552
|
+
<xsl:attribute name="line-height">1</xsl:attribute>
|
1553
|
+
|
1628
1554
|
</xsl:attribute-set><xsl:attribute-set name="domain-style">
|
1629
1555
|
|
1630
1556
|
</xsl:attribute-set><xsl:attribute-set name="admitted-style">
|
@@ -1645,13 +1571,19 @@
|
|
1645
1571
|
</xsl:attribute-set><xsl:variable name="color-added-text">
|
1646
1572
|
<xsl:text>rgb(0, 255, 0)</xsl:text>
|
1647
1573
|
</xsl:variable><xsl:attribute-set name="add-style">
|
1648
|
-
|
1649
|
-
|
1650
|
-
|
1651
|
-
|
1652
|
-
|
1653
|
-
|
1654
|
-
|
1574
|
+
|
1575
|
+
<xsl:attribute name="color">red</xsl:attribute>
|
1576
|
+
<xsl:attribute name="text-decoration">underline</xsl:attribute>
|
1577
|
+
<!-- <xsl:attribute name="color">black</xsl:attribute>
|
1578
|
+
<xsl:attribute name="background-color"><xsl:value-of select="$color-added-text"/></xsl:attribute>
|
1579
|
+
<xsl:attribute name="padding-top">1mm</xsl:attribute>
|
1580
|
+
<xsl:attribute name="padding-bottom">0.5mm</xsl:attribute> -->
|
1581
|
+
|
1582
|
+
</xsl:attribute-set><xsl:variable name="add-style">
|
1583
|
+
<add-style xsl:use-attribute-sets="add-style"/>
|
1584
|
+
</xsl:variable><xsl:template name="append_add-style">
|
1585
|
+
<xsl:copy-of select="xalan:nodeset($add-style)/add-style/@*"/>
|
1586
|
+
</xsl:template><xsl:variable name="color-deleted-text">
|
1655
1587
|
<xsl:text>red</xsl:text>
|
1656
1588
|
</xsl:variable><xsl:attribute-set name="del-style">
|
1657
1589
|
<xsl:attribute name="color"><xsl:value-of select="$color-deleted-text"/></xsl:attribute>
|
@@ -1662,6 +1594,39 @@
|
|
1662
1594
|
|
1663
1595
|
</xsl:attribute-set><xsl:attribute-set name="list-style">
|
1664
1596
|
|
1597
|
+
|
1598
|
+
|
1599
|
+
|
1600
|
+
|
1601
|
+
|
1602
|
+
|
1603
|
+
|
1604
|
+
|
1605
|
+
|
1606
|
+
|
1607
|
+
|
1608
|
+
|
1609
|
+
|
1610
|
+
<xsl:attribute name="provisional-distance-between-starts">6.5mm</xsl:attribute>
|
1611
|
+
<xsl:attribute name="margin-bottom">12pt</xsl:attribute>
|
1612
|
+
<xsl:attribute name="line-height">115%</xsl:attribute>
|
1613
|
+
|
1614
|
+
|
1615
|
+
|
1616
|
+
|
1617
|
+
</xsl:attribute-set><xsl:attribute-set name="list-item-style">
|
1618
|
+
|
1619
|
+
|
1620
|
+
</xsl:attribute-set><xsl:attribute-set name="list-item-label-style">
|
1621
|
+
|
1622
|
+
|
1623
|
+
|
1624
|
+
</xsl:attribute-set><xsl:attribute-set name="list-item-body-style">
|
1625
|
+
|
1626
|
+
|
1627
|
+
<xsl:attribute name="line-height-shift-adjustment">disregard-shifts</xsl:attribute>
|
1628
|
+
|
1629
|
+
|
1665
1630
|
</xsl:attribute-set><xsl:attribute-set name="toc-style">
|
1666
1631
|
<xsl:attribute name="line-height">135%</xsl:attribute>
|
1667
1632
|
</xsl:attribute-set><xsl:attribute-set name="fn-reference-style">
|
@@ -1955,15 +1920,148 @@
|
|
1955
1920
|
|
1956
1921
|
<xsl:attribute name="line-height">120%</xsl:attribute>
|
1957
1922
|
|
1923
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-doctag">
|
1924
|
+
<xsl:attribute name="color">#d73a49</xsl:attribute>
|
1925
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-keyword">
|
1926
|
+
<xsl:attribute name="color">#d73a49</xsl:attribute>
|
1927
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-meta_hljs-keyword">
|
1928
|
+
<xsl:attribute name="color">#d73a49</xsl:attribute>
|
1929
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-template-tag">
|
1930
|
+
<xsl:attribute name="color">#d73a49</xsl:attribute>
|
1931
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-template-variable">
|
1932
|
+
<xsl:attribute name="color">#d73a49</xsl:attribute>
|
1933
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-type">
|
1934
|
+
<xsl:attribute name="color">#d73a49</xsl:attribute>
|
1935
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-variable_and_language_">
|
1936
|
+
<xsl:attribute name="color">#d73a49</xsl:attribute>
|
1937
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-title">
|
1938
|
+
<xsl:attribute name="color">#6f42c1</xsl:attribute>
|
1939
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-title_and_class_">
|
1940
|
+
<xsl:attribute name="color">#6f42c1</xsl:attribute>
|
1941
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-title_and_class__and_inherited__">
|
1942
|
+
<xsl:attribute name="color">#6f42c1</xsl:attribute>
|
1943
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-title_and_function_">
|
1944
|
+
<xsl:attribute name="color">#6f42c1</xsl:attribute>
|
1945
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-attr">
|
1946
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
1947
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-attribute">
|
1948
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
1949
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-literal">
|
1950
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
1951
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-meta">
|
1952
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
1953
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-number">
|
1954
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
1955
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-operator">
|
1956
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
1957
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-variable">
|
1958
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
1959
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-selector-attr">
|
1960
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
1961
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-selector-class">
|
1962
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
1963
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-selector-id">
|
1964
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
1965
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-regexp">
|
1966
|
+
<xsl:attribute name="color">#032f62</xsl:attribute>
|
1967
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-string">
|
1968
|
+
<xsl:attribute name="color">#032f62</xsl:attribute>
|
1969
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-meta_hljs-string">
|
1970
|
+
<xsl:attribute name="color">#032f62</xsl:attribute>
|
1971
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-built_in">
|
1972
|
+
<xsl:attribute name="color">#e36209</xsl:attribute>
|
1973
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-symbol">
|
1974
|
+
<xsl:attribute name="color">#e36209</xsl:attribute>
|
1975
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-comment">
|
1976
|
+
<xsl:attribute name="color">#6a737d</xsl:attribute>
|
1977
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-code">
|
1978
|
+
<xsl:attribute name="color">#6a737d</xsl:attribute>
|
1979
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-formula">
|
1980
|
+
<xsl:attribute name="color">#6a737d</xsl:attribute>
|
1981
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-name">
|
1982
|
+
<xsl:attribute name="color">#22863a</xsl:attribute>
|
1983
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-quote">
|
1984
|
+
<xsl:attribute name="color">#22863a</xsl:attribute>
|
1985
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-selector-tag">
|
1986
|
+
<xsl:attribute name="color">#22863a</xsl:attribute>
|
1987
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-selector-pseudo">
|
1988
|
+
<xsl:attribute name="color">#22863a</xsl:attribute>
|
1989
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-subst">
|
1990
|
+
<xsl:attribute name="color">#24292e</xsl:attribute>
|
1991
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-section">
|
1992
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
1993
|
+
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
1994
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-bullet">
|
1995
|
+
<xsl:attribute name="color">#735c0f</xsl:attribute>
|
1996
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-emphasis">
|
1997
|
+
<xsl:attribute name="color">#24292e</xsl:attribute>
|
1998
|
+
<xsl:attribute name="font-style">italic</xsl:attribute>
|
1999
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-strong">
|
2000
|
+
<xsl:attribute name="color">#24292e</xsl:attribute>
|
2001
|
+
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
2002
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-addition">
|
2003
|
+
<xsl:attribute name="color">#22863a</xsl:attribute>
|
2004
|
+
<xsl:attribute name="background-color">#f0fff4</xsl:attribute>
|
2005
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-deletion">
|
2006
|
+
<xsl:attribute name="color">#b31d28</xsl:attribute>
|
2007
|
+
<xsl:attribute name="background-color">#ffeef0</xsl:attribute>
|
2008
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-char_and_escape_">
|
2009
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-link">
|
2010
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-params">
|
2011
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-property">
|
2012
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-punctuation">
|
2013
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-tag">
|
2014
|
+
</xsl:attribute-set><xsl:attribute-set name="indexsect-title-style">
|
2015
|
+
<xsl:attribute name="role">H1</xsl:attribute>
|
2016
|
+
|
2017
|
+
|
2018
|
+
|
2019
|
+
|
2020
|
+
|
2021
|
+
</xsl:attribute-set><xsl:attribute-set name="indexsect-clause-title-style">
|
2022
|
+
<xsl:attribute name="keep-with-next">always</xsl:attribute>
|
2023
|
+
|
2024
|
+
|
2025
|
+
|
2026
|
+
|
2027
|
+
|
1958
2028
|
</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">
|
2029
|
+
<xsl:variable name="nodes_preface_">
|
2030
|
+
<xsl:for-each select="/*/*[local-name()='preface']/*">
|
2031
|
+
<node id="{@id}"/>
|
2032
|
+
</xsl:for-each>
|
2033
|
+
</xsl:variable>
|
2034
|
+
<xsl:variable name="nodes_preface" select="xalan:nodeset($nodes_preface_)"/>
|
2035
|
+
|
1959
2036
|
<xsl:for-each select="/*/*[local-name()='preface']/*">
|
1960
2037
|
<xsl:sort select="@displayorder" data-type="number"/>
|
2038
|
+
|
2039
|
+
<!-- process Section's title -->
|
2040
|
+
<xsl:variable name="preceding-sibling_id" select="$nodes_preface/node[@id = current()/@id]/preceding-sibling::node[1]/@id"/>
|
2041
|
+
<xsl:if test="$preceding-sibling_id != ''">
|
2042
|
+
<xsl:apply-templates select="parent::*/*[@type = 'section-title' and @id = $preceding-sibling_id and not(@displayorder)]" mode="contents_no_displayorder"/>
|
2043
|
+
</xsl:if>
|
2044
|
+
|
1961
2045
|
<xsl:apply-templates select="." mode="contents"/>
|
1962
2046
|
</xsl:for-each>
|
1963
2047
|
</xsl:template><xsl:template name="processMainSectionsDefault_Contents">
|
1964
2048
|
|
2049
|
+
<xsl:variable name="nodes_sections_">
|
2050
|
+
<xsl:for-each select="/*/*[local-name()='sections']/*">
|
2051
|
+
<node id="{@id}"/>
|
2052
|
+
</xsl:for-each>
|
2053
|
+
</xsl:variable>
|
2054
|
+
<xsl:variable name="nodes_sections" select="xalan:nodeset($nodes_sections_)"/>
|
2055
|
+
|
1965
2056
|
<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']]">
|
1966
2057
|
<xsl:sort select="@displayorder" data-type="number"/>
|
2058
|
+
|
2059
|
+
<!-- process Section's title -->
|
2060
|
+
<xsl:variable name="preceding-sibling_id" select="$nodes_sections/node[@id = current()/@id]/preceding-sibling::node[1]/@id"/>
|
2061
|
+
<xsl:if test="$preceding-sibling_id != ''">
|
2062
|
+
<xsl:apply-templates select="parent::*/*[@type = 'section-title' and @id = $preceding-sibling_id and not(@displayorder)]" mode="contents_no_displayorder"/>
|
2063
|
+
</xsl:if>
|
2064
|
+
|
1967
2065
|
<xsl:apply-templates select="." mode="contents"/>
|
1968
2066
|
</xsl:for-each>
|
1969
2067
|
|
@@ -1976,6 +2074,30 @@
|
|
1976
2074
|
<xsl:sort select="@displayorder" data-type="number"/>
|
1977
2075
|
<xsl:apply-templates select="." mode="contents"/>
|
1978
2076
|
</xsl:for-each>
|
2077
|
+
</xsl:template><xsl:template name="processTablesFigures_Contents">
|
2078
|
+
<xsl:param name="always"/>
|
2079
|
+
<xsl:if test="(//*[contains(local-name(), '-standard')]/*[local-name() = 'misc-container']/*[local-name() = 'toc'][@type='table']/*[local-name() = 'title']) or normalize-space($always) = 'true'">
|
2080
|
+
<xsl:call-template name="processTables_Contents"/>
|
2081
|
+
</xsl:if>
|
2082
|
+
<xsl:if test="(//*[contains(local-name(), '-standard')]/*[local-name() = 'misc-container']/*[local-name() = 'toc'][@type='figure']/*[local-name() = 'title']) or normalize-space($always) = 'true'">
|
2083
|
+
<xsl:call-template name="processFigures_Contents"/>
|
2084
|
+
</xsl:if>
|
2085
|
+
</xsl:template><xsl:template name="processTables_Contents">
|
2086
|
+
<tables>
|
2087
|
+
<xsl:for-each select="//*[local-name() = 'table'][@id and *[local-name() = 'name'] and normalize-space(@id) != '']">
|
2088
|
+
<table id="{@id}" alt-text="{*[local-name() = 'name']}">
|
2089
|
+
<xsl:copy-of select="*[local-name() = 'name']"/>
|
2090
|
+
</table>
|
2091
|
+
</xsl:for-each>
|
2092
|
+
</tables>
|
2093
|
+
</xsl:template><xsl:template name="processFigures_Contents">
|
2094
|
+
<figures>
|
2095
|
+
<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) != '']">
|
2096
|
+
<figure id="{@id}" alt-text="{*[local-name() = 'name']}">
|
2097
|
+
<xsl:copy-of select="*[local-name() = 'name']"/>
|
2098
|
+
</figure>
|
2099
|
+
</xsl:for-each>
|
2100
|
+
</figures>
|
1979
2101
|
</xsl:template><xsl:template name="processPrefaceSectionsDefault">
|
1980
2102
|
<xsl:for-each select="/*/*[local-name()='preface']/*">
|
1981
2103
|
<xsl:sort select="@displayorder" data-type="number"/>
|
@@ -2077,6 +2199,7 @@
|
|
2077
2199
|
|
2078
2200
|
|
2079
2201
|
</xsl:template><xsl:template match="*[local-name()='legal-statement']//*[local-name()='p']">
|
2202
|
+
<xsl:param name="margin"/>
|
2080
2203
|
|
2081
2204
|
<!-- csa -->
|
2082
2205
|
<fo:block xsl:use-attribute-sets="legal-statement-p-style">
|
@@ -2100,9 +2223,12 @@
|
|
2100
2223
|
<xsl:call-template name="title"/>
|
2101
2224
|
|
2102
2225
|
</xsl:template><xsl:template match="*[local-name()='feedback-statement']//*[local-name()='p']">
|
2226
|
+
<xsl:param name="margin"/>
|
2103
2227
|
|
2104
2228
|
<!-- process in the template 'paragraph' -->
|
2105
|
-
<xsl:call-template name="paragraph"
|
2229
|
+
<xsl:call-template name="paragraph">
|
2230
|
+
<xsl:with-param name="margin" select="$margin"/>
|
2231
|
+
</xsl:call-template>
|
2106
2232
|
|
2107
2233
|
</xsl:template><xsl:template match="*[local-name()='td']//text() | *[local-name()='th']//text() | *[local-name()='dt']//text() | *[local-name()='dd']//text()" priority="1">
|
2108
2234
|
<!-- <xsl:call-template name="add-zero-spaces"/> -->
|
@@ -2139,7 +2265,7 @@
|
|
2139
2265
|
</xsl:call-template>
|
2140
2266
|
</xsl:if>
|
2141
2267
|
</xsl:variable>
|
2142
|
-
<!-- colwidths=<xsl:copy-of select="$colwidths"/> -->
|
2268
|
+
<!-- DEBUG colwidths=<xsl:copy-of select="$colwidths"/> -->
|
2143
2269
|
|
2144
2270
|
|
2145
2271
|
<xsl:variable name="margin-side">
|
@@ -2403,7 +2529,7 @@
|
|
2403
2529
|
<!-- <xsl:with-param name="text" select="translate(td[$curr-col],'- —:', ' ')"/> -->
|
2404
2530
|
<!-- 2009 thinspace -->
|
2405
2531
|
<!-- <xsl:with-param name="text" select="translate(normalize-space($td_text),'- —:', ' ')"/> -->
|
2406
|
-
<xsl:with-param name="text" select="normalize-space(translate($string_with_added_zerospaces, '
|
2532
|
+
<xsl:with-param name="text" select="normalize-space(translate($string_with_added_zerospaces, '', ' '))"/> <!-- replace zero-width-space and soft-hyphen to space -->
|
2407
2533
|
</xsl:call-template>
|
2408
2534
|
</xsl:variable>
|
2409
2535
|
<xsl:variable name="max_length">
|
@@ -2444,8 +2570,7 @@
|
|
2444
2570
|
</xsl:call-template>
|
2445
2571
|
</xsl:if>
|
2446
2572
|
</xsl:template><xsl:template match="text()" mode="td_text">
|
2447
|
-
<xsl:
|
2448
|
-
<xsl:value-of select="translate(., $zero-space, ' ')"/><xsl:text> </xsl:text>
|
2573
|
+
<xsl:value-of select="translate(., $zero_width_space, ' ')"/><xsl:text> </xsl:text>
|
2449
2574
|
</xsl:template><xsl:template match="*[local-name()='termsource']" mode="td_text">
|
2450
2575
|
<xsl:value-of select="*[local-name()='origin']/@citeas"/>
|
2451
2576
|
</xsl:template><xsl:template match="*[local-name()='link']" mode="td_text">
|
@@ -2790,37 +2915,7 @@
|
|
2790
2915
|
|
2791
2916
|
<!-- list of footnotes to calculate actual footnotes number -->
|
2792
2917
|
<xsl:variable name="p_fn_">
|
2793
|
-
<xsl:
|
2794
|
-
<xsl:when test="@current_fn_number"> <!-- for BSI, footnote reference number calculated already -->
|
2795
|
-
<fn gen_id="{generate-id(.)}">
|
2796
|
-
<xsl:copy-of select="@*"/>
|
2797
|
-
<xsl:copy-of select="node()"/>
|
2798
|
-
</fn>
|
2799
|
-
</xsl:when>
|
2800
|
-
<xsl:otherwise>
|
2801
|
-
<!-- itetation for:
|
2802
|
-
footnotes in bibdata/title
|
2803
|
-
footnotes in bibliography
|
2804
|
-
footnotes in document's body (except table's head/body/foot and figure text)
|
2805
|
-
-->
|
2806
|
-
<xsl:for-each select="ancestor::*[contains(local-name(), '-standard')]/*[local-name() = 'bibdata']/*[local-name() = 'note'][@type='title-footnote']">
|
2807
|
-
<fn gen_id="{generate-id(.)}">
|
2808
|
-
<xsl:copy-of select="@*"/>
|
2809
|
-
<xsl:copy-of select="node()"/>
|
2810
|
-
</fn>
|
2811
|
-
</xsl:for-each>
|
2812
|
-
<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']/*">
|
2813
|
-
<xsl:sort select="@displayorder" data-type="number"/>
|
2814
|
-
<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])]">
|
2815
|
-
<!-- copy unique fn -->
|
2816
|
-
<fn gen_id="{generate-id(.)}">
|
2817
|
-
<xsl:copy-of select="@*"/>
|
2818
|
-
<xsl:copy-of select="node()"/>
|
2819
|
-
</fn>
|
2820
|
-
</xsl:for-each>
|
2821
|
-
</xsl:for-each>
|
2822
|
-
</xsl:otherwise>
|
2823
|
-
</xsl:choose>
|
2918
|
+
<xsl:call-template name="get_fn_list"/>
|
2824
2919
|
</xsl:variable>
|
2825
2920
|
<xsl:variable name="p_fn" select="xalan:nodeset($p_fn_)"/>
|
2826
2921
|
|
@@ -2881,6 +2976,38 @@
|
|
2881
2976
|
<xsl:copy-of select="$footnote_inline"/>
|
2882
2977
|
</xsl:otherwise>
|
2883
2978
|
</xsl:choose>
|
2979
|
+
</xsl:template><xsl:template name="get_fn_list">
|
2980
|
+
<xsl:choose>
|
2981
|
+
<xsl:when test="@current_fn_number"> <!-- for BSI, footnote reference number calculated already -->
|
2982
|
+
<fn gen_id="{generate-id(.)}">
|
2983
|
+
<xsl:copy-of select="@*"/>
|
2984
|
+
<xsl:copy-of select="node()"/>
|
2985
|
+
</fn>
|
2986
|
+
</xsl:when>
|
2987
|
+
<xsl:otherwise>
|
2988
|
+
<!-- itetation for:
|
2989
|
+
footnotes in bibdata/title
|
2990
|
+
footnotes in bibliography
|
2991
|
+
footnotes in document's body (except table's head/body/foot and figure text)
|
2992
|
+
-->
|
2993
|
+
<xsl:for-each select="ancestor::*[contains(local-name(), '-standard')]/*[local-name() = 'bibdata']/*[local-name() = 'note'][@type='title-footnote']">
|
2994
|
+
<fn gen_id="{generate-id(.)}">
|
2995
|
+
<xsl:copy-of select="@*"/>
|
2996
|
+
<xsl:copy-of select="node()"/>
|
2997
|
+
</fn>
|
2998
|
+
</xsl:for-each>
|
2999
|
+
<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']/*">
|
3000
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
3001
|
+
<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])]">
|
3002
|
+
<!-- copy unique fn -->
|
3003
|
+
<fn gen_id="{generate-id(.)}">
|
3004
|
+
<xsl:copy-of select="@*"/>
|
3005
|
+
<xsl:copy-of select="node()"/>
|
3006
|
+
</fn>
|
3007
|
+
</xsl:for-each>
|
3008
|
+
</xsl:for-each>
|
3009
|
+
</xsl:otherwise>
|
3010
|
+
</xsl:choose>
|
2884
3011
|
</xsl:template><xsl:template name="table_fn_display">
|
2885
3012
|
<xsl:variable name="references">
|
2886
3013
|
|
@@ -3063,7 +3190,7 @@
|
|
3063
3190
|
</fo:inline>
|
3064
3191
|
</xsl:template><xsl:template match="*[local-name()='fn']/text()[normalize-space() != '']">
|
3065
3192
|
<fo:inline><xsl:value-of select="."/></fo:inline>
|
3066
|
-
</xsl:template><xsl:template match="*[local-name()='fn']
|
3193
|
+
</xsl:template><xsl:template match="*[local-name()='fn']//*[local-name()='p']">
|
3067
3194
|
<fo:inline>
|
3068
3195
|
<xsl:apply-templates/>
|
3069
3196
|
</fo:inline>
|
@@ -3426,24 +3553,48 @@
|
|
3426
3553
|
<fo:inline text-decoration="underline">
|
3427
3554
|
<xsl:apply-templates/>
|
3428
3555
|
</fo:inline>
|
3429
|
-
</xsl:template><xsl:template match="*[local-name()='add']">
|
3556
|
+
</xsl:template><xsl:template match="*[local-name()='add']" name="tag_add">
|
3430
3557
|
<xsl:param name="skip">true</xsl:param>
|
3558
|
+
<xsl:param name="block">false</xsl:param>
|
3559
|
+
<xsl:param name="type"/>
|
3560
|
+
<xsl:param name="text-align"/>
|
3431
3561
|
<xsl:choose>
|
3432
3562
|
<xsl:when test="starts-with(., $ace_tag)"> <!-- examples: ace-tag_A1_start, ace-tag_A2_end, C1_start, AC_start -->
|
3433
3563
|
<xsl:choose>
|
3434
|
-
<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>
|
3564
|
+
<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>
|
3435
3565
|
<xsl:otherwise>
|
3436
|
-
<
|
3566
|
+
<xsl:variable name="tag">
|
3437
3567
|
<xsl:call-template name="insertTag">
|
3438
|
-
<xsl:with-param name="type"
|
3568
|
+
<xsl:with-param name="type">
|
3569
|
+
<xsl:choose>
|
3570
|
+
<xsl:when test="$type = ''"><xsl:value-of select="substring-after(substring-after(., $ace_tag), '_')"/> <!-- start or end --></xsl:when>
|
3571
|
+
<xsl:otherwise><xsl:value-of select="$type"/></xsl:otherwise>
|
3572
|
+
</xsl:choose>
|
3573
|
+
</xsl:with-param>
|
3439
3574
|
<xsl:with-param name="kind" select="substring(substring-before(substring-after(., $ace_tag), '_'), 1, 1)"/> <!-- A or C -->
|
3440
3575
|
<xsl:with-param name="value" select="substring(substring-before(substring-after(., $ace_tag), '_'), 2)"/> <!-- 1, 2, C -->
|
3441
3576
|
</xsl:call-template>
|
3442
|
-
</
|
3443
|
-
|
3444
|
-
|
3445
|
-
|
3446
|
-
|
3577
|
+
</xsl:variable>
|
3578
|
+
<xsl:choose>
|
3579
|
+
<xsl:when test="$block = 'false'">
|
3580
|
+
<fo:inline>
|
3581
|
+
<xsl:copy-of select="$tag"/>
|
3582
|
+
</fo:inline>
|
3583
|
+
</xsl:when>
|
3584
|
+
<xsl:otherwise>
|
3585
|
+
<fo:block> <!-- for around figures -->
|
3586
|
+
<xsl:if test="$text-align != ''">
|
3587
|
+
<xsl:attribute name="text-align"><xsl:value-of select="$text-align"/></xsl:attribute>
|
3588
|
+
</xsl:if>
|
3589
|
+
<xsl:copy-of select="$tag"/>
|
3590
|
+
</fo:block>
|
3591
|
+
</xsl:otherwise>
|
3592
|
+
</xsl:choose>
|
3593
|
+
|
3594
|
+
</xsl:otherwise>
|
3595
|
+
</xsl:choose>
|
3596
|
+
</xsl:when>
|
3597
|
+
<xsl:when test="@amendment">
|
3447
3598
|
<fo:inline>
|
3448
3599
|
<xsl:call-template name="insertTag">
|
3449
3600
|
<xsl:with-param name="kind">A</xsl:with-param>
|
@@ -3798,17 +3949,21 @@
|
|
3798
3949
|
</xsl:apply-templates>
|
3799
3950
|
</xsl:template><xsl:template name="getLang">
|
3800
3951
|
<xsl:variable name="language_current" select="normalize-space(//*[local-name()='bibdata']//*[local-name()='language'][@current = 'true'])"/>
|
3801
|
-
<xsl:variable name="language_current_2" select="normalize-space(xalan:nodeset($bibdata)//*[local-name()='bibdata']//*[local-name()='language'][@current = 'true'])"/>
|
3802
3952
|
<xsl:variable name="language">
|
3803
3953
|
<xsl:choose>
|
3804
3954
|
<xsl:when test="$language_current != ''">
|
3805
3955
|
<xsl:value-of select="$language_current"/>
|
3806
3956
|
</xsl:when>
|
3807
|
-
<xsl:when test="$language_current_2 != ''">
|
3808
|
-
<xsl:value-of select="$language_current_2"/>
|
3809
|
-
</xsl:when>
|
3810
3957
|
<xsl:otherwise>
|
3811
|
-
<xsl:
|
3958
|
+
<xsl:variable name="language_current_2" select="normalize-space(xalan:nodeset($bibdata)//*[local-name()='bibdata']//*[local-name()='language'][@current = 'true'])"/>
|
3959
|
+
<xsl:choose>
|
3960
|
+
<xsl:when test="$language_current_2 != ''">
|
3961
|
+
<xsl:value-of select="$language_current_2"/>
|
3962
|
+
</xsl:when>
|
3963
|
+
<xsl:otherwise>
|
3964
|
+
<xsl:value-of select="//*[local-name()='bibdata']//*[local-name()='language']"/>
|
3965
|
+
</xsl:otherwise>
|
3966
|
+
</xsl:choose>
|
3812
3967
|
</xsl:otherwise>
|
3813
3968
|
</xsl:choose>
|
3814
3969
|
</xsl:variable>
|
@@ -4011,6 +4166,9 @@
|
|
4011
4166
|
</fo:inline>
|
4012
4167
|
</xsl:template><xsl:template match="*[local-name() = 'xref']">
|
4013
4168
|
<fo:basic-link internal-destination="{@target}" fox:alt-text="{@target}" xsl:use-attribute-sets="xref-style">
|
4169
|
+
<xsl:if test="parent::*[local-name() = 'add']">
|
4170
|
+
<xsl:call-template name="append_add-style"/>
|
4171
|
+
</xsl:if>
|
4014
4172
|
<xsl:apply-templates/>
|
4015
4173
|
</fo:basic-link>
|
4016
4174
|
</xsl:template><xsl:template match="*[local-name() = 'formula']" name="formula">
|
@@ -4025,8 +4183,8 @@
|
|
4025
4183
|
|
4026
4184
|
</xsl:if>
|
4027
4185
|
<fo:block-container margin-left="0mm">
|
4028
|
-
<fo:block id="{@id}"
|
4029
|
-
<xsl:apply-templates/>
|
4186
|
+
<fo:block id="{@id}">
|
4187
|
+
<xsl:apply-templates select="node()[not(local-name() = 'name')]"/> <!-- formula's number will be process in 'stem' template -->
|
4030
4188
|
</fo:block>
|
4031
4189
|
</fo:block-container>
|
4032
4190
|
</fo:block-container>
|
@@ -4038,10 +4196,43 @@
|
|
4038
4196
|
<fo:inline>
|
4039
4197
|
<xsl:apply-templates/>
|
4040
4198
|
</fo:inline>
|
4041
|
-
</xsl:template><xsl:template match="*[local-name() = 'formula']/*[local-name() = 'name']"
|
4199
|
+
</xsl:template><xsl:template match="*[local-name() = 'formula']/*[local-name() = 'name']"> <!-- show in 'stem' template -->
|
4042
4200
|
<xsl:if test="normalize-space() != ''">
|
4043
4201
|
<xsl:text>(</xsl:text><xsl:apply-templates/><xsl:text>)</xsl:text>
|
4044
4202
|
</xsl:if>
|
4203
|
+
</xsl:template><xsl:template match="*[local-name() = 'formula'][*[local-name() = 'name']]/*[local-name() = 'stem']">
|
4204
|
+
<fo:block xsl:use-attribute-sets="formula-style">
|
4205
|
+
|
4206
|
+
|
4207
|
+
|
4208
|
+
<fo:table table-layout="fixed" width="100%">
|
4209
|
+
<fo:table-column column-width="95%"/>
|
4210
|
+
<fo:table-column column-width="5%"/>
|
4211
|
+
<fo:table-body>
|
4212
|
+
<fo:table-row>
|
4213
|
+
<fo:table-cell display-align="center">
|
4214
|
+
<fo:block xsl:use-attribute-sets="formula-stem-block-style">
|
4215
|
+
|
4216
|
+
|
4217
|
+
|
4218
|
+
<xsl:apply-templates/>
|
4219
|
+
</fo:block>
|
4220
|
+
</fo:table-cell>
|
4221
|
+
<fo:table-cell display-align="center">
|
4222
|
+
<fo:block xsl:use-attribute-sets="formula-stem-number-style">
|
4223
|
+
<xsl:apply-templates select="../*[local-name() = 'name']"/>
|
4224
|
+
</fo:block>
|
4225
|
+
</fo:table-cell>
|
4226
|
+
</fo:table-row>
|
4227
|
+
</fo:table-body>
|
4228
|
+
</fo:table>
|
4229
|
+
</fo:block>
|
4230
|
+
</xsl:template><xsl:template match="*[local-name() = 'formula'][not(*[local-name() = 'name'])]/*[local-name() = 'stem']">
|
4231
|
+
<fo:block xsl:use-attribute-sets="formula-style">
|
4232
|
+
<fo:block xsl:use-attribute-sets="formula-stem-block-style">
|
4233
|
+
<xsl:apply-templates/>
|
4234
|
+
</fo:block>
|
4235
|
+
</fo:block>
|
4045
4236
|
</xsl:template><xsl:template match="*[local-name() = 'note']" name="note">
|
4046
4237
|
|
4047
4238
|
<fo:block-container id="{@id}" xsl:use-attribute-sets="note-style">
|
@@ -4079,6 +4270,13 @@
|
|
4079
4270
|
|
4080
4271
|
|
4081
4272
|
|
4273
|
+
<!-- if 'p' contains all text in 'add' first and last elements in first p are 'add' -->
|
4274
|
+
<!-- <xsl:if test="*[not(local-name()='name')][1][node()[normalize-space() != ''][1][local-name() = 'add'] and node()[normalize-space() != ''][last()][local-name() = 'add']]"> -->
|
4275
|
+
<xsl:if test="*[not(local-name()='name')][1][count(node()[normalize-space() != '']) = 1 and *[local-name() = 'add']]">
|
4276
|
+
<xsl:call-template name="append_add-style"/>
|
4277
|
+
</xsl:if>
|
4278
|
+
|
4279
|
+
|
4082
4280
|
<!-- if note contains only one element and first and last childs are `add` ace-tag, then move start ace-tag before NOTE's name-->
|
4083
4281
|
<xsl:if test="count(*[not(local-name() = 'name')]) = 1 and *[not(local-name() = 'name')]/node()[last()][local-name() = 'add'][starts-with(text(), $ace_tag)]">
|
4084
4282
|
<xsl:apply-templates select="*[not(local-name() = 'name')]/node()[1][local-name() = 'add'][starts-with(text(), $ace_tag)]">
|
@@ -4117,6 +4315,12 @@
|
|
4117
4315
|
|
4118
4316
|
|
4119
4317
|
|
4318
|
+
<!-- if 'p' contains all text in 'add' first and last elements in first p are 'add' -->
|
4319
|
+
<!-- <xsl:if test="*[not(local-name()='name')][1][node()[normalize-space() != ''][1][local-name() = 'add'] and node()[normalize-space() != ''][last()][local-name() = 'add']]"> -->
|
4320
|
+
<xsl:if test="*[not(local-name()='name')][1][count(node()[normalize-space() != '']) = 1 and *[local-name() = 'add']]">
|
4321
|
+
<xsl:call-template name="append_add-style"/>
|
4322
|
+
</xsl:if>
|
4323
|
+
|
4120
4324
|
<xsl:apply-templates select="*[local-name() = 'name']"/>
|
4121
4325
|
|
4122
4326
|
</fo:inline>
|
@@ -4168,6 +4372,7 @@
|
|
4168
4372
|
</fo:block>
|
4169
4373
|
</xsl:template><xsl:template match="*[local-name() = 'term']">
|
4170
4374
|
<fo:block id="{@id}" xsl:use-attribute-sets="term-style">
|
4375
|
+
|
4171
4376
|
|
4172
4377
|
|
4173
4378
|
|
@@ -4604,7 +4809,11 @@
|
|
4604
4809
|
<xsl:value-of select="."/>
|
4605
4810
|
</xsl:template><xsl:template match="node()" mode="contents">
|
4606
4811
|
<xsl:apply-templates mode="contents"/>
|
4607
|
-
</xsl:template><xsl:template match="*[local-name() = 'p'][@type = '
|
4812
|
+
</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">
|
4813
|
+
<xsl:call-template name="contents_section-title"/>
|
4814
|
+
</xsl:template><xsl:template match="*[local-name() = 'p'][@type = 'section-title']" mode="contents_in_clause">
|
4815
|
+
<xsl:call-template name="contents_section-title"/>
|
4816
|
+
</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">
|
4608
4817
|
<xsl:variable name="level">
|
4609
4818
|
<xsl:call-template name="getLevel">
|
4610
4819
|
<xsl:with-param name="depth" select="@depth"/>
|
@@ -4673,13 +4882,14 @@
|
|
4673
4882
|
<xsl:apply-templates mode="bookmarks"/>
|
4674
4883
|
</xsl:template><xsl:template name="addBookmarks">
|
4675
4884
|
<xsl:param name="contents"/>
|
4676
|
-
<xsl:
|
4885
|
+
<xsl:variable name="contents_nodes" select="xalan:nodeset($contents)"/>
|
4886
|
+
<xsl:if test="$contents_nodes//item">
|
4677
4887
|
<fo:bookmark-tree>
|
4678
4888
|
<xsl:choose>
|
4679
|
-
<xsl:when test="
|
4889
|
+
<xsl:when test="$contents_nodes/doc">
|
4680
4890
|
<xsl:choose>
|
4681
|
-
<xsl:when test="count(
|
4682
|
-
<xsl:for-each select="
|
4891
|
+
<xsl:when test="count($contents_nodes/doc) > 1">
|
4892
|
+
<xsl:for-each select="$contents_nodes/doc">
|
4683
4893
|
<fo:bookmark internal-destination="{contents/item[1]/@id}" starting-state="hide">
|
4684
4894
|
<xsl:if test="@bundle = 'true'">
|
4685
4895
|
<xsl:attribute name="internal-destination"><xsl:value-of select="@firstpage_id"/></xsl:attribute>
|
@@ -4730,7 +4940,7 @@
|
|
4730
4940
|
</xsl:for-each>
|
4731
4941
|
</xsl:when>
|
4732
4942
|
<xsl:otherwise>
|
4733
|
-
<xsl:for-each select="
|
4943
|
+
<xsl:for-each select="$contents_nodes/doc">
|
4734
4944
|
|
4735
4945
|
<xsl:apply-templates select="contents/item" mode="bookmark"/>
|
4736
4946
|
|
@@ -4748,11 +4958,21 @@
|
|
4748
4958
|
</xsl:choose>
|
4749
4959
|
</xsl:when>
|
4750
4960
|
<xsl:otherwise>
|
4751
|
-
<xsl:apply-templates select="
|
4961
|
+
<xsl:apply-templates select="$contents_nodes/contents/item" mode="bookmark"/>
|
4962
|
+
|
4963
|
+
<xsl:call-template name="insertFigureBookmarks">
|
4964
|
+
<xsl:with-param name="contents" select="$contents_nodes/contents"/>
|
4965
|
+
</xsl:call-template>
|
4966
|
+
|
4967
|
+
<xsl:call-template name="insertTableBookmarks">
|
4968
|
+
<xsl:with-param name="contents" select="$contents_nodes/contents"/>
|
4969
|
+
<xsl:with-param name="lang" select="@lang"/>
|
4970
|
+
</xsl:call-template>
|
4971
|
+
|
4752
4972
|
</xsl:otherwise>
|
4753
4973
|
</xsl:choose>
|
4754
4974
|
|
4755
|
-
|
4975
|
+
|
4756
4976
|
|
4757
4977
|
|
4758
4978
|
|
@@ -4765,7 +4985,6 @@
|
|
4765
4985
|
</xsl:variable>
|
4766
4986
|
<xsl:variable name="list_of_tables_figures" select="xalan:nodeset($list_of_tables_figures_)"/>
|
4767
4987
|
|
4768
|
-
|
4769
4988
|
<xsl:if test="$list_of_tables_figures/table_figure">
|
4770
4989
|
<fo:bookmark internal-destination="empty_bookmark">
|
4771
4990
|
<fo:bookmark-title>—————</fo:bookmark-title>
|
@@ -4773,7 +4992,7 @@
|
|
4773
4992
|
</xsl:if>
|
4774
4993
|
|
4775
4994
|
<xsl:if test="$list_of_tables_figures//table_figure">
|
4776
|
-
<fo:bookmark internal-destination="empty_bookmark" starting-state="hide">
|
4995
|
+
<fo:bookmark internal-destination="empty_bookmark" starting-state="hide">
|
4777
4996
|
<fo:bookmark-title>
|
4778
4997
|
<xsl:call-template name="getTitle">
|
4779
4998
|
<xsl:with-param name="name" select="'title-table-figures'"/>
|
@@ -4786,17 +5005,18 @@
|
|
4786
5005
|
</xsl:for-each>
|
4787
5006
|
</fo:bookmark>
|
4788
5007
|
</xsl:if>
|
4789
|
-
|
4790
|
-
|
5008
|
+
<!-- $namespace = 'ogc-white-paper' -->
|
5009
|
+
|
4791
5010
|
|
4792
5011
|
</fo:bookmark-tree>
|
4793
5012
|
</xsl:if>
|
4794
5013
|
</xsl:template><xsl:template name="insertFigureBookmarks">
|
4795
5014
|
<xsl:param name="contents"/>
|
4796
|
-
<xsl:
|
4797
|
-
|
5015
|
+
<xsl:variable name="contents_nodes" select="xalan:nodeset($contents)"/>
|
5016
|
+
<xsl:if test="$contents_nodes/figure">
|
5017
|
+
<fo:bookmark internal-destination="{$contents_nodes/figure[1]/@id}" starting-state="hide">
|
4798
5018
|
<fo:bookmark-title>Figures</fo:bookmark-title>
|
4799
|
-
<xsl:for-each select="
|
5019
|
+
<xsl:for-each select="$contents_nodes/figure">
|
4800
5020
|
<fo:bookmark internal-destination="{@id}">
|
4801
5021
|
<fo:bookmark-title>
|
4802
5022
|
<xsl:value-of select="normalize-space(title)"/>
|
@@ -4805,18 +5025,21 @@
|
|
4805
5025
|
</xsl:for-each>
|
4806
5026
|
</fo:bookmark>
|
4807
5027
|
</xsl:if>
|
5028
|
+
|
5029
|
+
<!-- see template addBookmarks -->
|
4808
5030
|
</xsl:template><xsl:template name="insertTableBookmarks">
|
4809
5031
|
<xsl:param name="contents"/>
|
4810
5032
|
<xsl:param name="lang"/>
|
4811
|
-
<xsl:
|
4812
|
-
|
5033
|
+
<xsl:variable name="contents_nodes" select="xalan:nodeset($contents)"/>
|
5034
|
+
<xsl:if test="$contents_nodes/table">
|
5035
|
+
<fo:bookmark internal-destination="{$contents_nodes/table[1]/@id}" starting-state="hide">
|
4813
5036
|
<fo:bookmark-title>
|
4814
5037
|
<xsl:choose>
|
4815
5038
|
<xsl:when test="$lang = 'fr'">Tableaux</xsl:when>
|
4816
5039
|
<xsl:otherwise>Tables</xsl:otherwise>
|
4817
5040
|
</xsl:choose>
|
4818
5041
|
</fo:bookmark-title>
|
4819
|
-
<xsl:for-each select="
|
5042
|
+
<xsl:for-each select="$contents_nodes/table">
|
4820
5043
|
<fo:bookmark internal-destination="{@id}">
|
4821
5044
|
<fo:bookmark-title>
|
4822
5045
|
<xsl:value-of select="normalize-space(title)"/>
|
@@ -4825,6 +5048,8 @@
|
|
4825
5048
|
</xsl:for-each>
|
4826
5049
|
</fo:bookmark>
|
4827
5050
|
</xsl:if>
|
5051
|
+
|
5052
|
+
<!-- see template addBookmarks -->
|
4828
5053
|
</xsl:template><xsl:template name="getLangVersion">
|
4829
5054
|
<xsl:param name="lang"/>
|
4830
5055
|
<xsl:param name="doctype" select="''"/>
|
@@ -5023,12 +5248,140 @@
|
|
5023
5248
|
</fo:block-container>
|
5024
5249
|
</fo:block-container>
|
5025
5250
|
</xsl:template><xsl:template match="*[local-name()='sourcecode']/text()" priority="2">
|
5026
|
-
<xsl:
|
5251
|
+
<xsl:choose>
|
5252
|
+
<xsl:when test="normalize-space($syntax-highlight) = 'true' and normalize-space(../@lang) != ''"> <!-- condition for turn on of highlighting -->
|
5253
|
+
<xsl:variable name="syntax" select="java:org.metanorma.fop.Util.syntaxHighlight(., ../@lang)"/>
|
5254
|
+
<xsl:choose>
|
5255
|
+
<xsl:when test="normalize-space($syntax) != ''"><!-- if there is highlighted result -->
|
5256
|
+
<xsl:apply-templates select="xalan:nodeset($syntax)" mode="syntax_highlight"/> <!-- process span tags -->
|
5257
|
+
</xsl:when>
|
5258
|
+
<xsl:otherwise> <!-- if case of non-succesfull syntax highlight (for instance, unknown lang), process without highlighting -->
|
5259
|
+
<xsl:call-template name="add_spaces_to_sourcecode"/>
|
5260
|
+
</xsl:otherwise>
|
5261
|
+
</xsl:choose>
|
5262
|
+
</xsl:when>
|
5263
|
+
<xsl:otherwise>
|
5264
|
+
<xsl:call-template name="add_spaces_to_sourcecode"/>
|
5265
|
+
</xsl:otherwise>
|
5266
|
+
</xsl:choose>
|
5267
|
+
|
5268
|
+
</xsl:template><xsl:template name="add_spaces_to_sourcecode">
|
5269
|
+
<xsl:variable name="text_step1">
|
5027
5270
|
<xsl:call-template name="add-zero-spaces-equal"/>
|
5028
5271
|
</xsl:variable>
|
5029
|
-
<xsl:
|
5030
|
-
<xsl:
|
5031
|
-
|
5272
|
+
<xsl:variable name="text_step2">
|
5273
|
+
<xsl:call-template name="add-zero-spaces-java">
|
5274
|
+
<xsl:with-param name="text" select="$text_step1"/>
|
5275
|
+
</xsl:call-template>
|
5276
|
+
</xsl:variable>
|
5277
|
+
<xsl:value-of select="$text_step2"/>
|
5278
|
+
</xsl:template><xsl:template match="*" mode="syntax_highlight">
|
5279
|
+
<xsl:apply-templates mode="syntax_highlight"/>
|
5280
|
+
</xsl:template><xsl:variable name="syntax_highlight_styles_">
|
5281
|
+
<style class="hljs-addition" xsl:use-attribute-sets="hljs-addition"/>
|
5282
|
+
<style class="hljs-attr" xsl:use-attribute-sets="hljs-attr"/>
|
5283
|
+
<style class="hljs-attribute" xsl:use-attribute-sets="hljs-attribute"/>
|
5284
|
+
<style class="hljs-built_in" xsl:use-attribute-sets="hljs-built_in"/>
|
5285
|
+
<style class="hljs-bullet" xsl:use-attribute-sets="hljs-bullet"/>
|
5286
|
+
<style class="hljs-char_and_escape_" xsl:use-attribute-sets="hljs-char_and_escape_"/>
|
5287
|
+
<style class="hljs-code" xsl:use-attribute-sets="hljs-code"/>
|
5288
|
+
<style class="hljs-comment" xsl:use-attribute-sets="hljs-comment"/>
|
5289
|
+
<style class="hljs-deletion" xsl:use-attribute-sets="hljs-deletion"/>
|
5290
|
+
<style class="hljs-doctag" xsl:use-attribute-sets="hljs-doctag"/>
|
5291
|
+
<style class="hljs-emphasis" xsl:use-attribute-sets="hljs-emphasis"/>
|
5292
|
+
<style class="hljs-formula" xsl:use-attribute-sets="hljs-formula"/>
|
5293
|
+
<style class="hljs-keyword" xsl:use-attribute-sets="hljs-keyword"/>
|
5294
|
+
<style class="hljs-link" xsl:use-attribute-sets="hljs-link"/>
|
5295
|
+
<style class="hljs-literal" xsl:use-attribute-sets="hljs-literal"/>
|
5296
|
+
<style class="hljs-meta" xsl:use-attribute-sets="hljs-meta"/>
|
5297
|
+
<style class="hljs-meta_hljs-string" xsl:use-attribute-sets="hljs-meta_hljs-string"/>
|
5298
|
+
<style class="hljs-meta_hljs-keyword" xsl:use-attribute-sets="hljs-meta_hljs-keyword"/>
|
5299
|
+
<style class="hljs-name" xsl:use-attribute-sets="hljs-name"/>
|
5300
|
+
<style class="hljs-number" xsl:use-attribute-sets="hljs-number"/>
|
5301
|
+
<style class="hljs-operator" xsl:use-attribute-sets="hljs-operator"/>
|
5302
|
+
<style class="hljs-params" xsl:use-attribute-sets="hljs-params"/>
|
5303
|
+
<style class="hljs-property" xsl:use-attribute-sets="hljs-property"/>
|
5304
|
+
<style class="hljs-punctuation" xsl:use-attribute-sets="hljs-punctuation"/>
|
5305
|
+
<style class="hljs-quote" xsl:use-attribute-sets="hljs-quote"/>
|
5306
|
+
<style class="hljs-regexp" xsl:use-attribute-sets="hljs-regexp"/>
|
5307
|
+
<style class="hljs-section" xsl:use-attribute-sets="hljs-section"/>
|
5308
|
+
<style class="hljs-selector-attr" xsl:use-attribute-sets="hljs-selector-attr"/>
|
5309
|
+
<style class="hljs-selector-class" xsl:use-attribute-sets="hljs-selector-class"/>
|
5310
|
+
<style class="hljs-selector-id" xsl:use-attribute-sets="hljs-selector-id"/>
|
5311
|
+
<style class="hljs-selector-pseudo" xsl:use-attribute-sets="hljs-selector-pseudo"/>
|
5312
|
+
<style class="hljs-selector-tag" xsl:use-attribute-sets="hljs-selector-tag"/>
|
5313
|
+
<style class="hljs-string" xsl:use-attribute-sets="hljs-string"/>
|
5314
|
+
<style class="hljs-strong" xsl:use-attribute-sets="hljs-strong"/>
|
5315
|
+
<style class="hljs-subst" xsl:use-attribute-sets="hljs-subst"/>
|
5316
|
+
<style class="hljs-symbol" xsl:use-attribute-sets="hljs-symbol"/>
|
5317
|
+
<style class="hljs-tag" xsl:use-attribute-sets="hljs-tag"/>
|
5318
|
+
<!-- <style class="hljs-tag_hljs-attr" xsl:use-attribute-sets="hljs-tag_hljs-attr"></style> -->
|
5319
|
+
<!-- <style class="hljs-tag_hljs-name" xsl:use-attribute-sets="hljs-tag_hljs-name"></style> -->
|
5320
|
+
<style class="hljs-template-tag" xsl:use-attribute-sets="hljs-template-tag"/>
|
5321
|
+
<style class="hljs-template-variable" xsl:use-attribute-sets="hljs-template-variable"/>
|
5322
|
+
<style class="hljs-title" xsl:use-attribute-sets="hljs-title"/>
|
5323
|
+
<style class="hljs-title_and_class_" xsl:use-attribute-sets="hljs-title_and_class_"/>
|
5324
|
+
<style class="hljs-title_and_class__and_inherited__" xsl:use-attribute-sets="hljs-title_and_class__and_inherited__"/>
|
5325
|
+
<style class="hljs-title_and_function_" xsl:use-attribute-sets="hljs-title_and_function_"/>
|
5326
|
+
<style class="hljs-type" xsl:use-attribute-sets="hljs-type"/>
|
5327
|
+
<style class="hljs-variable" xsl:use-attribute-sets="hljs-variable"/>
|
5328
|
+
<style class="hljs-variable_and_language_" xsl:use-attribute-sets="hljs-variable_and_language_"/>
|
5329
|
+
</xsl:variable><xsl:variable name="syntax_highlight_styles" select="xalan:nodeset($syntax_highlight_styles_)"/><xsl:template match="span" mode="syntax_highlight" priority="2">
|
5330
|
+
<!-- <fo:inline color="green" font-style="italic"><xsl:apply-templates mode="syntax_highlight"/></fo:inline> -->
|
5331
|
+
<fo:inline>
|
5332
|
+
<xsl:variable name="classes_">
|
5333
|
+
<xsl:call-template name="split">
|
5334
|
+
<xsl:with-param name="pText" select="@class"/>
|
5335
|
+
<xsl:with-param name="sep" select="' '"/>
|
5336
|
+
</xsl:call-template>
|
5337
|
+
<!-- a few classes together (_and_ suffix) -->
|
5338
|
+
<xsl:if test="contains(@class, 'hljs-char') and contains(@class, 'escape_')">
|
5339
|
+
<item>hljs-char_and_escape_</item>
|
5340
|
+
</xsl:if>
|
5341
|
+
<xsl:if test="contains(@class, 'hljs-title') and contains(@class, 'class_')">
|
5342
|
+
<item>hljs-title_and_class_</item>
|
5343
|
+
</xsl:if>
|
5344
|
+
<xsl:if test="contains(@class, 'hljs-title') and contains(@class, 'class_') and contains(@class, 'inherited__')">
|
5345
|
+
<item>hljs-title_and_class__and_inherited__</item>
|
5346
|
+
</xsl:if>
|
5347
|
+
<xsl:if test="contains(@class, 'hljs-title') and contains(@class, 'function_')">
|
5348
|
+
<item>hljs-title_and_function_</item>
|
5349
|
+
</xsl:if>
|
5350
|
+
<xsl:if test="contains(@class, 'hljs-variable') and contains(@class, 'language_')">
|
5351
|
+
<item>hljs-variable_and_language_</item>
|
5352
|
+
</xsl:if>
|
5353
|
+
<!-- with parent classes (_ suffix) -->
|
5354
|
+
<xsl:if test="contains(@class, 'hljs-keyword') and contains(ancestor::*/@class, 'hljs-meta')">
|
5355
|
+
<item>hljs-meta_hljs-keyword</item>
|
5356
|
+
</xsl:if>
|
5357
|
+
<xsl:if test="contains(@class, 'hljs-string') and contains(ancestor::*/@class, 'hljs-meta')">
|
5358
|
+
<item>hljs-meta_hljs-string</item>
|
5359
|
+
</xsl:if>
|
5360
|
+
</xsl:variable>
|
5361
|
+
<xsl:variable name="classes" select="xalan:nodeset($classes_)"/>
|
5362
|
+
|
5363
|
+
<xsl:for-each select="$classes/item">
|
5364
|
+
<xsl:variable name="class_name" select="."/>
|
5365
|
+
<xsl:for-each select="$syntax_highlight_styles/style[@class = $class_name]/@*[not(local-name() = 'class')]">
|
5366
|
+
<xsl:attribute name="{local-name()}"><xsl:value-of select="."/></xsl:attribute>
|
5367
|
+
</xsl:for-each>
|
5368
|
+
</xsl:for-each>
|
5369
|
+
|
5370
|
+
<!-- <xsl:variable name="class_name">
|
5371
|
+
<xsl:choose>
|
5372
|
+
<xsl:when test="@class = 'hljs-attr' and ancestor::*/@class = 'hljs-tag'">hljs-tag_hljs-attr</xsl:when>
|
5373
|
+
<xsl:when test="@class = 'hljs-name' and ancestor::*/@class = 'hljs-tag'">hljs-tag_hljs-name</xsl:when>
|
5374
|
+
<xsl:when test="@class = 'hljs-string' and ancestor::*/@class = 'hljs-meta'">hljs-meta_hljs-string</xsl:when>
|
5375
|
+
<xsl:otherwise><xsl:value-of select="@class"/></xsl:otherwise>
|
5376
|
+
</xsl:choose>
|
5377
|
+
</xsl:variable>
|
5378
|
+
<xsl:for-each select="$syntax_highlight_styles/style[@class = $class_name]/@*[not(local-name() = 'class')]">
|
5379
|
+
<xsl:attribute name="{local-name()}"><xsl:value-of select="."/></xsl:attribute>
|
5380
|
+
</xsl:for-each> -->
|
5381
|
+
|
5382
|
+
<xsl:apply-templates mode="syntax_highlight"/></fo:inline>
|
5383
|
+
</xsl:template><xsl:template match="text()" mode="syntax_highlight" priority="2">
|
5384
|
+
<xsl:call-template name="add_spaces_to_sourcecode"/>
|
5032
5385
|
</xsl:template><xsl:template match="*[local-name() = 'sourcecode']/*[local-name() = 'name']">
|
5033
5386
|
<xsl:if test="normalize-space() != ''">
|
5034
5387
|
<fo:block xsl:use-attribute-sets="sourcecode-name-style">
|
@@ -5363,6 +5716,8 @@
|
|
5363
5716
|
</xsl:otherwise>
|
5364
5717
|
</xsl:choose> -->
|
5365
5718
|
</fo:block>
|
5719
|
+
</xsl:template><xsl:template match="*[local-name() = 'termsource']/text()[starts-with(., '[SOURCE: Adapted from: ')]" priority="2">
|
5720
|
+
<xsl:text>[</xsl:text><xsl:value-of select="substring-after(., '[SOURCE: ')"/>
|
5366
5721
|
</xsl:template><xsl:template match="*[local-name() = 'termsource']/text()">
|
5367
5722
|
<xsl:if test="normalize-space() != ''">
|
5368
5723
|
<xsl:value-of select="."/>
|
@@ -5409,11 +5764,14 @@
|
|
5409
5764
|
|
5410
5765
|
|
5411
5766
|
<fo:block-container margin-left="0mm">
|
5412
|
-
|
5413
|
-
<fo:block xsl:use-attribute-sets="quote-style">
|
5767
|
+
<fo:block-container xsl:use-attribute-sets="quote-style">
|
5414
5768
|
|
5415
|
-
<
|
5416
|
-
|
5769
|
+
<fo:block-container margin-left="0mm" margin-right="0mm">
|
5770
|
+
<fo:block role="BlockQuote">
|
5771
|
+
<xsl:apply-templates select="./node()[not(local-name() = 'author') and not(local-name() = 'source')]"/> <!-- process all nested nodes, except author and source -->
|
5772
|
+
</fo:block>
|
5773
|
+
</fo:block-container>
|
5774
|
+
</fo:block-container>
|
5417
5775
|
<xsl:if test="*[local-name() = 'author'] or *[local-name() = 'source']">
|
5418
5776
|
<fo:block xsl:use-attribute-sets="quote-source-style">
|
5419
5777
|
<!-- — ISO, ISO 7301:2011, Clause 1 -->
|
@@ -5434,26 +5792,11 @@
|
|
5434
5792
|
</xsl:template><xsl:template match="*[local-name() = 'author']">
|
5435
5793
|
<xsl:text>— </xsl:text>
|
5436
5794
|
<xsl:apply-templates/>
|
5437
|
-
</xsl:template><xsl:
|
5438
|
-
<xsl:
|
5439
|
-
|
5440
|
-
</xsl:for-each>
|
5441
|
-
<xsl:for-each select="//*[local-name() = 'references'][@hidden='true']/*[local-name() = 'bibitem']">
|
5442
|
-
<xsl:copy-of select="."/>
|
5443
|
-
</xsl:for-each>
|
5444
|
-
</xsl:variable><xsl:variable name="bibitem_hidden" select="xalan:nodeset($bibitem_hidden_)"/><xsl:template match="*[local-name() = 'eref']">
|
5445
|
-
|
5446
|
-
<xsl:variable name="bibitemid">
|
5447
|
-
<xsl:choose>
|
5448
|
-
<!-- <xsl:when test="//*[local-name() = 'bibitem'][@hidden='true' and @id = current()/@bibitemid]"></xsl:when>
|
5449
|
-
<xsl:when test="//*[local-name() = 'references'][@hidden='true']/*[local-name() = 'bibitem'][@id = current()/@bibitemid]"></xsl:when> -->
|
5450
|
-
<xsl:when test="$bibitem_hidden/*[local-name() = 'bibitem'][@id = current()/@bibitemid]"/>
|
5451
|
-
<xsl:otherwise><xsl:value-of select="@bibitemid"/></xsl:otherwise>
|
5452
|
-
</xsl:choose>
|
5453
|
-
</xsl:variable>
|
5454
|
-
|
5795
|
+
</xsl:template><xsl:template match="*[local-name() = 'eref']">
|
5796
|
+
<xsl:variable name="current_bibitemid" select="@bibitemid"/>
|
5797
|
+
<xsl:variable name="external-destination" select="normalize-space(key('bibitems', $current_bibitemid)/*[local-name() = 'uri'][@type = 'citation'])"/>
|
5455
5798
|
<xsl:choose>
|
5456
|
-
<xsl:when test="
|
5799
|
+
<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) -->
|
5457
5800
|
<fo:inline xsl:use-attribute-sets="eref-style">
|
5458
5801
|
<xsl:if test="@type = 'footnote'">
|
5459
5802
|
<xsl:attribute name="keep-together.within-line">always</xsl:attribute>
|
@@ -5467,8 +5810,8 @@
|
|
5467
5810
|
<xsl:variable name="text" select="normalize-space()"/>
|
5468
5811
|
|
5469
5812
|
|
5470
|
-
|
5471
|
-
<fo:basic-link
|
5813
|
+
|
5814
|
+
<fo:basic-link fox:alt-text="{@citeas}">
|
5472
5815
|
<xsl:if test="normalize-space(@citeas) = ''">
|
5473
5816
|
<xsl:attribute name="fox:alt-text"><xsl:value-of select="."/></xsl:attribute>
|
5474
5817
|
</xsl:if>
|
@@ -5481,14 +5824,21 @@
|
|
5481
5824
|
|
5482
5825
|
</xsl:if>
|
5483
5826
|
|
5484
|
-
|
5827
|
+
<xsl:choose>
|
5828
|
+
<xsl:when test="$external-destination != ''"> <!-- external hyperlink -->
|
5829
|
+
<xsl:attribute name="external-destination"><xsl:value-of select="$external-destination"/></xsl:attribute>
|
5830
|
+
</xsl:when>
|
5831
|
+
<xsl:otherwise>
|
5832
|
+
<xsl:attribute name="internal-destination"><xsl:value-of select="@bibitemid"/></xsl:attribute>
|
5833
|
+
</xsl:otherwise>
|
5834
|
+
</xsl:choose>
|
5485
5835
|
|
5486
5836
|
<xsl:apply-templates/>
|
5487
5837
|
</fo:basic-link>
|
5488
|
-
|
5838
|
+
|
5489
5839
|
</fo:inline>
|
5490
5840
|
</xsl:when>
|
5491
|
-
<xsl:otherwise>
|
5841
|
+
<xsl:otherwise> <!-- if there is key('bibitems_hidden', $current_bibitemid) -->
|
5492
5842
|
<fo:inline><xsl:apply-templates/></fo:inline>
|
5493
5843
|
</xsl:otherwise>
|
5494
5844
|
</xsl:choose>
|
@@ -5565,6 +5915,36 @@
|
|
5565
5915
|
<xsl:with-param name="count" select="$count - 1"/>
|
5566
5916
|
</xsl:call-template>
|
5567
5917
|
</xsl:if>
|
5918
|
+
</xsl:template><xsl:template match="*[local-name() = 'preferred']">
|
5919
|
+
<xsl:variable name="level">
|
5920
|
+
<xsl:call-template name="getLevel"/>
|
5921
|
+
</xsl:variable>
|
5922
|
+
<xsl:variable name="font-size">
|
5923
|
+
|
5924
|
+
<xsl:choose>
|
5925
|
+
<xsl:when test="$level >= 2">11pt</xsl:when>
|
5926
|
+
<xsl:otherwise>12pt</xsl:otherwise>
|
5927
|
+
</xsl:choose>
|
5928
|
+
|
5929
|
+
</xsl:variable>
|
5930
|
+
<xsl:variable name="levelTerm">
|
5931
|
+
<xsl:call-template name="getLevelTermName"/>
|
5932
|
+
</xsl:variable>
|
5933
|
+
<fo:block font-size="{normalize-space($font-size)}" role="H{$levelTerm}" xsl:use-attribute-sets="preferred-block-style">
|
5934
|
+
|
5935
|
+
|
5936
|
+
|
5937
|
+
<xsl:if test="parent::*[local-name() = 'term'] and not(preceding-sibling::*[local-name() = 'preferred'])"> <!-- if first preffered in term, then display term's name -->
|
5938
|
+
<fo:block xsl:use-attribute-sets="term-name-style">
|
5939
|
+
<xsl:apply-templates select="ancestor::*[local-name() = 'term'][1]/*[local-name() = 'name']"/>
|
5940
|
+
</fo:block>
|
5941
|
+
</xsl:if>
|
5942
|
+
|
5943
|
+
<fo:block xsl:use-attribute-sets="preferred-term-style">
|
5944
|
+
<xsl:call-template name="setStyle_preferred"/>
|
5945
|
+
<xsl:apply-templates/>
|
5946
|
+
</fo:block>
|
5947
|
+
</fo:block>
|
5568
5948
|
</xsl:template><xsl:template match="*[local-name() = 'domain']">
|
5569
5949
|
<fo:inline xsl:use-attribute-sets="domain-style"><<xsl:apply-templates/>></fo:inline>
|
5570
5950
|
<xsl:text> </xsl:text>
|
@@ -5653,24 +6033,8 @@
|
|
5653
6033
|
<xsl:value-of select="java:replaceAll(java:java.lang.String.new(.),' ',' ')"/>
|
5654
6034
|
</xsl:template><xsl:variable name="ul_labels_">
|
5655
6035
|
|
5656
|
-
|
5657
|
-
|
5658
|
-
|
5659
|
-
|
5660
|
-
|
5661
|
-
|
5662
|
-
|
5663
|
-
|
5664
|
-
|
5665
|
-
|
5666
|
-
|
5667
|
-
|
5668
|
-
|
5669
|
-
<label>—</label> <!-- em dash -->
|
5670
|
-
|
5671
|
-
|
5672
|
-
|
5673
|
-
|
6036
|
+
<label>—</label> <!-- em dash -->
|
6037
|
+
|
5674
6038
|
</xsl:variable><xsl:variable name="ul_labels" select="xalan:nodeset($ul_labels_)"/><xsl:template name="setULLabel">
|
5675
6039
|
<xsl:variable name="list_level_" select="count(ancestor::*[local-name() = 'ul']) + count(ancestor::*[local-name() = 'ol'])"/>
|
5676
6040
|
<xsl:variable name="list_level">
|
@@ -5696,6 +6060,91 @@
|
|
5696
6060
|
</xsl:template><xsl:template match="label" mode="ul_labels">
|
5697
6061
|
<xsl:copy-of select="@*[not(local-name() = 'level')]"/>
|
5698
6062
|
<xsl:value-of select="."/>
|
6063
|
+
</xsl:template><xsl:template name="getListItemFormat">
|
6064
|
+
<!-- Example: for BSI <?list-type loweralpha?> -->
|
6065
|
+
<xsl:variable name="processing_instruction_type" select="normalize-space(../preceding-sibling::*[1]/processing-instruction('list-type'))"/>
|
6066
|
+
<xsl:choose>
|
6067
|
+
<xsl:when test="local-name(..) = 'ul'">
|
6068
|
+
<xsl:choose>
|
6069
|
+
<xsl:when test="normalize-space($processing_instruction_type) = 'simple'"/>
|
6070
|
+
<xsl:otherwise><xsl:call-template name="setULLabel"/></xsl:otherwise>
|
6071
|
+
</xsl:choose>
|
6072
|
+
</xsl:when>
|
6073
|
+
<xsl:otherwise> <!-- for ordered lists 'ol' -->
|
6074
|
+
|
6075
|
+
<!-- Example: for BSI <?list-start 2?> -->
|
6076
|
+
<xsl:variable name="processing_instruction_start" select="normalize-space(../preceding-sibling::*[1]/processing-instruction('list-start'))"/>
|
6077
|
+
|
6078
|
+
<xsl:variable name="start_value">
|
6079
|
+
<xsl:choose>
|
6080
|
+
<xsl:when test="normalize-space($processing_instruction_start) != ''">
|
6081
|
+
<xsl:value-of select="number($processing_instruction_start) - 1"/><!-- if start="3" then start_value=2 + xsl:number(1) = 3 -->
|
6082
|
+
</xsl:when>
|
6083
|
+
<xsl:when test="normalize-space(../@start) != ''">
|
6084
|
+
<xsl:value-of select="number(../@start) - 1"/><!-- if start="3" then start_value=2 + xsl:number(1) = 3 -->
|
6085
|
+
</xsl:when>
|
6086
|
+
<xsl:otherwise>0</xsl:otherwise>
|
6087
|
+
</xsl:choose>
|
6088
|
+
</xsl:variable>
|
6089
|
+
|
6090
|
+
<xsl:variable name="curr_value"><xsl:number/></xsl:variable>
|
6091
|
+
|
6092
|
+
<xsl:variable name="type">
|
6093
|
+
<xsl:choose>
|
6094
|
+
<xsl:when test="normalize-space($processing_instruction_type) != ''"><xsl:value-of select="$processing_instruction_type"/></xsl:when>
|
6095
|
+
<xsl:when test="normalize-space(../@type) != ''"><xsl:value-of select="../@type"/></xsl:when>
|
6096
|
+
|
6097
|
+
<xsl:otherwise> <!-- if no @type or @class = 'steps' -->
|
6098
|
+
|
6099
|
+
<xsl:variable name="list_level_" select="count(ancestor::*[local-name() = 'ul']) + count(ancestor::*[local-name() = 'ol'])"/>
|
6100
|
+
<xsl:variable name="list_level">
|
6101
|
+
<xsl:choose>
|
6102
|
+
<xsl:when test="$list_level_ <= 5"><xsl:value-of select="$list_level_"/></xsl:when>
|
6103
|
+
<xsl:otherwise><xsl:value-of select="$list_level_ mod 5"/></xsl:otherwise>
|
6104
|
+
</xsl:choose>
|
6105
|
+
</xsl:variable>
|
6106
|
+
|
6107
|
+
<xsl:choose>
|
6108
|
+
<xsl:when test="$list_level mod 5 = 0">roman_upper</xsl:when> <!-- level 5 -->
|
6109
|
+
<xsl:when test="$list_level mod 4 = 0">alphabet_upper</xsl:when> <!-- level 4 -->
|
6110
|
+
<xsl:when test="$list_level mod 3 = 0">roman</xsl:when> <!-- level 3 -->
|
6111
|
+
<xsl:when test="$list_level mod 2 = 0 and ancestor::*/@class = 'steps'">alphabet</xsl:when> <!-- level 2 and @class = 'steps'-->
|
6112
|
+
<xsl:when test="$list_level mod 2 = 0">arabic</xsl:when> <!-- level 2 -->
|
6113
|
+
<xsl:otherwise> <!-- level 1 -->
|
6114
|
+
<xsl:choose>
|
6115
|
+
<xsl:when test="ancestor::*/@class = 'steps'">arabic</xsl:when>
|
6116
|
+
<xsl:otherwise>alphabet</xsl:otherwise>
|
6117
|
+
</xsl:choose>
|
6118
|
+
</xsl:otherwise>
|
6119
|
+
</xsl:choose>
|
6120
|
+
|
6121
|
+
</xsl:otherwise>
|
6122
|
+
</xsl:choose>
|
6123
|
+
</xsl:variable>
|
6124
|
+
|
6125
|
+
<xsl:variable name="format">
|
6126
|
+
<xsl:choose>
|
6127
|
+
<xsl:when test="$type = 'arabic'">
|
6128
|
+
1)
|
6129
|
+
</xsl:when>
|
6130
|
+
<xsl:when test="$type = 'alphabet'">
|
6131
|
+
a)
|
6132
|
+
</xsl:when>
|
6133
|
+
<xsl:when test="$type = 'alphabet_upper'">
|
6134
|
+
A)
|
6135
|
+
</xsl:when>
|
6136
|
+
<xsl:when test="$type = 'roman'">
|
6137
|
+
i)
|
6138
|
+
</xsl:when>
|
6139
|
+
<xsl:when test="$type = 'roman_upper'">I.</xsl:when>
|
6140
|
+
<xsl:otherwise>1.</xsl:otherwise> <!-- for any case, if $type has non-determined value, not using -->
|
6141
|
+
</xsl:choose>
|
6142
|
+
</xsl:variable>
|
6143
|
+
|
6144
|
+
<xsl:number value="$start_value + $curr_value" format="{normalize-space($format)}" lang="en"/>
|
6145
|
+
|
6146
|
+
</xsl:otherwise>
|
6147
|
+
</xsl:choose>
|
5699
6148
|
</xsl:template><xsl:template match="*[local-name() = 'ul'] | *[local-name() = 'ol']">
|
5700
6149
|
<xsl:choose>
|
5701
6150
|
<xsl:when test="parent::*[local-name() = 'note'] or parent::*[local-name() = 'termnote']">
|
@@ -5711,18 +6160,71 @@
|
|
5711
6160
|
|
5712
6161
|
<fo:block-container margin-left="0mm">
|
5713
6162
|
<fo:block>
|
5714
|
-
<xsl:apply-templates select="." mode="
|
6163
|
+
<xsl:apply-templates select="." mode="list"/>
|
5715
6164
|
</fo:block>
|
5716
6165
|
</fo:block-container>
|
5717
6166
|
</fo:block-container>
|
5718
6167
|
</xsl:when>
|
5719
6168
|
<xsl:otherwise>
|
5720
6169
|
<fo:block>
|
5721
|
-
<xsl:apply-templates select="." mode="
|
6170
|
+
<xsl:apply-templates select="." mode="list"/>
|
5722
6171
|
</fo:block>
|
5723
6172
|
</xsl:otherwise>
|
5724
6173
|
</xsl:choose>
|
5725
|
-
</xsl:template><xsl:
|
6174
|
+
</xsl:template><xsl:template match="*[local-name()='ul'] | *[local-name()='ol']" mode="list" name="list">
|
6175
|
+
<fo:list-block xsl:use-attribute-sets="list-style">
|
6176
|
+
|
6177
|
+
|
6178
|
+
|
6179
|
+
|
6180
|
+
|
6181
|
+
|
6182
|
+
|
6183
|
+
|
6184
|
+
|
6185
|
+
<xsl:apply-templates select="node()[not(local-name() = 'note')]"/>
|
6186
|
+
</fo:list-block>
|
6187
|
+
<!-- <xsl:for-each select="./iho:note">
|
6188
|
+
<xsl:call-template name="note"/>
|
6189
|
+
</xsl:for-each> -->
|
6190
|
+
<xsl:apply-templates select="./*[local-name() = 'note']"/>
|
6191
|
+
</xsl:template><xsl:template match="*[local-name()='li']">
|
6192
|
+
<fo:list-item xsl:use-attribute-sets="list-item-style">
|
6193
|
+
<xsl:copy-of select="@id"/>
|
6194
|
+
|
6195
|
+
|
6196
|
+
|
6197
|
+
<fo:list-item-label end-indent="label-end()">
|
6198
|
+
<fo:block xsl:use-attribute-sets="list-item-label-style">
|
6199
|
+
|
6200
|
+
|
6201
|
+
|
6202
|
+
<!-- if 'p' contains all text in 'add' first and last elements in first p are 'add' -->
|
6203
|
+
<xsl:if test="*[1][count(node()[normalize-space() != '']) = 1 and *[local-name() = 'add']]">
|
6204
|
+
<xsl:call-template name="append_add-style"/>
|
6205
|
+
</xsl:if>
|
6206
|
+
|
6207
|
+
<xsl:call-template name="getListItemFormat"/>
|
6208
|
+
</fo:block>
|
6209
|
+
</fo:list-item-label>
|
6210
|
+
<fo:list-item-body start-indent="body-start()" xsl:use-attribute-sets="list-item-body-style">
|
6211
|
+
<fo:block>
|
6212
|
+
|
6213
|
+
|
6214
|
+
|
6215
|
+
|
6216
|
+
|
6217
|
+
<xsl:apply-templates/>
|
6218
|
+
|
6219
|
+
<!-- <xsl:apply-templates select="node()[not(local-name() = 'note')]" />
|
6220
|
+
|
6221
|
+
<xsl:for-each select="./bsi:note">
|
6222
|
+
<xsl:call-template name="note"/>
|
6223
|
+
</xsl:for-each> -->
|
6224
|
+
</fo:block>
|
6225
|
+
</fo:list-item-body>
|
6226
|
+
</fo:list-item>
|
6227
|
+
</xsl:template><xsl:variable name="index" select="document($external_index)"/><xsl:variable name="bookmark_in_fn">
|
5726
6228
|
<xsl:for-each select="//*[local-name() = 'bookmark'][ancestor::*[local-name() = 'fn']]">
|
5727
6229
|
<bookmark><xsl:value-of select="@id"/></bookmark>
|
5728
6230
|
</xsl:for-each>
|
@@ -5744,7 +6246,7 @@
|
|
5744
6246
|
<!-- split <xref target="bm1" to="End" pagenumber="true"> to two xref:
|
5745
6247
|
<xref target="bm1" pagenumber="true"> and <xref target="End" pagenumber="true"> -->
|
5746
6248
|
<xsl:if test="@to">
|
5747
|
-
<xsl:value-of select="$
|
6249
|
+
<xsl:value-of select="$en_dash"/>
|
5748
6250
|
<xsl:copy>
|
5749
6251
|
<xsl:copy-of select="@*"/>
|
5750
6252
|
<xsl:attribute name="target"><xsl:value-of select="@to"/></xsl:attribute>
|
@@ -5769,7 +6271,7 @@
|
|
5769
6271
|
<xsl:param name="target"/>
|
5770
6272
|
<!-- <node></node> -->
|
5771
6273
|
<xsl:choose>
|
5772
|
-
<xsl:when test="self::text() and (normalize-space(.) = ',' or normalize-space(.) = $
|
6274
|
+
<xsl:when test="self::text() and (normalize-space(.) = ',' or normalize-space(.) = $en_dash) and $remove = 'true'">
|
5773
6275
|
<!-- skip text (i.e. remove it) and process next element -->
|
5774
6276
|
<!-- [removed_<xsl:value-of select="."/>] -->
|
5775
6277
|
<xsl:apply-templates select="following-sibling::node()[1]" mode="process_li_element">
|
@@ -5853,12 +6355,22 @@
|
|
5853
6355
|
</xsl:variable>
|
5854
6356
|
<xsl:variable name="xref_number"><xsl:number count="*[local-name() = 'xref']"/></xsl:variable>
|
5855
6357
|
<xsl:value-of select="concat($docid, '_', $item_number, '_', $xref_number)"/> <!-- $level, '_', -->
|
6358
|
+
</xsl:template><xsl:template match="*[local-name() = 'indexsect']/*[local-name() = 'title']" priority="4">
|
6359
|
+
<fo:block xsl:use-attribute-sets="indexsect-title-style">
|
6360
|
+
<!-- Index -->
|
6361
|
+
<xsl:apply-templates/>
|
6362
|
+
</fo:block>
|
6363
|
+
</xsl:template><xsl:template match="*[local-name() = 'indexsect']/*[local-name() = 'clause']/*[local-name() = 'title']" priority="4">
|
6364
|
+
<!-- Letter A, B, C, ... -->
|
6365
|
+
<fo:block xsl:use-attribute-sets="indexsect-clause-title-style">
|
6366
|
+
<xsl:apply-templates/>
|
6367
|
+
</fo:block>
|
5856
6368
|
</xsl:template><xsl:template match="*[local-name() = 'indexsect']/*[local-name() = 'clause']" priority="4">
|
5857
6369
|
<xsl:apply-templates/>
|
5858
6370
|
<fo:block>
|
5859
|
-
|
5860
|
-
|
5861
|
-
|
6371
|
+
<xsl:if test="following-sibling::*[local-name() = 'clause']">
|
6372
|
+
<fo:block> </fo:block>
|
6373
|
+
</xsl:if>
|
5862
6374
|
</fo:block>
|
5863
6375
|
</xsl:template><xsl:template match="*[local-name() = 'indexsect']//*[local-name() = 'ul']" priority="4">
|
5864
6376
|
<xsl:apply-templates/>
|
@@ -5868,6 +6380,9 @@
|
|
5868
6380
|
|
5869
6381
|
<xsl:apply-templates/>
|
5870
6382
|
</fo:block>
|
6383
|
+
</xsl:template><xsl:template match="*[local-name() = 'indexsect']//*[local-name() = 'li']/text()">
|
6384
|
+
<!-- to split by '_' and other chars -->
|
6385
|
+
<xsl:call-template name="add-zero-spaces-java"/>
|
5871
6386
|
</xsl:template><xsl:template match="*[local-name() = 'bookmark']" name="bookmark">
|
5872
6387
|
<fo:inline id="{@id}" font-size="1pt"/>
|
5873
6388
|
</xsl:template><xsl:template match="*[local-name() = 'errata']">
|
@@ -6174,6 +6689,24 @@
|
|
6174
6689
|
<xsl:apply-templates/>
|
6175
6690
|
</fo:inline>
|
6176
6691
|
</xsl:template><xsl:template match="*[local-name() = 'bibitem']/*[local-name() = 'note']" priority="2">
|
6692
|
+
|
6693
|
+
<!-- list of footnotes to calculate actual footnotes number -->
|
6694
|
+
<xsl:variable name="p_fn_">
|
6695
|
+
<xsl:call-template name="get_fn_list"/>
|
6696
|
+
</xsl:variable>
|
6697
|
+
<xsl:variable name="p_fn" select="xalan:nodeset($p_fn_)"/>
|
6698
|
+
<xsl:variable name="gen_id" select="generate-id(.)"/>
|
6699
|
+
<xsl:variable name="lang" select="ancestor::*[contains(local-name(), '-standard')]/*[local-name()='bibdata']//*[local-name()='language'][@current = 'true']"/>
|
6700
|
+
<!-- fn sequence number in document -->
|
6701
|
+
<xsl:variable name="current_fn_number">
|
6702
|
+
<xsl:choose>
|
6703
|
+
<xsl:when test="@current_fn_number"><xsl:value-of select="@current_fn_number"/></xsl:when> <!-- for BSI -->
|
6704
|
+
<xsl:otherwise>
|
6705
|
+
<!-- <xsl:value-of select="count($p_fn//fn[@reference = $reference]/preceding-sibling::fn) + 1" /> -->
|
6706
|
+
<xsl:value-of select="count($p_fn//fn[@gen_id = $gen_id]/preceding-sibling::fn) + 1"/>
|
6707
|
+
</xsl:otherwise>
|
6708
|
+
</xsl:choose>
|
6709
|
+
</xsl:variable>
|
6177
6710
|
<fo:footnote>
|
6178
6711
|
<xsl:variable name="number">
|
6179
6712
|
|
@@ -6182,22 +6715,26 @@
|
|
6182
6715
|
<xsl:number level="any" count="*[local-name() = 'references'][preceding-sibling::*[local-name() = 'references']]//*[local-name() = 'bibitem']/*[local-name() = 'note']"/>
|
6183
6716
|
</xsl:when>
|
6184
6717
|
<xsl:otherwise>
|
6185
|
-
<xsl:
|
6718
|
+
<xsl:value-of select="$current_fn_number"/>
|
6186
6719
|
</xsl:otherwise>
|
6187
6720
|
</xsl:choose>
|
6188
6721
|
|
6189
6722
|
</xsl:variable>
|
6723
|
+
|
6724
|
+
<xsl:variable name="current_fn_number_text">
|
6725
|
+
<xsl:value-of select="$number"/>
|
6726
|
+
|
6727
|
+
</xsl:variable>
|
6728
|
+
|
6190
6729
|
<fo:inline xsl:use-attribute-sets="bibitem-note-fn-style">
|
6191
|
-
<fo:basic-link internal-destination="{
|
6192
|
-
<xsl:value-of select="$
|
6193
|
-
|
6730
|
+
<fo:basic-link internal-destination="{$gen_id}" fox:alt-text="footnote {$number}">
|
6731
|
+
<xsl:value-of select="$current_fn_number_text"/>
|
6194
6732
|
</fo:basic-link>
|
6195
6733
|
</fo:inline>
|
6196
6734
|
<fo:footnote-body>
|
6197
6735
|
<fo:block xsl:use-attribute-sets="bibitem-note-fn-body-style">
|
6198
|
-
<fo:inline id="{
|
6199
|
-
<xsl:value-of select="$
|
6200
|
-
|
6736
|
+
<fo:inline id="{$gen_id}" xsl:use-attribute-sets="bibitem-note-fn-number-style">
|
6737
|
+
<xsl:value-of select="$current_fn_number_text"/>
|
6201
6738
|
</fo:inline>
|
6202
6739
|
<xsl:apply-templates/>
|
6203
6740
|
</fo:block>
|
@@ -6323,7 +6860,7 @@
|
|
6323
6860
|
</fo:table-body>
|
6324
6861
|
</fo:table>
|
6325
6862
|
</fo:block>
|
6326
|
-
</xsl:template><xsl:template match="*[local-name() = 'toc']//*[local-name() = 'li']">
|
6863
|
+
</xsl:template><xsl:template match="*[local-name() = 'toc']//*[local-name() = 'li']" priority="2">
|
6327
6864
|
<fo:table-row min-height="5mm">
|
6328
6865
|
<xsl:apply-templates/>
|
6329
6866
|
</fo:table-row>
|
@@ -6443,6 +6980,78 @@
|
|
6443
6980
|
<xsl:apply-templates/>
|
6444
6981
|
</fo:block>
|
6445
6982
|
|
6983
|
+
</xsl:template><xsl:template match="@*|node()" mode="update_xml_step1">
|
6984
|
+
<xsl:copy>
|
6985
|
+
<xsl:apply-templates select="@*|node()" mode="update_xml_step1"/>
|
6986
|
+
</xsl:copy>
|
6987
|
+
</xsl:template><xsl:template match="*[local-name() = 'preface']" mode="update_xml_step1">
|
6988
|
+
<xsl:copy>
|
6989
|
+
<xsl:copy-of select="@*"/>
|
6990
|
+
|
6991
|
+
<xsl:variable name="nodes_preface_">
|
6992
|
+
<xsl:for-each select="*">
|
6993
|
+
<node id="{@id}"/>
|
6994
|
+
</xsl:for-each>
|
6995
|
+
</xsl:variable>
|
6996
|
+
<xsl:variable name="nodes_preface" select="xalan:nodeset($nodes_preface_)"/>
|
6997
|
+
|
6998
|
+
<xsl:for-each select="*">
|
6999
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
7000
|
+
|
7001
|
+
<!-- process Section's title -->
|
7002
|
+
<xsl:variable name="preceding-sibling_id" select="$nodes_preface/node[@id = current()/@id]/preceding-sibling::node[1]/@id"/>
|
7003
|
+
<xsl:if test="$preceding-sibling_id != ''">
|
7004
|
+
<xsl:apply-templates select="parent::*/*[@type = 'section-title' and @id = $preceding-sibling_id and not(@displayorder)]" mode="update_xml_step1"/>
|
7005
|
+
</xsl:if>
|
7006
|
+
|
7007
|
+
<xsl:choose>
|
7008
|
+
<xsl:when test="@type = 'section-title' and not(@displayorder)"><!-- skip, don't copy, because copied in above 'apply-templates' --></xsl:when>
|
7009
|
+
<xsl:otherwise>
|
7010
|
+
<xsl:apply-templates select="." mode="update_xml_step1"/>
|
7011
|
+
</xsl:otherwise>
|
7012
|
+
</xsl:choose>
|
7013
|
+
|
7014
|
+
</xsl:for-each>
|
7015
|
+
</xsl:copy>
|
7016
|
+
</xsl:template><xsl:template match="*[local-name() = 'sections']" mode="update_xml_step1">
|
7017
|
+
<xsl:copy>
|
7018
|
+
<xsl:copy-of select="@*"/>
|
7019
|
+
|
7020
|
+
<xsl:variable name="nodes_sections_">
|
7021
|
+
<xsl:for-each select="*">
|
7022
|
+
<node id="{@id}"/>
|
7023
|
+
</xsl:for-each>
|
7024
|
+
</xsl:variable>
|
7025
|
+
<xsl:variable name="nodes_sections" select="xalan:nodeset($nodes_sections_)"/>
|
7026
|
+
|
7027
|
+
<!-- move section 'Normative references' inside 'sections' -->
|
7028
|
+
<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']]">
|
7029
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
7030
|
+
|
7031
|
+
<!-- process Section's title -->
|
7032
|
+
<xsl:variable name="preceding-sibling_id" select="$nodes_sections/node[@id = current()/@id]/preceding-sibling::node[1]/@id"/>
|
7033
|
+
<xsl:if test="$preceding-sibling_id != ''">
|
7034
|
+
<xsl:apply-templates select="parent::*/*[@type = 'section-title' and @id = $preceding-sibling_id and not(@displayorder)]" mode="update_xml_step1"/>
|
7035
|
+
</xsl:if>
|
7036
|
+
|
7037
|
+
<xsl:choose>
|
7038
|
+
<xsl:when test="@type = 'section-title' and not(@displayorder)"><!-- skip, don't copy, because copied in above 'apply-templates' --></xsl:when>
|
7039
|
+
<xsl:otherwise>
|
7040
|
+
<xsl:apply-templates select="." mode="update_xml_step1"/>
|
7041
|
+
</xsl:otherwise>
|
7042
|
+
</xsl:choose>
|
7043
|
+
|
7044
|
+
</xsl:for-each>
|
7045
|
+
</xsl:copy>
|
7046
|
+
</xsl:template><xsl:template match="*[local-name() = 'bibliography']" mode="update_xml_step1">
|
7047
|
+
<xsl:copy>
|
7048
|
+
<xsl:copy-of select="@*"/>
|
7049
|
+
<!-- copy all elements from bibliography except 'Normative references' (moved to 'sections') -->
|
7050
|
+
<xsl:for-each select="*[not(@normative='true') and not(*[*[@normative='true']])]">
|
7051
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
7052
|
+
<xsl:apply-templates select="." mode="update_xml_step1"/>
|
7053
|
+
</xsl:for-each>
|
7054
|
+
</xsl:copy>
|
6446
7055
|
</xsl:template><xsl:template name="convertDate">
|
6447
7056
|
<xsl:param name="date"/>
|
6448
7057
|
<xsl:param name="format" select="'short'"/>
|
@@ -6556,9 +7165,6 @@
|
|
6556
7165
|
<xsl:otherwise><xsl:value-of select="$charAtEnd"/></xsl:otherwise>
|
6557
7166
|
</xsl:choose>
|
6558
7167
|
</xsl:template><xsl:template name="addPDFUAmeta">
|
6559
|
-
<xsl:variable name="lang">
|
6560
|
-
<xsl:call-template name="getLang"/>
|
6561
|
-
</xsl:variable>
|
6562
7168
|
<pdf:catalog xmlns:pdf="http://xmlgraphics.apache.org/fop/extensions/pdf">
|
6563
7169
|
<pdf:dictionary type="normal" key="ViewerPreferences">
|
6564
7170
|
<pdf:boolean key="DisplayDocTitle">true</pdf:boolean>
|
@@ -6786,10 +7392,12 @@
|
|
6786
7392
|
<xsl:param name="key"/>
|
6787
7393
|
<xsl:param name="formatted">false</xsl:param>
|
6788
7394
|
<xsl:param name="lang"/>
|
7395
|
+
<xsl:param name="returnEmptyIfNotFound">false</xsl:param>
|
6789
7396
|
|
6790
7397
|
<xsl:variable name="curr_lang">
|
6791
7398
|
<xsl:choose>
|
6792
7399
|
<xsl:when test="$lang != ''"><xsl:value-of select="$lang"/></xsl:when>
|
7400
|
+
<xsl:when test="$returnEmptyIfNotFound = 'true'"/>
|
6793
7401
|
<xsl:otherwise>
|
6794
7402
|
<xsl:call-template name="getLang"/>
|
6795
7403
|
</xsl:otherwise>
|
@@ -6824,6 +7432,7 @@
|
|
6824
7432
|
</xsl:otherwise>
|
6825
7433
|
</xsl:choose>
|
6826
7434
|
</xsl:when>
|
7435
|
+
<xsl:when test="$returnEmptyIfNotFound = 'true'"/>
|
6827
7436
|
<xsl:otherwise>
|
6828
7437
|
<xsl:variable name="key_">
|
6829
7438
|
<xsl:call-template name="capitalize">
|
@@ -6893,53 +7502,153 @@
|
|
6893
7502
|
<xsl:param name="first"/>
|
6894
7503
|
<xsl:if test="$number != ''">
|
6895
7504
|
<xsl:variable name="words">
|
6896
|
-
|
6897
|
-
<
|
6898
|
-
|
6899
|
-
|
6900
|
-
|
6901
|
-
|
6902
|
-
|
6903
|
-
|
6904
|
-
|
6905
|
-
|
6906
|
-
|
6907
|
-
|
6908
|
-
|
6909
|
-
|
6910
|
-
|
6911
|
-
|
6912
|
-
|
6913
|
-
|
6914
|
-
|
6915
|
-
|
6916
|
-
|
6917
|
-
|
6918
|
-
|
6919
|
-
|
6920
|
-
|
6921
|
-
|
6922
|
-
|
6923
|
-
|
6924
|
-
|
6925
|
-
|
6926
|
-
|
6927
|
-
|
6928
|
-
|
6929
|
-
|
6930
|
-
|
6931
|
-
|
6932
|
-
|
6933
|
-
|
6934
|
-
|
6935
|
-
|
6936
|
-
|
6937
|
-
|
6938
|
-
|
6939
|
-
|
6940
|
-
|
6941
|
-
|
6942
|
-
|
7505
|
+
<words>
|
7506
|
+
<xsl:choose>
|
7507
|
+
<xsl:when test="$lang = 'fr'"> <!-- https://en.wiktionary.org/wiki/Appendix:French_numbers -->
|
7508
|
+
<word cardinal="1">Une-</word>
|
7509
|
+
<word ordinal="1">Première </word>
|
7510
|
+
<word cardinal="2">Deux-</word>
|
7511
|
+
<word ordinal="2">Seconde </word>
|
7512
|
+
<word cardinal="3">Trois-</word>
|
7513
|
+
<word ordinal="3">Tierce </word>
|
7514
|
+
<word cardinal="4">Quatre-</word>
|
7515
|
+
<word ordinal="4">Quatrième </word>
|
7516
|
+
<word cardinal="5">Cinq-</word>
|
7517
|
+
<word ordinal="5">Cinquième </word>
|
7518
|
+
<word cardinal="6">Six-</word>
|
7519
|
+
<word ordinal="6">Sixième </word>
|
7520
|
+
<word cardinal="7">Sept-</word>
|
7521
|
+
<word ordinal="7">Septième </word>
|
7522
|
+
<word cardinal="8">Huit-</word>
|
7523
|
+
<word ordinal="8">Huitième </word>
|
7524
|
+
<word cardinal="9">Neuf-</word>
|
7525
|
+
<word ordinal="9">Neuvième </word>
|
7526
|
+
<word ordinal="10">Dixième </word>
|
7527
|
+
<word ordinal="11">Onzième </word>
|
7528
|
+
<word ordinal="12">Douzième </word>
|
7529
|
+
<word ordinal="13">Treizième </word>
|
7530
|
+
<word ordinal="14">Quatorzième </word>
|
7531
|
+
<word ordinal="15">Quinzième </word>
|
7532
|
+
<word ordinal="16">Seizième </word>
|
7533
|
+
<word ordinal="17">Dix-septième </word>
|
7534
|
+
<word ordinal="18">Dix-huitième </word>
|
7535
|
+
<word ordinal="19">Dix-neuvième </word>
|
7536
|
+
<word cardinal="20">Vingt-</word>
|
7537
|
+
<word ordinal="20">Vingtième </word>
|
7538
|
+
<word cardinal="30">Trente-</word>
|
7539
|
+
<word ordinal="30">Trentième </word>
|
7540
|
+
<word cardinal="40">Quarante-</word>
|
7541
|
+
<word ordinal="40">Quarantième </word>
|
7542
|
+
<word cardinal="50">Cinquante-</word>
|
7543
|
+
<word ordinal="50">Cinquantième </word>
|
7544
|
+
<word cardinal="60">Soixante-</word>
|
7545
|
+
<word ordinal="60">Soixantième </word>
|
7546
|
+
<word cardinal="70">Septante-</word>
|
7547
|
+
<word ordinal="70">Septantième </word>
|
7548
|
+
<word cardinal="80">Huitante-</word>
|
7549
|
+
<word ordinal="80">Huitantième </word>
|
7550
|
+
<word cardinal="90">Nonante-</word>
|
7551
|
+
<word ordinal="90">Nonantième </word>
|
7552
|
+
<word cardinal="100">Cent-</word>
|
7553
|
+
<word ordinal="100">Centième </word>
|
7554
|
+
</xsl:when>
|
7555
|
+
<xsl:when test="$lang = 'ru'">
|
7556
|
+
<word cardinal="1">Одна-</word>
|
7557
|
+
<word ordinal="1">Первое </word>
|
7558
|
+
<word cardinal="2">Две-</word>
|
7559
|
+
<word ordinal="2">Второе </word>
|
7560
|
+
<word cardinal="3">Три-</word>
|
7561
|
+
<word ordinal="3">Третье </word>
|
7562
|
+
<word cardinal="4">Четыре-</word>
|
7563
|
+
<word ordinal="4">Четвертое </word>
|
7564
|
+
<word cardinal="5">Пять-</word>
|
7565
|
+
<word ordinal="5">Пятое </word>
|
7566
|
+
<word cardinal="6">Шесть-</word>
|
7567
|
+
<word ordinal="6">Шестое </word>
|
7568
|
+
<word cardinal="7">Семь-</word>
|
7569
|
+
<word ordinal="7">Седьмое </word>
|
7570
|
+
<word cardinal="8">Восемь-</word>
|
7571
|
+
<word ordinal="8">Восьмое </word>
|
7572
|
+
<word cardinal="9">Девять-</word>
|
7573
|
+
<word ordinal="9">Девятое </word>
|
7574
|
+
<word ordinal="10">Десятое </word>
|
7575
|
+
<word ordinal="11">Одиннадцатое </word>
|
7576
|
+
<word ordinal="12">Двенадцатое </word>
|
7577
|
+
<word ordinal="13">Тринадцатое </word>
|
7578
|
+
<word ordinal="14">Четырнадцатое </word>
|
7579
|
+
<word ordinal="15">Пятнадцатое </word>
|
7580
|
+
<word ordinal="16">Шестнадцатое </word>
|
7581
|
+
<word ordinal="17">Семнадцатое </word>
|
7582
|
+
<word ordinal="18">Восемнадцатое </word>
|
7583
|
+
<word ordinal="19">Девятнадцатое </word>
|
7584
|
+
<word cardinal="20">Двадцать-</word>
|
7585
|
+
<word ordinal="20">Двадцатое </word>
|
7586
|
+
<word cardinal="30">Тридцать-</word>
|
7587
|
+
<word ordinal="30">Тридцатое </word>
|
7588
|
+
<word cardinal="40">Сорок-</word>
|
7589
|
+
<word ordinal="40">Сороковое </word>
|
7590
|
+
<word cardinal="50">Пятьдесят-</word>
|
7591
|
+
<word ordinal="50">Пятидесятое </word>
|
7592
|
+
<word cardinal="60">Шестьдесят-</word>
|
7593
|
+
<word ordinal="60">Шестидесятое </word>
|
7594
|
+
<word cardinal="70">Семьдесят-</word>
|
7595
|
+
<word ordinal="70">Семидесятое </word>
|
7596
|
+
<word cardinal="80">Восемьдесят-</word>
|
7597
|
+
<word ordinal="80">Восьмидесятое </word>
|
7598
|
+
<word cardinal="90">Девяносто-</word>
|
7599
|
+
<word ordinal="90">Девяностое </word>
|
7600
|
+
<word cardinal="100">Сто-</word>
|
7601
|
+
<word ordinal="100">Сотое </word>
|
7602
|
+
</xsl:when>
|
7603
|
+
<xsl:otherwise> <!-- default english -->
|
7604
|
+
<word cardinal="1">One-</word>
|
7605
|
+
<word ordinal="1">First </word>
|
7606
|
+
<word cardinal="2">Two-</word>
|
7607
|
+
<word ordinal="2">Second </word>
|
7608
|
+
<word cardinal="3">Three-</word>
|
7609
|
+
<word ordinal="3">Third </word>
|
7610
|
+
<word cardinal="4">Four-</word>
|
7611
|
+
<word ordinal="4">Fourth </word>
|
7612
|
+
<word cardinal="5">Five-</word>
|
7613
|
+
<word ordinal="5">Fifth </word>
|
7614
|
+
<word cardinal="6">Six-</word>
|
7615
|
+
<word ordinal="6">Sixth </word>
|
7616
|
+
<word cardinal="7">Seven-</word>
|
7617
|
+
<word ordinal="7">Seventh </word>
|
7618
|
+
<word cardinal="8">Eight-</word>
|
7619
|
+
<word ordinal="8">Eighth </word>
|
7620
|
+
<word cardinal="9">Nine-</word>
|
7621
|
+
<word ordinal="9">Ninth </word>
|
7622
|
+
<word ordinal="10">Tenth </word>
|
7623
|
+
<word ordinal="11">Eleventh </word>
|
7624
|
+
<word ordinal="12">Twelfth </word>
|
7625
|
+
<word ordinal="13">Thirteenth </word>
|
7626
|
+
<word ordinal="14">Fourteenth </word>
|
7627
|
+
<word ordinal="15">Fifteenth </word>
|
7628
|
+
<word ordinal="16">Sixteenth </word>
|
7629
|
+
<word ordinal="17">Seventeenth </word>
|
7630
|
+
<word ordinal="18">Eighteenth </word>
|
7631
|
+
<word ordinal="19">Nineteenth </word>
|
7632
|
+
<word cardinal="20">Twenty-</word>
|
7633
|
+
<word ordinal="20">Twentieth </word>
|
7634
|
+
<word cardinal="30">Thirty-</word>
|
7635
|
+
<word ordinal="30">Thirtieth </word>
|
7636
|
+
<word cardinal="40">Forty-</word>
|
7637
|
+
<word ordinal="40">Fortieth </word>
|
7638
|
+
<word cardinal="50">Fifty-</word>
|
7639
|
+
<word ordinal="50">Fiftieth </word>
|
7640
|
+
<word cardinal="60">Sixty-</word>
|
7641
|
+
<word ordinal="60">Sixtieth </word>
|
7642
|
+
<word cardinal="70">Seventy-</word>
|
7643
|
+
<word ordinal="70">Seventieth </word>
|
7644
|
+
<word cardinal="80">Eighty-</word>
|
7645
|
+
<word ordinal="80">Eightieth </word>
|
7646
|
+
<word cardinal="90">Ninety-</word>
|
7647
|
+
<word ordinal="90">Ninetieth </word>
|
7648
|
+
<word cardinal="100">Hundred-</word>
|
7649
|
+
<word ordinal="100">Hundredth </word>
|
7650
|
+
</xsl:otherwise>
|
7651
|
+
</xsl:choose>
|
6943
7652
|
</words>
|
6944
7653
|
</xsl:variable>
|
6945
7654
|
|
@@ -7013,4 +7722,18 @@
|
|
7013
7722
|
<xsl:otherwise>_</xsl:otherwise>
|
7014
7723
|
</xsl:choose>
|
7015
7724
|
</xsl:attribute>
|
7725
|
+
</xsl:template><xsl:template name="substring-after-last">
|
7726
|
+
<xsl:param name="value"/>
|
7727
|
+
<xsl:param name="delimiter"/>
|
7728
|
+
<xsl:choose>
|
7729
|
+
<xsl:when test="contains($value, $delimiter)">
|
7730
|
+
<xsl:call-template name="substring-after-last">
|
7731
|
+
<xsl:with-param name="value" select="substring-after($value, $delimiter)"/>
|
7732
|
+
<xsl:with-param name="delimiter" select="$delimiter"/>
|
7733
|
+
</xsl:call-template>
|
7734
|
+
</xsl:when>
|
7735
|
+
<xsl:otherwise>
|
7736
|
+
<xsl:value-of select="$value"/>
|
7737
|
+
</xsl:otherwise>
|
7738
|
+
</xsl:choose>
|
7016
7739
|
</xsl:template></xsl:stylesheet>
|