metanorma-bipm 2.5.4 → 2.5.5

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: ee327f237eb974834aa08e30a8377060d464252f817649d3706a92fa6b7b37ba
4
- data.tar.gz: d3b799388ebe8e53161960f16f8ca90fb6a1337521a68aa592296171614879f9
3
+ metadata.gz: d9b1d2da225c44abbb3f4307a11b1b3c193c5cc7d70eb43323dc5c41e65bd8e5
4
+ data.tar.gz: c049f25ac880a9955c0619782eceb12ce6ef4d05b3691b62ac8c3eab5239c4d8
5
5
  SHA512:
6
- metadata.gz: 1b6d93eca87a36e2c20ae4b426b50ab4cac17edf39306eaf8ac02bebf10294deb0209caaca64fd2b6c0c6b7023901b394217adcde589bcc11d2f9134a6bc1760
7
- data.tar.gz: b5d58c60cdfba890e5895cbb62a7496b1b454dec763afa064120cf8a999b06e8da1f4703471fb6269dba7f3569458883e9718f2e32a1418e1a118064e4b9f97c
6
+ metadata.gz: e3226c96778a288dd719506f0b1f60339d0190f18f2470092a77bc33213ed44ab699211a4535970c363eeae53289edfe1878598e9409438c918f479dc660bd5c
7
+ data.tar.gz: effe15c926ab5e9b37015032039d371d78fcb1f6dcbcbda5058513a4c2a7c3043ba68389db7361aaa7a6c8a262098e9dc2d78794b0d140e9b81b489cc4398d04
@@ -7306,10 +7306,14 @@
7306
7306
  <xsl:variable name="fn_styles">
7307
7307
  <xsl:choose>
7308
7308
  <xsl:when test="ancestor::*[local-name() = 'bibitem']">
7309
- <fn_styles xsl:use-attribute-sets="bibitem-note-fn-style"/>
7309
+ <fn_styles xsl:use-attribute-sets="bibitem-note-fn-style">
7310
+
7311
+ </fn_styles>
7310
7312
  </xsl:when>
7311
7313
  <xsl:otherwise>
7312
- <fn_styles xsl:use-attribute-sets="fn-num-style"/>
7314
+ <fn_styles xsl:use-attribute-sets="fn-num-style">
7315
+
7316
+ </fn_styles>
7313
7317
  </xsl:otherwise>
7314
7318
  </xsl:choose>
7315
7319
  </xsl:variable>
@@ -10211,6 +10215,7 @@
10211
10215
  <xsl:if test="string-length(normalize-space()) &lt; 30 and not(contains(normalize-space(), 'http://')) and not(contains(normalize-space(), 'https://')) and not(ancestor::*[local-name() = 'table' or local-name() = 'dl'])">
10212
10216
  <xsl:attribute name="keep-together.within-line">always</xsl:attribute>
10213
10217
  </xsl:if>
10218
+
10214
10219
  <xsl:if test="parent::*[local-name() = 'add']">
10215
10220
  <xsl:call-template name="append_add-style"/>
10216
10221
  </xsl:if>
@@ -10319,44 +10324,44 @@
10319
10324
 
10320
10325
  <xsl:template xmlns:redirect="http://xml.apache.org/xalan/redirect" match="*[local-name() = 'note']" name="note">
10321
10326
 
10322
- <fo:block-container id="{@id}" xsl:use-attribute-sets="note-style" role="SKIP">
10327
+ <fo:block-container id="{@id}" xsl:use-attribute-sets="note-style" role="SKIP">
10323
10328
 
10324
- <xsl:call-template name="setBlockSpanAll"/>
10329
+ <xsl:call-template name="setBlockSpanAll"/>
10325
10330
 
10326
- <xsl:call-template name="refine_note-style"/>
10331
+ <xsl:call-template name="refine_note-style"/>
10327
10332
 
10328
- <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
10333
+ <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
10329
10334
 
10330
- <fo:block>
10335
+ <fo:block>
10331
10336
 
10332
- <xsl:call-template name="refine_note_block_style"/>
10337
+ <xsl:call-template name="refine_note_block_style"/>
10333
10338
 
10334
- <fo:inline xsl:use-attribute-sets="note-name-style" role="SKIP">
10339
+ <fo:inline xsl:use-attribute-sets="note-name-style" role="SKIP">
10335
10340
 
10336
- <xsl:call-template name="refine_note-name-style"/>
10341
+ <xsl:call-template name="refine_note-name-style"/>
10337
10342
 
10338
- <!-- if 'p' contains all text in 'add' first and last elements in first p are 'add' -->
10339
- <!-- <xsl:if test="*[not(local-name()='name')][1][node()[normalize-space() != ''][1][local-name() = 'add'] and node()[normalize-space() != ''][last()][local-name() = 'add']]"> -->
10340
- <xsl:if test="*[not(local-name()='name')][1][count(node()[normalize-space() != '']) = 1 and *[local-name() = 'add']]">
10341
- <xsl:call-template name="append_add-style"/>
10342
- </xsl:if>
10343
+ <!-- if 'p' contains all text in 'add' first and last elements in first p are 'add' -->
10344
+ <!-- <xsl:if test="*[not(local-name()='name')][1][node()[normalize-space() != ''][1][local-name() = 'add'] and node()[normalize-space() != ''][last()][local-name() = 'add']]"> -->
10345
+ <xsl:if test="*[not(local-name()='name')][1][count(node()[normalize-space() != '']) = 1 and *[local-name() = 'add']]">
10346
+ <xsl:call-template name="append_add-style"/>
10347
+ </xsl:if>
10343
10348
 
10344
- <!-- if note contains only one element and first and last childs are `add` ace-tag, then move start ace-tag before NOTE's name-->
10345
- <xsl:if test="count(*[not(local-name() = 'name')]) = 1 and *[not(local-name() = 'name')]/node()[last()][local-name() = 'add'][starts-with(text(), $ace_tag)]">
10346
- <xsl:apply-templates select="*[not(local-name() = 'name')]/node()[1][local-name() = 'add'][starts-with(text(), $ace_tag)]">
10347
- <xsl:with-param name="skip">false</xsl:with-param>
10348
- </xsl:apply-templates>
10349
- </xsl:if>
10349
+ <!-- if note contains only one element and first and last childs are `add` ace-tag, then move start ace-tag before NOTE's name-->
10350
+ <xsl:if test="count(*[not(local-name() = 'name')]) = 1 and *[not(local-name() = 'name')]/node()[last()][local-name() = 'add'][starts-with(text(), $ace_tag)]">
10351
+ <xsl:apply-templates select="*[not(local-name() = 'name')]/node()[1][local-name() = 'add'][starts-with(text(), $ace_tag)]">
10352
+ <xsl:with-param name="skip">false</xsl:with-param>
10353
+ </xsl:apply-templates>
10354
+ </xsl:if>
10350
10355
 
10351
- <xsl:apply-templates select="*[local-name() = 'name']"/>
10356
+ <xsl:apply-templates select="*[local-name() = 'name']"/>
10352
10357
 
10353
- </fo:inline>
10358
+ </fo:inline>
10354
10359
 
10355
- <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
10356
- </fo:block>
10360
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
10361
+ </fo:block>
10357
10362
 
10358
- </fo:block-container>
10359
- </fo:block-container>
10363
+ </fo:block-container>
10364
+ </fo:block-container>
10360
10365
 
10361
10366
  </xsl:template>
10362
10367
 
@@ -12791,6 +12796,7 @@
12791
12796
  </xsl:when>
12792
12797
  <xsl:when test="contains(normalize-space($fo_element), 'block')">
12793
12798
  <fo:block xsl:use-attribute-sets="example-name-style">
12799
+
12794
12800
  <xsl:apply-templates/>
12795
12801
  </fo:block>
12796
12802
  </xsl:when>
@@ -12806,6 +12812,7 @@
12806
12812
 
12807
12813
  <xsl:template xmlns:redirect="http://xml.apache.org/xalan/redirect" match="*[local-name() = 'table']/*[local-name() = 'example']/*[local-name() = 'name']">
12808
12814
  <fo:inline xsl:use-attribute-sets="example-name-style">
12815
+
12809
12816
  <xsl:apply-templates/>
12810
12817
  </fo:inline>
12811
12818
  </xsl:template>
@@ -13183,12 +13190,14 @@
13183
13190
 
13184
13191
  <xsl:if test="parent::*[local-name() = 'term'] and not(preceding-sibling::*[local-name() = 'preferred'])"> <!-- if first preffered in term, then display term's name -->
13185
13192
  <fo:block xsl:use-attribute-sets="term-name-style" role="SKIP">
13193
+
13186
13194
  <xsl:apply-templates select="ancestor::*[local-name() = 'term'][1]/*[local-name() = 'name']"/>
13187
13195
  </fo:block>
13188
13196
  </xsl:if>
13189
13197
 
13190
13198
  <fo:block xsl:use-attribute-sets="preferred-term-style" role="SKIP">
13191
13199
  <xsl:call-template name="setStyle_preferred"/>
13200
+
13192
13201
  <xsl:apply-templates/>
13193
13202
  </fo:block>
13194
13203
  </fo:block>
@@ -16140,9 +16149,10 @@
16140
16149
  <xsl:template xmlns:redirect="http://xml.apache.org/xalan/redirect" name="insertBackgroundPageImage">
16141
16150
  <xsl:param name="number">1</xsl:param>
16142
16151
  <xsl:param name="name">coverpage-image</xsl:param>
16152
+ <xsl:param name="suffix"/>
16143
16153
  <xsl:variable name="num" select="number($number)"/>
16144
16154
  <!-- background image -->
16145
- <fo:block-container absolute-position="fixed" left="0mm" top="0mm" font-size="0" id="__internal_layout__coverpage_{$name}_{$number}_{generate-id()}">
16155
+ <fo:block-container absolute-position="fixed" left="0mm" top="0mm" font-size="0" id="__internal_layout__coverpage{$suffix}_{$name}_{$number}_{generate-id()}">
16146
16156
  <fo:block>
16147
16157
  <xsl:for-each select="/*[contains(local-name(), '-standard')]/*[local-name() = 'metanorma-extension']/*[local-name() = 'presentation-metadata'][*[local-name() = 'name'] = $name][1]/*[local-name() = 'value']/*[local-name() = 'image'][$num]">
16148
16158
  <xsl:choose>
@@ -16208,16 +16218,29 @@
16208
16218
 
16209
16219
  <!-- END: insert cover page image -->
16210
16220
 
16221
+ <xsl:variable xmlns:redirect="http://xml.apache.org/xalan/redirect" name="regex_ja_spec">[\uFF08\uFF09]</xsl:variable>
16211
16222
  <xsl:template xmlns:redirect="http://xml.apache.org/xalan/redirect" name="insertVerticalChar">
16212
16223
  <xsl:param name="str"/>
16224
+ <xsl:param name="writing-mode">lr-tb</xsl:param>
16225
+ <xsl:param name="reference-orientation">90</xsl:param>
16213
16226
  <xsl:if test="string-length($str) &gt; 0">
16214
- <fo:inline-container writing-mode="lr-tb" text-align="center" alignment-baseline="central" reference-orientation="90" width="1em" margin="0" padding="0" text-indent="0mm" last-line-end-indent="0mm" start-indent="0mm" end-indent="0mm">
16227
+ <fo:inline-container text-align="center" alignment-baseline="central" width="1em" margin="0" padding="0" text-indent="0mm" last-line-end-indent="0mm" start-indent="0mm" end-indent="0mm">
16228
+ <xsl:if test="normalize-space($writing-mode) != ''">
16229
+ <xsl:attribute name="writing-mode"><xsl:value-of select="$writing-mode"/></xsl:attribute>
16230
+ <xsl:attribute name="reference-orientation">90</xsl:attribute>
16231
+ </xsl:if>
16232
+ <xsl:variable name="char" select="substring($str,1,1)"/>
16233
+ <xsl:if test="normalize-space(java:matches(java:java.lang.String.new($char), concat('(', $regex_ja_spec, '{1,})'))) = 'true'">
16234
+ <xsl:attribute name="reference-orientation">0</xsl:attribute>
16235
+ </xsl:if>
16215
16236
  <fo:block-container width="1em">
16216
- <fo:block line-height="1em"><xsl:value-of select="substring($str,1,1)"/></fo:block>
16237
+ <fo:block line-height="1em"><xsl:value-of select="$char"/></fo:block>
16217
16238
  </fo:block-container>
16218
16239
  </fo:inline-container>
16219
16240
  <xsl:call-template name="insertVerticalChar">
16220
16241
  <xsl:with-param name="str" select="substring($str, 2)"/>
16242
+ <xsl:with-param name="writing-mode" select="$writing-mode"/>
16243
+ <xsl:with-param name="reference-orientation" select="$reference-orientation"/>
16221
16244
  </xsl:call-template>
16222
16245
  </xsl:if>
16223
16246
  </xsl:template>
@@ -7306,10 +7306,14 @@
7306
7306
  <xsl:variable name="fn_styles">
7307
7307
  <xsl:choose>
7308
7308
  <xsl:when test="ancestor::*[local-name() = 'bibitem']">
7309
- <fn_styles xsl:use-attribute-sets="bibitem-note-fn-style"/>
7309
+ <fn_styles xsl:use-attribute-sets="bibitem-note-fn-style">
7310
+
7311
+ </fn_styles>
7310
7312
  </xsl:when>
7311
7313
  <xsl:otherwise>
7312
- <fn_styles xsl:use-attribute-sets="fn-num-style"/>
7314
+ <fn_styles xsl:use-attribute-sets="fn-num-style">
7315
+
7316
+ </fn_styles>
7313
7317
  </xsl:otherwise>
7314
7318
  </xsl:choose>
7315
7319
  </xsl:variable>
@@ -10211,6 +10215,7 @@
10211
10215
  <xsl:if test="string-length(normalize-space()) &lt; 30 and not(contains(normalize-space(), 'http://')) and not(contains(normalize-space(), 'https://')) and not(ancestor::*[local-name() = 'table' or local-name() = 'dl'])">
10212
10216
  <xsl:attribute name="keep-together.within-line">always</xsl:attribute>
10213
10217
  </xsl:if>
10218
+
10214
10219
  <xsl:if test="parent::*[local-name() = 'add']">
10215
10220
  <xsl:call-template name="append_add-style"/>
10216
10221
  </xsl:if>
@@ -10319,44 +10324,44 @@
10319
10324
 
10320
10325
  <xsl:template xmlns:redirect="http://xml.apache.org/xalan/redirect" match="*[local-name() = 'note']" name="note">
10321
10326
 
10322
- <fo:block-container id="{@id}" xsl:use-attribute-sets="note-style" role="SKIP">
10327
+ <fo:block-container id="{@id}" xsl:use-attribute-sets="note-style" role="SKIP">
10323
10328
 
10324
- <xsl:call-template name="setBlockSpanAll"/>
10329
+ <xsl:call-template name="setBlockSpanAll"/>
10325
10330
 
10326
- <xsl:call-template name="refine_note-style"/>
10331
+ <xsl:call-template name="refine_note-style"/>
10327
10332
 
10328
- <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
10333
+ <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
10329
10334
 
10330
- <fo:block>
10335
+ <fo:block>
10331
10336
 
10332
- <xsl:call-template name="refine_note_block_style"/>
10337
+ <xsl:call-template name="refine_note_block_style"/>
10333
10338
 
10334
- <fo:inline xsl:use-attribute-sets="note-name-style" role="SKIP">
10339
+ <fo:inline xsl:use-attribute-sets="note-name-style" role="SKIP">
10335
10340
 
10336
- <xsl:call-template name="refine_note-name-style"/>
10341
+ <xsl:call-template name="refine_note-name-style"/>
10337
10342
 
10338
- <!-- if 'p' contains all text in 'add' first and last elements in first p are 'add' -->
10339
- <!-- <xsl:if test="*[not(local-name()='name')][1][node()[normalize-space() != ''][1][local-name() = 'add'] and node()[normalize-space() != ''][last()][local-name() = 'add']]"> -->
10340
- <xsl:if test="*[not(local-name()='name')][1][count(node()[normalize-space() != '']) = 1 and *[local-name() = 'add']]">
10341
- <xsl:call-template name="append_add-style"/>
10342
- </xsl:if>
10343
+ <!-- if 'p' contains all text in 'add' first and last elements in first p are 'add' -->
10344
+ <!-- <xsl:if test="*[not(local-name()='name')][1][node()[normalize-space() != ''][1][local-name() = 'add'] and node()[normalize-space() != ''][last()][local-name() = 'add']]"> -->
10345
+ <xsl:if test="*[not(local-name()='name')][1][count(node()[normalize-space() != '']) = 1 and *[local-name() = 'add']]">
10346
+ <xsl:call-template name="append_add-style"/>
10347
+ </xsl:if>
10343
10348
 
10344
- <!-- if note contains only one element and first and last childs are `add` ace-tag, then move start ace-tag before NOTE's name-->
10345
- <xsl:if test="count(*[not(local-name() = 'name')]) = 1 and *[not(local-name() = 'name')]/node()[last()][local-name() = 'add'][starts-with(text(), $ace_tag)]">
10346
- <xsl:apply-templates select="*[not(local-name() = 'name')]/node()[1][local-name() = 'add'][starts-with(text(), $ace_tag)]">
10347
- <xsl:with-param name="skip">false</xsl:with-param>
10348
- </xsl:apply-templates>
10349
- </xsl:if>
10349
+ <!-- if note contains only one element and first and last childs are `add` ace-tag, then move start ace-tag before NOTE's name-->
10350
+ <xsl:if test="count(*[not(local-name() = 'name')]) = 1 and *[not(local-name() = 'name')]/node()[last()][local-name() = 'add'][starts-with(text(), $ace_tag)]">
10351
+ <xsl:apply-templates select="*[not(local-name() = 'name')]/node()[1][local-name() = 'add'][starts-with(text(), $ace_tag)]">
10352
+ <xsl:with-param name="skip">false</xsl:with-param>
10353
+ </xsl:apply-templates>
10354
+ </xsl:if>
10350
10355
 
10351
- <xsl:apply-templates select="*[local-name() = 'name']"/>
10356
+ <xsl:apply-templates select="*[local-name() = 'name']"/>
10352
10357
 
10353
- </fo:inline>
10358
+ </fo:inline>
10354
10359
 
10355
- <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
10356
- </fo:block>
10360
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
10361
+ </fo:block>
10357
10362
 
10358
- </fo:block-container>
10359
- </fo:block-container>
10363
+ </fo:block-container>
10364
+ </fo:block-container>
10360
10365
 
10361
10366
  </xsl:template>
10362
10367
 
@@ -12791,6 +12796,7 @@
12791
12796
  </xsl:when>
12792
12797
  <xsl:when test="contains(normalize-space($fo_element), 'block')">
12793
12798
  <fo:block xsl:use-attribute-sets="example-name-style">
12799
+
12794
12800
  <xsl:apply-templates/>
12795
12801
  </fo:block>
12796
12802
  </xsl:when>
@@ -12806,6 +12812,7 @@
12806
12812
 
12807
12813
  <xsl:template xmlns:redirect="http://xml.apache.org/xalan/redirect" match="*[local-name() = 'table']/*[local-name() = 'example']/*[local-name() = 'name']">
12808
12814
  <fo:inline xsl:use-attribute-sets="example-name-style">
12815
+
12809
12816
  <xsl:apply-templates/>
12810
12817
  </fo:inline>
12811
12818
  </xsl:template>
@@ -13183,12 +13190,14 @@
13183
13190
 
13184
13191
  <xsl:if test="parent::*[local-name() = 'term'] and not(preceding-sibling::*[local-name() = 'preferred'])"> <!-- if first preffered in term, then display term's name -->
13185
13192
  <fo:block xsl:use-attribute-sets="term-name-style" role="SKIP">
13193
+
13186
13194
  <xsl:apply-templates select="ancestor::*[local-name() = 'term'][1]/*[local-name() = 'name']"/>
13187
13195
  </fo:block>
13188
13196
  </xsl:if>
13189
13197
 
13190
13198
  <fo:block xsl:use-attribute-sets="preferred-term-style" role="SKIP">
13191
13199
  <xsl:call-template name="setStyle_preferred"/>
13200
+
13192
13201
  <xsl:apply-templates/>
13193
13202
  </fo:block>
13194
13203
  </fo:block>
@@ -16140,9 +16149,10 @@
16140
16149
  <xsl:template xmlns:redirect="http://xml.apache.org/xalan/redirect" name="insertBackgroundPageImage">
16141
16150
  <xsl:param name="number">1</xsl:param>
16142
16151
  <xsl:param name="name">coverpage-image</xsl:param>
16152
+ <xsl:param name="suffix"/>
16143
16153
  <xsl:variable name="num" select="number($number)"/>
16144
16154
  <!-- background image -->
16145
- <fo:block-container absolute-position="fixed" left="0mm" top="0mm" font-size="0" id="__internal_layout__coverpage_{$name}_{$number}_{generate-id()}">
16155
+ <fo:block-container absolute-position="fixed" left="0mm" top="0mm" font-size="0" id="__internal_layout__coverpage{$suffix}_{$name}_{$number}_{generate-id()}">
16146
16156
  <fo:block>
16147
16157
  <xsl:for-each select="/*[contains(local-name(), '-standard')]/*[local-name() = 'metanorma-extension']/*[local-name() = 'presentation-metadata'][*[local-name() = 'name'] = $name][1]/*[local-name() = 'value']/*[local-name() = 'image'][$num]">
16148
16158
  <xsl:choose>
@@ -16208,16 +16218,29 @@
16208
16218
 
16209
16219
  <!-- END: insert cover page image -->
16210
16220
 
16221
+ <xsl:variable xmlns:redirect="http://xml.apache.org/xalan/redirect" name="regex_ja_spec">[\uFF08\uFF09]</xsl:variable>
16211
16222
  <xsl:template xmlns:redirect="http://xml.apache.org/xalan/redirect" name="insertVerticalChar">
16212
16223
  <xsl:param name="str"/>
16224
+ <xsl:param name="writing-mode">lr-tb</xsl:param>
16225
+ <xsl:param name="reference-orientation">90</xsl:param>
16213
16226
  <xsl:if test="string-length($str) &gt; 0">
16214
- <fo:inline-container writing-mode="lr-tb" text-align="center" alignment-baseline="central" reference-orientation="90" width="1em" margin="0" padding="0" text-indent="0mm" last-line-end-indent="0mm" start-indent="0mm" end-indent="0mm">
16227
+ <fo:inline-container text-align="center" alignment-baseline="central" width="1em" margin="0" padding="0" text-indent="0mm" last-line-end-indent="0mm" start-indent="0mm" end-indent="0mm">
16228
+ <xsl:if test="normalize-space($writing-mode) != ''">
16229
+ <xsl:attribute name="writing-mode"><xsl:value-of select="$writing-mode"/></xsl:attribute>
16230
+ <xsl:attribute name="reference-orientation">90</xsl:attribute>
16231
+ </xsl:if>
16232
+ <xsl:variable name="char" select="substring($str,1,1)"/>
16233
+ <xsl:if test="normalize-space(java:matches(java:java.lang.String.new($char), concat('(', $regex_ja_spec, '{1,})'))) = 'true'">
16234
+ <xsl:attribute name="reference-orientation">0</xsl:attribute>
16235
+ </xsl:if>
16215
16236
  <fo:block-container width="1em">
16216
- <fo:block line-height="1em"><xsl:value-of select="substring($str,1,1)"/></fo:block>
16237
+ <fo:block line-height="1em"><xsl:value-of select="$char"/></fo:block>
16217
16238
  </fo:block-container>
16218
16239
  </fo:inline-container>
16219
16240
  <xsl:call-template name="insertVerticalChar">
16220
16241
  <xsl:with-param name="str" select="substring($str, 2)"/>
16242
+ <xsl:with-param name="writing-mode" select="$writing-mode"/>
16243
+ <xsl:with-param name="reference-orientation" select="$reference-orientation"/>
16221
16244
  </xsl:call-template>
16222
16245
  </xsl:if>
16223
16246
  </xsl:template>
@@ -7306,10 +7306,14 @@
7306
7306
  <xsl:variable name="fn_styles">
7307
7307
  <xsl:choose>
7308
7308
  <xsl:when test="ancestor::*[local-name() = 'bibitem']">
7309
- <fn_styles xsl:use-attribute-sets="bibitem-note-fn-style"/>
7309
+ <fn_styles xsl:use-attribute-sets="bibitem-note-fn-style">
7310
+
7311
+ </fn_styles>
7310
7312
  </xsl:when>
7311
7313
  <xsl:otherwise>
7312
- <fn_styles xsl:use-attribute-sets="fn-num-style"/>
7314
+ <fn_styles xsl:use-attribute-sets="fn-num-style">
7315
+
7316
+ </fn_styles>
7313
7317
  </xsl:otherwise>
7314
7318
  </xsl:choose>
7315
7319
  </xsl:variable>
@@ -10211,6 +10215,7 @@
10211
10215
  <xsl:if test="string-length(normalize-space()) &lt; 30 and not(contains(normalize-space(), 'http://')) and not(contains(normalize-space(), 'https://')) and not(ancestor::*[local-name() = 'table' or local-name() = 'dl'])">
10212
10216
  <xsl:attribute name="keep-together.within-line">always</xsl:attribute>
10213
10217
  </xsl:if>
10218
+
10214
10219
  <xsl:if test="parent::*[local-name() = 'add']">
10215
10220
  <xsl:call-template name="append_add-style"/>
10216
10221
  </xsl:if>
@@ -10319,44 +10324,44 @@
10319
10324
 
10320
10325
  <xsl:template xmlns:redirect="http://xml.apache.org/xalan/redirect" match="*[local-name() = 'note']" name="note">
10321
10326
 
10322
- <fo:block-container id="{@id}" xsl:use-attribute-sets="note-style" role="SKIP">
10327
+ <fo:block-container id="{@id}" xsl:use-attribute-sets="note-style" role="SKIP">
10323
10328
 
10324
- <xsl:call-template name="setBlockSpanAll"/>
10329
+ <xsl:call-template name="setBlockSpanAll"/>
10325
10330
 
10326
- <xsl:call-template name="refine_note-style"/>
10331
+ <xsl:call-template name="refine_note-style"/>
10327
10332
 
10328
- <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
10333
+ <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
10329
10334
 
10330
- <fo:block>
10335
+ <fo:block>
10331
10336
 
10332
- <xsl:call-template name="refine_note_block_style"/>
10337
+ <xsl:call-template name="refine_note_block_style"/>
10333
10338
 
10334
- <fo:inline xsl:use-attribute-sets="note-name-style" role="SKIP">
10339
+ <fo:inline xsl:use-attribute-sets="note-name-style" role="SKIP">
10335
10340
 
10336
- <xsl:call-template name="refine_note-name-style"/>
10341
+ <xsl:call-template name="refine_note-name-style"/>
10337
10342
 
10338
- <!-- if 'p' contains all text in 'add' first and last elements in first p are 'add' -->
10339
- <!-- <xsl:if test="*[not(local-name()='name')][1][node()[normalize-space() != ''][1][local-name() = 'add'] and node()[normalize-space() != ''][last()][local-name() = 'add']]"> -->
10340
- <xsl:if test="*[not(local-name()='name')][1][count(node()[normalize-space() != '']) = 1 and *[local-name() = 'add']]">
10341
- <xsl:call-template name="append_add-style"/>
10342
- </xsl:if>
10343
+ <!-- if 'p' contains all text in 'add' first and last elements in first p are 'add' -->
10344
+ <!-- <xsl:if test="*[not(local-name()='name')][1][node()[normalize-space() != ''][1][local-name() = 'add'] and node()[normalize-space() != ''][last()][local-name() = 'add']]"> -->
10345
+ <xsl:if test="*[not(local-name()='name')][1][count(node()[normalize-space() != '']) = 1 and *[local-name() = 'add']]">
10346
+ <xsl:call-template name="append_add-style"/>
10347
+ </xsl:if>
10343
10348
 
10344
- <!-- if note contains only one element and first and last childs are `add` ace-tag, then move start ace-tag before NOTE's name-->
10345
- <xsl:if test="count(*[not(local-name() = 'name')]) = 1 and *[not(local-name() = 'name')]/node()[last()][local-name() = 'add'][starts-with(text(), $ace_tag)]">
10346
- <xsl:apply-templates select="*[not(local-name() = 'name')]/node()[1][local-name() = 'add'][starts-with(text(), $ace_tag)]">
10347
- <xsl:with-param name="skip">false</xsl:with-param>
10348
- </xsl:apply-templates>
10349
- </xsl:if>
10349
+ <!-- if note contains only one element and first and last childs are `add` ace-tag, then move start ace-tag before NOTE's name-->
10350
+ <xsl:if test="count(*[not(local-name() = 'name')]) = 1 and *[not(local-name() = 'name')]/node()[last()][local-name() = 'add'][starts-with(text(), $ace_tag)]">
10351
+ <xsl:apply-templates select="*[not(local-name() = 'name')]/node()[1][local-name() = 'add'][starts-with(text(), $ace_tag)]">
10352
+ <xsl:with-param name="skip">false</xsl:with-param>
10353
+ </xsl:apply-templates>
10354
+ </xsl:if>
10350
10355
 
10351
- <xsl:apply-templates select="*[local-name() = 'name']"/>
10356
+ <xsl:apply-templates select="*[local-name() = 'name']"/>
10352
10357
 
10353
- </fo:inline>
10358
+ </fo:inline>
10354
10359
 
10355
- <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
10356
- </fo:block>
10360
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
10361
+ </fo:block>
10357
10362
 
10358
- </fo:block-container>
10359
- </fo:block-container>
10363
+ </fo:block-container>
10364
+ </fo:block-container>
10360
10365
 
10361
10366
  </xsl:template>
10362
10367
 
@@ -12791,6 +12796,7 @@
12791
12796
  </xsl:when>
12792
12797
  <xsl:when test="contains(normalize-space($fo_element), 'block')">
12793
12798
  <fo:block xsl:use-attribute-sets="example-name-style">
12799
+
12794
12800
  <xsl:apply-templates/>
12795
12801
  </fo:block>
12796
12802
  </xsl:when>
@@ -12806,6 +12812,7 @@
12806
12812
 
12807
12813
  <xsl:template xmlns:redirect="http://xml.apache.org/xalan/redirect" match="*[local-name() = 'table']/*[local-name() = 'example']/*[local-name() = 'name']">
12808
12814
  <fo:inline xsl:use-attribute-sets="example-name-style">
12815
+
12809
12816
  <xsl:apply-templates/>
12810
12817
  </fo:inline>
12811
12818
  </xsl:template>
@@ -13183,12 +13190,14 @@
13183
13190
 
13184
13191
  <xsl:if test="parent::*[local-name() = 'term'] and not(preceding-sibling::*[local-name() = 'preferred'])"> <!-- if first preffered in term, then display term's name -->
13185
13192
  <fo:block xsl:use-attribute-sets="term-name-style" role="SKIP">
13193
+
13186
13194
  <xsl:apply-templates select="ancestor::*[local-name() = 'term'][1]/*[local-name() = 'name']"/>
13187
13195
  </fo:block>
13188
13196
  </xsl:if>
13189
13197
 
13190
13198
  <fo:block xsl:use-attribute-sets="preferred-term-style" role="SKIP">
13191
13199
  <xsl:call-template name="setStyle_preferred"/>
13200
+
13192
13201
  <xsl:apply-templates/>
13193
13202
  </fo:block>
13194
13203
  </fo:block>
@@ -16140,9 +16149,10 @@
16140
16149
  <xsl:template xmlns:redirect="http://xml.apache.org/xalan/redirect" name="insertBackgroundPageImage">
16141
16150
  <xsl:param name="number">1</xsl:param>
16142
16151
  <xsl:param name="name">coverpage-image</xsl:param>
16152
+ <xsl:param name="suffix"/>
16143
16153
  <xsl:variable name="num" select="number($number)"/>
16144
16154
  <!-- background image -->
16145
- <fo:block-container absolute-position="fixed" left="0mm" top="0mm" font-size="0" id="__internal_layout__coverpage_{$name}_{$number}_{generate-id()}">
16155
+ <fo:block-container absolute-position="fixed" left="0mm" top="0mm" font-size="0" id="__internal_layout__coverpage{$suffix}_{$name}_{$number}_{generate-id()}">
16146
16156
  <fo:block>
16147
16157
  <xsl:for-each select="/*[contains(local-name(), '-standard')]/*[local-name() = 'metanorma-extension']/*[local-name() = 'presentation-metadata'][*[local-name() = 'name'] = $name][1]/*[local-name() = 'value']/*[local-name() = 'image'][$num]">
16148
16158
  <xsl:choose>
@@ -16208,16 +16218,29 @@
16208
16218
 
16209
16219
  <!-- END: insert cover page image -->
16210
16220
 
16221
+ <xsl:variable xmlns:redirect="http://xml.apache.org/xalan/redirect" name="regex_ja_spec">[\uFF08\uFF09]</xsl:variable>
16211
16222
  <xsl:template xmlns:redirect="http://xml.apache.org/xalan/redirect" name="insertVerticalChar">
16212
16223
  <xsl:param name="str"/>
16224
+ <xsl:param name="writing-mode">lr-tb</xsl:param>
16225
+ <xsl:param name="reference-orientation">90</xsl:param>
16213
16226
  <xsl:if test="string-length($str) &gt; 0">
16214
- <fo:inline-container writing-mode="lr-tb" text-align="center" alignment-baseline="central" reference-orientation="90" width="1em" margin="0" padding="0" text-indent="0mm" last-line-end-indent="0mm" start-indent="0mm" end-indent="0mm">
16227
+ <fo:inline-container text-align="center" alignment-baseline="central" width="1em" margin="0" padding="0" text-indent="0mm" last-line-end-indent="0mm" start-indent="0mm" end-indent="0mm">
16228
+ <xsl:if test="normalize-space($writing-mode) != ''">
16229
+ <xsl:attribute name="writing-mode"><xsl:value-of select="$writing-mode"/></xsl:attribute>
16230
+ <xsl:attribute name="reference-orientation">90</xsl:attribute>
16231
+ </xsl:if>
16232
+ <xsl:variable name="char" select="substring($str,1,1)"/>
16233
+ <xsl:if test="normalize-space(java:matches(java:java.lang.String.new($char), concat('(', $regex_ja_spec, '{1,})'))) = 'true'">
16234
+ <xsl:attribute name="reference-orientation">0</xsl:attribute>
16235
+ </xsl:if>
16215
16236
  <fo:block-container width="1em">
16216
- <fo:block line-height="1em"><xsl:value-of select="substring($str,1,1)"/></fo:block>
16237
+ <fo:block line-height="1em"><xsl:value-of select="$char"/></fo:block>
16217
16238
  </fo:block-container>
16218
16239
  </fo:inline-container>
16219
16240
  <xsl:call-template name="insertVerticalChar">
16220
16241
  <xsl:with-param name="str" select="substring($str, 2)"/>
16242
+ <xsl:with-param name="writing-mode" select="$writing-mode"/>
16243
+ <xsl:with-param name="reference-orientation" select="$reference-orientation"/>
16221
16244
  </xsl:call-template>
16222
16245
  </xsl:if>
16223
16246
  </xsl:template>
@@ -7306,10 +7306,14 @@
7306
7306
  <xsl:variable name="fn_styles">
7307
7307
  <xsl:choose>
7308
7308
  <xsl:when test="ancestor::*[local-name() = 'bibitem']">
7309
- <fn_styles xsl:use-attribute-sets="bibitem-note-fn-style"/>
7309
+ <fn_styles xsl:use-attribute-sets="bibitem-note-fn-style">
7310
+
7311
+ </fn_styles>
7310
7312
  </xsl:when>
7311
7313
  <xsl:otherwise>
7312
- <fn_styles xsl:use-attribute-sets="fn-num-style"/>
7314
+ <fn_styles xsl:use-attribute-sets="fn-num-style">
7315
+
7316
+ </fn_styles>
7313
7317
  </xsl:otherwise>
7314
7318
  </xsl:choose>
7315
7319
  </xsl:variable>
@@ -10211,6 +10215,7 @@
10211
10215
  <xsl:if test="string-length(normalize-space()) &lt; 30 and not(contains(normalize-space(), 'http://')) and not(contains(normalize-space(), 'https://')) and not(ancestor::*[local-name() = 'table' or local-name() = 'dl'])">
10212
10216
  <xsl:attribute name="keep-together.within-line">always</xsl:attribute>
10213
10217
  </xsl:if>
10218
+
10214
10219
  <xsl:if test="parent::*[local-name() = 'add']">
10215
10220
  <xsl:call-template name="append_add-style"/>
10216
10221
  </xsl:if>
@@ -10319,44 +10324,44 @@
10319
10324
 
10320
10325
  <xsl:template xmlns:redirect="http://xml.apache.org/xalan/redirect" match="*[local-name() = 'note']" name="note">
10321
10326
 
10322
- <fo:block-container id="{@id}" xsl:use-attribute-sets="note-style" role="SKIP">
10327
+ <fo:block-container id="{@id}" xsl:use-attribute-sets="note-style" role="SKIP">
10323
10328
 
10324
- <xsl:call-template name="setBlockSpanAll"/>
10329
+ <xsl:call-template name="setBlockSpanAll"/>
10325
10330
 
10326
- <xsl:call-template name="refine_note-style"/>
10331
+ <xsl:call-template name="refine_note-style"/>
10327
10332
 
10328
- <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
10333
+ <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
10329
10334
 
10330
- <fo:block>
10335
+ <fo:block>
10331
10336
 
10332
- <xsl:call-template name="refine_note_block_style"/>
10337
+ <xsl:call-template name="refine_note_block_style"/>
10333
10338
 
10334
- <fo:inline xsl:use-attribute-sets="note-name-style" role="SKIP">
10339
+ <fo:inline xsl:use-attribute-sets="note-name-style" role="SKIP">
10335
10340
 
10336
- <xsl:call-template name="refine_note-name-style"/>
10341
+ <xsl:call-template name="refine_note-name-style"/>
10337
10342
 
10338
- <!-- if 'p' contains all text in 'add' first and last elements in first p are 'add' -->
10339
- <!-- <xsl:if test="*[not(local-name()='name')][1][node()[normalize-space() != ''][1][local-name() = 'add'] and node()[normalize-space() != ''][last()][local-name() = 'add']]"> -->
10340
- <xsl:if test="*[not(local-name()='name')][1][count(node()[normalize-space() != '']) = 1 and *[local-name() = 'add']]">
10341
- <xsl:call-template name="append_add-style"/>
10342
- </xsl:if>
10343
+ <!-- if 'p' contains all text in 'add' first and last elements in first p are 'add' -->
10344
+ <!-- <xsl:if test="*[not(local-name()='name')][1][node()[normalize-space() != ''][1][local-name() = 'add'] and node()[normalize-space() != ''][last()][local-name() = 'add']]"> -->
10345
+ <xsl:if test="*[not(local-name()='name')][1][count(node()[normalize-space() != '']) = 1 and *[local-name() = 'add']]">
10346
+ <xsl:call-template name="append_add-style"/>
10347
+ </xsl:if>
10343
10348
 
10344
- <!-- if note contains only one element and first and last childs are `add` ace-tag, then move start ace-tag before NOTE's name-->
10345
- <xsl:if test="count(*[not(local-name() = 'name')]) = 1 and *[not(local-name() = 'name')]/node()[last()][local-name() = 'add'][starts-with(text(), $ace_tag)]">
10346
- <xsl:apply-templates select="*[not(local-name() = 'name')]/node()[1][local-name() = 'add'][starts-with(text(), $ace_tag)]">
10347
- <xsl:with-param name="skip">false</xsl:with-param>
10348
- </xsl:apply-templates>
10349
- </xsl:if>
10349
+ <!-- if note contains only one element and first and last childs are `add` ace-tag, then move start ace-tag before NOTE's name-->
10350
+ <xsl:if test="count(*[not(local-name() = 'name')]) = 1 and *[not(local-name() = 'name')]/node()[last()][local-name() = 'add'][starts-with(text(), $ace_tag)]">
10351
+ <xsl:apply-templates select="*[not(local-name() = 'name')]/node()[1][local-name() = 'add'][starts-with(text(), $ace_tag)]">
10352
+ <xsl:with-param name="skip">false</xsl:with-param>
10353
+ </xsl:apply-templates>
10354
+ </xsl:if>
10350
10355
 
10351
- <xsl:apply-templates select="*[local-name() = 'name']"/>
10356
+ <xsl:apply-templates select="*[local-name() = 'name']"/>
10352
10357
 
10353
- </fo:inline>
10358
+ </fo:inline>
10354
10359
 
10355
- <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
10356
- </fo:block>
10360
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
10361
+ </fo:block>
10357
10362
 
10358
- </fo:block-container>
10359
- </fo:block-container>
10363
+ </fo:block-container>
10364
+ </fo:block-container>
10360
10365
 
10361
10366
  </xsl:template>
10362
10367
 
@@ -12791,6 +12796,7 @@
12791
12796
  </xsl:when>
12792
12797
  <xsl:when test="contains(normalize-space($fo_element), 'block')">
12793
12798
  <fo:block xsl:use-attribute-sets="example-name-style">
12799
+
12794
12800
  <xsl:apply-templates/>
12795
12801
  </fo:block>
12796
12802
  </xsl:when>
@@ -12806,6 +12812,7 @@
12806
12812
 
12807
12813
  <xsl:template xmlns:redirect="http://xml.apache.org/xalan/redirect" match="*[local-name() = 'table']/*[local-name() = 'example']/*[local-name() = 'name']">
12808
12814
  <fo:inline xsl:use-attribute-sets="example-name-style">
12815
+
12809
12816
  <xsl:apply-templates/>
12810
12817
  </fo:inline>
12811
12818
  </xsl:template>
@@ -13183,12 +13190,14 @@
13183
13190
 
13184
13191
  <xsl:if test="parent::*[local-name() = 'term'] and not(preceding-sibling::*[local-name() = 'preferred'])"> <!-- if first preffered in term, then display term's name -->
13185
13192
  <fo:block xsl:use-attribute-sets="term-name-style" role="SKIP">
13193
+
13186
13194
  <xsl:apply-templates select="ancestor::*[local-name() = 'term'][1]/*[local-name() = 'name']"/>
13187
13195
  </fo:block>
13188
13196
  </xsl:if>
13189
13197
 
13190
13198
  <fo:block xsl:use-attribute-sets="preferred-term-style" role="SKIP">
13191
13199
  <xsl:call-template name="setStyle_preferred"/>
13200
+
13192
13201
  <xsl:apply-templates/>
13193
13202
  </fo:block>
13194
13203
  </fo:block>
@@ -16140,9 +16149,10 @@
16140
16149
  <xsl:template xmlns:redirect="http://xml.apache.org/xalan/redirect" name="insertBackgroundPageImage">
16141
16150
  <xsl:param name="number">1</xsl:param>
16142
16151
  <xsl:param name="name">coverpage-image</xsl:param>
16152
+ <xsl:param name="suffix"/>
16143
16153
  <xsl:variable name="num" select="number($number)"/>
16144
16154
  <!-- background image -->
16145
- <fo:block-container absolute-position="fixed" left="0mm" top="0mm" font-size="0" id="__internal_layout__coverpage_{$name}_{$number}_{generate-id()}">
16155
+ <fo:block-container absolute-position="fixed" left="0mm" top="0mm" font-size="0" id="__internal_layout__coverpage{$suffix}_{$name}_{$number}_{generate-id()}">
16146
16156
  <fo:block>
16147
16157
  <xsl:for-each select="/*[contains(local-name(), '-standard')]/*[local-name() = 'metanorma-extension']/*[local-name() = 'presentation-metadata'][*[local-name() = 'name'] = $name][1]/*[local-name() = 'value']/*[local-name() = 'image'][$num]">
16148
16158
  <xsl:choose>
@@ -16208,16 +16218,29 @@
16208
16218
 
16209
16219
  <!-- END: insert cover page image -->
16210
16220
 
16221
+ <xsl:variable xmlns:redirect="http://xml.apache.org/xalan/redirect" name="regex_ja_spec">[\uFF08\uFF09]</xsl:variable>
16211
16222
  <xsl:template xmlns:redirect="http://xml.apache.org/xalan/redirect" name="insertVerticalChar">
16212
16223
  <xsl:param name="str"/>
16224
+ <xsl:param name="writing-mode">lr-tb</xsl:param>
16225
+ <xsl:param name="reference-orientation">90</xsl:param>
16213
16226
  <xsl:if test="string-length($str) &gt; 0">
16214
- <fo:inline-container writing-mode="lr-tb" text-align="center" alignment-baseline="central" reference-orientation="90" width="1em" margin="0" padding="0" text-indent="0mm" last-line-end-indent="0mm" start-indent="0mm" end-indent="0mm">
16227
+ <fo:inline-container text-align="center" alignment-baseline="central" width="1em" margin="0" padding="0" text-indent="0mm" last-line-end-indent="0mm" start-indent="0mm" end-indent="0mm">
16228
+ <xsl:if test="normalize-space($writing-mode) != ''">
16229
+ <xsl:attribute name="writing-mode"><xsl:value-of select="$writing-mode"/></xsl:attribute>
16230
+ <xsl:attribute name="reference-orientation">90</xsl:attribute>
16231
+ </xsl:if>
16232
+ <xsl:variable name="char" select="substring($str,1,1)"/>
16233
+ <xsl:if test="normalize-space(java:matches(java:java.lang.String.new($char), concat('(', $regex_ja_spec, '{1,})'))) = 'true'">
16234
+ <xsl:attribute name="reference-orientation">0</xsl:attribute>
16235
+ </xsl:if>
16215
16236
  <fo:block-container width="1em">
16216
- <fo:block line-height="1em"><xsl:value-of select="substring($str,1,1)"/></fo:block>
16237
+ <fo:block line-height="1em"><xsl:value-of select="$char"/></fo:block>
16217
16238
  </fo:block-container>
16218
16239
  </fo:inline-container>
16219
16240
  <xsl:call-template name="insertVerticalChar">
16220
16241
  <xsl:with-param name="str" select="substring($str, 2)"/>
16242
+ <xsl:with-param name="writing-mode" select="$writing-mode"/>
16243
+ <xsl:with-param name="reference-orientation" select="$reference-orientation"/>
16221
16244
  </xsl:call-template>
16222
16245
  </xsl:if>
16223
16246
  </xsl:template>
@@ -5232,10 +5232,14 @@
5232
5232
  <xsl:variable name="fn_styles">
5233
5233
  <xsl:choose>
5234
5234
  <xsl:when test="ancestor::*[local-name() = 'bibitem']">
5235
- <fn_styles xsl:use-attribute-sets="bibitem-note-fn-style"/>
5235
+ <fn_styles xsl:use-attribute-sets="bibitem-note-fn-style">
5236
+
5237
+ </fn_styles>
5236
5238
  </xsl:when>
5237
5239
  <xsl:otherwise>
5238
- <fn_styles xsl:use-attribute-sets="fn-num-style"/>
5240
+ <fn_styles xsl:use-attribute-sets="fn-num-style">
5241
+
5242
+ </fn_styles>
5239
5243
  </xsl:otherwise>
5240
5244
  </xsl:choose>
5241
5245
  </xsl:variable>
@@ -8120,6 +8124,7 @@
8120
8124
  <xsl:if test="string-length(normalize-space()) &lt; 30 and not(contains(normalize-space(), 'http://')) and not(contains(normalize-space(), 'https://')) and not(ancestor::*[local-name() = 'table' or local-name() = 'dl'])">
8121
8125
  <xsl:attribute name="keep-together.within-line">always</xsl:attribute>
8122
8126
  </xsl:if>
8127
+
8123
8128
  <xsl:if test="parent::*[local-name() = 'add']">
8124
8129
  <xsl:call-template name="append_add-style"/>
8125
8130
  </xsl:if>
@@ -8228,44 +8233,44 @@
8228
8233
 
8229
8234
  <xsl:template match="*[local-name() = 'note']" name="note">
8230
8235
 
8231
- <fo:block-container id="{@id}" xsl:use-attribute-sets="note-style" role="SKIP">
8236
+ <fo:block-container id="{@id}" xsl:use-attribute-sets="note-style" role="SKIP">
8232
8237
 
8233
- <xsl:call-template name="setBlockSpanAll"/>
8238
+ <xsl:call-template name="setBlockSpanAll"/>
8234
8239
 
8235
- <xsl:call-template name="refine_note-style"/>
8240
+ <xsl:call-template name="refine_note-style"/>
8236
8241
 
8237
- <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
8242
+ <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
8238
8243
 
8239
- <fo:block>
8244
+ <fo:block>
8240
8245
 
8241
- <xsl:call-template name="refine_note_block_style"/>
8246
+ <xsl:call-template name="refine_note_block_style"/>
8242
8247
 
8243
- <fo:inline xsl:use-attribute-sets="note-name-style" role="SKIP">
8248
+ <fo:inline xsl:use-attribute-sets="note-name-style" role="SKIP">
8244
8249
 
8245
- <xsl:call-template name="refine_note-name-style"/>
8250
+ <xsl:call-template name="refine_note-name-style"/>
8246
8251
 
8247
- <!-- if 'p' contains all text in 'add' first and last elements in first p are 'add' -->
8248
- <!-- <xsl:if test="*[not(local-name()='name')][1][node()[normalize-space() != ''][1][local-name() = 'add'] and node()[normalize-space() != ''][last()][local-name() = 'add']]"> -->
8249
- <xsl:if test="*[not(local-name()='name')][1][count(node()[normalize-space() != '']) = 1 and *[local-name() = 'add']]">
8250
- <xsl:call-template name="append_add-style"/>
8251
- </xsl:if>
8252
+ <!-- if 'p' contains all text in 'add' first and last elements in first p are 'add' -->
8253
+ <!-- <xsl:if test="*[not(local-name()='name')][1][node()[normalize-space() != ''][1][local-name() = 'add'] and node()[normalize-space() != ''][last()][local-name() = 'add']]"> -->
8254
+ <xsl:if test="*[not(local-name()='name')][1][count(node()[normalize-space() != '']) = 1 and *[local-name() = 'add']]">
8255
+ <xsl:call-template name="append_add-style"/>
8256
+ </xsl:if>
8252
8257
 
8253
- <!-- if note contains only one element and first and last childs are `add` ace-tag, then move start ace-tag before NOTE's name-->
8254
- <xsl:if test="count(*[not(local-name() = 'name')]) = 1 and *[not(local-name() = 'name')]/node()[last()][local-name() = 'add'][starts-with(text(), $ace_tag)]">
8255
- <xsl:apply-templates select="*[not(local-name() = 'name')]/node()[1][local-name() = 'add'][starts-with(text(), $ace_tag)]">
8256
- <xsl:with-param name="skip">false</xsl:with-param>
8257
- </xsl:apply-templates>
8258
- </xsl:if>
8258
+ <!-- if note contains only one element and first and last childs are `add` ace-tag, then move start ace-tag before NOTE's name-->
8259
+ <xsl:if test="count(*[not(local-name() = 'name')]) = 1 and *[not(local-name() = 'name')]/node()[last()][local-name() = 'add'][starts-with(text(), $ace_tag)]">
8260
+ <xsl:apply-templates select="*[not(local-name() = 'name')]/node()[1][local-name() = 'add'][starts-with(text(), $ace_tag)]">
8261
+ <xsl:with-param name="skip">false</xsl:with-param>
8262
+ </xsl:apply-templates>
8263
+ </xsl:if>
8259
8264
 
8260
- <xsl:apply-templates select="*[local-name() = 'name']"/>
8265
+ <xsl:apply-templates select="*[local-name() = 'name']"/>
8261
8266
 
8262
- </fo:inline>
8267
+ </fo:inline>
8263
8268
 
8264
- <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
8265
- </fo:block>
8269
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
8270
+ </fo:block>
8266
8271
 
8267
- </fo:block-container>
8268
- </fo:block-container>
8272
+ </fo:block-container>
8273
+ </fo:block-container>
8269
8274
 
8270
8275
  </xsl:template>
8271
8276
 
@@ -10668,6 +10673,7 @@
10668
10673
  </xsl:when>
10669
10674
  <xsl:when test="contains(normalize-space($fo_element), 'block')">
10670
10675
  <fo:block xsl:use-attribute-sets="example-name-style">
10676
+
10671
10677
  <xsl:apply-templates/>
10672
10678
  </fo:block>
10673
10679
  </xsl:when>
@@ -10683,6 +10689,7 @@
10683
10689
 
10684
10690
  <xsl:template match="*[local-name() = 'table']/*[local-name() = 'example']/*[local-name() = 'name']">
10685
10691
  <fo:inline xsl:use-attribute-sets="example-name-style">
10692
+
10686
10693
  <xsl:apply-templates/>
10687
10694
  </fo:inline>
10688
10695
  </xsl:template>
@@ -11060,12 +11067,14 @@
11060
11067
 
11061
11068
  <xsl:if test="parent::*[local-name() = 'term'] and not(preceding-sibling::*[local-name() = 'preferred'])"> <!-- if first preffered in term, then display term's name -->
11062
11069
  <fo:block xsl:use-attribute-sets="term-name-style" role="SKIP">
11070
+
11063
11071
  <xsl:apply-templates select="ancestor::*[local-name() = 'term'][1]/*[local-name() = 'name']"/>
11064
11072
  </fo:block>
11065
11073
  </xsl:if>
11066
11074
 
11067
11075
  <fo:block xsl:use-attribute-sets="preferred-term-style" role="SKIP">
11068
11076
  <xsl:call-template name="setStyle_preferred"/>
11077
+
11069
11078
  <xsl:apply-templates/>
11070
11079
  </fo:block>
11071
11080
  </fo:block>
@@ -14029,9 +14038,10 @@
14029
14038
  <xsl:template name="insertBackgroundPageImage">
14030
14039
  <xsl:param name="number">1</xsl:param>
14031
14040
  <xsl:param name="name">coverpage-image</xsl:param>
14041
+ <xsl:param name="suffix"/>
14032
14042
  <xsl:variable name="num" select="number($number)"/>
14033
14043
  <!-- background image -->
14034
- <fo:block-container absolute-position="fixed" left="0mm" top="0mm" font-size="0" id="__internal_layout__coverpage_{$name}_{$number}_{generate-id()}">
14044
+ <fo:block-container absolute-position="fixed" left="0mm" top="0mm" font-size="0" id="__internal_layout__coverpage{$suffix}_{$name}_{$number}_{generate-id()}">
14035
14045
  <fo:block>
14036
14046
  <xsl:for-each select="/*[contains(local-name(), '-standard')]/*[local-name() = 'metanorma-extension']/*[local-name() = 'presentation-metadata'][*[local-name() = 'name'] = $name][1]/*[local-name() = 'value']/*[local-name() = 'image'][$num]">
14037
14047
  <xsl:choose>
@@ -14097,16 +14107,29 @@
14097
14107
 
14098
14108
  <!-- END: insert cover page image -->
14099
14109
 
14110
+ <xsl:variable name="regex_ja_spec">[\uFF08\uFF09]</xsl:variable>
14100
14111
  <xsl:template name="insertVerticalChar">
14101
14112
  <xsl:param name="str"/>
14113
+ <xsl:param name="writing-mode">lr-tb</xsl:param>
14114
+ <xsl:param name="reference-orientation">90</xsl:param>
14102
14115
  <xsl:if test="string-length($str) &gt; 0">
14103
- <fo:inline-container writing-mode="lr-tb" text-align="center" alignment-baseline="central" reference-orientation="90" width="1em" margin="0" padding="0" text-indent="0mm" last-line-end-indent="0mm" start-indent="0mm" end-indent="0mm">
14116
+ <fo:inline-container text-align="center" alignment-baseline="central" width="1em" margin="0" padding="0" text-indent="0mm" last-line-end-indent="0mm" start-indent="0mm" end-indent="0mm">
14117
+ <xsl:if test="normalize-space($writing-mode) != ''">
14118
+ <xsl:attribute name="writing-mode"><xsl:value-of select="$writing-mode"/></xsl:attribute>
14119
+ <xsl:attribute name="reference-orientation">90</xsl:attribute>
14120
+ </xsl:if>
14121
+ <xsl:variable name="char" select="substring($str,1,1)"/>
14122
+ <xsl:if test="normalize-space(java:matches(java:java.lang.String.new($char), concat('(', $regex_ja_spec, '{1,})'))) = 'true'">
14123
+ <xsl:attribute name="reference-orientation">0</xsl:attribute>
14124
+ </xsl:if>
14104
14125
  <fo:block-container width="1em">
14105
- <fo:block line-height="1em"><xsl:value-of select="substring($str,1,1)"/></fo:block>
14126
+ <fo:block line-height="1em"><xsl:value-of select="$char"/></fo:block>
14106
14127
  </fo:block-container>
14107
14128
  </fo:inline-container>
14108
14129
  <xsl:call-template name="insertVerticalChar">
14109
14130
  <xsl:with-param name="str" select="substring($str, 2)"/>
14131
+ <xsl:with-param name="writing-mode" select="$writing-mode"/>
14132
+ <xsl:with-param name="reference-orientation" select="$reference-orientation"/>
14110
14133
  </xsl:call-template>
14111
14134
  </xsl:if>
14112
14135
  </xsl:template>
@@ -80,7 +80,7 @@ module IsoDoc
80
80
  clause.nil? and return num
81
81
  num.increment(clause)
82
82
  @anchors[clause["id"]] = section_name_anchors(clause, num, lvl)
83
- i = Counter.new(0, prefix: "#{num.print}.")
83
+ i = Counter.new(0, prefix: num.print)
84
84
  clause.xpath(ns(NUMBERED_SUBCLAUSES)).each do |c|
85
85
  section_names1(c, i.increment(c).print, lvl + 1)
86
86
  end
@@ -109,7 +109,7 @@ module IsoDoc
109
109
 
110
110
  def section_names1(clause, num, level)
111
111
  @anchors[clause["id"]] = section_name1_anchors(clause, num, level)
112
- i = Counter.new(0, prefix: "#{num}.")
112
+ i = Counter.new(0, prefix: num)
113
113
  clause.xpath(ns(NUMBERED_SUBCLAUSES)).each do |c|
114
114
  section_names1(c, i.increment(c).print, level + 1)
115
115
  end
@@ -157,7 +157,7 @@ module IsoDoc
157
157
  num.to_s, 1)
158
158
  else
159
159
  prefix = @jcgm ? "" : "A"
160
- i = Counter.new(0, prefix: "#{prefix}#{num}.")
160
+ i = Counter.new(0, prefix: "#{prefix}#{num}")
161
161
  clause.xpath(ns(NUMBERED_SUBCLAUSES)).each do |c|
162
162
  annex_names1(c, i.increment(c).print, 2)
163
163
  end
@@ -193,7 +193,7 @@ module IsoDoc
193
193
 
194
194
  def annex_names1(clause, num, level)
195
195
  @anchors[clause["id"]] = annex_names1_anchors(num, level)
196
- i = Counter.new(0, prefix: "#{num}.")
196
+ i = Counter.new(0, prefix: num)
197
197
  clause.xpath(ns(NUMBERED_SUBCLAUSES)).each do |c|
198
198
  annex_names1(c, i.increment(c).print, level + 1)
199
199
  end
@@ -1,5 +1,5 @@
1
1
  module Metanorma
2
2
  module Bipm
3
- VERSION = "2.5.4".freeze
3
+ VERSION = "2.5.5".freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metanorma-bipm
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.5.4
4
+ version: 2.5.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-10-14 00:00:00.000000000 Z
11
+ date: 2024-10-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: metanorma-generic