metanorma-ogc 2.6.8 → 2.6.9

Sign up to get free protection for your applications and to get access to all the features.
@@ -245,7 +245,7 @@
245
245
 
246
246
  <xsl:for-each select="xalan:nodeset($updated_xml_with_pages)"> <!-- set context to preface/sections -->
247
247
 
248
- <xsl:for-each select=".//*[local-name() = 'page_sequence'][parent::*[local-name() = 'preface' or local-name() = 'boilerplate']][normalize-space() != '' or .//image or .//svg]">
248
+ <xsl:for-each select=".//*[local-name() = 'page_sequence'][parent::*[local-name() = 'preface' or local-name() = 'boilerplate']][normalize-space() != '' or .//*[local-name() = 'image'] or .//*[local-name() = 'svg']]">
249
249
 
250
250
  <!-- Copyright, Content, Foreword, etc. pages -->
251
251
  <fo:page-sequence master-reference="document" force-page-count="no-force">
@@ -278,7 +278,7 @@
278
278
  </fo:page-sequence>
279
279
  </xsl:for-each>
280
280
 
281
- <xsl:for-each select=".//*[local-name() = 'page_sequence'][not(parent::*[local-name() = 'preface' or local-name() = 'boilerplate'])][normalize-space() != '' or .//image or .//svg]">
281
+ <xsl:for-each select=".//*[local-name() = 'page_sequence'][not(parent::*[local-name() = 'preface' or local-name() = 'boilerplate'])][normalize-space() != '' or .//*[local-name() = 'image'] or .//*[local-name() = 'svg']]">
282
282
 
283
283
  <!-- Document Pages -->
284
284
  <fo:page-sequence master-reference="document" format="1" force-page-count="no-force">
@@ -4168,7 +4168,9 @@
4168
4168
  <fo:block role="SKIP">
4169
4169
 
4170
4170
  <xsl:if test="$isGenerateTableIF = 'true'">
4171
- <xsl:attribute name="id"><xsl:value-of select="@id"/></xsl:attribute>
4171
+
4172
+ <xsl:attribute name="id"><xsl:value-of select="@id"/></xsl:attribute>
4173
+
4172
4174
  </xsl:if>
4173
4175
 
4174
4176
  <xsl:apply-templates/>
@@ -5198,7 +5200,17 @@
5198
5200
  <xsl:call-template name="refine_dt-cell-style"/>
5199
5201
 
5200
5202
  <fo:block xsl:use-attribute-sets="dt-block-style" role="SKIP">
5201
- <xsl:copy-of select="@id"/>
5203
+
5204
+ <xsl:choose>
5205
+ <xsl:when test="$isGenerateTableIF = 'true'">
5206
+
5207
+ <xsl:copy-of select="@id"/>
5208
+
5209
+ </xsl:when>
5210
+ <xsl:otherwise>
5211
+ <xsl:copy-of select="@id"/>
5212
+ </xsl:otherwise>
5213
+ </xsl:choose>
5202
5214
 
5203
5215
  <xsl:if test="normalize-space($key_iso) = 'true'">
5204
5216
  <xsl:attribute name="margin-top">0</xsl:attribute>
@@ -5230,7 +5242,9 @@
5230
5242
  <fo:block role="SKIP">
5231
5243
 
5232
5244
  <xsl:if test="$isGenerateTableIF = 'true'">
5233
- <xsl:attribute name="id"><xsl:value-of select="@id"/></xsl:attribute>
5245
+
5246
+ <xsl:attribute name="id"><xsl:value-of select="@id"/></xsl:attribute>
5247
+
5234
5248
  </xsl:if>
5235
5249
 
5236
5250
  <xsl:choose>
@@ -6473,6 +6487,14 @@
6473
6487
  </xsl:for-each>
6474
6488
  </xsl:variable>
6475
6489
 
6490
+ <!-- <xsl:if test="$debug = 'true'">
6491
+ <redirect:write file="{generate-id()}_words_with_width_sorted.xml">
6492
+ <td_text><xsl:copy-of select="$td_text"/></td_text>
6493
+ <words_with_width><xsl:copy-of select="$words_with_width"/></words_with_width>
6494
+ <xsl:copy-of select="$words_with_width_sorted"/>
6495
+ </redirect:write>
6496
+ </xsl:if> -->
6497
+
6476
6498
  <xsl:variable name="words">
6477
6499
  <xsl:for-each select=".//*[local-name() = 'image' or local-name() = 'stem']">
6478
6500
  <word>
@@ -6598,6 +6620,7 @@
6598
6620
  <xsl:if test="ancestor::*[local-name() = 'tt']"><tag>tt</tag></xsl:if>
6599
6621
  <xsl:if test="ancestor::*[local-name() = 'sourcecode']"><tag>sourcecode</tag></xsl:if>
6600
6622
  <xsl:if test="ancestor::*[local-name() = 'keep-together_within-line']"><tag>keep-together_within-line</tag></xsl:if>
6623
+ <xsl:if test="ancestor::*[local-name() = 'font_en_vertical']"><tag>font_en_vertical</tag></xsl:if>
6601
6624
  </tags>
6602
6625
  </xsl:template>
6603
6626
  <!-- =============================== -->
@@ -7138,7 +7161,16 @@
7138
7161
  </xsl:when>
7139
7162
  <xsl:otherwise>
7140
7163
  <!-- output text from <link>text</link> -->
7141
- <xsl:apply-templates/>
7164
+ <xsl:choose>
7165
+ <xsl:when test="starts-with(., 'http://') or starts-with(., 'https://') or starts-with(., 'www.')">
7166
+ <xsl:call-template name="add-zero-spaces-link-java">
7167
+ <xsl:with-param name="text" select="."/>
7168
+ </xsl:call-template>
7169
+ </xsl:when>
7170
+ <xsl:otherwise>
7171
+ <xsl:apply-templates/>
7172
+ </xsl:otherwise>
7173
+ </xsl:choose>
7142
7174
  </xsl:otherwise>
7143
7175
  </xsl:choose>
7144
7176
  </fo:basic-link>
@@ -7777,16 +7809,29 @@
7777
7809
  <xsl:template name="getImageSrc">
7778
7810
  <xsl:choose>
7779
7811
  <xsl:when test="not(starts-with(@src, 'data:'))">
7812
+ <xsl:call-template name="getImageSrcExternal"/>
7813
+ </xsl:when>
7814
+ <xsl:otherwise><xsl:value-of select="@src"/></xsl:otherwise>
7815
+ </xsl:choose>
7816
+ </xsl:template>
7817
+
7818
+ <xsl:template name="getImageSrcExternal">
7819
+ <xsl:choose>
7820
+ <xsl:when test="@extracted = 'true'"> <!-- added in mn2pdf v1.97 -->
7821
+ <xsl:value-of select="@src"/>
7822
+ </xsl:when>
7823
+ <xsl:otherwise>
7824
+ <xsl:variable name="src_with_basepath" select="concat($basepath, @src)"/>
7825
+ <xsl:variable name="file_exists" select="normalize-space(java:exists(java:java.io.File.new($src_with_basepath)))"/>
7780
7826
  <xsl:choose>
7781
- <xsl:when test="@extracted = 'true'"> <!-- added in mn2pdf v1.97 -->
7782
- <xsl:value-of select="@src"/>
7827
+ <xsl:when test="$file_exists = 'true'">
7828
+ <xsl:value-of select="$src_with_basepath"/>
7783
7829
  </xsl:when>
7784
7830
  <xsl:otherwise>
7785
- <xsl:value-of select="concat($basepath, @src)"/>
7831
+ <xsl:value-of select="@src"/>
7786
7832
  </xsl:otherwise>
7787
7833
  </xsl:choose>
7788
- </xsl:when>
7789
- <xsl:otherwise><xsl:value-of select="@src"/></xsl:otherwise>
7834
+ </xsl:otherwise>
7790
7835
  </xsl:choose>
7791
7836
  </xsl:template>
7792
7837
 
@@ -7834,14 +7879,8 @@
7834
7879
  <xsl:value-of select="concat('url(file:///',$basepath, $src_png, ')')"/>
7835
7880
  </xsl:when>
7836
7881
  <xsl:when test="not(starts-with(@src, 'data:'))">
7837
- <xsl:choose>
7838
- <xsl:when test="@extracted = 'true'"> <!-- added in mn2pdf v1.97 -->
7839
- <xsl:value-of select="concat('url(file:///', @src, ')')"/>
7840
- </xsl:when>
7841
- <xsl:otherwise>
7842
- <xsl:value-of select="concat('url(file:///',$basepath, @src, ')')"/>
7843
- </xsl:otherwise>
7844
- </xsl:choose>
7882
+ <xsl:variable name="src_external"><xsl:call-template name="getImageSrcExternal"/></xsl:variable>
7883
+ <xsl:value-of select="concat('url(file:///', $src_external, ')')"/>
7845
7884
  </xsl:when>
7846
7885
  <xsl:otherwise>
7847
7886
  <xsl:value-of select="@src"/>
@@ -7862,16 +7901,8 @@
7862
7901
  </svg>
7863
7902
  </xsl:when>
7864
7903
  <xsl:when test="not(starts-with(@src, 'data:'))">
7865
- <xsl:variable name="src">
7866
- <xsl:choose>
7867
- <xsl:when test="@extracted = 'true'"> <!-- added in mn2pdf v1.97 -->
7868
- <xsl:value-of select="concat('url(file:///', @src, ')')"/>
7869
- </xsl:when>
7870
- <xsl:otherwise>
7871
- <xsl:value-of select="concat('url(file:///',$basepath, @src, ')')"/>
7872
- </xsl:otherwise>
7873
- </xsl:choose>
7874
- </xsl:variable>
7904
+ <xsl:variable name="src_external"><xsl:call-template name="getImageSrcExternal"/></xsl:variable>
7905
+ <xsl:variable name="src" select="concat('url(file:///', $src_external, ')')"/>
7875
7906
  <xsl:variable name="file" select="java:java.io.File.new(@src)"/>
7876
7907
  <xsl:variable name="bufferedImage" select="java:javax.imageio.ImageIO.read($file)"/>
7877
7908
  <xsl:variable name="width" select="java:getWidth($bufferedImage)"/>
@@ -11993,7 +12024,9 @@
11993
12024
  <xsl:template name="add_id">
11994
12025
  <xsl:if test="not(@id)">
11995
12026
  <!-- add @id - first element with @id plus '_element_name' -->
11996
- <xsl:attribute name="id"><xsl:value-of select="(.//*[@id])[1]/@id"/>_<xsl:value-of select="local-name()"/></xsl:attribute>
12027
+ <xsl:variable name="prefix_id_" select="(.//*[@id])[1]/@id"/>
12028
+ <xsl:variable name="prefix_id"><xsl:value-of select="$prefix_id_"/><xsl:if test="normalize-space($prefix_id_) = ''"><xsl:value-of select="generate-id()"/></xsl:if></xsl:variable>
12029
+ <xsl:attribute name="id"><xsl:value-of select="$prefix_id"/>_<xsl:value-of select="local-name()"/></xsl:attribute>
11997
12030
  </xsl:if>
11998
12031
  </xsl:template>
11999
12032
 
@@ -13298,6 +13331,7 @@
13298
13331
  <xsl:param name="formatted">false</xsl:param>
13299
13332
  <xsl:param name="lang"/>
13300
13333
  <xsl:param name="returnEmptyIfNotFound">false</xsl:param>
13334
+ <xsl:param name="bibdata_updated"/>
13301
13335
 
13302
13336
  <xsl:variable name="curr_lang">
13303
13337
  <xsl:choose>
@@ -13311,6 +13345,9 @@
13311
13345
 
13312
13346
  <xsl:variable name="data_value">
13313
13347
  <xsl:choose>
13348
+ <xsl:when test="$formatted = 'true' and string-length($bibdata_updated) != ''">
13349
+ <xsl:apply-templates select="xalan:nodeset($bibdata_updated)//*[local-name() = 'localized-string'][@key = $key and @language = $curr_lang]"/>
13350
+ </xsl:when>
13314
13351
  <xsl:when test="$formatted = 'true'">
13315
13352
  <xsl:apply-templates select="xalan:nodeset($bibdata)//*[local-name() = 'localized-string'][@key = $key and @language = $curr_lang]"/>
13316
13353
  </xsl:when>
@@ -13482,14 +13519,8 @@
13482
13519
  <xsl:value-of select="$src"/>
13483
13520
  </xsl:when>
13484
13521
  <xsl:otherwise>
13485
- <xsl:choose>
13486
- <xsl:when test="@extracted = 'true'"> <!-- added in mn2pdf v1.97 -->
13487
- <xsl:value-of select="concat('url(file:///', @src, ')')"/>
13488
- </xsl:when>
13489
- <xsl:otherwise>
13490
- <xsl:value-of select="concat('url(file:///',$basepath, $src, ')')"/>
13491
- </xsl:otherwise>
13492
- </xsl:choose>
13522
+ <xsl:variable name="src_external"><xsl:call-template name="getImageSrcExternal"/></xsl:variable>
13523
+ <xsl:value-of select="concat('url(file:///', $src_external, ')')"/>
13493
13524
  </xsl:otherwise>
13494
13525
  </xsl:choose>
13495
13526
  </xsl:template>
@@ -13511,15 +13542,23 @@
13511
13542
  <!-- END: insert cover page image -->
13512
13543
 
13513
13544
  <!-- https://github.com/metanorma/docs/blob/main/109.adoc -->
13545
+ <xsl:variable name="regex_ja_spec_half_width_">
13546
+ \u0028 <!-- U+0028 LEFT PARENTHESIS (() -->
13547
+ \u0029 <!-- U+0029 RIGHT PARENTHESIS ()) -->
13548
+ \u007B <!-- U+007B LEFT CURLY BRACKET ({) -->
13549
+ \u007D <!-- U+007D RIGHT CURLY BRACKET (}) -->
13550
+ \uFF62 <!-- U+FF62 HALFWIDTH LEFT CORNER BRACKET (「) -->
13551
+ \uFF63 <!-- U+FF63 HALFWIDTH RIGHT CORNER BRACKET (」) -->
13552
+ \u005B <!-- U+005B LEFT SQUARE BRACKET ([) -->
13553
+ \u005D <!-- U+005D RIGHT SQUARE BRACKET (]) -->
13554
+ </xsl:variable>
13555
+ <xsl:variable name="regex_ja_spec_half_width" select="translate(normalize-space($regex_ja_spec_half_width_), ' ', '')"/>
13514
13556
  <xsl:variable name="regex_ja_spec_">[
13515
13557
  <!-- Rotate 90° clockwise -->
13516
- \u0028 <!-- U+0028 LEFT PARENTHESIS (() -->
13558
+ <xsl:value-of select="$regex_ja_spec_half_width"/>
13517
13559
  \uFF08 <!-- U+FF08 FULLWIDTH LEFT PARENTHESIS (() -->
13518
- \u0029 <!-- U+0029 RIGHT PARENTHESIS ()) -->
13519
13560
  \uFF09 <!-- U+FF09 FULLWIDTH RIGHT PARENTHESIS ()) -->
13520
- \u007B <!-- U+007B LEFT CURLY BRACKET ({) -->
13521
13561
  \uFF5B <!-- U+FF5B FULLWIDTH LEFT CURLY BRACKET ({) -->
13522
- \u007D <!-- U+007D RIGHT CURLY BRACKET (}) -->
13523
13562
  \uFF5D <!-- U+FF5D FULLWIDTH RIGHT CURLY BRACKET (}) -->
13524
13563
  \u3014 <!-- U+3014 LEFT TORTOISE SHELL BRACKET (〔) -->
13525
13564
  \u3015 <!-- U+3015 RIGHT TORTOISE SHELL BRACKET (〕) -->
@@ -13527,21 +13566,16 @@
13527
13566
  \u3011 <!-- U+3011 RIGHT BLACK LENTICULAR BRACKET (】) -->
13528
13567
  \u300A <!-- U+300A LEFT DOUBLE ANGLE BRACKET (《) -->
13529
13568
  \u300B <!-- U+300B RIGHT DOUBLE ANGLE BRACKET (》) -->
13530
- \uFF62 <!-- U+FF62 HALFWIDTH LEFT CORNER BRACKET (「) -->
13531
13569
  \u300C <!-- U+300C LEFT CORNER BRACKET (「) -->
13532
- \uFF63 <!-- U+FF63 HALFWIDTH RIGHT CORNER BRACKET (」) -->
13533
13570
  \u300D <!-- U+300D RIGHT CORNER BRACKET (」) -->
13534
13571
  \u300E <!-- U+300E LEFT WHITE CORNER BRACKET (『) -->
13535
13572
  \u300F <!-- U+300F RIGHT WHITE CORNER BRACKET (』) -->
13536
- \u005B <!-- U+005B LEFT SQUARE BRACKET ([) -->
13537
13573
  \uFF3B <!-- U+FF3B FULLWIDTH LEFT SQUARE BRACKET ([) -->
13538
- \u005D <!-- U+005D RIGHT SQUARE BRACKET (]) -->
13539
13574
  \uFF3D <!-- U+FF3D FULLWIDTH RIGHT SQUARE BRACKET (]) -->
13540
13575
  \u3008 <!-- U+3008 LEFT ANGLE BRACKET (〈) -->
13541
13576
  \u3009 <!-- U+3009 RIGHT ANGLE BRACKET (〉) -->
13542
13577
  \u3016 <!-- U+3016 LEFT WHITE LENTICULAR BRACKET (〖) -->
13543
13578
  \u3017 <!-- U+3017 RIGHT WHITE LENTICULAR BRACKET (〗) -->
13544
-
13545
13579
  \u301A <!-- U+301A LEFT WHITE SQUARE BRACKET (〚) -->
13546
13580
  \u301B <!-- U+301B RIGHT WHITE SQUARE BRACKET (〛) -->
13547
13581
  \u301C <!-- U+301C WAVE DASH (〜) -->
@@ -13573,6 +13607,7 @@
13573
13607
  <xsl:variable name="regex_ja_spec"><xsl:value-of select="translate(normalize-space($regex_ja_spec_), ' ', '')"/></xsl:variable>
13574
13608
  <xsl:template name="insertVerticalChar">
13575
13609
  <xsl:param name="str"/>
13610
+ <xsl:param name="char_prev"/>
13576
13611
  <xsl:param name="writing-mode">lr-tb</xsl:param>
13577
13612
  <xsl:param name="reference-orientation">90</xsl:param>
13578
13613
  <xsl:param name="add_zero_width_space">false</xsl:param>
@@ -13582,53 +13617,99 @@
13582
13617
  </xsl:when>
13583
13618
  <xsl:otherwise>
13584
13619
  <xsl:if test="string-length($str) &gt; 0">
13585
- <xsl:variable name="horizontal_mode" select="normalize-space(ancestor::*[local-name() = 'span'][@class = 'horizontal'] and 1 = 1)"/>
13620
+
13621
+ <!-- <xsl:variable name="horizontal_mode" select="normalize-space(ancestor::*[local-name() = 'span'][@class = 'horizontal'] and 1 = 1)"/> -->
13586
13622
  <xsl:variable name="char" select="substring($str,1,1)"/>
13587
- <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">
13588
- <xsl:if test="normalize-space($writing-mode) != ''">
13589
- <xsl:attribute name="writing-mode"><xsl:value-of select="$writing-mode"/></xsl:attribute>
13590
- <xsl:attribute name="reference-orientation">90</xsl:attribute>
13591
- </xsl:if>
13592
- <xsl:if test="normalize-space(java:matches(java:java.lang.String.new($char), concat('(', $regex_ja_spec, '{1,})'))) = 'true'">
13593
- <xsl:attribute name="reference-orientation">0</xsl:attribute>
13594
- </xsl:if>
13595
- <xsl:if test="$char = '゜' or $char = '。' or $char = '﹒' or $char = '.'">
13596
- <!-- Rotate 180°:
13597
- U+309C KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK (゜)
13598
- U+3002 IDEOGRAPHIC FULL STOP (。)
13599
- U+FE52 SMALL FULL STOP (﹒)
13600
- U+FF0E FULLWIDTH FULL STOP ()
13601
- -->
13602
- <xsl:attribute name="reference-orientation">-90</xsl:attribute>
13603
- </xsl:if>
13604
- <fo:block-container width="1em">
13605
- <fo:block line-height="1em">
13606
- <xsl:choose>
13607
- <xsl:when test="$horizontal_mode = 'true'">
13608
- <xsl:value-of select="$str"/>
13609
- </xsl:when>
13610
- <xsl:otherwise>
13623
+ <xsl:variable name="char_next" select="substring($str,2,1)"/>
13624
+
13625
+ <xsl:variable name="char_half_width" select="normalize-space(java:matches(java:java.lang.String.new($char), concat('([', $regex_ja_spec_half_width, ']{1,})')))"/>
13626
+
13627
+ <xsl:choose>
13628
+ <xsl:when test="$char_half_width = 'true'">
13629
+ <fo:inline>
13630
+ <xsl:attribute name="baseline-shift">7%</xsl:attribute>
13631
+ <xsl:value-of select="$char"/>
13632
+ </fo:inline>
13633
+ </xsl:when>
13634
+ <xsl:otherwise>
13635
+ <!-- namespace-uri(ancestor::*[local-name() = 'title']) != '' to skip title from $contents -->
13636
+ <xsl:if test="namespace-uri(ancestor::*[local-name() = 'title']) != '' and ($char_prev = '' and ../preceding-sibling::node())">
13637
+ <fo:inline padding-left="1mm"><xsl:value-of select="$zero_width_space"/></fo:inline>
13638
+ </xsl:if>
13639
+ <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" role="SKIP" text-align-last="center">
13640
+ <xsl:if test="normalize-space($writing-mode) != ''">
13641
+ <xsl:attribute name="writing-mode"><xsl:value-of select="$writing-mode"/></xsl:attribute>
13642
+ <xsl:attribute name="reference-orientation">90</xsl:attribute>
13643
+ </xsl:if>
13644
+ <xsl:if test="normalize-space(java:matches(java:java.lang.String.new($char), concat('(', $regex_ja_spec, '{1,})'))) = 'true'">
13645
+ <xsl:attribute name="reference-orientation">0</xsl:attribute>
13646
+ </xsl:if>
13647
+ <xsl:if test="$char = '゜' or $char = '。' or $char = '﹒' or $char = '.'">
13648
+ <!-- Rotate 180°:
13649
+ U+309C KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK (゜)
13650
+ U+3002 IDEOGRAPHIC FULL STOP (。)
13651
+ U+FE52 SMALL FULL STOP (﹒)
13652
+ U+FF0E FULLWIDTH FULL STOP (.)
13653
+ -->
13654
+ <xsl:attribute name="reference-orientation">-90</xsl:attribute>
13655
+ </xsl:if>
13656
+ <fo:block-container width="1em" role="SKIP"><!-- border="0.5pt solid blue" -->
13657
+ <fo:block line-height="1em" role="SKIP">
13658
+ <!-- <xsl:choose>
13659
+ <xsl:when test="$horizontal_mode = 'true'">
13660
+ <xsl:value-of select="$str"/>
13661
+ </xsl:when>
13662
+ <xsl:otherwise>
13663
+ <xsl:value-of select="$char"/>
13664
+ </xsl:otherwise>
13665
+ </xsl:choose> -->
13611
13666
  <xsl:value-of select="$char"/>
13612
- </xsl:otherwise>
13613
- </xsl:choose>
13614
- </fo:block>
13615
- </fo:block-container>
13616
- </fo:inline-container>
13617
- <xsl:if test="$add_zero_width_space = 'true' and ($char = ',' or $char = '.' or $char = ' ' or $char = '·' or $char = ')' or $char = ']' or $char = '}')"><xsl:value-of select="$zero_width_space"/></xsl:if>
13618
-
13619
- <xsl:if test="$horizontal_mode = 'false'">
13620
- <xsl:call-template name="insertVerticalChar">
13621
- <xsl:with-param name="str" select="substring($str, 2)"/>
13622
- <xsl:with-param name="writing-mode" select="$writing-mode"/>
13623
- <xsl:with-param name="reference-orientation" select="$reference-orientation"/>
13624
- <xsl:with-param name="add_zero_width_space" select="$add_zero_width_space"/>
13625
- </xsl:call-template>
13626
- </xsl:if>
13667
+ </fo:block>
13668
+ </fo:block-container>
13669
+ </fo:inline-container>
13670
+ <xsl:if test="namespace-uri(ancestor::*[local-name() = 'title']) != '' and ($char_next != '' or ../following-sibling::node())">
13671
+ <fo:inline padding-left="1mm"><xsl:value-of select="$zero_width_space"/></fo:inline>
13672
+ </xsl:if>
13673
+ </xsl:otherwise>
13674
+ </xsl:choose>
13675
+
13676
+ <xsl:if test="$add_zero_width_space = 'true' and ($char = ',' or $char = '.' or $char = ' ' or $char = '·' or $char = ')' or $char = ']' or $char = '}' or $char = '/')"><xsl:value-of select="$zero_width_space"/></xsl:if>
13677
+ <!-- <xsl:if test="$horizontal_mode = 'false'"> -->
13678
+ <xsl:call-template name="insertVerticalChar">
13679
+ <xsl:with-param name="str" select="substring($str, 2)"/>
13680
+ <xsl:with-param name="char_prev" select="$char"/>
13681
+ <xsl:with-param name="writing-mode" select="$writing-mode"/>
13682
+ <xsl:with-param name="reference-orientation" select="$reference-orientation"/>
13683
+ <xsl:with-param name="add_zero_width_space" select="$add_zero_width_space"/>
13684
+ </xsl:call-template>
13685
+ <!-- </xsl:if> -->
13627
13686
  </xsl:if>
13628
13687
  </xsl:otherwise>
13629
13688
  </xsl:choose>
13630
13689
  </xsl:template>
13631
13690
 
13691
+ <xsl:template name="insertHorizontalChars">
13692
+ <xsl:param name="str"/>
13693
+ <xsl:param name="writing-mode">lr-tb</xsl:param>
13694
+ <xsl:param name="reference-orientation">90</xsl:param>
13695
+ <xsl:param name="add_zero_width_space">false</xsl:param>
13696
+ <xsl:choose>
13697
+ <xsl:otherwise>
13698
+ <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" role="SKIP">
13699
+ <xsl:if test="normalize-space($writing-mode) != ''">
13700
+ <xsl:attribute name="writing-mode"><xsl:value-of select="$writing-mode"/></xsl:attribute>
13701
+ <xsl:attribute name="reference-orientation">90</xsl:attribute>
13702
+ </xsl:if>
13703
+ <fo:block-container width="1em" role="SKIP"> <!-- border="0.5pt solid green" -->
13704
+ <fo:block line-height="1em" role="SKIP">
13705
+ <xsl:value-of select="$str"/>
13706
+ </fo:block>
13707
+ </fo:block-container>
13708
+ </fo:inline-container>
13709
+ </xsl:otherwise>
13710
+ </xsl:choose>
13711
+ </xsl:template>
13712
+
13632
13713
  <xsl:template name="number-to-words">
13633
13714
  <xsl:param name="number"/>
13634
13715
  <xsl:param name="first"/>
@@ -1,5 +1,5 @@
1
1
  module Metanorma
2
2
  module Ogc
3
- VERSION = "2.6.8".freeze
3
+ VERSION = "2.6.9".freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metanorma-ogc
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.6.8
4
+ version: 2.6.9
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-12-10 00:00:00.000000000 Z
11
+ date: 2024-12-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: iso-639