metanorma-cc 1.7.5 → 1.7.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/rake.yml +1 -1
- data/lib/asciidoctor/cc/isodoc.rng +18 -1
- data/lib/isodoc/cc/cc.standard.xsl +315 -54
- data/lib/metanorma/cc/version.rb +1 -1
- data/metanorma-cc.gemspec +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9800409f83f05968a5bbc1b3fb23acc9b16b0791e97dd43897ec541c9f2309cd
|
4
|
+
data.tar.gz: fba0e90b9902ec515e4b61c337c1923bb7dd8377169739dbf8caa40fcf2d0eb0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1fca6f832f5332ac625d052864674a9a28d9d7485dab97f58e29a1a12ebffbc3bc83d52bd986dce067e0ea88d633912d52a8b9ae61e31ab819af6e20737d3e4d
|
7
|
+
data.tar.gz: 8aa8cd87c0d718a424de2787afdf58f7979d03cebe279df6e7f5f90608910ffdb8fd6b70978a90ff21e43a6756e743eb0f3fbdc835e6ecdae49342c71a39c724
|
data/.github/workflows/rake.yml
CHANGED
@@ -955,7 +955,24 @@
|
|
955
955
|
<define name="concept">
|
956
956
|
<element name="concept">
|
957
957
|
<optional>
|
958
|
-
<
|
958
|
+
<element name="refterm">
|
959
|
+
<zeroOrMore>
|
960
|
+
<choice>
|
961
|
+
<ref name="PureTextElement"/>
|
962
|
+
<ref name="stem"/>
|
963
|
+
</choice>
|
964
|
+
</zeroOrMore>
|
965
|
+
</element>
|
966
|
+
</optional>
|
967
|
+
<optional>
|
968
|
+
<element name="renderterm">
|
969
|
+
<zeroOrMore>
|
970
|
+
<choice>
|
971
|
+
<ref name="PureTextElement"/>
|
972
|
+
<ref name="stem"/>
|
973
|
+
</choice>
|
974
|
+
</zeroOrMore>
|
975
|
+
</element>
|
959
976
|
</optional>
|
960
977
|
<choice>
|
961
978
|
<ref name="eref"/>
|
@@ -7,8 +7,13 @@
|
|
7
7
|
<xsl:variable name="images" select="document($svg_images)"/>
|
8
8
|
<xsl:param name="basepath"/>
|
9
9
|
|
10
|
-
<xsl:variable name="pageWidth" select="
|
11
|
-
<xsl:variable name="pageHeight" select="
|
10
|
+
<xsl:variable name="pageWidth" select="210"/>
|
11
|
+
<xsl:variable name="pageHeight" select="297"/>
|
12
|
+
<xsl:variable name="marginLeftRight1" select="19"/>
|
13
|
+
<xsl:variable name="marginLeftRight2" select="19"/>
|
14
|
+
<xsl:variable name="marginTop" select="20.2"/>
|
15
|
+
<xsl:variable name="marginBottom" select="20.3"/>
|
16
|
+
|
12
17
|
|
13
18
|
|
14
19
|
|
@@ -42,7 +47,7 @@
|
|
42
47
|
<fo:root font-family="Source Sans Pro, STIX Two Math, Source Han Sans" font-size="10.5pt" xml:lang="{$lang}">
|
43
48
|
<fo:layout-master-set>
|
44
49
|
<!-- Cover page -->
|
45
|
-
<fo:simple-page-master master-name="cover-page" page-width="{$pageWidth}" page-height="{$pageHeight}">
|
50
|
+
<fo:simple-page-master master-name="cover-page" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
|
46
51
|
<fo:region-body margin-top="23.5mm" margin-bottom="10mm" margin-left="19mm" margin-right="19mm"/>
|
47
52
|
<fo:region-before region-name="cover-page-header" extent="23.5mm"/>
|
48
53
|
<fo:region-after extent="10mm"/>
|
@@ -53,27 +58,27 @@
|
|
53
58
|
<!-- Document pages -->
|
54
59
|
|
55
60
|
<!-- Preface odd pages -->
|
56
|
-
<fo:simple-page-master master-name="odd-preface" page-width="{$pageWidth}" page-height="{$pageHeight}">
|
57
|
-
<fo:region-body margin-top="17mm" margin-bottom="10mm" margin-left="
|
61
|
+
<fo:simple-page-master master-name="odd-preface" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
|
62
|
+
<fo:region-body margin-top="17mm" margin-bottom="10mm" margin-left="{$marginLeftRight1}mm" margin-right="{$marginLeftRight2}mm"/>
|
58
63
|
<fo:region-before region-name="header-odd" extent="17mm"/>
|
59
64
|
<fo:region-after region-name="footer-odd" extent="10mm"/>
|
60
|
-
<fo:region-start region-name="left-region" extent="
|
61
|
-
<fo:region-end region-name="right-region" extent="
|
65
|
+
<fo:region-start region-name="left-region" extent="{$marginLeftRight1}mm"/>
|
66
|
+
<fo:region-end region-name="right-region" extent="{$marginLeftRight2}mm"/>
|
62
67
|
</fo:simple-page-master>
|
63
68
|
<!-- Preface even pages -->
|
64
|
-
<fo:simple-page-master master-name="even-preface" page-width="{$pageWidth}" page-height="{$pageHeight}">
|
65
|
-
<fo:region-body margin-top="17mm" margin-bottom="10mm" margin-left="
|
69
|
+
<fo:simple-page-master master-name="even-preface" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
|
70
|
+
<fo:region-body margin-top="17mm" margin-bottom="10mm" margin-left="{$marginLeftRight1}mm" margin-right="{$marginLeftRight2}mm"/>
|
66
71
|
<fo:region-before region-name="header-even" extent="17mm"/>
|
67
72
|
<fo:region-after region-name="footer-even" extent="10mm"/>
|
68
|
-
<fo:region-start region-name="left-region" extent="
|
69
|
-
<fo:region-end region-name="right-region" extent="
|
73
|
+
<fo:region-start region-name="left-region" extent="{$marginLeftRight1}mm"/>
|
74
|
+
<fo:region-end region-name="right-region" extent="{$marginLeftRight2}mm"/>
|
70
75
|
</fo:simple-page-master>
|
71
|
-
<fo:simple-page-master master-name="blankpage" page-width="{$pageWidth}" page-height="{$pageHeight}">
|
72
|
-
<fo:region-body margin-top="17mm" margin-bottom="10mm" margin-left="
|
76
|
+
<fo:simple-page-master master-name="blankpage" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
|
77
|
+
<fo:region-body margin-top="17mm" margin-bottom="10mm" margin-left="{$marginLeftRight1}mm" margin-right="{$marginLeftRight2}mm"/>
|
73
78
|
<fo:region-before region-name="header" extent="17mm"/>
|
74
79
|
<fo:region-after region-name="footer" extent="10mm"/>
|
75
|
-
<fo:region-start region-name="left" extent="
|
76
|
-
<fo:region-end region-name="right" extent="
|
80
|
+
<fo:region-start region-name="left" extent="{$marginLeftRight1}mm"/>
|
81
|
+
<fo:region-end region-name="right" extent="{$marginLeftRight2}mm"/>
|
77
82
|
</fo:simple-page-master>
|
78
83
|
<fo:page-sequence-master master-name="preface">
|
79
84
|
<fo:repeatable-page-master-alternatives>
|
@@ -84,20 +89,20 @@
|
|
84
89
|
</fo:page-sequence-master>
|
85
90
|
|
86
91
|
<!-- Document odd pages -->
|
87
|
-
<fo:simple-page-master master-name="odd" page-width="{$pageWidth}" page-height="{$pageHeight}">
|
88
|
-
<fo:region-body margin-top="
|
89
|
-
<fo:region-before region-name="header-odd" extent="
|
90
|
-
<fo:region-after region-name="footer-odd" extent="
|
91
|
-
<fo:region-start region-name="left-region" extent="
|
92
|
-
<fo:region-end region-name="right-region" extent="
|
92
|
+
<fo:simple-page-master master-name="odd" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
|
93
|
+
<fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom}mm" margin-left="{$marginLeftRight1}mm" margin-right="{$marginLeftRight2}mm"/>
|
94
|
+
<fo:region-before region-name="header-odd" extent="{$marginTop}mm"/>
|
95
|
+
<fo:region-after region-name="footer-odd" extent="{$marginBottom}mm"/>
|
96
|
+
<fo:region-start region-name="left-region" extent="{$marginLeftRight1}mm"/>
|
97
|
+
<fo:region-end region-name="right-region" extent="{$marginLeftRight2}mm"/>
|
93
98
|
</fo:simple-page-master>
|
94
99
|
<!-- Preface even pages -->
|
95
|
-
<fo:simple-page-master master-name="even" page-width="{$pageWidth}" page-height="{$pageHeight}">
|
96
|
-
<fo:region-body margin-top="
|
97
|
-
<fo:region-before region-name="header-even" extent="
|
98
|
-
<fo:region-after region-name="footer-even" extent="
|
99
|
-
<fo:region-start region-name="left-region" extent="
|
100
|
-
<fo:region-end region-name="right-region" extent="
|
100
|
+
<fo:simple-page-master master-name="even" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
|
101
|
+
<fo:region-body margin-top="{$marginTop}mm" margin-bottom="{$marginBottom}mm" margin-left="{$marginLeftRight1}mm" margin-right="{$marginLeftRight2}mm"/>
|
102
|
+
<fo:region-before region-name="header-even" extent="{$marginTop}mm"/>
|
103
|
+
<fo:region-after region-name="footer-even" extent="{$marginBottom}mm"/>
|
104
|
+
<fo:region-start region-name="left-region" extent="{$marginLeftRight1}mm"/>
|
105
|
+
<fo:region-end region-name="right-region" extent="{$marginLeftRight2}mm"/>
|
101
106
|
</fo:simple-page-master>
|
102
107
|
<fo:page-sequence-master master-name="document">
|
103
108
|
<fo:repeatable-page-master-alternatives>
|
@@ -1134,6 +1139,7 @@
|
|
1134
1139
|
</xsl:attribute-set><xsl:attribute-set name="eref-style">
|
1135
1140
|
|
1136
1141
|
|
1142
|
+
|
1137
1143
|
<xsl:attribute name="color">blue</xsl:attribute>
|
1138
1144
|
<xsl:attribute name="text-decoration">underline</xsl:attribute>
|
1139
1145
|
|
@@ -1352,14 +1358,15 @@
|
|
1352
1358
|
<xsl:apply-templates select="/*/*[local-name()='sections']/*[local-name()='clause'][@type='scope']" mode="contents"/>
|
1353
1359
|
|
1354
1360
|
<!-- Normative references -->
|
1355
|
-
<xsl:apply-templates select="/*/*[local-name()='bibliography']/*[local-name()='references'][@normative='true']" mode="contents"/>
|
1361
|
+
<xsl:apply-templates select="/*/*[local-name()='bibliography']/*[local-name()='references'][@normative='true'] | /*/*[local-name()='bibliography']/*[local-name()='clause'][*[local-name()='references'][@normative='true']]" mode="contents"/>
|
1356
1362
|
<!-- Terms and definitions -->
|
1357
1363
|
<xsl:apply-templates select="/*/*[local-name()='sections']/*[local-name()='terms'] | /*/*[local-name()='sections']/*[local-name()='clause'][.//*[local-name()='terms']] | /*/*[local-name()='sections']/*[local-name()='definitions'] | /*/*[local-name()='sections']/*[local-name()='clause'][.//*[local-name()='definitions']]" mode="contents"/>
|
1358
1364
|
<!-- Another main sections -->
|
1359
1365
|
<xsl:apply-templates select="/*/*[local-name()='sections']/*[local-name() != 'terms' and local-name() != 'definitions' and not(@type='scope') and not(local-name() = 'clause' and .//*[local-name()='terms']) and not(local-name() = 'clause' and .//*[local-name()='definitions'])]" mode="contents"/>
|
1360
1366
|
<xsl:apply-templates select="/*/*[local-name()='annex']" mode="contents"/>
|
1361
1367
|
<!-- Bibliography -->
|
1362
|
-
<xsl:apply-templates select="/*/*[local-name()='bibliography']/*[local-name()='references'][not(@normative='true')]" mode="contents"/>
|
1368
|
+
<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"/>
|
1369
|
+
|
1363
1370
|
</xsl:template><xsl:template name="processPrefaceSectionsDefault">
|
1364
1371
|
<xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='abstract']"/>
|
1365
1372
|
<xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='foreword']"/>
|
@@ -2133,6 +2140,7 @@
|
|
2133
2140
|
|
2134
2141
|
|
2135
2142
|
|
2143
|
+
|
2136
2144
|
<xsl:if test=".//*[local-name() = 'table']">
|
2137
2145
|
<xsl:attribute name="padding-right">1mm</xsl:attribute>
|
2138
2146
|
</xsl:if>
|
@@ -2162,6 +2170,7 @@
|
|
2162
2170
|
|
2163
2171
|
|
2164
2172
|
|
2173
|
+
|
2165
2174
|
<fo:inline padding-right="2mm">
|
2166
2175
|
|
2167
2176
|
|
@@ -2205,6 +2214,7 @@
|
|
2205
2214
|
|
2206
2215
|
|
2207
2216
|
|
2217
|
+
|
2208
2218
|
<xsl:value-of select="@reference"/>
|
2209
2219
|
|
2210
2220
|
|
@@ -2349,6 +2359,9 @@
|
|
2349
2359
|
|
2350
2360
|
|
2351
2361
|
|
2362
|
+
|
2363
|
+
|
2364
|
+
|
2352
2365
|
<fo:basic-link internal-destination="{@reference}_{ancestor::*[@id][1]/@id}" fox:alt-text="{@reference}"> <!-- @reference | ancestor::*[local-name()='clause'][1]/@id-->
|
2353
2366
|
|
2354
2367
|
|
@@ -3250,6 +3263,7 @@
|
|
3250
3263
|
<fo:inline xsl:use-attribute-sets="link-style">
|
3251
3264
|
|
3252
3265
|
|
3266
|
+
|
3253
3267
|
<xsl:choose>
|
3254
3268
|
<xsl:when test="$target_text = ''">
|
3255
3269
|
<xsl:apply-templates/>
|
@@ -3598,6 +3612,234 @@
|
|
3598
3612
|
<xsl:param name="height"/>
|
3599
3613
|
<line xmlns="http://www.w3.org/2000/svg" x1="0" y1="0" x2="{$width}" y2="{$height}" style="stroke: rgb(255, 0, 0); stroke-width:4px; "/>
|
3600
3614
|
<line xmlns="http://www.w3.org/2000/svg" x1="0" y1="{$height}" x2="{$width}" y2="0" style="stroke: rgb(255, 0, 0); stroke-width:4px; "/>
|
3615
|
+
</xsl:template><xsl:variable name="figure_name_height">14</xsl:variable><xsl:variable name="width_effective" select="$pageWidth - $marginLeftRight1 - $marginLeftRight2"/><xsl:variable name="height_effective" select="$pageHeight - $marginTop - $marginBottom - $figure_name_height"/><xsl:variable name="image_dpi" select="96"/><xsl:variable name="width_effective_px" select="$width_effective div 25.4 * $image_dpi"/><xsl:variable name="height_effective_px" select="$height_effective div 25.4 * $image_dpi"/><xsl:template match="*[local-name() = 'figure'][not(*[local-name() = 'image']) and *[local-name() = 'svg']]/*[local-name() = 'name']/*[local-name() = 'bookmark']" priority="2"/><xsl:template match="*[local-name() = 'figure'][not(*[local-name() = 'image'])]/*[local-name() = 'svg']" priority="2" name="image_svg">
|
3616
|
+
<xsl:param name="name"/>
|
3617
|
+
|
3618
|
+
<xsl:variable name="svg_content">
|
3619
|
+
<xsl:apply-templates select="." mode="svg_update"/>
|
3620
|
+
</xsl:variable>
|
3621
|
+
|
3622
|
+
<xsl:variable name="alt-text">
|
3623
|
+
<xsl:choose>
|
3624
|
+
<xsl:when test="normalize-space(../*[local-name() = 'name']) != ''">
|
3625
|
+
<xsl:value-of select="../*[local-name() = 'name']"/>
|
3626
|
+
</xsl:when>
|
3627
|
+
<xsl:when test="normalize-space($name) != ''">
|
3628
|
+
<xsl:value-of select="$name"/>
|
3629
|
+
</xsl:when>
|
3630
|
+
<xsl:otherwise>Figure</xsl:otherwise>
|
3631
|
+
</xsl:choose>
|
3632
|
+
</xsl:variable>
|
3633
|
+
|
3634
|
+
<xsl:choose>
|
3635
|
+
<xsl:when test=".//*[local-name() = 'a'][*[local-name() = 'rect'] or *[local-name() = 'polygon'] or *[local-name() = 'circle'] or *[local-name() = 'ellipse']]">
|
3636
|
+
<fo:block>
|
3637
|
+
<xsl:variable name="width" select="@width"/>
|
3638
|
+
<xsl:variable name="height" select="@height"/>
|
3639
|
+
|
3640
|
+
<xsl:variable name="scale_x">
|
3641
|
+
<xsl:choose>
|
3642
|
+
<xsl:when test="$width > $width_effective_px">
|
3643
|
+
<xsl:value-of select="$width_effective_px div $width"/>
|
3644
|
+
</xsl:when>
|
3645
|
+
<xsl:otherwise>1</xsl:otherwise>
|
3646
|
+
</xsl:choose>
|
3647
|
+
</xsl:variable>
|
3648
|
+
|
3649
|
+
<xsl:variable name="scale_y">
|
3650
|
+
<xsl:choose>
|
3651
|
+
<xsl:when test="$height * $scale_x > $height_effective_px">
|
3652
|
+
<xsl:value-of select="$height_effective_px div ($height * $scale_x)"/>
|
3653
|
+
</xsl:when>
|
3654
|
+
<xsl:otherwise>1</xsl:otherwise>
|
3655
|
+
</xsl:choose>
|
3656
|
+
</xsl:variable>
|
3657
|
+
|
3658
|
+
<xsl:variable name="scale">
|
3659
|
+
<xsl:choose>
|
3660
|
+
<xsl:when test="$scale_y != 1">
|
3661
|
+
<xsl:value-of select="$scale_x * $scale_y"/>
|
3662
|
+
</xsl:when>
|
3663
|
+
<xsl:otherwise>
|
3664
|
+
<xsl:value-of select="$scale_x"/>
|
3665
|
+
</xsl:otherwise>
|
3666
|
+
</xsl:choose>
|
3667
|
+
</xsl:variable>
|
3668
|
+
|
3669
|
+
<xsl:variable name="width_scale" select="round($width * $scale)"/>
|
3670
|
+
<xsl:variable name="height_scale" select="round($height * $scale)"/>
|
3671
|
+
|
3672
|
+
<fo:table table-layout="fixed" width="100%">
|
3673
|
+
<fo:table-column column-width="proportional-column-width(1)"/>
|
3674
|
+
<fo:table-column column-width="{$width_scale}px"/>
|
3675
|
+
<fo:table-column column-width="proportional-column-width(1)"/>
|
3676
|
+
<fo:table-body>
|
3677
|
+
<fo:table-row>
|
3678
|
+
<fo:table-cell column-number="2">
|
3679
|
+
<fo:block>
|
3680
|
+
<fo:block-container width="{$width_scale}px" height="{$height_scale}px">
|
3681
|
+
<xsl:if test="../*[local-name() = 'name']/*[local-name() = 'bookmark']">
|
3682
|
+
<fo:block line-height="0" font-size="0">
|
3683
|
+
<xsl:for-each select="../*[local-name() = 'name']/*[local-name() = 'bookmark']">
|
3684
|
+
<xsl:call-template name="bookmark"/>
|
3685
|
+
</xsl:for-each>
|
3686
|
+
</fo:block>
|
3687
|
+
</xsl:if>
|
3688
|
+
<fo:block text-depth="0" line-height="0" font-size="0">
|
3689
|
+
|
3690
|
+
<fo:instream-foreign-object fox:alt-text="{$alt-text}">
|
3691
|
+
<xsl:attribute name="width">100%</xsl:attribute>
|
3692
|
+
<xsl:attribute name="content-height">100%</xsl:attribute>
|
3693
|
+
<xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
|
3694
|
+
<xsl:attribute name="scaling">uniform</xsl:attribute>
|
3695
|
+
|
3696
|
+
<xsl:apply-templates select="xalan:nodeset($svg_content)" mode="svg_remove_a"/>
|
3697
|
+
</fo:instream-foreign-object>
|
3698
|
+
</fo:block>
|
3699
|
+
|
3700
|
+
<xsl:apply-templates select=".//*[local-name() = 'a'][*[local-name() = 'rect'] or *[local-name() = 'polygon'] or *[local-name() = 'circle'] or *[local-name() = 'ellipse']]" mode="svg_imagemap_links">
|
3701
|
+
<xsl:with-param name="scale" select="$scale"/>
|
3702
|
+
</xsl:apply-templates>
|
3703
|
+
</fo:block-container>
|
3704
|
+
</fo:block>
|
3705
|
+
</fo:table-cell>
|
3706
|
+
</fo:table-row>
|
3707
|
+
</fo:table-body>
|
3708
|
+
</fo:table>
|
3709
|
+
</fo:block>
|
3710
|
+
|
3711
|
+
</xsl:when>
|
3712
|
+
<xsl:otherwise>
|
3713
|
+
<fo:block xsl:use-attribute-sets="image-style">
|
3714
|
+
<fo:instream-foreign-object fox:alt-text="{$alt-text}">
|
3715
|
+
<xsl:attribute name="width">100%</xsl:attribute>
|
3716
|
+
<xsl:attribute name="content-height">100%</xsl:attribute>
|
3717
|
+
<xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
|
3718
|
+
<!-- effective height 297 - 27.4 - 13 = 256.6 -->
|
3719
|
+
<!-- effective width 210 - 12.5 - 25 = 172.5 -->
|
3720
|
+
<!-- effective height / width = 1.48, 1.4 - with title -->
|
3721
|
+
<xsl:if test="@height > (@width * 1.4)"> <!-- for images with big height -->
|
3722
|
+
<xsl:variable name="width" select="((@width * 1.4) div @height) * 100"/>
|
3723
|
+
<xsl:attribute name="width"><xsl:value-of select="$width"/>%</xsl:attribute>
|
3724
|
+
</xsl:if>
|
3725
|
+
<xsl:attribute name="scaling">uniform</xsl:attribute>
|
3726
|
+
<xsl:copy-of select="$svg_content"/>
|
3727
|
+
</fo:instream-foreign-object>
|
3728
|
+
</fo:block>
|
3729
|
+
</xsl:otherwise>
|
3730
|
+
</xsl:choose>
|
3731
|
+
</xsl:template><xsl:template match="@*|node()" mode="svg_update">
|
3732
|
+
<xsl:copy>
|
3733
|
+
<xsl:apply-templates select="@*|node()" mode="svg_update"/>
|
3734
|
+
</xsl:copy>
|
3735
|
+
</xsl:template><xsl:template match="*[local-name() = 'image']/@href" mode="svg_update">
|
3736
|
+
<xsl:attribute name="href" namespace="http://www.w3.org/1999/xlink">
|
3737
|
+
<xsl:value-of select="."/>
|
3738
|
+
</xsl:attribute>
|
3739
|
+
</xsl:template><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'image'][@mimetype = 'image/svg+xml' and @src[not(starts-with(., 'data:image/'))]]" priority="2">
|
3740
|
+
<xsl:variable name="svg_content" select="document(@src)"/>
|
3741
|
+
<xsl:variable name="name" select="ancestor::*[local-name() = 'figure']/*[local-name() = 'name']"/>
|
3742
|
+
<xsl:for-each select="xalan:nodeset($svg_content)/node()">
|
3743
|
+
<xsl:call-template name="image_svg">
|
3744
|
+
<xsl:with-param name="name" select="$name"/>
|
3745
|
+
</xsl:call-template>
|
3746
|
+
</xsl:for-each>
|
3747
|
+
</xsl:template><xsl:template match="@*|node()" mode="svg_remove_a">
|
3748
|
+
<xsl:copy>
|
3749
|
+
<xsl:apply-templates select="@*|node()" mode="svg_remove_a"/>
|
3750
|
+
</xsl:copy>
|
3751
|
+
</xsl:template><xsl:template match="*[local-name() = 'a']" mode="svg_remove_a">
|
3752
|
+
<xsl:apply-templates mode="svg_remove_a"/>
|
3753
|
+
</xsl:template><xsl:template match="*[local-name() = 'a']" mode="svg_imagemap_links">
|
3754
|
+
<xsl:param name="scale"/>
|
3755
|
+
<xsl:variable name="dest">
|
3756
|
+
<xsl:choose>
|
3757
|
+
<xsl:when test="starts-with(@href, '#')">
|
3758
|
+
<xsl:value-of select="substring-after(@href, '#')"/>
|
3759
|
+
</xsl:when>
|
3760
|
+
<xsl:otherwise>
|
3761
|
+
<xsl:value-of select="@href"/>
|
3762
|
+
</xsl:otherwise>
|
3763
|
+
</xsl:choose>
|
3764
|
+
</xsl:variable>
|
3765
|
+
<xsl:for-each select="./*[local-name() = 'rect']">
|
3766
|
+
<xsl:call-template name="insertSVGMapLink">
|
3767
|
+
<xsl:with-param name="left" select="floor(@x * $scale)"/>
|
3768
|
+
<xsl:with-param name="top" select="floor(@y * $scale)"/>
|
3769
|
+
<xsl:with-param name="width" select="floor(@width * $scale)"/>
|
3770
|
+
<xsl:with-param name="height" select="floor(@height * $scale)"/>
|
3771
|
+
<xsl:with-param name="dest" select="$dest"/>
|
3772
|
+
</xsl:call-template>
|
3773
|
+
</xsl:for-each>
|
3774
|
+
|
3775
|
+
<xsl:for-each select="./*[local-name() = 'polygon']">
|
3776
|
+
<xsl:variable name="points">
|
3777
|
+
<xsl:call-template name="split">
|
3778
|
+
<xsl:with-param name="pText" select="@points"/>
|
3779
|
+
</xsl:call-template>
|
3780
|
+
</xsl:variable>
|
3781
|
+
<xsl:variable name="x_coords">
|
3782
|
+
<xsl:for-each select="xalan:nodeset($points)//item[position() mod 2 = 1]">
|
3783
|
+
<xsl:sort select="." data-type="number"/>
|
3784
|
+
<x><xsl:value-of select="."/></x>
|
3785
|
+
</xsl:for-each>
|
3786
|
+
</xsl:variable>
|
3787
|
+
<xsl:variable name="y_coords">
|
3788
|
+
<xsl:for-each select="xalan:nodeset($points)//item[position() mod 2 = 0]">
|
3789
|
+
<xsl:sort select="." data-type="number"/>
|
3790
|
+
<y><xsl:value-of select="."/></y>
|
3791
|
+
</xsl:for-each>
|
3792
|
+
</xsl:variable>
|
3793
|
+
<xsl:variable name="x" select="xalan:nodeset($x_coords)//x[1]"/>
|
3794
|
+
<xsl:variable name="y" select="xalan:nodeset($y_coords)//y[1]"/>
|
3795
|
+
<xsl:variable name="width" select="xalan:nodeset($x_coords)//x[last()] - $x"/>
|
3796
|
+
<xsl:variable name="height" select="xalan:nodeset($y_coords)//y[last()] - $y"/>
|
3797
|
+
<xsl:call-template name="insertSVGMapLink">
|
3798
|
+
<xsl:with-param name="left" select="floor($x * $scale)"/>
|
3799
|
+
<xsl:with-param name="top" select="floor($y * $scale)"/>
|
3800
|
+
<xsl:with-param name="width" select="floor($width * $scale)"/>
|
3801
|
+
<xsl:with-param name="height" select="floor($height * $scale)"/>
|
3802
|
+
<xsl:with-param name="dest" select="$dest"/>
|
3803
|
+
</xsl:call-template>
|
3804
|
+
</xsl:for-each>
|
3805
|
+
|
3806
|
+
<xsl:for-each select="./*[local-name() = 'circle']">
|
3807
|
+
<xsl:call-template name="insertSVGMapLink">
|
3808
|
+
<xsl:with-param name="left" select="floor((@cx - @r) * $scale)"/>
|
3809
|
+
<xsl:with-param name="top" select="floor((@cy - @r) * $scale)"/>
|
3810
|
+
<xsl:with-param name="width" select="floor(@r * 2 * $scale)"/>
|
3811
|
+
<xsl:with-param name="height" select="floor(@r * 2 * $scale)"/>
|
3812
|
+
<xsl:with-param name="dest" select="$dest"/>
|
3813
|
+
</xsl:call-template>
|
3814
|
+
</xsl:for-each>
|
3815
|
+
<xsl:for-each select="./*[local-name() = 'ellipse']">
|
3816
|
+
<xsl:call-template name="insertSVGMapLink">
|
3817
|
+
<xsl:with-param name="left" select="floor((@cx - @rx) * $scale)"/>
|
3818
|
+
<xsl:with-param name="top" select="floor((@cy - @ry) * $scale)"/>
|
3819
|
+
<xsl:with-param name="width" select="floor(@rx * 2 * $scale)"/>
|
3820
|
+
<xsl:with-param name="height" select="floor(@ry * 2 * $scale)"/>
|
3821
|
+
<xsl:with-param name="dest" select="$dest"/>
|
3822
|
+
</xsl:call-template>
|
3823
|
+
</xsl:for-each>
|
3824
|
+
</xsl:template><xsl:template name="insertSVGMapLink">
|
3825
|
+
<xsl:param name="left"/>
|
3826
|
+
<xsl:param name="top"/>
|
3827
|
+
<xsl:param name="width"/>
|
3828
|
+
<xsl:param name="height"/>
|
3829
|
+
<xsl:param name="dest"/>
|
3830
|
+
<fo:block-container position="absolute" left="{$left}px" top="{$top}px" width="{$width}px" height="{$height}px">
|
3831
|
+
<fo:block font-size="1pt">
|
3832
|
+
<fo:basic-link internal-destination="{$dest}" fox:alt-text="svg link">
|
3833
|
+
<fo:inline-container inline-progression-dimension="100%">
|
3834
|
+
<fo:block-container height="{$height - 1}px" width="100%">
|
3835
|
+
<!-- DEBUG <xsl:if test="local-name()='polygon'">
|
3836
|
+
<xsl:attribute name="background-color">magenta</xsl:attribute>
|
3837
|
+
</xsl:if> -->
|
3838
|
+
<fo:block> </fo:block></fo:block-container>
|
3839
|
+
</fo:inline-container>
|
3840
|
+
</fo:basic-link>
|
3841
|
+
</fo:block>
|
3842
|
+
</fo:block-container>
|
3601
3843
|
</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">
|
3602
3844
|
<xsl:apply-templates mode="contents"/>
|
3603
3845
|
<xsl:text> </xsl:text>
|
@@ -3626,28 +3868,39 @@
|
|
3626
3868
|
<xsl:when test="count(xalan:nodeset($contents)/doc) > 1">
|
3627
3869
|
<xsl:for-each select="xalan:nodeset($contents)/doc">
|
3628
3870
|
<fo:bookmark internal-destination="{contents/item[1]/@id}" starting-state="hide">
|
3871
|
+
<xsl:if test="@bundle = 'true'">
|
3872
|
+
<xsl:attribute name="internal-destination"><xsl:value-of select="@firstpage_id"/></xsl:attribute>
|
3873
|
+
</xsl:if>
|
3629
3874
|
<fo:bookmark-title>
|
3630
|
-
<xsl:variable name="bookmark-title_">
|
3631
|
-
<xsl:call-template name="getLangVersion">
|
3632
|
-
<xsl:with-param name="lang" select="@lang"/>
|
3633
|
-
<xsl:with-param name="doctype" select="@doctype"/>
|
3634
|
-
<xsl:with-param name="title" select="@title-part"/>
|
3635
|
-
</xsl:call-template>
|
3636
|
-
</xsl:variable>
|
3637
3875
|
<xsl:choose>
|
3638
|
-
<xsl:when test="normalize-space(
|
3639
|
-
<xsl:
|
3640
|
-
|
3641
|
-
|
3876
|
+
<xsl:when test="not(normalize-space(@bundle) = 'true')"> <!-- 'bundle' means several different documents (not language versions) in one xml -->
|
3877
|
+
<xsl:variable name="bookmark-title_">
|
3878
|
+
<xsl:call-template name="getLangVersion">
|
3879
|
+
<xsl:with-param name="lang" select="@lang"/>
|
3880
|
+
<xsl:with-param name="doctype" select="@doctype"/>
|
3881
|
+
<xsl:with-param name="title" select="@title-part"/>
|
3882
|
+
</xsl:call-template>
|
3883
|
+
</xsl:variable>
|
3642
3884
|
<xsl:choose>
|
3643
|
-
<xsl:when test="
|
3644
|
-
|
3645
|
-
|
3646
|
-
<xsl:otherwise
|
3885
|
+
<xsl:when test="normalize-space($bookmark-title_) != ''">
|
3886
|
+
<xsl:value-of select="normalize-space($bookmark-title_)"/>
|
3887
|
+
</xsl:when>
|
3888
|
+
<xsl:otherwise>
|
3889
|
+
<xsl:choose>
|
3890
|
+
<xsl:when test="@lang = 'en'">English</xsl:when>
|
3891
|
+
<xsl:when test="@lang = 'fr'">Français</xsl:when>
|
3892
|
+
<xsl:when test="@lang = 'de'">Deutsche</xsl:when>
|
3893
|
+
<xsl:otherwise><xsl:value-of select="@lang"/> version</xsl:otherwise>
|
3894
|
+
</xsl:choose>
|
3895
|
+
</xsl:otherwise>
|
3647
3896
|
</xsl:choose>
|
3897
|
+
</xsl:when>
|
3898
|
+
<xsl:otherwise>
|
3899
|
+
<xsl:value-of select="@title-part"/>
|
3648
3900
|
</xsl:otherwise>
|
3649
3901
|
</xsl:choose>
|
3650
3902
|
</fo:bookmark-title>
|
3903
|
+
|
3651
3904
|
<xsl:apply-templates select="contents/item" mode="bookmark"/>
|
3652
3905
|
|
3653
3906
|
<xsl:call-template name="insertFigureBookmarks">
|
@@ -3746,16 +3999,23 @@
|
|
3746
3999
|
<xsl:otherwise><xsl:value-of select="$lang"/> version</xsl:otherwise>
|
3747
4000
|
</xsl:choose>
|
3748
4001
|
</xsl:template><xsl:template match="item" mode="bookmark">
|
3749
|
-
<
|
3750
|
-
|
3751
|
-
|
3752
|
-
|
3753
|
-
<xsl:
|
3754
|
-
|
3755
|
-
|
3756
|
-
|
3757
|
-
|
3758
|
-
|
4002
|
+
<xsl:choose>
|
4003
|
+
<xsl:when test="@id != ''">
|
4004
|
+
<fo:bookmark internal-destination="{@id}" starting-state="hide">
|
4005
|
+
<fo:bookmark-title>
|
4006
|
+
<xsl:if test="@section != ''">
|
4007
|
+
<xsl:value-of select="@section"/>
|
4008
|
+
<xsl:text> </xsl:text>
|
4009
|
+
</xsl:if>
|
4010
|
+
<xsl:value-of select="normalize-space(title)"/>
|
4011
|
+
</fo:bookmark-title>
|
4012
|
+
<xsl:apply-templates mode="bookmark"/>
|
4013
|
+
</fo:bookmark>
|
4014
|
+
</xsl:when>
|
4015
|
+
<xsl:otherwise>
|
4016
|
+
<xsl:apply-templates mode="bookmark"/>
|
4017
|
+
</xsl:otherwise>
|
4018
|
+
</xsl:choose>
|
3759
4019
|
</xsl:template><xsl:template match="title" mode="bookmark"/><xsl:template match="text()" mode="bookmark"/><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'image']/*[local-name() = 'name']" mode="presentation">
|
3760
4020
|
<xsl:if test="normalize-space() != ''">
|
3761
4021
|
<fo:block xsl:use-attribute-sets="figure-name-style">
|
@@ -4316,6 +4576,7 @@
|
|
4316
4576
|
</xsl:if>
|
4317
4577
|
|
4318
4578
|
<fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}">
|
4579
|
+
|
4319
4580
|
<xsl:if test="normalize-space(@citeas) = ''">
|
4320
4581
|
<xsl:attribute name="fox:alt-text"><xsl:value-of select="."/></xsl:attribute>
|
4321
4582
|
</xsl:if>
|
data/lib/metanorma/cc/version.rb
CHANGED
data/metanorma-cc.gemspec
CHANGED
@@ -28,7 +28,7 @@ Gem::Specification.new do |spec|
|
|
28
28
|
spec.require_paths = ["lib"]
|
29
29
|
spec.required_ruby_version = Gem::Requirement.new(">= 2.5.0")
|
30
30
|
|
31
|
-
spec.add_dependency "metanorma-generic", "~> 1.10.
|
31
|
+
spec.add_dependency "metanorma-generic", "~> 1.10.2"
|
32
32
|
|
33
33
|
spec.add_development_dependency "byebug", "~> 9.1"
|
34
34
|
spec.add_development_dependency "equivalent-xml", "~> 0.6"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: metanorma-cc
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.7.
|
4
|
+
version: 1.7.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ribose Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-07-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: metanorma-generic
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 1.10.
|
19
|
+
version: 1.10.2
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 1.10.
|
26
|
+
version: 1.10.2
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: byebug
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|