metanorma-iso 1.9.4 → 1.10.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/ubuntu.yml +41 -0
- data/Gemfile +3 -4
- data/Makefile +44 -0
- data/Rakefile +1 -1
- data/bin/rspec +1 -2
- data/lib/asciidoctor/iso/basicdoc.rng +32 -5
- data/lib/asciidoctor/iso/biblio.rng +2 -0
- data/lib/asciidoctor/iso/cleanup.rb +7 -6
- data/lib/asciidoctor/iso/front.rb +9 -1
- data/lib/asciidoctor/iso/isodoc.rng +430 -76
- data/lib/asciidoctor/iso/isostandard-amd.rng +1 -1
- data/lib/asciidoctor/iso/isostandard.rng +9 -23
- data/lib/asciidoctor/iso/reqt.rng +24 -3
- data/lib/asciidoctor/iso/validate.rb +7 -7
- data/lib/asciidoctor/iso/validate_section.rb +1 -1
- data/lib/isodoc/iso/html/isodoc.css +1 -2
- data/lib/isodoc/iso/html/isodoc.scss +1 -1
- data/lib/isodoc/iso/html/wordstyle.css +16 -4
- data/lib/isodoc/iso/html/wordstyle.scss +16 -4
- data/lib/isodoc/iso/i18n.rb +10 -9
- data/lib/isodoc/iso/iso.amendment.xsl +200 -20
- data/lib/isodoc/iso/iso.international-standard.xsl +200 -20
- data/lib/isodoc/iso/presentation_xml_convert.rb +9 -10
- data/lib/isodoc/iso/sections.rb +2 -0
- data/lib/isodoc/iso/word_cleanup.rb +94 -0
- data/lib/isodoc/iso/word_convert.rb +12 -89
- data/lib/metanorma/iso/version.rb +1 -1
- data/metanorma-iso.gemspec +4 -3
- data/spec/asciidoctor/base_spec.rb +685 -178
- data/spec/asciidoctor/blank_spec.rb +38 -0
- data/spec/asciidoctor/blocks_spec.rb +22 -47
- data/spec/asciidoctor/cleanup_spec.rb +34 -20
- data/spec/asciidoctor/inline_spec.rb +10 -2
- data/spec/asciidoctor/refs_spec.rb +87 -4
- data/spec/asciidoctor/section_spec.rb +3 -3
- data/spec/isodoc/i18n_spec.rb +29 -15
- data/spec/isodoc/inline_spec.rb +56 -26
- data/spec/isodoc/section_spec.rb +1 -1
- data/spec/isodoc/table_spec.rb +6 -8
- data/spec/isodoc/terms_spec.rb +11 -11
- data/spec/isodoc/xref_spec.rb +1397 -1376
- data/spec/metanorma/processor_spec.rb +4 -1
- data/spec/spec_helper.rb +14 -1
- data/spec/vcr_cassettes/docrels.yml +783 -0
- data/spec/vcr_cassettes/sortrefs.yml +599 -0
- metadata +38 -19
@@ -1798,7 +1798,7 @@
|
|
1798
1798
|
</xsl:variable>
|
1799
1799
|
<fo:block line-height="1.1" role="H{$levelTerm}">
|
1800
1800
|
<fo:block font-weight="bold" keep-with-next="always">
|
1801
|
-
<xsl:apply-templates select="ancestor::iso:term/iso:name" mode="presentation"/>
|
1801
|
+
<xsl:apply-templates select="ancestor::iso:term[1]/iso:name" mode="presentation"/>
|
1802
1802
|
</fo:block>
|
1803
1803
|
<fo:block font-weight="bold" keep-with-next="always">
|
1804
1804
|
<xsl:apply-templates/>
|
@@ -2260,6 +2260,8 @@
|
|
2260
2260
|
|
2261
2261
|
<title-list-figures lang="en">List of Figures</title-list-figures>
|
2262
2262
|
|
2263
|
+
<title-table-figures lang="en">Table of Figures</title-table-figures>
|
2264
|
+
|
2263
2265
|
<title-list-recommendations lang="en">List of Recommendations</title-list-recommendations>
|
2264
2266
|
|
2265
2267
|
<title-acknowledgements lang="en">Acknowledgements</title-acknowledgements>
|
@@ -2558,6 +2560,11 @@
|
|
2558
2560
|
|
2559
2561
|
|
2560
2562
|
|
2563
|
+
</xsl:attribute-set><xsl:attribute-set name="table-note-name-style">
|
2564
|
+
|
2565
|
+
|
2566
|
+
|
2567
|
+
|
2561
2568
|
</xsl:attribute-set><xsl:attribute-set name="note-p-style">
|
2562
2569
|
|
2563
2570
|
|
@@ -2731,13 +2738,20 @@
|
|
2731
2738
|
|
2732
2739
|
</xsl:attribute-set><xsl:attribute-set name="list-style">
|
2733
2740
|
|
2734
|
-
</xsl:attribute-set><xsl:
|
2741
|
+
</xsl:attribute-set><xsl:attribute-set name="toc-style">
|
2742
|
+
<xsl:attribute name="line-height">135%</xsl:attribute>
|
2743
|
+
</xsl:attribute-set><xsl:variable name="border-block-added">2.5pt solid rgb(0, 176, 80)</xsl:variable><xsl:variable name="border-block-deleted">2.5pt solid rgb(255, 0, 0)</xsl:variable><xsl:template name="OLD_processPrefaceSectionsDefault_Contents">
|
2735
2744
|
<xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='abstract']" mode="contents"/>
|
2736
2745
|
<xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='foreword']" mode="contents"/>
|
2737
2746
|
<xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='introduction']" mode="contents"/>
|
2738
2747
|
<xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name() != 'abstract' and local-name() != 'foreword' and local-name() != 'introduction' and local-name() != 'acknowledgements']" mode="contents"/>
|
2739
2748
|
<xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='acknowledgements']" mode="contents"/>
|
2740
|
-
</xsl:template><xsl:template name="
|
2749
|
+
</xsl:template><xsl:template name="processPrefaceSectionsDefault_Contents">
|
2750
|
+
<xsl:for-each select="/*/*[local-name()='preface']/*">
|
2751
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
2752
|
+
<xsl:apply-templates select="." mode="contents"/>
|
2753
|
+
</xsl:for-each>
|
2754
|
+
</xsl:template><xsl:template name="OLD_processMainSectionsDefault_Contents">
|
2741
2755
|
<xsl:apply-templates select="/*/*[local-name()='sections']/*[local-name()='clause'][@type='scope']" mode="contents"/>
|
2742
2756
|
|
2743
2757
|
<!-- Normative references -->
|
@@ -2750,13 +2764,33 @@
|
|
2750
2764
|
<!-- Bibliography -->
|
2751
2765
|
<xsl:apply-templates select="/*/*[local-name()='bibliography']/*[local-name()='references'][not(@normative='true')] | /*/*[local-name()='bibliography']/*[local-name()='clause'][*[local-name()='references'][not(@normative='true')]]" mode="contents"/>
|
2752
2766
|
|
2753
|
-
</xsl:template><xsl:template name="
|
2767
|
+
</xsl:template><xsl:template name="processMainSectionsDefault_Contents">
|
2768
|
+
<xsl:for-each select="/*/*[local-name()='sections']/* | /*/*[local-name()='bibliography']/*[local-name()='references'][@normative='true']">
|
2769
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
2770
|
+
<xsl:apply-templates select="." mode="contents"/>
|
2771
|
+
</xsl:for-each>
|
2772
|
+
|
2773
|
+
<xsl:for-each select="/*/*[local-name()='annex']">
|
2774
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
2775
|
+
<xsl:apply-templates select="." mode="contents"/>
|
2776
|
+
</xsl:for-each>
|
2777
|
+
|
2778
|
+
<xsl:for-each select="/*/*[local-name()='bibliography']/*[not(@normative='true')] | /*/*[local-name()='bibliography']/*[local-name()='clause'][*[local-name()='references'][not(@normative='true')]]">
|
2779
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
2780
|
+
<xsl:apply-templates select="." mode="contents"/>
|
2781
|
+
</xsl:for-each>
|
2782
|
+
</xsl:template><xsl:template name="OLD_processPrefaceSectionsDefault">
|
2754
2783
|
<xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='abstract']"/>
|
2755
2784
|
<xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='foreword']"/>
|
2756
2785
|
<xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='introduction']"/>
|
2757
2786
|
<xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name() != 'abstract' and local-name() != 'foreword' and local-name() != 'introduction' and local-name() != 'acknowledgements']"/>
|
2758
2787
|
<xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='acknowledgements']"/>
|
2759
|
-
</xsl:template><xsl:template name="
|
2788
|
+
</xsl:template><xsl:template name="processPrefaceSectionsDefault">
|
2789
|
+
<xsl:for-each select="/*/*[local-name()='preface']/*">
|
2790
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
2791
|
+
<xsl:apply-templates select="."/>
|
2792
|
+
</xsl:for-each>
|
2793
|
+
</xsl:template><xsl:template name="OLD_processMainSectionsDefault">
|
2760
2794
|
<xsl:apply-templates select="/*/*[local-name()='sections']/*[local-name()='clause'][@type='scope']"/>
|
2761
2795
|
|
2762
2796
|
<!-- Normative references -->
|
@@ -2768,6 +2802,22 @@
|
|
2768
2802
|
<xsl:apply-templates select="/*/*[local-name()='annex']"/>
|
2769
2803
|
<!-- Bibliography -->
|
2770
2804
|
<xsl:apply-templates select="/*/*[local-name()='bibliography']/*[local-name()='references'][not(@normative='true')]"/>
|
2805
|
+
</xsl:template><xsl:template name="processMainSectionsDefault">
|
2806
|
+
<xsl:for-each select="/*/*[local-name()='sections']/* | /*/*[local-name()='bibliography']/*[local-name()='references'][@normative='true']">
|
2807
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
2808
|
+
<xsl:apply-templates select="."/>
|
2809
|
+
|
2810
|
+
</xsl:for-each>
|
2811
|
+
|
2812
|
+
<xsl:for-each select="/*/*[local-name()='annex']">
|
2813
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
2814
|
+
<xsl:apply-templates select="."/>
|
2815
|
+
</xsl:for-each>
|
2816
|
+
|
2817
|
+
<xsl:for-each select="/*/*[local-name()='bibliography']/*[not(@normative='true')] | /*/*[local-name()='bibliography']/*[local-name()='clause'][*[local-name()='references'][not(@normative='true')]]">
|
2818
|
+
<xsl:sort select="@displayorder" data-type="number"/>
|
2819
|
+
<xsl:apply-templates select="."/>
|
2820
|
+
</xsl:for-each>
|
2771
2821
|
</xsl:template><xsl:template match="text()">
|
2772
2822
|
<xsl:value-of select="."/>
|
2773
2823
|
</xsl:template><xsl:template match="*[local-name()='br']">
|
@@ -3714,9 +3764,8 @@
|
|
3714
3764
|
|
3715
3765
|
<!-- Table's note name (NOTE, for example) -->
|
3716
3766
|
|
3717
|
-
<fo:inline padding-right="2mm">
|
3767
|
+
<fo:inline padding-right="2mm" xsl:use-attribute-sets="table-note-name-style">
|
3718
3768
|
|
3719
|
-
|
3720
3769
|
|
3721
3770
|
|
3722
3771
|
|
@@ -4246,6 +4295,7 @@
|
|
4246
4295
|
<fo:table-cell>
|
4247
4296
|
|
4248
4297
|
<fo:block margin-top="6pt">
|
4298
|
+
<xsl:copy-of select="@id"/>
|
4249
4299
|
|
4250
4300
|
<xsl:attribute name="margin-top">0pt</xsl:attribute>
|
4251
4301
|
|
@@ -4351,6 +4401,8 @@
|
|
4351
4401
|
<xsl:if test="$font-size != ''">
|
4352
4402
|
<xsl:attribute name="font-size">
|
4353
4403
|
<xsl:choose>
|
4404
|
+
<xsl:when test="$font-size = 'inherit'"><xsl:value-of select="$font-size"/></xsl:when>
|
4405
|
+
<xsl:when test="contains($font-size, '%')"><xsl:value-of select="$font-size"/></xsl:when>
|
4354
4406
|
<xsl:when test="ancestor::*[local-name()='note']"><xsl:value-of select="$font-size * 0.91"/>pt</xsl:when>
|
4355
4407
|
<xsl:otherwise><xsl:value-of select="$font-size"/>pt</xsl:otherwise>
|
4356
4408
|
</xsl:choose>
|
@@ -5090,14 +5142,20 @@
|
|
5090
5142
|
</xsl:template><xsl:template match="*[local-name() = 'termnote']/*[local-name() = 'p']">
|
5091
5143
|
<fo:inline><xsl:apply-templates/></fo:inline>
|
5092
5144
|
</xsl:template><xsl:template match="*[local-name() = 'terms']">
|
5145
|
+
<!-- <xsl:message>'terms' <xsl:number/> processing...</xsl:message> -->
|
5093
5146
|
<fo:block id="{@id}">
|
5094
5147
|
<xsl:apply-templates/>
|
5095
5148
|
</fo:block>
|
5096
5149
|
</xsl:template><xsl:template match="*[local-name() = 'term']">
|
5150
|
+
<!-- <xsl:message>'term' <xsl:number/> processing, name=<xsl:value-of select="iso:name"/>, preferred=<xsl:value-of select="iso:preferred"/>...</xsl:message> -->
|
5097
5151
|
<fo:block id="{@id}" xsl:use-attribute-sets="term-style">
|
5098
5152
|
|
5099
5153
|
|
5100
|
-
|
5154
|
+
<xsl:if test="parent::*[local-name() = 'term'] and not(preceding-sibling::*[local-name() = 'term'])">
|
5155
|
+
|
5156
|
+
<xsl:attribute name="space-before">12pt</xsl:attribute>
|
5157
|
+
|
5158
|
+
</xsl:if>
|
5101
5159
|
<xsl:apply-templates/>
|
5102
5160
|
</fo:block>
|
5103
5161
|
</xsl:template><xsl:template match="*[local-name() = 'term']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'term']/*[local-name() = 'name']" mode="presentation">
|
@@ -5159,6 +5217,7 @@
|
|
5159
5217
|
<xsl:otherwise>
|
5160
5218
|
<fo:block xsl:use-attribute-sets="image-style">
|
5161
5219
|
|
5220
|
+
|
5162
5221
|
<xsl:variable name="src">
|
5163
5222
|
<xsl:call-template name="image_src"/>
|
5164
5223
|
</xsl:variable>
|
@@ -5406,6 +5465,13 @@
|
|
5406
5465
|
</xsl:attribute>
|
5407
5466
|
<xsl:apply-templates mode="svg_update"/>
|
5408
5467
|
</xsl:copy>
|
5468
|
+
</xsl:template><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'image'][*[local-name() = 'svg']]" priority="3">
|
5469
|
+
<xsl:variable name="name" select="ancestor::*[local-name() = 'figure']/*[local-name() = 'name']"/>
|
5470
|
+
<xsl:for-each select="*[local-name() = 'svg']">
|
5471
|
+
<xsl:call-template name="image_svg">
|
5472
|
+
<xsl:with-param name="name" select="$name"/>
|
5473
|
+
</xsl:call-template>
|
5474
|
+
</xsl:for-each>
|
5409
5475
|
</xsl:template><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'image'][@mimetype = 'image/svg+xml' and @src[not(starts-with(., 'data:image/'))]]" priority="2">
|
5410
5476
|
<xsl:variable name="svg_content" select="document(@src)"/>
|
5411
5477
|
<xsl:variable name="name" select="ancestor::*[local-name() = 'figure']/*[local-name() = 'name']"/>
|
@@ -5510,7 +5576,7 @@
|
|
5510
5576
|
</fo:basic-link>
|
5511
5577
|
</fo:block>
|
5512
5578
|
</fo:block-container>
|
5513
|
-
</xsl:template><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'table']/*[local-name() = 'name'] | *[local-name() = 'permission']/*[local-name() = 'name'] | *[local-name() = 'recommendation']/*[local-name() = 'name'] | *[local-name() = 'requirement']/*[local-name() = 'name']" mode="contents">
|
5579
|
+
</xsl:template><xsl:template match="*[local-name() = 'emf']"/><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'table']/*[local-name() = 'name'] | *[local-name() = 'permission']/*[local-name() = 'name'] | *[local-name() = 'recommendation']/*[local-name() = 'name'] | *[local-name() = 'requirement']/*[local-name() = 'name']" mode="contents">
|
5514
5580
|
<xsl:apply-templates mode="contents"/>
|
5515
5581
|
<xsl:text> </xsl:text>
|
5516
5582
|
</xsl:template><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'table']/*[local-name() = 'name'] | *[local-name() = 'permission']/*[local-name() = 'name'] | *[local-name() = 'recommendation']/*[local-name() = 'name'] | *[local-name() = 'requirement']/*[local-name() = 'name']" mode="bookmarks">
|
@@ -5518,7 +5584,7 @@
|
|
5518
5584
|
<xsl:text> </xsl:text>
|
5519
5585
|
</xsl:template><xsl:template match="*[local-name() = 'figure' or local-name() = 'table' or local-name() = 'permission' or local-name() = 'recommendation' or local-name() = 'requirement']/*[local-name() = 'name']/text()" mode="contents" priority="2">
|
5520
5586
|
<xsl:value-of select="."/>
|
5521
|
-
</xsl:template><xsl:template match="*[local-name() = 'figure' or local-name() = 'table' or local-name() = 'permission' or local-name() = 'recommendation' or local-name() = 'requirement']/*[local-name() = 'name']
|
5587
|
+
</xsl:template><xsl:template match="*[local-name() = 'figure' or local-name() = 'table' or local-name() = 'permission' or local-name() = 'recommendation' or local-name() = 'requirement']/*[local-name() = 'name']//text()" mode="bookmarks" priority="2">
|
5522
5588
|
<xsl:value-of select="."/>
|
5523
5589
|
</xsl:template><xsl:template match="node()" mode="contents">
|
5524
5590
|
<xsl:apply-templates mode="contents"/>
|
@@ -5616,6 +5682,8 @@
|
|
5616
5682
|
|
5617
5683
|
|
5618
5684
|
|
5685
|
+
|
5686
|
+
|
5619
5687
|
</fo:bookmark-tree>
|
5620
5688
|
</xsl:if>
|
5621
5689
|
</xsl:template><xsl:template name="insertFigureBookmarks">
|
@@ -5809,12 +5877,16 @@
|
|
5809
5877
|
<xsl:if test="$font-size != ''">
|
5810
5878
|
<xsl:attribute name="font-size">
|
5811
5879
|
<xsl:choose>
|
5880
|
+
<xsl:when test="$font-size = 'inherit'"><xsl:value-of select="$font-size"/></xsl:when>
|
5881
|
+
<xsl:when test="contains($font-size, '%')"><xsl:value-of select="$font-size"/></xsl:when>
|
5812
5882
|
<xsl:when test="ancestor::*[local-name()='note']"><xsl:value-of select="$font-size * 0.91"/>pt</xsl:when>
|
5813
5883
|
<xsl:otherwise><xsl:value-of select="$font-size"/>pt</xsl:otherwise>
|
5814
5884
|
</xsl:choose>
|
5815
5885
|
</xsl:attribute>
|
5816
5886
|
</xsl:if>
|
5817
5887
|
|
5888
|
+
|
5889
|
+
|
5818
5890
|
<xsl:apply-templates/>
|
5819
5891
|
</fo:block>
|
5820
5892
|
|
@@ -6057,7 +6129,8 @@
|
|
6057
6129
|
</fo:block>
|
6058
6130
|
</fo:table-cell>
|
6059
6131
|
</xsl:template><xsl:template match="*[local-name() = 'p'][@class='RecommendationTitle' or @class = 'RecommendationTestTitle']" priority="2">
|
6060
|
-
<fo:block font-size="11pt"
|
6132
|
+
<fo:block font-size="11pt">
|
6133
|
+
|
6061
6134
|
<xsl:apply-templates/>
|
6062
6135
|
</fo:block>
|
6063
6136
|
</xsl:template><xsl:template match="*[local-name() = 'p2'][ancestor::*[local-name() = 'table'][@class = 'recommendation' or @class='requirement' or @class='permission']]">
|
@@ -6167,6 +6240,7 @@
|
|
6167
6240
|
</xsl:choose>
|
6168
6241
|
</xsl:template><xsl:template match="*[local-name() = 'termsource']" name="termsource">
|
6169
6242
|
<fo:block xsl:use-attribute-sets="termsource-style">
|
6243
|
+
|
6170
6244
|
<!-- Example: [SOURCE: ISO 5127:2017, 3.1.6.02] -->
|
6171
6245
|
<xsl:variable name="termsource_text">
|
6172
6246
|
<xsl:apply-templates/>
|
@@ -6177,13 +6251,15 @@
|
|
6177
6251
|
<!-- <xsl:apply-templates /> -->
|
6178
6252
|
<xsl:copy-of select="$termsource_text"/>
|
6179
6253
|
</xsl:when>
|
6180
|
-
<xsl:otherwise>
|
6254
|
+
<xsl:otherwise>
|
6255
|
+
|
6181
6256
|
|
6182
6257
|
<xsl:text>[</xsl:text>
|
6183
6258
|
|
6184
6259
|
<!-- <xsl:apply-templates /> -->
|
6185
6260
|
<xsl:copy-of select="$termsource_text"/>
|
6186
6261
|
|
6262
|
+
|
6187
6263
|
<xsl:text>]</xsl:text>
|
6188
6264
|
|
6189
6265
|
</xsl:otherwise>
|
@@ -6195,19 +6271,21 @@
|
|
6195
6271
|
</xsl:if>
|
6196
6272
|
</xsl:template><xsl:variable name="localized.source">
|
6197
6273
|
<xsl:call-template name="getLocalizedString">
|
6198
|
-
|
6199
|
-
|
6274
|
+
<xsl:with-param name="key">source</xsl:with-param>
|
6275
|
+
</xsl:call-template>
|
6200
6276
|
</xsl:variable><xsl:template match="*[local-name() = 'origin']">
|
6201
6277
|
<fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}">
|
6202
6278
|
<xsl:if test="normalize-space(@citeas) = ''">
|
6203
6279
|
<xsl:attribute name="fox:alt-text"><xsl:value-of select="@bibitemid"/></xsl:attribute>
|
6204
6280
|
</xsl:if>
|
6205
6281
|
|
6282
|
+
|
6206
6283
|
<fo:inline>
|
6207
6284
|
|
6208
6285
|
|
6209
6286
|
|
6210
6287
|
|
6288
|
+
|
6211
6289
|
<xsl:value-of select="$localized.source"/>
|
6212
6290
|
<xsl:text>: </xsl:text>
|
6213
6291
|
|
@@ -6219,6 +6297,7 @@
|
|
6219
6297
|
<fo:inline xsl:use-attribute-sets="origin-style">
|
6220
6298
|
<xsl:apply-templates/>
|
6221
6299
|
</fo:inline>
|
6300
|
+
|
6222
6301
|
</fo:basic-link>
|
6223
6302
|
</xsl:template><xsl:template match="*[local-name() = 'modification']/*[local-name() = 'p']">
|
6224
6303
|
<fo:inline><xsl:apply-templates/></fo:inline>
|
@@ -6262,12 +6341,20 @@
|
|
6262
6341
|
</xsl:template><xsl:template match="*[local-name() = 'author']">
|
6263
6342
|
<xsl:text>— </xsl:text>
|
6264
6343
|
<xsl:apply-templates/>
|
6265
|
-
</xsl:template><xsl:
|
6344
|
+
</xsl:template><xsl:variable name="bibitem_hidden_">
|
6345
|
+
<xsl:for-each select="//*[local-name() = 'bibitem'][@hidden='true']">
|
6346
|
+
<xsl:copy-of select="."/>
|
6347
|
+
</xsl:for-each>
|
6348
|
+
<xsl:for-each select="//*[local-name() = 'references'][@hidden='true']/*[local-name() = 'bibitem']">
|
6349
|
+
<xsl:copy-of select="."/>
|
6350
|
+
</xsl:for-each>
|
6351
|
+
</xsl:variable><xsl:variable name="bibitem_hidden" select="xalan:nodeset($bibitem_hidden_)"/><xsl:template match="*[local-name() = 'eref']">
|
6266
6352
|
|
6267
6353
|
<xsl:variable name="bibitemid">
|
6268
6354
|
<xsl:choose>
|
6269
|
-
<xsl:when test="//*[local-name() = 'bibitem'][@hidden='true' and @id = current()/@bibitemid]"
|
6270
|
-
<xsl:when test="//*[local-name() = 'references'][@hidden='true']/*[local-name() = 'bibitem'][@id = current()/@bibitemid]"
|
6355
|
+
<!-- <xsl:when test="//*[local-name() = 'bibitem'][@hidden='true' and @id = current()/@bibitemid]"></xsl:when>
|
6356
|
+
<xsl:when test="//*[local-name() = 'references'][@hidden='true']/*[local-name() = 'bibitem'][@id = current()/@bibitemid]"></xsl:when> -->
|
6357
|
+
<xsl:when test="$bibitem_hidden/*[local-name() = 'bibitem'][@id = current()/@bibitemid]"/>
|
6271
6358
|
<xsl:otherwise><xsl:value-of select="@bibitemid"/></xsl:otherwise>
|
6272
6359
|
</xsl:choose>
|
6273
6360
|
</xsl:variable>
|
@@ -6285,6 +6372,9 @@
|
|
6285
6372
|
|
6286
6373
|
</xsl:if>
|
6287
6374
|
|
6375
|
+
<xsl:variable name="citeas" select="java:replaceAll(java:java.lang.String.new(@citeas),'^\[?(.+?)\]?$','$1')"/> <!-- remove leading and trailing brackets -->
|
6376
|
+
<xsl:variable name="text" select="normalize-space()"/>
|
6377
|
+
|
6288
6378
|
|
6289
6379
|
|
6290
6380
|
<fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}">
|
@@ -6297,7 +6387,9 @@
|
|
6297
6387
|
|
6298
6388
|
|
6299
6389
|
</xsl:if>
|
6300
|
-
|
6390
|
+
|
6391
|
+
|
6392
|
+
|
6301
6393
|
<xsl:apply-templates/>
|
6302
6394
|
</fo:basic-link>
|
6303
6395
|
|
@@ -6351,10 +6443,10 @@
|
|
6351
6443
|
</xsl:choose>
|
6352
6444
|
</xsl:variable>
|
6353
6445
|
|
6354
|
-
<xsl:variable name="language" select="//*[local-name()='bibdata']//*[local-name()='language']"/>
|
6446
|
+
<!-- <xsl:variable name="language" select="//*[local-name()='bibdata']//*[local-name()='language']"/> -->
|
6355
6447
|
|
6356
6448
|
<xsl:choose>
|
6357
|
-
<xsl:when test="$
|
6449
|
+
<xsl:when test="$lang = 'zh'">
|
6358
6450
|
<fo:inline><xsl:value-of select="$tab_zh"/></fo:inline>
|
6359
6451
|
</xsl:when>
|
6360
6452
|
<xsl:when test="../../@inline-header = 'true'">
|
@@ -6830,9 +6922,97 @@
|
|
6830
6922
|
<fo:block-container border="1pt solid black" width="50%">
|
6831
6923
|
<fo:block> </fo:block>
|
6832
6924
|
</fo:block-container>
|
6925
|
+
</xsl:template><xsl:template match="*[local-name() = 'toc']">
|
6926
|
+
<xsl:param name="colwidths"/>
|
6927
|
+
<xsl:variable name="colwidths_">
|
6928
|
+
<xsl:choose>
|
6929
|
+
<xsl:when test="not($colwidths)">
|
6930
|
+
<xsl:variable name="toc_table_simple">
|
6931
|
+
<tbody>
|
6932
|
+
<xsl:apply-templates mode="toc_table_width"/>
|
6933
|
+
</tbody>
|
6934
|
+
</xsl:variable>
|
6935
|
+
<xsl:variable name="cols-count" select="count(xalan:nodeset($toc_table_simple)/*/tr[1]/td)"/>
|
6936
|
+
<xsl:call-template name="calculate-column-widths">
|
6937
|
+
<xsl:with-param name="cols-count" select="$cols-count"/>
|
6938
|
+
<xsl:with-param name="table" select="$toc_table_simple"/>
|
6939
|
+
</xsl:call-template>
|
6940
|
+
</xsl:when>
|
6941
|
+
<xsl:otherwise>
|
6942
|
+
<xsl:copy-of select="$colwidths"/>
|
6943
|
+
</xsl:otherwise>
|
6944
|
+
</xsl:choose>
|
6945
|
+
</xsl:variable>
|
6946
|
+
<fo:block role="TOCI" space-after="16pt">
|
6947
|
+
<fo:table width="100%" table-layout="fixed">
|
6948
|
+
<xsl:for-each select="xalan:nodeset($colwidths_)/column">
|
6949
|
+
<fo:table-column column-width="proportional-column-width({.})"/>
|
6950
|
+
</xsl:for-each>
|
6951
|
+
<fo:table-body>
|
6952
|
+
<xsl:apply-templates/>
|
6953
|
+
</fo:table-body>
|
6954
|
+
</fo:table>
|
6955
|
+
</fo:block>
|
6956
|
+
</xsl:template><xsl:template match="*[local-name() = 'toc']//*[local-name() = 'li']">
|
6957
|
+
<fo:table-row min-height="5mm">
|
6958
|
+
<xsl:apply-templates/>
|
6959
|
+
</fo:table-row>
|
6960
|
+
</xsl:template><xsl:template match="*[local-name() = 'toc']//*[local-name() = 'li']/*[local-name() = 'p']">
|
6961
|
+
<xsl:apply-templates/>
|
6962
|
+
</xsl:template><xsl:template match="*[local-name() = 'toc']//*[local-name() = 'xref']" priority="3">
|
6963
|
+
<!-- <xref target="cgpm9th1948r6">1.6.3<tab/>“9th CGPM, 1948:<tab/>decision to establish the SI”</xref> -->
|
6964
|
+
<xsl:variable name="target" select="@target"/>
|
6965
|
+
<xsl:for-each select="*[local-name() = 'tab']">
|
6966
|
+
<xsl:variable name="current_id" select="generate-id()"/>
|
6967
|
+
<fo:table-cell>
|
6968
|
+
<fo:block>
|
6969
|
+
<fo:basic-link internal-destination="{$target}" fox:alt-text="{.}">
|
6970
|
+
<xsl:for-each select="following-sibling::node()[not(self::*[local-name() = 'tab']) and preceding-sibling::*[local-name() = 'tab'][1][generate-id() = $current_id]]">
|
6971
|
+
<xsl:choose>
|
6972
|
+
<xsl:when test="self::text()"><xsl:value-of select="."/></xsl:when>
|
6973
|
+
<xsl:otherwise><xsl:apply-templates select="."/></xsl:otherwise>
|
6974
|
+
</xsl:choose>
|
6975
|
+
</xsl:for-each>
|
6976
|
+
</fo:basic-link>
|
6977
|
+
</fo:block>
|
6978
|
+
</fo:table-cell>
|
6979
|
+
</xsl:for-each>
|
6980
|
+
<!-- last column - for page numbers -->
|
6981
|
+
<fo:table-cell text-align="right" font-size="10pt" font-weight="bold" font-family="Arial">
|
6982
|
+
<fo:block>
|
6983
|
+
<fo:basic-link internal-destination="{$target}" fox:alt-text="{.}">
|
6984
|
+
<fo:page-number-citation ref-id="{$target}"/>
|
6985
|
+
</fo:basic-link>
|
6986
|
+
</fo:block>
|
6987
|
+
</fo:table-cell>
|
6988
|
+
</xsl:template><xsl:template match="*" mode="toc_table_width">
|
6989
|
+
<xsl:apply-templates mode="toc_table_width"/>
|
6990
|
+
</xsl:template><xsl:template match="*[local-name() = 'clause'][@type = 'toc']/*[local-name() = 'title']" mode="toc_table_width"/><xsl:template match="*[local-name() = 'clause'][not(@type = 'toc')]/*[local-name() = 'title']" mode="toc_table_width"/><xsl:template match="*[local-name() = 'li']" mode="toc_table_width">
|
6991
|
+
<tr>
|
6992
|
+
<xsl:apply-templates mode="toc_table_width"/>
|
6993
|
+
</tr>
|
6994
|
+
</xsl:template><xsl:template match="*[local-name() = 'xref']" mode="toc_table_width">
|
6995
|
+
<!-- <xref target="cgpm9th1948r6">1.6.3<tab/>“9th CGPM, 1948:<tab/>decision to establish the SI”</xref> -->
|
6996
|
+
<xsl:for-each select="*[local-name() = 'tab']">
|
6997
|
+
<xsl:variable name="current_id" select="generate-id()"/>
|
6998
|
+
<td>
|
6999
|
+
<xsl:for-each select="following-sibling::node()[not(self::*[local-name() = 'tab']) and preceding-sibling::*[local-name() = 'tab'][1][generate-id() = $current_id]]">
|
7000
|
+
<xsl:copy-of select="."/>
|
7001
|
+
</xsl:for-each>
|
7002
|
+
</td>
|
7003
|
+
</xsl:for-each>
|
7004
|
+
<td>333</td> <!-- page number, just for fill -->
|
6833
7005
|
</xsl:template><xsl:template match="*[local-name() = 'variant-title'][@type = 'sub']"/><xsl:template match="*[local-name() = 'variant-title'][@type = 'sub']" mode="subtitle">
|
6834
7006
|
<fo:inline padding-right="5mm"> </fo:inline>
|
6835
7007
|
<fo:inline><xsl:apply-templates/></fo:inline>
|
7008
|
+
</xsl:template><xsl:template match="*[local-name() = 'blacksquare']" name="blacksquare">
|
7009
|
+
<fo:inline padding-right="2.5mm" baseline-shift="5%">
|
7010
|
+
<fo:instream-foreign-object content-height="2mm" content-width="2mm" fox:alt-text="Quad">
|
7011
|
+
<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 2 2">
|
7012
|
+
<rect x="0" y="0" width="2" height="2" fill="black"/>
|
7013
|
+
</svg>
|
7014
|
+
</fo:instream-foreign-object>
|
7015
|
+
</fo:inline>
|
6836
7016
|
</xsl:template><xsl:template name="convertDate">
|
6837
7017
|
<xsl:param name="date"/>
|
6838
7018
|
<xsl:param name="format" select="'short'"/>
|