metanorma-csa 2.2.0 → 2.2.2
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/lib/isodoc/csa/csa.standard.xsl +244 -205
- data/lib/isodoc/csa/html/htmlstyle.css +35 -3
- data/lib/metanorma/csa/isodoc.rng +11 -1
- data/lib/metanorma/csa/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 806a51a66247c3398f78d9f516525b0f2aaa3fe83d669038d0dccc9c7daceea0
|
4
|
+
data.tar.gz: 1aa70cd654e05d3acccfb0879309815e5c1b4bc48a2086d07b6be3d52aff1704
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f6b1e0ca4b2895aea8c96f514edd8cfcba2270ea96be1d84e3357df6f941bbb1d3e72a8b3f9c85846296272385570e1817cf8af8c98c67c44bf4c9563b6ae801
|
7
|
+
data.tar.gz: 4724482cd93a0e9b4f615e824156bec5569469c458c0fcedb274a6dce49bc927f5e8eebcfd321e7fe271734b5dd331916d5d580ebf478a14e9db022987b338a2
|
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
<xsl:output version="1.0" method="xml" encoding="UTF-8" indent="yes"/>
|
4
4
|
|
5
|
-
<xsl:key name="kfn" match="*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure') and not(ancestor::*[local-name() = 'name'])
|
5
|
+
<xsl:key name="kfn" match="*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure' or local-name() = 'localized-strings')] and not(ancestor::*[local-name() = 'name']))]" use="@reference"/>
|
6
6
|
|
7
7
|
<xsl:variable name="debug">false</xsl:variable>
|
8
8
|
|
@@ -1346,6 +1346,12 @@
|
|
1346
1346
|
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
1347
1347
|
</xsl:attribute-set>
|
1348
1348
|
|
1349
|
+
<xsl:attribute-set name="figure-block-style">
|
1350
|
+
|
1351
|
+
<xsl:attribute name="margin-bottom">6pt</xsl:attribute>
|
1352
|
+
|
1353
|
+
</xsl:attribute-set>
|
1354
|
+
|
1349
1355
|
<xsl:attribute-set name="figure-style">
|
1350
1356
|
|
1351
1357
|
</xsl:attribute-set>
|
@@ -1356,7 +1362,7 @@
|
|
1356
1362
|
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
1357
1363
|
<xsl:attribute name="text-align">center</xsl:attribute>
|
1358
1364
|
<xsl:attribute name="margin-top">12pt</xsl:attribute>
|
1359
|
-
<xsl:attribute name="
|
1365
|
+
<xsl:attribute name="space-after">6pt</xsl:attribute>
|
1360
1366
|
<xsl:attribute name="keep-with-previous">always</xsl:attribute>
|
1361
1367
|
|
1362
1368
|
</xsl:attribute-set>
|
@@ -2765,6 +2771,10 @@
|
|
2765
2771
|
<xsl:with-param name="continued">true</xsl:with-param>
|
2766
2772
|
</xsl:apply-templates>
|
2767
2773
|
|
2774
|
+
<xsl:if test="not(ancestor::*[local-name()='table']/*[local-name()='name'])"> <!-- to prevent empty fo:table-cell in case of missing table's name -->
|
2775
|
+
<fo:block/>
|
2776
|
+
</xsl:if>
|
2777
|
+
|
2768
2778
|
</fo:table-cell>
|
2769
2779
|
</fo:table-row>
|
2770
2780
|
</xsl:template> <!-- table-header-title -->
|
@@ -3118,7 +3128,7 @@
|
|
3118
3128
|
</fn>
|
3119
3129
|
-->
|
3120
3130
|
<!-- footnotes in text (title, bibliography, main body, table's, figure's names), not for tables, figures -->
|
3121
|
-
<xsl:template match="*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure') and not(ancestor::*[local-name() = 'name'])
|
3131
|
+
<xsl:template match="*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure')] and not(ancestor::*[local-name() = 'name']))]" priority="2" name="fn">
|
3122
3132
|
|
3123
3133
|
<!-- list of footnotes to calculate actual footnotes number -->
|
3124
3134
|
<xsl:variable name="p_fn_">
|
@@ -3149,7 +3159,22 @@
|
|
3149
3159
|
|
3150
3160
|
<xsl:variable name="ref_id" select="concat('footnote_', $lang, '_', $reference, '_', $current_fn_number)"/>
|
3151
3161
|
<xsl:variable name="footnote_inline">
|
3152
|
-
<fo:inline
|
3162
|
+
<fo:inline>
|
3163
|
+
|
3164
|
+
<xsl:variable name="fn_styles">
|
3165
|
+
<xsl:choose>
|
3166
|
+
<xsl:when test="ancestor::*[local-name() = 'bibitem']">
|
3167
|
+
<fn_styles xsl:use-attribute-sets="bibitem-note-fn-style"/>
|
3168
|
+
</xsl:when>
|
3169
|
+
<xsl:otherwise>
|
3170
|
+
<fn_styles xsl:use-attribute-sets="fn-num-style"/>
|
3171
|
+
</xsl:otherwise>
|
3172
|
+
</xsl:choose>
|
3173
|
+
</xsl:variable>
|
3174
|
+
|
3175
|
+
<xsl:for-each select="xalan:nodeset($fn_styles)/fn_styles/@*">
|
3176
|
+
<xsl:copy-of select="."/>
|
3177
|
+
</xsl:for-each>
|
3153
3178
|
|
3154
3179
|
<xsl:if test="following-sibling::*[1][local-name() = 'fn']">
|
3155
3180
|
<xsl:attribute name="padding-right">0.5mm</xsl:attribute>
|
@@ -3160,8 +3185,7 @@
|
|
3160
3185
|
</fo:basic-link>
|
3161
3186
|
</fo:inline>
|
3162
3187
|
</xsl:variable>
|
3163
|
-
|
3164
|
-
gen_id=<xsl:value-of select="$gen_id"/> -->
|
3188
|
+
|
3165
3189
|
<xsl:choose>
|
3166
3190
|
<xsl:when test="normalize-space(@skip_footnote_body) = 'true'">
|
3167
3191
|
<xsl:copy-of select="$footnote_inline"/>
|
@@ -3213,7 +3237,10 @@
|
|
3213
3237
|
</xsl:for-each>
|
3214
3238
|
<xsl:for-each select="ancestor::*[contains(local-name(), '-standard')]/*[local-name()='boilerplate']/* | 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']/*">
|
3215
3239
|
<xsl:sort select="@displayorder" data-type="number"/>
|
3216
|
-
|
3240
|
+
<!-- commented:
|
3241
|
+
.//*[local-name() = 'bibitem'][ancestor::*[local-name() = 'references']]/*[local-name() = 'note'] |
|
3242
|
+
because 'fn' there is in biblio-tag -->
|
3243
|
+
<xsl:for-each select=".//*[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])]">
|
3217
3244
|
<!-- copy unique fn -->
|
3218
3245
|
<fn gen_id="{generate-id(.)}">
|
3219
3246
|
<xsl:copy-of select="@*"/>
|
@@ -4064,7 +4091,7 @@
|
|
4064
4091
|
10
|
4065
4092
|
|
4066
4093
|
|
4067
|
-
<!--
|
4094
|
+
<!-- inherit -->
|
4068
4095
|
|
4069
4096
|
</xsl:variable>
|
4070
4097
|
<xsl:variable name="font-size" select="normalize-space($_font-size)"/>
|
@@ -5032,6 +5059,33 @@
|
|
5032
5059
|
</xsl:choose>
|
5033
5060
|
</xsl:template>
|
5034
5061
|
|
5062
|
+
<xsl:template name="getLang_fromCurrentNode">
|
5063
|
+
<xsl:variable name="language_current" select="normalize-space(.//*[local-name()='bibdata']//*[local-name()='language'][@current = 'true'])"/>
|
5064
|
+
<xsl:variable name="language">
|
5065
|
+
<xsl:choose>
|
5066
|
+
<xsl:when test="$language_current != ''">
|
5067
|
+
<xsl:value-of select="$language_current"/>
|
5068
|
+
</xsl:when>
|
5069
|
+
<xsl:otherwise>
|
5070
|
+
<xsl:variable name="language_current_2" select="normalize-space(xalan:nodeset($bibdata)//*[local-name()='bibdata']//*[local-name()='language'][@current = 'true'])"/>
|
5071
|
+
<xsl:choose>
|
5072
|
+
<xsl:when test="$language_current_2 != ''">
|
5073
|
+
<xsl:value-of select="$language_current_2"/>
|
5074
|
+
</xsl:when>
|
5075
|
+
<xsl:otherwise>
|
5076
|
+
<xsl:value-of select=".//*[local-name()='bibdata']//*[local-name()='language']"/>
|
5077
|
+
</xsl:otherwise>
|
5078
|
+
</xsl:choose>
|
5079
|
+
</xsl:otherwise>
|
5080
|
+
</xsl:choose>
|
5081
|
+
</xsl:variable>
|
5082
|
+
|
5083
|
+
<xsl:choose>
|
5084
|
+
<xsl:when test="$language = 'English'">en</xsl:when>
|
5085
|
+
<xsl:otherwise><xsl:value-of select="$language"/></xsl:otherwise>
|
5086
|
+
</xsl:choose>
|
5087
|
+
</xsl:template>
|
5088
|
+
|
5035
5089
|
<xsl:template name="capitalizeWords">
|
5036
5090
|
<xsl:param name="str"/>
|
5037
5091
|
<xsl:variable name="str2" select="translate($str, '-', ' ')"/>
|
@@ -5650,7 +5704,7 @@
|
|
5650
5704
|
<xsl:template match="*[local-name() = 'figure']" name="figure">
|
5651
5705
|
<xsl:variable name="isAdded" select="@added"/>
|
5652
5706
|
<xsl:variable name="isDeleted" select="@deleted"/>
|
5653
|
-
<fo:block-container id="{@id}">
|
5707
|
+
<fo:block-container id="{@id}" xsl:use-attribute-sets="figure-block-style">
|
5654
5708
|
|
5655
5709
|
<xsl:call-template name="setTrackChangesStyles">
|
5656
5710
|
<xsl:with-param name="isAdded" select="$isAdded"/>
|
@@ -5728,7 +5782,9 @@
|
|
5728
5782
|
|
5729
5783
|
<xsl:variable name="scale" select="java:org.metanorma.fop.Util.getImageScale($img_src, $width_effective, $height_effective)"/>
|
5730
5784
|
<xsl:if test="number($scale) < 100">
|
5731
|
-
|
5785
|
+
|
5786
|
+
<xsl:attribute name="content-width"><xsl:value-of select="$scale"/>%</xsl:attribute>
|
5787
|
+
|
5732
5788
|
</xsl:if>
|
5733
5789
|
|
5734
5790
|
</xsl:if>
|
@@ -6636,7 +6692,13 @@
|
|
6636
6692
|
</xsl:template>
|
6637
6693
|
|
6638
6694
|
<xsl:template match="text()" mode="contents_item">
|
6639
|
-
<xsl:
|
6695
|
+
<xsl:variable name="text">
|
6696
|
+
<!-- to split by '_' and other chars -->
|
6697
|
+
<text><xsl:call-template name="add-zero-spaces-java"/></text>
|
6698
|
+
</xsl:variable>
|
6699
|
+
<xsl:for-each select="xalan:nodeset($text)/text/text()">
|
6700
|
+
<xsl:call-template name="keep_together_standard_number"/>
|
6701
|
+
</xsl:for-each>
|
6640
6702
|
</xsl:template>
|
6641
6703
|
|
6642
6704
|
<!-- Note: to enable the addition of character span markup with semantic styling for DIS Word output -->
|
@@ -6647,36 +6709,54 @@
|
|
6647
6709
|
<!-- =============== -->
|
6648
6710
|
<!-- sourcecode -->
|
6649
6711
|
<!-- =============== -->
|
6650
|
-
<xsl:template match="*[local-name()='sourcecode']" name="sourcecode">
|
6651
6712
|
|
6652
|
-
|
6653
|
-
|
6654
|
-
|
6655
|
-
10
|
6713
|
+
<xsl:variable name="source-highlighter-css_" select="//*[contains(local-name(), '-standard')]/*[local-name() = 'misc-container']/*[local-name() = 'source-highlighter-css']"/>
|
6714
|
+
<xsl:variable name="sourcecode_css_" select="java:org.metanorma.fop.Util.parseCSS($source-highlighter-css_)"/>
|
6715
|
+
<xsl:variable name="sourcecode_css" select="xalan:nodeset($sourcecode_css_)"/>
|
6656
6716
|
|
6717
|
+
<xsl:template match="*[local-name() = 'property']" mode="css">
|
6718
|
+
<xsl:attribute name="{@name}">
|
6719
|
+
<xsl:value-of select="@value"/>
|
6720
|
+
</xsl:attribute>
|
6721
|
+
</xsl:template>
|
6657
6722
|
|
6658
|
-
|
6723
|
+
<xsl:template name="get_sourcecode_attributes">
|
6724
|
+
<xsl:element name="sourcecode_attributes" use-attribute-sets="sourcecode-style">
|
6725
|
+
<xsl:variable name="_font-size">
|
6726
|
+
10
|
6659
6727
|
|
6660
|
-
<!-- <xsl:if test="$namespace = 'ieee'">
|
6661
|
-
<xsl:if test="$current_template = 'standard'">8</xsl:if>
|
6662
|
-
</xsl:if> -->
|
6663
6728
|
|
6664
|
-
|
6729
|
+
<!-- inherit -->
|
6665
6730
|
|
6666
|
-
<xsl:
|
6667
|
-
|
6668
|
-
|
6669
|
-
|
6670
|
-
|
6671
|
-
|
6672
|
-
|
6673
|
-
|
6674
|
-
|
6675
|
-
|
6676
|
-
|
6677
|
-
|
6731
|
+
<!-- <xsl:if test="$namespace = 'ieee'">
|
6732
|
+
<xsl:if test="$current_template = 'standard'">8</xsl:if>
|
6733
|
+
</xsl:if> -->
|
6734
|
+
|
6735
|
+
</xsl:variable>
|
6736
|
+
|
6737
|
+
<xsl:variable name="font-size" select="normalize-space($_font-size)"/>
|
6738
|
+
<xsl:if test="$font-size != ''">
|
6739
|
+
<xsl:attribute name="font-size">
|
6740
|
+
<xsl:choose>
|
6741
|
+
<xsl:when test="$font-size = 'inherit'"><xsl:value-of select="$font-size"/></xsl:when>
|
6742
|
+
<xsl:when test="contains($font-size, '%')"><xsl:value-of select="$font-size"/></xsl:when>
|
6743
|
+
<xsl:when test="ancestor::*[local-name()='note']"><xsl:value-of select="$font-size * 0.91"/>pt</xsl:when>
|
6744
|
+
<xsl:otherwise><xsl:value-of select="$font-size"/>pt</xsl:otherwise>
|
6745
|
+
</xsl:choose>
|
6746
|
+
</xsl:attribute>
|
6747
|
+
</xsl:if>
|
6748
|
+
<xsl:apply-templates select="$sourcecode_css//class[@name = 'sourcecode']" mode="css"/>
|
6749
|
+
</xsl:element>
|
6750
|
+
</xsl:template>
|
6751
|
+
|
6752
|
+
<xsl:template match="*[local-name()='sourcecode']" name="sourcecode">
|
6753
|
+
|
6754
|
+
<xsl:variable name="sourcecode_attributes">
|
6755
|
+
<xsl:call-template name="get_sourcecode_attributes"/>
|
6678
6756
|
</xsl:variable>
|
6679
6757
|
|
6758
|
+
<!-- <xsl:copy-of select="$sourcecode_css"/> -->
|
6759
|
+
|
6680
6760
|
<xsl:choose>
|
6681
6761
|
<xsl:when test="$isGenerateTableIF = 'true' and (ancestor::*[local-name() = 'td'] or ancestor::*[local-name() = 'th'])">
|
6682
6762
|
<xsl:for-each select="xalan:nodeset($sourcecode_attributes)/sourcecode_attributes/@*">
|
@@ -6719,6 +6799,12 @@
|
|
6719
6799
|
</xsl:attribute>
|
6720
6800
|
</xsl:for-each>
|
6721
6801
|
|
6802
|
+
<!-- remove margin between rows in the table with sourcecode line numbers -->
|
6803
|
+
<xsl:if test="ancestor::*[local-name() = 'sourcecode'][@linenums = 'true'] and ancestor::*[local-name() = 'tr'][1]/following-sibling::*[local-name() = 'tr']">
|
6804
|
+
<xsl:attribute name="margin-top">0pt</xsl:attribute>
|
6805
|
+
<xsl:attribute name="margin-bottom">0pt</xsl:attribute>
|
6806
|
+
</xsl:if>
|
6807
|
+
|
6722
6808
|
<xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
|
6723
6809
|
</fo:block>
|
6724
6810
|
|
@@ -6730,9 +6816,10 @@
|
|
6730
6816
|
</xsl:choose>
|
6731
6817
|
</xsl:template>
|
6732
6818
|
|
6733
|
-
<xsl:template match="*[local-name()='sourcecode']/text()" priority="2">
|
6819
|
+
<xsl:template match="*[local-name()='sourcecode']/text() | *[local-name()='sourcecode']//*[local-name()='span']/text()" priority="2">
|
6734
6820
|
<xsl:choose>
|
6735
|
-
|
6821
|
+
<!-- disabled -->
|
6822
|
+
<xsl:when test="1 = 2 and normalize-space($syntax-highlight) = 'true' and normalize-space(../@lang) != ''"> <!-- condition for turn on of highlighting -->
|
6736
6823
|
<xsl:variable name="syntax" select="java:org.metanorma.fop.Util.syntaxHighlight(., ../@lang)"/>
|
6737
6824
|
<xsl:choose>
|
6738
6825
|
<xsl:when test="normalize-space($syntax) != ''"><!-- if there is highlighted result -->
|
@@ -6747,9 +6834,77 @@
|
|
6747
6834
|
<xsl:call-template name="add_spaces_to_sourcecode"/>
|
6748
6835
|
</xsl:otherwise>
|
6749
6836
|
</xsl:choose>
|
6837
|
+
</xsl:template>
|
6750
6838
|
|
6839
|
+
<!-- add sourcecode highlighting -->
|
6840
|
+
<xsl:template match="*[local-name()='sourcecode']//*[local-name()='span'][@class]" priority="2">
|
6841
|
+
<xsl:variable name="class" select="@class"/>
|
6842
|
+
<xsl:choose>
|
6843
|
+
<xsl:when test="$sourcecode_css//class[@name = $class]">
|
6844
|
+
<fo:inline>
|
6845
|
+
<xsl:apply-templates select="$sourcecode_css//class[@name = $class]" mode="css"/>
|
6846
|
+
<xsl:apply-templates/>
|
6847
|
+
</fo:inline>
|
6848
|
+
</xsl:when>
|
6849
|
+
<xsl:otherwise>
|
6850
|
+
<xsl:apply-templates/>
|
6851
|
+
</xsl:otherwise>
|
6852
|
+
</xsl:choose>
|
6751
6853
|
</xsl:template>
|
6752
6854
|
|
6855
|
+
<!-- outer table with line numbers for sourcecode -->
|
6856
|
+
<xsl:template match="*[local-name() = 'sourcecode'][@linenums = 'true']/*[local-name()='table']" priority="2"> <!-- *[local-name()='table'][@type = 'sourcecode'] | -->
|
6857
|
+
<fo:block>
|
6858
|
+
<fo:table width="100%" table-layout="fixed">
|
6859
|
+
<xsl:copy-of select="@id"/>
|
6860
|
+
<fo:table-column column-width="8%"/>
|
6861
|
+
<fo:table-column column-width="92%"/>
|
6862
|
+
<fo:table-body>
|
6863
|
+
<xsl:apply-templates/>
|
6864
|
+
</fo:table-body>
|
6865
|
+
</fo:table>
|
6866
|
+
</fo:block>
|
6867
|
+
</xsl:template>
|
6868
|
+
<xsl:template match="*[local-name() = 'sourcecode'][@linenums = 'true']/*[local-name()='table']/*[local-name() = 'tbody']" priority="2"> <!-- *[local-name()='table'][@type = 'sourcecode']/*[local-name() = 'tbody'] | -->
|
6869
|
+
<xsl:apply-templates/>
|
6870
|
+
</xsl:template>
|
6871
|
+
<xsl:template match="*[local-name() = 'sourcecode'][@linenums = 'true']/*[local-name()='table']//*[local-name()='tr']" priority="2"> <!-- *[local-name()='table'][@type = 'sourcecode']//*[local-name()='tr'] | -->
|
6872
|
+
<fo:table-row>
|
6873
|
+
<xsl:apply-templates/>
|
6874
|
+
</fo:table-row>
|
6875
|
+
</xsl:template>
|
6876
|
+
<!-- first td with line numbers -->
|
6877
|
+
<xsl:template match="*[local-name() = 'sourcecode'][@linenums = 'true']/*[local-name()='table']//*[local-name()='tr']/*[local-name()='td'][not(preceding-sibling::*)]" priority="2"> <!-- *[local-name()='table'][@type = 'sourcecode'] -->
|
6878
|
+
<fo:table-cell>
|
6879
|
+
<fo:block>
|
6880
|
+
|
6881
|
+
<!-- set attibutes for line numbers - same as sourcecode -->
|
6882
|
+
<xsl:variable name="sourcecode_attributes">
|
6883
|
+
<xsl:for-each select="following-sibling::*[local-name() = 'td']/*[local-name() = 'sourcecode']">
|
6884
|
+
<xsl:call-template name="get_sourcecode_attributes"/>
|
6885
|
+
</xsl:for-each>
|
6886
|
+
</xsl:variable>
|
6887
|
+
<xsl:for-each select="xalan:nodeset($sourcecode_attributes)/sourcecode_attributes/@*[not(starts-with(local-name(), 'margin-') or starts-with(local-name(), 'space-'))]">
|
6888
|
+
<xsl:attribute name="{local-name()}">
|
6889
|
+
<xsl:value-of select="."/>
|
6890
|
+
</xsl:attribute>
|
6891
|
+
</xsl:for-each>
|
6892
|
+
|
6893
|
+
<xsl:apply-templates/>
|
6894
|
+
</fo:block>
|
6895
|
+
</fo:table-cell>
|
6896
|
+
</xsl:template>
|
6897
|
+
|
6898
|
+
<!-- second td with sourcecode -->
|
6899
|
+
<xsl:template match="*[local-name() = 'sourcecode'][@linenums = 'true']/*[local-name()='table']//*[local-name()='tr']/*[local-name()='td'][preceding-sibling::*]" priority="2"> <!-- *[local-name()='table'][@type = 'sourcecode'] -->
|
6900
|
+
<fo:table-cell>
|
6901
|
+
<fo:block>
|
6902
|
+
<xsl:apply-templates/>
|
6903
|
+
</fo:block>
|
6904
|
+
</fo:table-cell>
|
6905
|
+
</xsl:template>
|
6906
|
+
<!-- END outer table with line numbers for sourcecode -->
|
6907
|
+
|
6753
6908
|
<xsl:template name="add_spaces_to_sourcecode">
|
6754
6909
|
<xsl:variable name="text_step1">
|
6755
6910
|
<xsl:call-template name="add-zero-spaces-equal"/>
|
@@ -6979,7 +7134,25 @@
|
|
6979
7134
|
<xsl:template match="*[local-name()='pre']" name="pre">
|
6980
7135
|
<fo:block xsl:use-attribute-sets="pre-style">
|
6981
7136
|
<xsl:copy-of select="@id"/>
|
6982
|
-
<xsl:
|
7137
|
+
<xsl:choose>
|
7138
|
+
|
7139
|
+
<xsl:when test="ancestor::*[local-name() = 'sourcecode'][@linenums = 'true'] and ancestor::*[local-name()='td'][1][not(preceding-sibling::*)]"> <!-- pre in the first td in the table with @linenums = 'true' -->
|
7140
|
+
<xsl:if test="ancestor::*[local-name() = 'tr'][1]/following-sibling::*[local-name() = 'tr']"> <!-- is current tr isn't last -->
|
7141
|
+
<xsl:attribute name="margin-top">0pt</xsl:attribute>
|
7142
|
+
<xsl:attribute name="margin-bottom">0pt</xsl:attribute>
|
7143
|
+
</xsl:if>
|
7144
|
+
<fo:instream-foreign-object fox:alt-text="{.}" content-width="95%">
|
7145
|
+
<math xmlns="http://www.w3.org/1998/Math/MathML">
|
7146
|
+
<mtext><xsl:value-of select="."/></mtext>
|
7147
|
+
</math>
|
7148
|
+
</fo:instream-foreign-object>
|
7149
|
+
</xsl:when>
|
7150
|
+
|
7151
|
+
<xsl:otherwise>
|
7152
|
+
<xsl:apply-templates/>
|
7153
|
+
</xsl:otherwise>
|
7154
|
+
|
7155
|
+
</xsl:choose>
|
6983
7156
|
</fo:block>
|
6984
7157
|
</xsl:template>
|
6985
7158
|
<!-- =============== -->
|
@@ -8417,203 +8590,59 @@
|
|
8417
8590
|
|
8418
8591
|
<!-- start CSA bibitem processing -->
|
8419
8592
|
<fo:block id="{@id}" xsl:use-attribute-sets="bibitem-non-normative-style">
|
8420
|
-
|
8421
|
-
<xsl:variable name="docidentifier">
|
8422
|
-
<xsl:value-of select="csa:docidentifier[@type = 'metanorma-ordinal']"/>
|
8423
|
-
<xsl:if test="not(csa:docidentifier[@type = 'metanorma-ordinal'])">
|
8424
|
-
<xsl:number format="[1]" count="*[local-name()='bibitem'][not(@hidden = 'true')]"/>
|
8425
|
-
</xsl:if>
|
8426
|
-
</xsl:variable>
|
8427
|
-
|
8428
|
-
<xsl:value-of select="$docidentifier"/>
|
8429
|
-
<xsl:apply-templates select="*[local-name() = 'note']"/>
|
8430
|
-
<xsl:text> </xsl:text>
|
8431
|
-
|
8593
|
+
<xsl:apply-templates select="*[local-name() = 'biblio-tag']"/>
|
8432
8594
|
<xsl:apply-templates select="csa:formattedref"/>
|
8433
|
-
|
8434
8595
|
</fo:block>
|
8435
8596
|
<!-- END CSA bibitem processing -->
|
8436
8597
|
|
8437
8598
|
</xsl:template> <!-- references[not(@normative='true')]/bibitem -->
|
8438
8599
|
|
8439
8600
|
<xsl:template name="processBibitem">
|
8601
|
+
<xsl:param name="biblio_tag_part">both</xsl:param>
|
8440
8602
|
|
8441
8603
|
<!-- start bibitem processing -->
|
8442
8604
|
<xsl:if test=".//*[local-name() = 'fn']">
|
8443
8605
|
<xsl:attribute name="line-height-shift-adjustment">disregard-shifts</xsl:attribute>
|
8444
8606
|
</xsl:if>
|
8445
8607
|
|
8446
|
-
|
8447
|
-
|
8448
|
-
|
8449
|
-
<xsl:when test="*[local-name() = 'docidentifier']/@type = 'metanorma'"/>
|
8450
|
-
<xsl:otherwise><xsl:value-of select="*[local-name() = 'docidentifier'][not(@type = 'metanorma-ordinal')]"/></xsl:otherwise>
|
8451
|
-
</xsl:choose>
|
8452
|
-
</xsl:variable>
|
8453
|
-
<xsl:value-of select="$docidentifier"/>
|
8454
|
-
|
8455
|
-
<xsl:apply-templates select="*[local-name() = 'note']"/>
|
8456
|
-
|
8457
|
-
<xsl:if test="normalize-space($docidentifier) != '' and *[local-name() = 'formattedref']">
|
8458
|
-
|
8459
|
-
<xsl:text> </xsl:text>
|
8460
|
-
</xsl:if>
|
8461
|
-
|
8608
|
+
<xsl:apply-templates select="*[local-name() = 'biblio-tag']">
|
8609
|
+
<xsl:with-param name="biblio_tag_part" select="$biblio_tag_part"/>
|
8610
|
+
</xsl:apply-templates>
|
8462
8611
|
<xsl:apply-templates select="*[local-name() = 'formattedref']"/>
|
8463
8612
|
<!-- end bibitem processing -->
|
8464
8613
|
|
8465
8614
|
</xsl:template> <!-- processBibitem (bibitem) -->
|
8466
8615
|
|
8467
|
-
<xsl:template name="
|
8468
|
-
<xsl:
|
8469
|
-
|
8470
|
-
|
8471
|
-
|
8472
|
-
<xsl:if test="$type != '' and not(contains($_doc_ident, $type))">
|
8473
|
-
<xsl:value-of select="$type"/><xsl:text> </xsl:text>
|
8474
|
-
</xsl:if> -->
|
8475
|
-
<xsl:value-of select="$_doc_ident"/>
|
8476
|
-
</xsl:when>
|
8477
|
-
<xsl:otherwise>
|
8478
|
-
<!-- <xsl:variable name="type" select="*[local-name() = 'docidentifier'][not(@type = 'metanorma')]/@type"/>
|
8479
|
-
<xsl:if test="$type != ''">
|
8480
|
-
<xsl:value-of select="$type"/><xsl:text> </xsl:text>
|
8481
|
-
</xsl:if> -->
|
8482
|
-
<xsl:value-of select="*[local-name() = 'docidentifier'][not(@type = 'metanorma') and not(@type = 'metanorma-ordinal')]"/>
|
8483
|
-
</xsl:otherwise>
|
8484
|
-
</xsl:choose>
|
8485
|
-
</xsl:template> <!-- processBibitemDocId -->
|
8616
|
+
<xsl:template match="*[local-name() = 'title']" mode="title">
|
8617
|
+
<fo:inline><xsl:apply-templates/></fo:inline>
|
8618
|
+
</xsl:template>
|
8619
|
+
|
8620
|
+
<xsl:template match="*[local-name() = 'bibitem']/*[local-name() = 'docidentifier']"/>
|
8486
8621
|
|
8487
|
-
<xsl:template name="
|
8622
|
+
<xsl:template match="*[local-name() = 'formattedref']">
|
8623
|
+
<!-- <xsl:if test="$namespace = 'unece' or $namespace = 'unece-rec'">
|
8624
|
+
<xsl:text>, </xsl:text>
|
8625
|
+
</xsl:if> -->
|
8626
|
+
<xsl:apply-templates/>
|
8627
|
+
</xsl:template>
|
8628
|
+
|
8629
|
+
<xsl:template match="*[local-name() = 'biblio-tag']">
|
8630
|
+
<xsl:param name="biblio_tag_part">both</xsl:param>
|
8488
8631
|
<xsl:choose>
|
8489
|
-
<xsl:when test="
|
8490
|
-
<
|
8491
|
-
<xsl:apply-templates select="*[local-name() = 'name']/*[local-name() = 'completename']"/>
|
8492
|
-
</author>
|
8493
|
-
</xsl:when>
|
8494
|
-
<xsl:when test="*[local-name() = 'name']/*[local-name() = 'surname'] and *[local-name() = 'name']/*[local-name() = 'initial']">
|
8495
|
-
<author>
|
8496
|
-
<xsl:apply-templates select="*[local-name() = 'name']/*[local-name() = 'surname']"/>
|
8497
|
-
<xsl:text> </xsl:text>
|
8498
|
-
<xsl:apply-templates select="*[local-name() = 'name']/*[local-name() = 'initial']" mode="strip"/>
|
8499
|
-
</author>
|
8632
|
+
<xsl:when test="$biblio_tag_part = 'first' and *[local-name() = 'tab']">
|
8633
|
+
<xsl:apply-templates select="./*[local-name() = 'tab'][1]/preceding-sibling::node()"/>
|
8500
8634
|
</xsl:when>
|
8501
|
-
<xsl:when test="
|
8502
|
-
<
|
8503
|
-
<xsl:apply-templates select="*[local-name() = 'name']/*[local-name() = 'surname']"/>
|
8504
|
-
<xsl:text> </xsl:text>
|
8505
|
-
<xsl:apply-templates select="*[local-name() = 'name']/*[local-name() = 'forename']" mode="strip"/>
|
8506
|
-
</author>
|
8635
|
+
<xsl:when test="$biblio_tag_part = 'last'">
|
8636
|
+
<xsl:apply-templates select="./*[local-name() = 'tab'][1]/following-sibling::node()"/>
|
8507
8637
|
</xsl:when>
|
8508
8638
|
<xsl:otherwise>
|
8509
8639
|
<xsl:apply-templates/>
|
8510
8640
|
</xsl:otherwise>
|
8511
8641
|
</xsl:choose>
|
8512
|
-
</xsl:template> <!-- processPersonalAuthor -->
|
8513
|
-
|
8514
|
-
<xsl:template name="renderDate">
|
8515
|
-
<xsl:if test="normalize-space(*[local-name() = 'on']) != ''">
|
8516
|
-
<xsl:value-of select="*[local-name() = 'on']"/>
|
8517
|
-
</xsl:if>
|
8518
|
-
<xsl:if test="normalize-space(*[local-name() = 'from']) != ''">
|
8519
|
-
<xsl:value-of select="concat(*[local-name() = 'from'], '–', *[local-name() = 'to'])"/>
|
8520
|
-
</xsl:if>
|
8521
|
-
</xsl:template>
|
8522
|
-
|
8523
|
-
<xsl:template match="*[local-name() = 'name']/*[local-name() = 'initial']/text()" mode="strip">
|
8524
|
-
<xsl:value-of select="translate(.,'. ','')"/>
|
8525
|
-
</xsl:template>
|
8526
|
-
|
8527
|
-
<xsl:template match="*[local-name() = 'name']/*[local-name() = 'forename']/text()" mode="strip">
|
8528
|
-
<xsl:value-of select="substring(.,1,1)"/>
|
8529
|
-
</xsl:template>
|
8530
|
-
|
8531
|
-
<xsl:template match="*[local-name() = 'title']" mode="title">
|
8532
|
-
<fo:inline><xsl:apply-templates/></fo:inline>
|
8533
|
-
</xsl:template>
|
8534
|
-
|
8535
|
-
<xsl:template match="*[local-name() = 'bibitem']/*[local-name() = 'title']" priority="2">
|
8536
|
-
<!-- <fo:inline><xsl:apply-templates /></fo:inline> -->
|
8537
|
-
<fo:inline font-style="italic"> <!-- BIPM BSI CSD CSA GB IEC IHO ISO ITU JCGM -->
|
8538
|
-
<xsl:apply-templates/>
|
8539
|
-
</fo:inline>
|
8540
8642
|
</xsl:template>
|
8541
8643
|
|
8542
|
-
|
8543
|
-
|
8544
|
-
|
8545
|
-
<!-- list of footnotes to calculate actual footnotes number -->
|
8546
|
-
<xsl:variable name="p_fn_">
|
8547
|
-
<xsl:call-template name="get_fn_list"/>
|
8548
|
-
</xsl:variable>
|
8549
|
-
<xsl:variable name="p_fn" select="xalan:nodeset($p_fn_)"/>
|
8550
|
-
<xsl:variable name="gen_id" select="generate-id(.)"/>
|
8551
|
-
<xsl:variable name="lang" select="ancestor::*[contains(local-name(), '-standard')]/*[local-name()='bibdata']//*[local-name()='language'][@current = 'true']"/>
|
8552
|
-
<!-- fn sequence number in document -->
|
8553
|
-
<xsl:variable name="current_fn_number">
|
8554
|
-
<xsl:choose>
|
8555
|
-
<xsl:when test="@current_fn_number"><xsl:value-of select="@current_fn_number"/></xsl:when> <!-- for BSI -->
|
8556
|
-
<xsl:otherwise>
|
8557
|
-
<!-- <xsl:value-of select="count($p_fn//fn[@reference = $reference]/preceding-sibling::fn) + 1" /> -->
|
8558
|
-
<xsl:value-of select="count($p_fn//fn[@gen_id = $gen_id]/preceding-sibling::fn) + 1"/>
|
8559
|
-
</xsl:otherwise>
|
8560
|
-
</xsl:choose>
|
8561
|
-
</xsl:variable>
|
8562
|
-
<fo:footnote>
|
8563
|
-
<xsl:variable name="number">
|
8564
|
-
|
8565
|
-
<xsl:choose>
|
8566
|
-
<xsl:when test="ancestor::*[local-name() = 'references'][preceding-sibling::*[local-name() = 'references']]">
|
8567
|
-
<xsl:number level="any" count="*[local-name() = 'references'][preceding-sibling::*[local-name() = 'references']]//*[local-name() = 'bibitem']/*[local-name() = 'note']"/>
|
8568
|
-
</xsl:when>
|
8569
|
-
<xsl:otherwise>
|
8570
|
-
<xsl:value-of select="$current_fn_number"/>
|
8571
|
-
</xsl:otherwise>
|
8572
|
-
</xsl:choose>
|
8573
|
-
|
8574
|
-
</xsl:variable>
|
8575
|
-
|
8576
|
-
<xsl:variable name="current_fn_number_text">
|
8577
|
-
<xsl:value-of select="$number"/>
|
8578
|
-
|
8579
|
-
</xsl:variable>
|
8580
|
-
|
8581
|
-
<fo:inline xsl:use-attribute-sets="bibitem-note-fn-style">
|
8582
|
-
<fo:basic-link internal-destination="{$gen_id}" fox:alt-text="footnote {$number}">
|
8583
|
-
<xsl:value-of select="$current_fn_number_text"/>
|
8584
|
-
</fo:basic-link>
|
8585
|
-
</fo:inline>
|
8586
|
-
<fo:footnote-body>
|
8587
|
-
<fo:block xsl:use-attribute-sets="bibitem-note-fn-body-style">
|
8588
|
-
<fo:inline id="{$gen_id}" xsl:use-attribute-sets="bibitem-note-fn-number-style">
|
8589
|
-
<xsl:value-of select="$current_fn_number_text"/>
|
8590
|
-
</fo:inline>
|
8591
|
-
<xsl:apply-templates/>
|
8592
|
-
</fo:block>
|
8593
|
-
</fo:footnote-body>
|
8594
|
-
</fo:footnote>
|
8595
|
-
</xsl:template>
|
8596
|
-
|
8597
|
-
<xsl:template match="*[local-name() = 'bibitem']/*[local-name() = 'edition']"> <!-- for iho -->
|
8598
|
-
<xsl:text> edition </xsl:text>
|
8599
|
-
<xsl:value-of select="."/>
|
8600
|
-
</xsl:template>
|
8601
|
-
|
8602
|
-
<xsl:template match="*[local-name() = 'bibitem']/*[local-name() = 'uri']"> <!-- for iho -->
|
8603
|
-
<xsl:text> (</xsl:text>
|
8604
|
-
<fo:inline xsl:use-attribute-sets="link-style">
|
8605
|
-
<fo:basic-link external-destination="." fox:alt-text=".">
|
8606
|
-
<xsl:value-of select="."/>
|
8607
|
-
</fo:basic-link>
|
8608
|
-
</fo:inline>
|
8609
|
-
<xsl:text>)</xsl:text>
|
8610
|
-
</xsl:template>
|
8611
|
-
|
8612
|
-
<xsl:template match="*[local-name() = 'bibitem']/*[local-name() = 'docidentifier']"/>
|
8613
|
-
|
8614
|
-
<xsl:template match="*[local-name() = 'formattedref']">
|
8615
|
-
|
8616
|
-
<xsl:apply-templates/>
|
8644
|
+
<xsl:template match="*[local-name() = 'biblio-tag']/*[local-name() = 'tab']" priority="2">
|
8645
|
+
<xsl:text> </xsl:text>
|
8617
8646
|
</xsl:template>
|
8618
8647
|
|
8619
8648
|
<!-- ======================= -->
|
@@ -9038,6 +9067,12 @@
|
|
9038
9067
|
<xsl:template match="*[local-name() = 'span']" mode="update_xml_step1">
|
9039
9068
|
<xsl:apply-templates mode="update_xml_step1"/>
|
9040
9069
|
</xsl:template>
|
9070
|
+
<xsl:template match="*[local-name() = 'sourcecode']//*[local-name() = 'span'][@class]" mode="update_xml_step1" priority="2">
|
9071
|
+
<xsl:copy>
|
9072
|
+
<xsl:copy-of select="@*"/>
|
9073
|
+
<xsl:apply-templates mode="update_xml_step1"/>
|
9074
|
+
</xsl:copy>
|
9075
|
+
</xsl:template>
|
9041
9076
|
<!-- =========================================================================== -->
|
9042
9077
|
<!-- END STEP1: Re-order elements in 'preface', 'sections' based on @displayorder -->
|
9043
9078
|
<!-- =========================================================================== -->
|
@@ -9518,6 +9553,10 @@
|
|
9518
9553
|
<xsl:call-template name="getLang"/><xsl:value-of select="//*[local-name() = 'p'][1]/@id"/>
|
9519
9554
|
</xsl:template>
|
9520
9555
|
|
9556
|
+
<xsl:template name="getDocumentId_fromCurrentNode">
|
9557
|
+
<xsl:call-template name="getLang_fromCurrentNode"/><xsl:value-of select=".//*[local-name() = 'p'][1]/@id"/>
|
9558
|
+
</xsl:template>
|
9559
|
+
|
9521
9560
|
<xsl:template name="namespaceCheck">
|
9522
9561
|
<xsl:variable name="documentNS" select="namespace-uri(/*)"/>
|
9523
9562
|
<xsl:variable name="XSLNS">
|
@@ -131,6 +131,35 @@ a.FootnoteRef + a.FootnoteRef:before {
|
|
131
131
|
color: red;
|
132
132
|
text-decoration: line-through; }
|
133
133
|
|
134
|
+
/* code highlighting with line numbers */
|
135
|
+
table.rouge-line-table td.rouge-gutter {
|
136
|
+
-moz-user-select: none;
|
137
|
+
-ms-user-select: none;
|
138
|
+
-webkit-user-select: none;
|
139
|
+
user-select: none;
|
140
|
+
padding-right: 1em; }
|
141
|
+
|
142
|
+
table.rouge-line-table td.rouge-code {
|
143
|
+
-moz-user-select: all;
|
144
|
+
-ms-user-select: all;
|
145
|
+
-webkit-user-select: all;
|
146
|
+
user-select: all; }
|
147
|
+
|
148
|
+
table.rouge-line-table,
|
149
|
+
table.rouge-line-table th,
|
150
|
+
table.rouge-line-table td {
|
151
|
+
width: auto;
|
152
|
+
border: none;
|
153
|
+
margin: 0;
|
154
|
+
padding: 0;
|
155
|
+
font-size: 100%; }
|
156
|
+
|
157
|
+
table.rouge-line-table pre {
|
158
|
+
margin: 0;
|
159
|
+
padding: 0;
|
160
|
+
overflow-x: visible;
|
161
|
+
font-size: 100%; }
|
162
|
+
|
134
163
|
#standard-band {
|
135
164
|
background-color: #0AC442; }
|
136
165
|
|
@@ -596,8 +625,11 @@ a:hover {
|
|
596
625
|
background: #4D7EA5;
|
597
626
|
box-shadow: 3px 0 0 #4D7EA5, -3px 0 0 #4D7EA5; }
|
598
627
|
|
599
|
-
|
600
|
-
|
628
|
+
*::selection {
|
629
|
+
background: #4D7EA5;
|
630
|
+
color: white; }
|
631
|
+
|
632
|
+
*::-moz-selection {
|
601
633
|
background: #4D7EA5;
|
602
634
|
color: white; }
|
603
635
|
|
@@ -762,7 +794,7 @@ table {
|
|
762
794
|
table th, table td {
|
763
795
|
padding: 1em; }
|
764
796
|
table td.header {
|
765
|
-
font-
|
797
|
+
font-weight: 400; }
|
766
798
|
|
767
799
|
table,
|
768
800
|
th,
|
@@ -571,6 +571,11 @@
|
|
571
571
|
<ref name="MultilingualRenderingType"/>
|
572
572
|
</attribute>
|
573
573
|
</optional>
|
574
|
+
<optional>
|
575
|
+
<attribute name="linenums">
|
576
|
+
<data type="boolean"/>
|
577
|
+
</attribute>
|
578
|
+
</optional>
|
574
579
|
<optional>
|
575
580
|
<ref name="tname"/>
|
576
581
|
</optional>
|
@@ -1238,6 +1243,11 @@
|
|
1238
1243
|
</define>
|
1239
1244
|
<define name="concept">
|
1240
1245
|
<element name="concept">
|
1246
|
+
<optional>
|
1247
|
+
<attribute name="bold">
|
1248
|
+
<data type="boolean"/>
|
1249
|
+
</attribute>
|
1250
|
+
</optional>
|
1241
1251
|
<optional>
|
1242
1252
|
<attribute name="ital">
|
1243
1253
|
<data type="boolean"/>
|
@@ -2653,7 +2663,7 @@
|
|
2653
2663
|
<value>full</value>
|
2654
2664
|
<value>short</value>
|
2655
2665
|
<value>id</value>
|
2656
|
-
<
|
2666
|
+
<text/>
|
2657
2667
|
</choice>
|
2658
2668
|
</define>
|
2659
2669
|
<define name="erefTypeWithConnective">
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: metanorma-csa
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.2.
|
4
|
+
version: 2.2.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ribose Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-12-
|
11
|
+
date: 2022-12-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: metanorma-generic
|