metanorma-cc 1.7.5 → 1.7.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
|