metanorma-csa 1.4.9 → 1.4.10

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: aae7195b2c04c1c2ecdde71942043c8ef86eb2e71e8595294bccd10b98d819e5
4
- data.tar.gz: ec0d397cf000ef052dfb6b18aecbba57f2a1c7cedf3e3a1b7ef4808cdaabedc3
3
+ metadata.gz: 926fabf5c1f6c51836203c318fd8dbb568f1e445a7784acc79e6a08fabbd6915
4
+ data.tar.gz: a5c40aeb6e7d921ec9955fbdd43e1000ff8f68d8518b365405f205bb092c2481
5
5
  SHA512:
6
- metadata.gz: ef705e1eb5035ff85022976df756c835f02327ae3f8963ec050f14046d3875f2fa1e2352ccfdba2b6aaf8e3af996320f4102aca5939d9c7a425f053e252dab9d
7
- data.tar.gz: e57f15b56c2b7ed627fd82474aea51b1e6aae480a84aa29a97f829cf84f481a3e2fea750f47c4e9bf8779261e8834cbcdf7c102d6a3295566d113abd993e4e0f
6
+ metadata.gz: 170f7ebb1040fae9294c057115f243209e2f93aa19a2727094ead68ec3a54efaddc43c0b49bc0bd76ad731070ec2ca709cb54d2fa7e22a38d5bf3f23e088d394
7
+ data.tar.gz: 1bf0ad382bafa1d2bd2ec0ac808c7523a0c42863d1672351a7bbcbc5011db095ab6ac5f165962b86ba092ef30d1973dcce0db5188830d58c8f61a0d5c8c42ee6
@@ -129,6 +129,9 @@
129
129
  </choice>
130
130
  </attribute>
131
131
  </optional>
132
+ <attribute name="normative">
133
+ <data type="boolean"/>
134
+ </attribute>
132
135
  <optional>
133
136
  <ref name="section-title"/>
134
137
  </optional>
@@ -303,11 +306,11 @@
303
306
  <ref name="paragraph"/>
304
307
  </element>
305
308
  </define>
306
- <define name="TextElement" combine="choice">
307
- <ref name="concept"/>
308
- </define>
309
309
  </include>
310
310
  <!-- end overrides -->
311
+ <define name="TextElement" combine="choice">
312
+ <ref name="concept"/>
313
+ </define>
311
314
  <define name="concept">
312
315
  <element name="concept">
313
316
  <optional>
@@ -6,6 +6,8 @@
6
6
  <xsl:variable name="pageHeight" select="'279.4mm'"/>
7
7
 
8
8
 
9
+
10
+ <xsl:variable name="debug">false</xsl:variable>
9
11
 
10
12
  <xsl:variable name="copyright">
11
13
  <xsl:text>© Copyright </xsl:text>
@@ -178,10 +180,13 @@
178
180
  </fo:static-content>
179
181
  <xsl:call-template name="insertHeaderFooter"/>
180
182
  <fo:flow flow-name="xsl-region-body">
181
- <xsl:text disable-output-escaping="yes">&lt;!--</xsl:text>
182
- DEBUG
183
- contents=<!-- <xsl:copy-of select="xalan:nodeset($contents)"/> -->
184
- <xsl:text disable-output-escaping="yes">--&gt;</xsl:text>
183
+
184
+ <xsl:if test="$debug = 'true'">
185
+ <xsl:text disable-output-escaping="yes">&lt;!--</xsl:text>
186
+ DEBUG
187
+ contents=<!-- <xsl:copy-of select="xalan:nodeset($contents)"/> -->
188
+ <xsl:text disable-output-escaping="yes">--&gt;</xsl:text>
189
+ </xsl:if>
185
190
 
186
191
  <fo:block>
187
192
  <fo:block>The permanent and official location for Cloud Security Alliance DevSecOps is</fo:block>
@@ -1148,21 +1153,6 @@
1148
1153
  </fo:list-item>
1149
1154
  </xsl:template>
1150
1155
 
1151
- <xsl:template match="csa:link">
1152
- <fo:inline>
1153
- <fo:basic-link external-destination="{@target}" text-decoration="underline" fox:alt-text="{@target}" color="{$color-link}">
1154
- <xsl:choose>
1155
- <xsl:when test="normalize-space(.) = ''">
1156
- <xsl:value-of select="@target"/>
1157
- </xsl:when>
1158
- <xsl:otherwise>
1159
- <xsl:apply-templates/>
1160
- </xsl:otherwise>
1161
- </xsl:choose>
1162
- </fo:basic-link>
1163
- </fo:inline>
1164
- </xsl:template>
1165
-
1166
1156
  <xsl:template match="csa:preferred">
1167
1157
  <xsl:param name="sectionNum"/>
1168
1158
  <xsl:variable name="section">
@@ -1222,9 +1212,9 @@
1222
1212
  <xsl:text>[SOURCE: </xsl:text>
1223
1213
  <fo:inline text-decoration="underline" color="{$color-link}">
1224
1214
  <xsl:value-of select="csa:origin/@citeas"/>
1225
- <xsl:if test="csa:origin/csa:locality/csa:referenceFrom">
1226
- <xsl:text>, </xsl:text><xsl:value-of select="csa:origin/csa:locality/csa:referenceFrom"/>
1227
- </xsl:if>
1215
+
1216
+ <xsl:apply-templates select="csa:origin/csa:localityStack"/>
1217
+
1228
1218
  </fo:inline>
1229
1219
  </fo:basic-link>
1230
1220
  <xsl:apply-templates select="csa:modification"/>
@@ -1380,10 +1370,7 @@
1380
1370
  <xsl:template match="csa:source">
1381
1371
  <fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}">
1382
1372
  <xsl:value-of select="@citeas" disable-output-escaping="yes"/>
1383
- <xsl:if test="csa:locality">
1384
- <xsl:text>, </xsl:text>
1385
- <xsl:apply-templates select="csa:locality"/>
1386
- </xsl:if>
1373
+ <xsl:apply-templates select="csa:localityStack"/>
1387
1374
  </fo:basic-link>
1388
1375
  </xsl:template>
1389
1376
 
@@ -1589,15 +1576,7 @@
1589
1576
  </xsl:when>
1590
1577
  <xsl:otherwise/>
1591
1578
  </xsl:choose>
1592
- <xsl:if test="csa:locality">
1593
- <xsl:text>, </xsl:text>
1594
- <!-- <xsl:choose>
1595
- <xsl:when test="csa:locality/@type = 'section'">Section </xsl:when>
1596
- <xsl:when test="csa:locality/@type = 'clause'">Clause </xsl:when>
1597
- <xsl:otherwise></xsl:otherwise>
1598
- </xsl:choose> -->
1599
- <xsl:apply-templates select="csa:locality"/>
1600
- </xsl:if>
1579
+ <xsl:apply-templates select="csa:localityStack"/>
1601
1580
  <xsl:apply-templates select="text()"/>
1602
1581
  </fo:basic-link>
1603
1582
  </xsl:template>
@@ -3047,11 +3026,17 @@ JP5/AQYA3Lt5kGz07MoAAAAASUVORK5CYII=
3047
3026
  </xsl:text>
3048
3027
  </xsl:variable>
3049
3028
 
3050
- <xsl:variable xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="lower">abcdefghijklmnopqrstuvwxyz</xsl:variable><xsl:variable xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="upper">ABCDEFGHIJKLMNOPQRSTUVWXYZ</xsl:variable><xsl:variable xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="en_chars" select="concat($lower,$upper,',.`1234567890-=~!@#$%^*()_+[]{}\|?/')"/><xsl:variable xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="linebreak" select="'&#8232;'"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="text()">
3029
+ <xsl:variable xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="lower">abcdefghijklmnopqrstuvwxyz</xsl:variable><xsl:variable xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="upper">ABCDEFGHIJKLMNOPQRSTUVWXYZ</xsl:variable><xsl:variable xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="en_chars" select="concat($lower,$upper,',.`1234567890-=~!@#$%^*()_+[]{}\|?/')"/><xsl:variable xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="linebreak" select="'&#8232;'"/><xsl:attribute-set xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="link-style">
3030
+
3031
+
3032
+ <xsl:attribute name="color">rgb(33, 94, 159)</xsl:attribute>
3033
+ <xsl:attribute name="text-decoration">underline</xsl:attribute>
3034
+
3035
+ </xsl:attribute-set><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="text()">
3051
3036
  <xsl:value-of select="."/>
3052
3037
  </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='br']">
3053
3038
  <xsl:value-of select="$linebreak"/>
3054
- </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='td']//text() | *[local-name()='th']//text()" priority="1">
3039
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='td']//text() | *[local-name()='th']//text() | *[local-name()='dt']//text() | *[local-name()='dd']//text()" priority="1">
3055
3040
  <xsl:call-template name="add-zero-spaces"/>
3056
3041
  </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='table']">
3057
3042
 
@@ -3067,7 +3052,9 @@ JP5/AQYA3Lt5kGz07MoAAAAASUVORK5CYII=
3067
3052
 
3068
3053
  <!-- <xsl:variable name="namespace" select="substring-before(name(/*), '-')"/> -->
3069
3054
 
3070
-
3055
+ <!-- <xsl:if test="$namespace = 'iso'">
3056
+ <fo:block space-before="6pt">&#xA0;</fo:block>
3057
+ </xsl:if> -->
3071
3058
 
3072
3059
  <xsl:choose>
3073
3060
  <xsl:when test="@unnumbered = 'true'"/>
@@ -3107,11 +3094,11 @@ JP5/AQYA3Lt5kGz07MoAAAAASUVORK5CYII=
3107
3094
  </xsl:call-template>
3108
3095
  </xsl:variable>
3109
3096
 
3110
- <xsl:variable name="colwidths2">
3097
+ <!-- <xsl:variable name="colwidths2">
3111
3098
  <xsl:call-template name="calculate-column-widths">
3112
3099
  <xsl:with-param name="cols-count" select="$cols-count"/>
3113
3100
  </xsl:call-template>
3114
- </xsl:variable>
3101
+ </xsl:variable> -->
3115
3102
 
3116
3103
  <!-- cols-count=<xsl:copy-of select="$cols-count"/>
3117
3104
  colwidthsNew=<xsl:copy-of select="$colwidths"/>
@@ -3131,7 +3118,9 @@ JP5/AQYA3Lt5kGz07MoAAAAASUVORK5CYII=
3131
3118
 
3132
3119
 
3133
3120
 
3134
- <fo:table id="{@id}" table-layout="fixed" width="100%" margin-left="{$margin-left}mm" margin-right="{$margin-left}mm">
3121
+
3122
+ <fo:table id="{@id}" table-layout="fixed" width="100%" margin-left="{$margin-left}mm" margin-right="{$margin-left}mm" table-omit-footer-at-break="true">
3123
+
3135
3124
 
3136
3125
 
3137
3126
 
@@ -3153,6 +3142,9 @@ JP5/AQYA3Lt5kGz07MoAAAAASUVORK5CYII=
3153
3142
  </xsl:for-each>
3154
3143
  <xsl:apply-templates/>
3155
3144
  </fo:table>
3145
+
3146
+
3147
+
3156
3148
  </fo:block-container>
3157
3149
  </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='table']/*[local-name()='name']"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='table']/*[local-name()='name']" mode="process">
3158
3150
  <xsl:apply-templates/>
@@ -3206,9 +3198,13 @@ JP5/AQYA3Lt5kGz07MoAAAAASUVORK5CYII=
3206
3198
  </xsl:when>
3207
3199
  <xsl:otherwise>
3208
3200
  <xsl:for-each select="xalan:nodeset($table)//tr">
3201
+ <xsl:variable name="td_text">
3202
+ <xsl:apply-templates select="td[$curr-col]" mode="td_text"/>
3203
+ </xsl:variable>
3209
3204
  <xsl:variable name="words">
3210
3205
  <xsl:call-template name="tokenize">
3211
- <xsl:with-param name="text" select="translate(td[$curr-col],'- —:', ' ')"/>
3206
+ <!-- <xsl:with-param name="text" select="translate(td[$curr-col],'- —:', ' ')"/> -->
3207
+ <xsl:with-param name="text" select="translate(normalize-space($td_text),'- —:', ' ')"/>
3212
3208
  </xsl:call-template>
3213
3209
  </xsl:variable>
3214
3210
  <xsl:variable name="max_length">
@@ -3249,58 +3245,82 @@ JP5/AQYA3Lt5kGz07MoAAAAASUVORK5CYII=
3249
3245
  <xsl:with-param name="table" select="$table"/>
3250
3246
  </xsl:call-template>
3251
3247
  </xsl:if>
3248
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="text()" mode="td_text">
3249
+ <xsl:variable name="zero-space">​</xsl:variable>
3250
+ <xsl:value-of select="translate(., $zero-space, ' ')"/><xsl:text> </xsl:text>
3252
3251
  </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='table2']"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='thead']"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='thead']" mode="process">
3253
- <!-- <fo:table-header font-weight="bold">
3254
- <xsl:apply-templates />
3255
- </fo:table-header> -->
3256
- <xsl:apply-templates/>
3252
+ <!-- font-weight="bold" -->
3253
+ <fo:table-header>
3254
+ <xsl:apply-templates/>
3255
+ </fo:table-header>
3257
3256
  </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='tfoot']"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='tfoot']" mode="process">
3258
3257
  <xsl:apply-templates/>
3258
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="insertTableFooter">
3259
+ <xsl:variable name="isNoteOrFnExist" select="../*[local-name()='note'] or ..//*[local-name()='fn'][local-name(..) != 'name']"/>
3260
+ <xsl:if test="../*[local-name()='tfoot'] or $isNoteOrFnExist = 'true'">
3261
+
3262
+ <fo:table-footer>
3263
+
3264
+ <xsl:apply-templates select="../*[local-name()='tfoot']" mode="process"/>
3265
+
3266
+ <!-- if there are note(s) or fn(s) then create footer row -->
3267
+ <xsl:if test="$isNoteOrFnExist = 'true'">
3268
+
3269
+ <xsl:variable name="cols-count">
3270
+ <xsl:choose>
3271
+ <xsl:when test="../*[local-name()='thead']">
3272
+ <!-- <xsl:value-of select="count(../*[local-name()='thead']/*[local-name()='tr']/*[local-name()='th'])"/> -->
3273
+ <xsl:call-template name="calculate-columns-numbers">
3274
+ <xsl:with-param name="table-row" select="../*[local-name()='thead']/*[local-name()='tr'][1]"/>
3275
+ </xsl:call-template>
3276
+ </xsl:when>
3277
+ <xsl:otherwise>
3278
+ <!-- <xsl:value-of select="count(./*[local-name()='tr'][1]/*[local-name()='td'])"/> -->
3279
+ <xsl:call-template name="calculate-columns-numbers">
3280
+ <xsl:with-param name="table-row" select="./*[local-name()='tr'][1]"/>
3281
+ </xsl:call-template>
3282
+ </xsl:otherwise>
3283
+ </xsl:choose>
3284
+ </xsl:variable>
3285
+
3286
+ <fo:table-row>
3287
+ <fo:table-cell border="solid black 1pt" padding-left="1mm" padding-right="1mm" padding-top="1mm" number-columns-spanned="{$cols-count}">
3288
+
3289
+
3290
+
3291
+ <!-- fn will be processed inside 'note' processing -->
3292
+
3293
+
3294
+ <!-- except gb -->
3295
+
3296
+ <xsl:apply-templates select="../*[local-name()='note']" mode="process"/>
3297
+
3298
+
3299
+ <!-- horizontal row separator -->
3300
+
3301
+
3302
+ <!-- fn processing -->
3303
+ <xsl:call-template name="fn_display"/>
3304
+
3305
+ </fo:table-cell>
3306
+ </fo:table-row>
3307
+
3308
+ </xsl:if>
3309
+ </fo:table-footer>
3310
+
3311
+ </xsl:if>
3259
3312
  </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='tbody']">
3260
- <xsl:variable name="cols-count">
3261
- <xsl:choose>
3262
- <xsl:when test="../*[local-name()='thead']">
3263
- <!-- <xsl:value-of select="count(../*[local-name()='thead']/*[local-name()='tr']/*[local-name()='th'])"/> -->
3264
- <xsl:call-template name="calculate-columns-numbers">
3265
- <xsl:with-param name="table-row" select="../*[local-name()='thead']/*[local-name()='tr'][1]"/>
3266
- </xsl:call-template>
3267
- </xsl:when>
3268
- <xsl:otherwise>
3269
- <!-- <xsl:value-of select="count(./*[local-name()='tr'][1]/*[local-name()='td'])"/> -->
3270
- <xsl:call-template name="calculate-columns-numbers">
3271
- <xsl:with-param name="table-row" select="./*[local-name()='tr'][1]"/>
3272
- </xsl:call-template>
3273
- </xsl:otherwise>
3274
- </xsl:choose>
3275
- </xsl:variable>
3276
-
3313
+
3314
+ <xsl:apply-templates select="../*[local-name()='thead']" mode="process"/>
3315
+
3316
+ <xsl:call-template name="insertTableFooter"/>
3317
+
3277
3318
  <fo:table-body>
3278
- <xsl:apply-templates select="../*[local-name()='thead']" mode="process"/>
3279
3319
  <xsl:apply-templates/>
3280
- <xsl:apply-templates select="../*[local-name()='tfoot']" mode="process"/>
3281
- <!-- if there are note(s) or fn(s) then create footer row -->
3282
- <xsl:if test="../*[local-name()='note'] or ..//*[local-name()='fn'][local-name(..) != 'name']">
3283
- <fo:table-row>
3284
- <fo:table-cell border="solid black 1pt" padding-left="1mm" padding-right="1mm" padding-top="1mm" number-columns-spanned="{$cols-count}">
3285
-
3286
-
3287
-
3288
- <!-- fn will be processed inside 'note' processing -->
3289
-
3290
-
3291
- <xsl:apply-templates select="../*[local-name()='note']" mode="process"/>
3292
-
3293
- <!-- horizontal row separator -->
3294
-
3295
-
3296
- <!-- fn processing -->
3297
- <xsl:call-template name="fn_display"/>
3298
-
3299
- </fo:table-cell>
3300
- </fo:table-row>
3301
-
3302
- </xsl:if>
3320
+ <!-- <xsl:apply-templates select="../*[local-name()='tfoot']" mode="process"/> -->
3321
+
3303
3322
  </fo:table-body>
3323
+
3304
3324
  </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='tr']">
3305
3325
  <xsl:variable name="parent-name" select="local-name(..)"/>
3306
3326
  <!-- <xsl:variable name="namespace" select="substring-before(name(/*), '-')"/> -->
@@ -3318,6 +3338,7 @@ JP5/AQYA3Lt5kGz07MoAAAAASUVORK5CYII=
3318
3338
 
3319
3339
  </xsl:if>
3320
3340
 
3341
+
3321
3342
  <xsl:apply-templates/>
3322
3343
  </fo:table-row>
3323
3344
  </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='th']">
@@ -3352,6 +3373,8 @@ JP5/AQYA3Lt5kGz07MoAAAAASUVORK5CYII=
3352
3373
 
3353
3374
 
3354
3375
 
3376
+
3377
+
3355
3378
  <xsl:if test="@colspan">
3356
3379
  <xsl:attribute name="number-columns-spanned">
3357
3380
  <xsl:value-of select="@colspan"/>
@@ -3384,10 +3407,13 @@ JP5/AQYA3Lt5kGz07MoAAAAASUVORK5CYII=
3384
3407
  <fo:block font-size="10pt" margin-bottom="12pt">
3385
3408
 
3386
3409
 
3410
+
3387
3411
  <fo:inline padding-right="2mm">
3412
+
3388
3413
  <xsl:text>NOTE </xsl:text>
3389
3414
 
3390
3415
 
3416
+
3391
3417
  </fo:inline>
3392
3418
  <xsl:apply-templates mode="process"/>
3393
3419
  </fo:block>
@@ -3410,12 +3436,14 @@ JP5/AQYA3Lt5kGz07MoAAAAASUVORK5CYII=
3410
3436
  <fo:block margin-bottom="12pt">
3411
3437
 
3412
3438
 
3439
+
3413
3440
  <fo:inline font-size="80%" padding-right="5mm" id="{@id}">
3414
3441
 
3415
3442
 
3416
3443
 
3417
3444
 
3418
3445
 
3446
+
3419
3447
  <xsl:value-of select="@reference"/>
3420
3448
 
3421
3449
  </fo:inline>
@@ -3499,6 +3527,7 @@ JP5/AQYA3Lt5kGz07MoAAAAASUVORK5CYII=
3499
3527
 
3500
3528
 
3501
3529
 
3530
+
3502
3531
  <fo:basic-link internal-destination="{@reference}_{ancestor::*[@id][1]/@id}" fox:alt-text="{@reference}"> <!-- @reference | ancestor::*[local-name()='clause'][1]/@id-->
3503
3532
 
3504
3533
  <xsl:value-of select="@reference"/>
@@ -3525,6 +3554,7 @@ JP5/AQYA3Lt5kGz07MoAAAAASUVORK5CYII=
3525
3554
 
3526
3555
 
3527
3556
 
3557
+
3528
3558
  <xsl:text>where</xsl:text>
3529
3559
  </fo:block>
3530
3560
  </xsl:when>
@@ -3532,6 +3562,7 @@ JP5/AQYA3Lt5kGz07MoAAAAASUVORK5CYII=
3532
3562
  <fo:block font-weight="bold" text-align="left" margin-bottom="12pt">
3533
3563
 
3534
3564
 
3565
+
3535
3566
  <xsl:text>Key</xsl:text>
3536
3567
  </fo:block>
3537
3568
  </xsl:when>
@@ -3543,9 +3574,9 @@ JP5/AQYA3Lt5kGz07MoAAAAASUVORK5CYII=
3543
3574
 
3544
3575
 
3545
3576
 
3546
-
3547
3577
  <fo:block>
3548
3578
 
3579
+
3549
3580
  <!-- create virtual html table for dl/[dt and dd] -->
3550
3581
  <xsl:variable name="html-table">
3551
3582
  <xsl:variable name="ns" select="substring-before(name(/*), '-')"/>
@@ -3565,6 +3596,7 @@ JP5/AQYA3Lt5kGz07MoAAAAASUVORK5CYII=
3565
3596
  <!-- colwidths=<xsl:value-of select="$colwidths"/> -->
3566
3597
 
3567
3598
  <fo:table width="95%" table-layout="fixed">
3599
+
3568
3600
  <xsl:choose>
3569
3601
  <xsl:when test="normalize-space($key_iso) = 'true' and $parent = 'formula'">
3570
3602
  <!-- <xsl:attribute name="font-size">11pt</xsl:attribute> -->
@@ -3662,6 +3694,7 @@ JP5/AQYA3Lt5kGz07MoAAAAASUVORK5CYII=
3662
3694
  <fo:table-cell>
3663
3695
  <fo:block margin-top="6pt">
3664
3696
 
3697
+
3665
3698
  <xsl:if test="normalize-space($key_iso) = 'true'">
3666
3699
  <xsl:attribute name="margin-top">0</xsl:attribute>
3667
3700
 
@@ -3669,6 +3702,7 @@ JP5/AQYA3Lt5kGz07MoAAAAASUVORK5CYII=
3669
3702
 
3670
3703
 
3671
3704
  <xsl:apply-templates/>
3705
+
3672
3706
  </fo:block>
3673
3707
  </fo:table-cell>
3674
3708
  <fo:table-cell>
@@ -3685,7 +3719,7 @@ JP5/AQYA3Lt5kGz07MoAAAAASUVORK5CYII=
3685
3719
  </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dd']"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dd']" mode="process">
3686
3720
  <xsl:apply-templates/>
3687
3721
  </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dd']/*[local-name()='p']" mode="inline">
3688
- <fo:inline><xsl:apply-templates/></fo:inline>
3722
+ <fo:inline><xsl:text> </xsl:text><xsl:apply-templates/></fo:inline>
3689
3723
  </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='em']">
3690
3724
  <fo:inline font-style="italic">
3691
3725
  <xsl:apply-templates/>
@@ -3800,6 +3834,7 @@ JP5/AQYA3Lt5kGz07MoAAAAASUVORK5CYII=
3800
3834
  <xsl:variable name="zero-space-after-dot">.</xsl:variable>
3801
3835
  <xsl:variable name="zero-space-after-colon">:</xsl:variable>
3802
3836
  <xsl:variable name="zero-space-after-equal">=</xsl:variable>
3837
+ <xsl:variable name="zero-space-after-underscore">_</xsl:variable>
3803
3838
  <xsl:variable name="zero-space">​</xsl:variable>
3804
3839
  <xsl:choose>
3805
3840
  <xsl:when test="contains($text, $zero-space-after-chars)">
@@ -3834,6 +3869,14 @@ JP5/AQYA3Lt5kGz07MoAAAAASUVORK5CYII=
3834
3869
  <xsl:with-param name="text" select="substring-after($text, $zero-space-after-equal)"/>
3835
3870
  </xsl:call-template>
3836
3871
  </xsl:when>
3872
+ <xsl:when test="contains($text, $zero-space-after-underscore)">
3873
+ <xsl:value-of select="substring-before($text, $zero-space-after-underscore)"/>
3874
+ <xsl:value-of select="$zero-space-after-underscore"/>
3875
+ <xsl:value-of select="$zero-space"/>
3876
+ <xsl:call-template name="add-zero-spaces">
3877
+ <xsl:with-param name="text" select="substring-after($text, $zero-space-after-underscore)"/>
3878
+ </xsl:call-template>
3879
+ </xsl:when>
3837
3880
  <xsl:otherwise>
3838
3881
  <xsl:value-of select="$text"/>
3839
3882
  </xsl:otherwise>
@@ -4010,4 +4053,40 @@ JP5/AQYA3Lt5kGz07MoAAAAASUVORK5CYII=
4010
4053
  <xsl:copy-of select="."/>
4011
4054
  </fo:instream-foreign-object>
4012
4055
  </fo:inline>
4056
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='localityStack']">
4057
+ <xsl:for-each select="*[local-name()='locality']">
4058
+ <xsl:if test="position() =1"><xsl:text>, </xsl:text></xsl:if>
4059
+ <xsl:apply-templates select="."/>
4060
+ <xsl:if test="position() != last()"><xsl:text>; </xsl:text></xsl:if>
4061
+ </xsl:for-each>
4062
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='link']" name="link">
4063
+ <xsl:variable name="target">
4064
+ <xsl:choose>
4065
+ <xsl:when test="starts-with(normalize-space(@target), 'mailto:')">
4066
+ <xsl:value-of select="normalize-space(substring-after(@target, 'mailto:'))"/>
4067
+ </xsl:when>
4068
+ <xsl:otherwise>
4069
+ <xsl:value-of select="normalize-space(@target)"/>
4070
+ </xsl:otherwise>
4071
+ </xsl:choose>
4072
+ </xsl:variable>
4073
+ <fo:inline xsl:use-attribute-sets="link-style">
4074
+ <xsl:choose>
4075
+ <xsl:when test="$target = ''">
4076
+ <xsl:apply-templates/>
4077
+ </xsl:when>
4078
+ <xsl:otherwise>
4079
+ <fo:basic-link external-destination="{@target}" fox:alt-text="{@target}">
4080
+ <xsl:choose>
4081
+ <xsl:when test="normalize-space(.) = ''">
4082
+ <xsl:value-of select="$target"/>
4083
+ </xsl:when>
4084
+ <xsl:otherwise>
4085
+ <xsl:apply-templates/>
4086
+ </xsl:otherwise>
4087
+ </xsl:choose>
4088
+ </fo:basic-link>
4089
+ </xsl:otherwise>
4090
+ </xsl:choose>
4091
+ </fo:inline>
4013
4092
  </xsl:template></xsl:stylesheet>
@@ -16,10 +16,10 @@ module IsoDoc
16
16
  def default_fonts(options)
17
17
  is_hans = options[:script] == 'Hans'
18
18
  {
19
- bodyfont: (is_hans ? '"SimSun",serif' : '"Source Sans Pro",sans-serif'),
19
+ bodyfont: (is_hans ? '"SimSun",serif' : 'AzoSans,"Source Sans Pro",sans-serif'),
20
20
  headerfont: (is_hans ? '"SimHei",sans-serif'
21
- : '"Source Sans Pro",sans-serif'),
22
- monospacefont: '"Space Mono",monospace'
21
+ : 'AzoSans,"Source Sans Pro",sans-serif'),
22
+ monospacefont: '"Source Code Pro",monospace'
23
23
  }
24
24
  end
25
25
 
@@ -36,8 +36,8 @@ module IsoDoc
36
36
  <<~HEAD.freeze
37
37
  <link href="https://fonts.googleapis.com/css?family=Open+Sans:300,300i,400,400i,600,600i|Space+Mono:400,700" rel="stylesheet">
38
38
  <link href="https://fonts.googleapis.com/css?family=Rubik:300,300i,500" rel="stylesheet">
39
- <link href="https://fonts.googleapis.com/css?family=Overpass:100,300,300i,600,900" rel="stylesheet">
40
39
  <link href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,300i,400,700,900" rel="stylesheet">
40
+ <link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:ital,wght@0,300;0,600;1,300;1,600&display=swap" rel="stylesheet">
41
41
  HEAD
42
42
  end
43
43
 
@@ -15,11 +15,10 @@ module IsoDoc
15
15
 
16
16
  def default_fonts(options)
17
17
  is_hans = options[:script] == 'Hans'
18
-
19
18
  {
20
- bodyfont: (is_hans ? '"SimSun",serif' : '"Arial",sans-serif'),
21
- headerfont: (is_hans ? '"SimHei",sans-serif' : '"Arial",sans-serif'),
22
- monospacefont: '"Courier New",monospace'
19
+ bodyfont: (is_hans ? '"SimSun",serif' : 'AzoSans,Arial,sans-serif'),
20
+ headerfont: (is_hans ? '"SimHei",sans-serif' : 'AzoSans,Arial,sans-serif'),
21
+ monospacefont: '"Source Code Pro","Courier New",monospace'
23
22
  }
24
23
  end
25
24
 
@@ -5,7 +5,7 @@ require 'asciidoctor/csa/converter'
5
5
 
6
6
  module Metanorma
7
7
  module Csa
8
- def self.pdf_fonts
8
+ def self.fonts_used
9
9
  %w(AzoSans AzoSans-Light SourceCodePro-Light)
10
10
  end
11
11
 
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Metanorma
4
4
  module Csa
5
- VERSION = '1.4.9'
5
+ VERSION = '1.4.10'
6
6
  end
7
7
  end
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: 1.4.9
4
+ version: 1.4.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-05-01 00:00:00.000000000 Z
11
+ date: 2020-05-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: htmlentities