metanorma-csa 2.1.12 → 2.2.0

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: 2ed7577204aa05f248716397889b7d00a083adc256eab0398ca263f074c3b004
4
- data.tar.gz: cd1352318dea593aebecc9fe9c70e23634e2186c0147690d810b055cc03ab617
3
+ metadata.gz: ad12d8a38ab08e75aefc9fb672d35b9e363980d1f71a61ae9b38c5af9e42fc4c
4
+ data.tar.gz: 054c0100481db949965516221c1a7ae499d6b612461173c67f9ab133b34a885e
5
5
  SHA512:
6
- metadata.gz: c224a58107249bbba5a6b8c42ffdd5a9ecdf0d706ee4edf39075d461dd783f5af879d8fbcebb206bb0220817e66f0ba496d203713363ad7f97edc893775a1318
7
- data.tar.gz: 8970cef3f0f992119692ea783b234cd1b92c9a7a05fef7fa1a9ef526f5aced6465585c5e522ad34d29ed49aae2c1e1751ede08206c7b71c3b7bb04b4077d387b
6
+ metadata.gz: eaa7d0cd126bb5b61ece5c2c625ba1c50460f085eda890ce4e68886ea8e1a8bf39188e4718340fceb65367fd312f4d60820b18ec197090e307142f95bdcc1ff2
7
+ data.tar.gz: ce4a488caecc3d2620c88ed0b78c0994234e53544b85ada7e3e7704b62d162522f6d3d539263e50cb33cd9c3d091ce74a8c11ff4f3f9deec538bea96a1912873
data/.gitignore CHANGED
@@ -9,5 +9,4 @@
9
9
 
10
10
  .rubocop-https--*
11
11
 
12
- /Gemfile.devel
13
12
  /Gemfile.lock
@@ -561,6 +561,8 @@
561
561
  <xsl:text>iVBORw0KGgoAAAANSUhEUgAAASEAAAEhCAYAAAAwHRYbAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA3BpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMDE0IDc5LjE1Njc5NywgMjAxNC8wOC8yMC0wOTo1MzowMiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDplYWRhN2RlNC04YzAyLTQ1N2UtYjUwNy0zNGYzY2RjNWE2ZGQiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MDUyNzBENDc3NjVCMTFFQTlDMDhGMEI2ODhENjUxQkIiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MDUyNzBENDY3NjVCMTFFQTlDMDhGMEI2ODhENjUxQkIiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgSW5EZXNpZ24gMTQuMCAoTWFjaW50b3NoKSI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ1dWlkOmZiZjFiODZmLTIzMjMtM2U0OS1hMDMzLTVlOGQxYThlNmI1YiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmlkOjFlMzVjZTE3LWU5NzAtNDQ1OS05ZjI0LTM1NzcwZWYzMjNjMiIvPiA8L3Jk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</xsl:text>
562
562
  </xsl:variable>
563
563
 
564
+ <xsl:strip-space elements="csa:xref"/>
565
+
564
566
  <!-- external parameters -->
565
567
 
566
568
  <xsl:param name="svg_images"/> <!-- svg images array -->
@@ -979,6 +981,15 @@
979
981
 
980
982
  </xsl:attribute-set>
981
983
 
984
+ <xsl:attribute-set name="pre-style">
985
+ <xsl:attribute name="font-family">Courier New, <xsl:value-of select="$font_noto_sans_mono"/></xsl:attribute>
986
+ <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
987
+
988
+ <xsl:attribute name="font-family"><xsl:value-of select="$font_noto_sans_mono"/></xsl:attribute>
989
+ <xsl:attribute name="line-height">113%</xsl:attribute>
990
+
991
+ </xsl:attribute-set>
992
+
982
993
  <xsl:attribute-set name="permission-style">
983
994
 
984
995
  </xsl:attribute-set>
@@ -1939,17 +1950,22 @@
1939
1950
  </xsl:for-each>
1940
1951
  </xsl:template>
1941
1952
 
1953
+ <xsl:variable name="regex_standard_reference">([A-Z]{2,}(/[A-Z]{2,})* \d+(-\d+)*(:\d{4})?)</xsl:variable>
1942
1954
  <xsl:variable name="tag_fo_inline_keep-together_within-line_open">###fo:inline keep-together_within-line###</xsl:variable>
1943
1955
  <xsl:variable name="tag_fo_inline_keep-together_within-line_close">###/fo:inline keep-together_within-line###</xsl:variable>
1944
1956
  <xsl:template match="text()" name="text">
1945
1957
 
1946
- <xsl:variable name="regex_standard_reference">([A-Z]{2,}(/[A-Z]{2,})* \d+(-\d+)*(:\d{4})?)</xsl:variable>
1947
- <xsl:variable name="text" select="java:replaceAll(java:java.lang.String.new(.),$regex_standard_reference,concat($tag_fo_inline_keep-together_within-line_open,'$1',$tag_fo_inline_keep-together_within-line_close))"/>
1948
- <xsl:call-template name="replace_fo_inline_tags">
1949
- <xsl:with-param name="tag_open" select="$tag_fo_inline_keep-together_within-line_open"/>
1950
- <xsl:with-param name="tag_close" select="$tag_fo_inline_keep-together_within-line_close"/>
1951
- <xsl:with-param name="text" select="$text"/>
1952
- </xsl:call-template>
1958
+ <xsl:choose>
1959
+ <xsl:when test="ancestor::*[local-name() = 'table']"><xsl:value-of select="."/></xsl:when>
1960
+ <xsl:otherwise>
1961
+ <xsl:variable name="text" select="java:replaceAll(java:java.lang.String.new(.),$regex_standard_reference,concat($tag_fo_inline_keep-together_within-line_open,'$1',$tag_fo_inline_keep-together_within-line_close))"/>
1962
+ <xsl:call-template name="replace_fo_inline_tags">
1963
+ <xsl:with-param name="tag_open" select="$tag_fo_inline_keep-together_within-line_open"/>
1964
+ <xsl:with-param name="tag_close" select="$tag_fo_inline_keep-together_within-line_close"/>
1965
+ <xsl:with-param name="text" select="$text"/>
1966
+ </xsl:call-template>
1967
+ </xsl:otherwise>
1968
+ </xsl:choose>
1953
1969
 
1954
1970
  </xsl:template>
1955
1971
 
@@ -2320,7 +2336,7 @@
2320
2336
 
2321
2337
  <!-- centered table when table name is centered (see table-name-style) -->
2322
2338
 
2323
- <fo:table table-layout="fixed" width="100%">
2339
+ <fo:table table-layout="fixed" width="100%" xsl:use-attribute-sets="table-container-style">
2324
2340
  <fo:table-column column-width="proportional-column-width(1)"/>
2325
2341
  <fo:table-column column-width="{@width}"/>
2326
2342
  <fo:table-column column-width="proportional-column-width(1)"/>
@@ -2973,7 +2989,7 @@
2973
2989
  <xsl:template match="*[local-name()='tr']">
2974
2990
  <fo:table-row xsl:use-attribute-sets="table-body-row-style">
2975
2991
 
2976
- <xsl:if test="*[local-name() = 'th']">
2992
+ <xsl:if test="count(*) = count(*[local-name() = 'th'])"> <!-- row contains 'th' only -->
2977
2993
  <xsl:attribute name="keep-with-next">always</xsl:attribute>
2978
2994
  </xsl:if>
2979
2995
 
@@ -3135,6 +3151,10 @@
3135
3151
  <xsl:variable name="footnote_inline">
3136
3152
  <fo:inline xsl:use-attribute-sets="fn-num-style">
3137
3153
 
3154
+ <xsl:if test="following-sibling::*[1][local-name() = 'fn']">
3155
+ <xsl:attribute name="padding-right">0.5mm</xsl:attribute>
3156
+ </xsl:if>
3157
+
3138
3158
  <fo:basic-link internal-destination="{$ref_id}" fox:alt-text="footnote {$current_fn_number}">
3139
3159
  <xsl:value-of select="$current_fn_number_text"/>
3140
3160
  </fo:basic-link>
@@ -3932,7 +3952,8 @@
3932
3952
  <xsl:copy-of select="node()"/>
3933
3953
  </td>
3934
3954
  <td>
3935
- <xsl:copy-of select="following-sibling::*[local-name()='dd'][1]/node()[not(local-name() = 'dl')]"/>
3955
+ <!-- <xsl:copy-of select="following-sibling::*[local-name()='dd'][1]/node()[not(local-name() = 'dl')]"/> -->
3956
+ <xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]/node()[not(local-name() = 'dl')]" mode="dl_if"/>
3936
3957
  <!-- get paragraphs from nested 'dl' -->
3937
3958
  <xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]/*[local-name() = 'dl']" mode="dl_if_nested"/>
3938
3959
  </td>
@@ -3940,6 +3961,53 @@
3940
3961
  </xsl:template>
3941
3962
  <xsl:template match="*[local-name()='dd']" mode="dl_if"/>
3942
3963
 
3964
+ <xsl:template match="*" mode="dl_if">
3965
+ <xsl:copy-of select="."/>
3966
+ </xsl:template>
3967
+
3968
+ <xsl:template match="*[local-name() = 'p']" mode="dl_if">
3969
+ <xsl:param name="indent"/>
3970
+ <p>
3971
+ <xsl:copy-of select="@*"/>
3972
+ <xsl:value-of select="$indent"/>
3973
+ <xsl:copy-of select="node()"/>
3974
+ </p>
3975
+
3976
+ </xsl:template>
3977
+
3978
+ <xsl:template match="*[local-name() = 'ul' or local-name() = 'ol']" mode="dl_if">
3979
+ <xsl:variable name="list_rendered_">
3980
+ <xsl:apply-templates select="."/>
3981
+ </xsl:variable>
3982
+ <xsl:variable name="list_rendered" select="xalan:nodeset($list_rendered_)"/>
3983
+
3984
+ <xsl:variable name="indent">
3985
+ <xsl:for-each select="($list_rendered//fo:block[not(.//fo:block)])[1]">
3986
+ <xsl:apply-templates select="ancestor::*[@provisional-distance-between-starts]/@provisional-distance-between-starts" mode="dl_if"/>
3987
+ </xsl:for-each>
3988
+ </xsl:variable>
3989
+
3990
+ <xsl:apply-templates mode="dl_if">
3991
+ <xsl:with-param name="indent" select="$indent"/>
3992
+ </xsl:apply-templates>
3993
+ </xsl:template>
3994
+
3995
+ <xsl:template match="*[local-name() = 'li']" mode="dl_if">
3996
+ <xsl:param name="indent"/>
3997
+ <xsl:apply-templates mode="dl_if">
3998
+ <xsl:with-param name="indent" select="$indent"/>
3999
+ </xsl:apply-templates>
4000
+ </xsl:template>
4001
+
4002
+ <xsl:template match="@provisional-distance-between-starts" mode="dl_if">
4003
+ <xsl:variable name="value" select="round(substring-before(.,'mm'))"/>
4004
+ <!-- emulate left indent for list item -->
4005
+ <xsl:call-template name="repeat">
4006
+ <xsl:with-param name="char" select="'x'"/>
4007
+ <xsl:with-param name="count" select="$value"/>
4008
+ </xsl:call-template>
4009
+ </xsl:template>
4010
+
3943
4011
  <xsl:template match="*[local-name()='dl']" mode="dl_if_nested">
3944
4012
  <xsl:for-each select="*[local-name() = 'dt']">
3945
4013
  <p>
@@ -4237,6 +4305,23 @@
4237
4305
  <xsl:apply-templates/>
4238
4306
  </xsl:template>
4239
4307
 
4308
+ <!-- Don't break standard's numbers -->
4309
+ <!-- Example : <span class="stdpublisher">ISO</span> <span class="stddocNumber">10303</span>-<span class="stddocPartNumber">1</span>:<span class="stdyear">1994</span> -->
4310
+ <xsl:template match="*[local-name() = 'span'][@class = 'stdpublisher' or @class = 'stddocNumber' or @class = 'stddocPartNumber' or @class = 'stdyear']" priority="2">
4311
+ <xsl:choose>
4312
+ <xsl:when test="ancestor::*[local-name() = 'table']"><xsl:apply-templates/></xsl:when>
4313
+ <xsl:when test="following-sibling::*[2][local-name() = 'span'][@class = 'stdpublisher' or @class = 'stddocNumber' or @class = 'stddocPartNumber' or @class = 'stdyear']">
4314
+ <fo:inline keep-with-next.within-line="always"><xsl:apply-templates/></fo:inline>
4315
+ </xsl:when>
4316
+ <xsl:otherwise>
4317
+ <xsl:apply-templates/>
4318
+ </xsl:otherwise>
4319
+ </xsl:choose>
4320
+ </xsl:template>
4321
+ <xsl:template match="text()[not(ancestor::*[local-name() = 'table']) and preceding-sibling::*[1][local-name() = 'span'][@class = 'stdpublisher' or @class = 'stddocNumber' or @class = 'stddocPartNumber' or @class = 'stdyear'] and following-sibling::*[1][local-name() = 'span'][@class = 'stdpublisher' or @class = 'stddocNumber' or @class = 'stddocPartNumber' or @class = 'stdyear']]" priority="2">
4322
+ <fo:inline keep-with-next.within-line="always"><xsl:value-of select="."/></fo:inline>
4323
+ </xsl:template>
4324
+
4240
4325
  <!-- ========================= -->
4241
4326
  <!-- END Rich text formatting -->
4242
4327
  <!-- ========================= -->
@@ -4335,6 +4420,7 @@
4335
4420
  </word>
4336
4421
  <xsl:call-template name="tokenize_with_tags">
4337
4422
  <xsl:with-param name="text" select="substring-after($text, $separator)"/>
4423
+ <xsl:with-param name="tags" select="$tags"/>
4338
4424
  </xsl:call-template>
4339
4425
  </xsl:otherwise>
4340
4426
  </xsl:choose>
@@ -4374,8 +4460,18 @@
4374
4460
 
4375
4461
  <xsl:template name="add-zero-spaces-java">
4376
4462
  <xsl:param name="text" select="."/>
4377
- <!-- add zero-width space (#x200B) after characters: dash, dot, colon, equal, underscore, em dash, thin space -->
4378
- <xsl:value-of select="java:replaceAll(java:java.lang.String.new($text),'(-|\.|:|=|_|—| )','$1​')"/>
4463
+ <!-- add zero-width space (#x200B) after characters: dash, dot, colon, equal, underscore, em dash, thin space, arrow right -->
4464
+ <xsl:variable name="text1" select="java:replaceAll(java:java.lang.String.new($text),'(-|\.|:|=|_|—| |→)','$1​')"/>
4465
+ <!-- add zero-width space (#x200B) after characters: 'great than' -->
4466
+ <xsl:variable name="text2" select="java:replaceAll(java:java.lang.String.new($text1), '(\u003e)(?!\u003e)', '$1​')"/><!-- negative lookahead: 'great than' not followed by 'great than' -->
4467
+ <!-- add zero-width space (#x200B) before characters: 'less than' -->
4468
+ <xsl:variable name="text3" select="java:replaceAll(java:java.lang.String.new($text2), '(?&lt;!\u003c)(\u003c)', '​$1')"/> <!-- (?<!\u003c)(\u003c) --> <!-- negative lookbehind: 'less than' not preceeded by 'less than' -->
4469
+ <!-- add zero-width space (#x200B) before character: { -->
4470
+ <xsl:variable name="text4" select="java:replaceAll(java:java.lang.String.new($text3), '(?&lt;!\W)(\{)', '​$1')"/> <!-- negative lookbehind: '{' not preceeded by 'punctuation char' -->
4471
+ <!-- add zero-width space (#x200B) after character: , -->
4472
+ <xsl:variable name="text5" select="java:replaceAll(java:java.lang.String.new($text4), '(\,)(?!\d)', '$1​')"/> <!-- negative lookahead: ',' not followed by digit -->
4473
+
4474
+ <xsl:value-of select="$text5"/>
4379
4475
  </xsl:template>
4380
4476
 
4381
4477
  <xsl:template name="add-zero-spaces-link-java">
@@ -4521,7 +4617,7 @@
4521
4617
  </xsl:copy>
4522
4618
  </xsl:template>
4523
4619
 
4524
- <xsl:template match="*[local-name()='th' or local-name() = 'td'][not(*[local-name()='br']) and not(*[local-name()='p'])]" mode="table-without-br">
4620
+ <xsl:template match="*[local-name()='th' or local-name() = 'td'][not(*[local-name()='br']) and not(*[local-name()='p']) and not(*[local-name()='sourcecode'])]" mode="table-without-br">
4525
4621
  <xsl:copy>
4526
4622
  <xsl:copy-of select="@*"/>
4527
4623
  <p>
@@ -4569,6 +4665,28 @@
4569
4665
  </xsl:for-each>
4570
4666
  </xsl:template>
4571
4667
 
4668
+ <xsl:template match="*[local-name()='th' or local-name()='td']/*[local-name() = 'sourcecode']" mode="table-without-br">
4669
+ <xsl:apply-templates mode="table-without-br"/>
4670
+ </xsl:template>
4671
+
4672
+ <xsl:template match="*[local-name()='th' or local-name()='td']/*[local-name() = 'sourcecode']/text()[contains(., '&#13;') or contains(., '&#10;')]" mode="table-without-br">
4673
+
4674
+ <xsl:variable name="sep">###SOURCECODE_NEWLINE###</xsl:variable>
4675
+ <xsl:variable name="sourcecode_text" select="java:replaceAll(java:java.lang.String.new(.),'(&#13;&#10;|&#13;|&#10;)', $sep)"/>
4676
+ <xsl:variable name="items">
4677
+ <xsl:call-template name="split">
4678
+ <xsl:with-param name="pText" select="$sourcecode_text"/>
4679
+ <xsl:with-param name="sep" select="$sep"/>
4680
+ <xsl:with-param name="normalize-space">false</xsl:with-param>
4681
+ </xsl:call-template>
4682
+ </xsl:variable>
4683
+ <xsl:for-each select="xalan:nodeset($items)/*">
4684
+ <p>
4685
+ <sourcecode><xsl:copy-of select="node()"/></sourcecode>
4686
+ </p>
4687
+ </xsl:for-each>
4688
+ </xsl:template>
4689
+
4572
4690
  <!-- remove redundant white spaces -->
4573
4691
  <xsl:template match="text()[not(ancestor::*[local-name() = 'sourcecode'])]" mode="table-without-br">
4574
4692
  <xsl:variable name="text" select="translate(.,'&#9;&#10;&#13;','')"/>
@@ -4599,7 +4717,7 @@
4599
4717
  <xsl:choose>
4600
4718
  <xsl:when test="@colspan">
4601
4719
  <xsl:variable name="td">
4602
- <xsl:element name="td">
4720
+ <xsl:element name="{local-name()}">
4603
4721
  <xsl:attribute name="divide"><xsl:value-of select="@colspan"/></xsl:attribute>
4604
4722
  <xsl:if test="local-name()='th'">
4605
4723
  <xsl:attribute name="font-weight">bold</xsl:attribute>
@@ -4614,7 +4732,7 @@
4614
4732
  </xsl:call-template>
4615
4733
  </xsl:when>
4616
4734
  <xsl:otherwise>
4617
- <xsl:element name="td">
4735
+ <xsl:element name="{local-name()}">
4618
4736
  <xsl:apply-templates select="@*" mode="simple-table-colspan"/>
4619
4737
  <xsl:if test="local-name()='th'">
4620
4738
  <xsl:attribute name="font-weight">bold</xsl:attribute>
@@ -4681,7 +4799,7 @@
4681
4799
  <xsl:variable name="currentRow" select="."/>
4682
4800
 
4683
4801
  <xsl:variable name="normalizedTDs">
4684
- <xsl:for-each select="xalan:nodeset($previousRow)//td">
4802
+ <xsl:for-each select="xalan:nodeset($previousRow)//*[self::td or self::th]">
4685
4803
  <xsl:choose>
4686
4804
  <xsl:when test="@rowspan &gt; 1">
4687
4805
  <xsl:copy>
@@ -4693,7 +4811,7 @@
4693
4811
  </xsl:copy>
4694
4812
  </xsl:when>
4695
4813
  <xsl:otherwise>
4696
- <xsl:copy-of select="$currentRow/td[1 + count(current()/preceding-sibling::td[not(@rowspan) or (@rowspan = 1)])]"/>
4814
+ <xsl:copy-of select="$currentRow/*[self::td or self::th][1 + count(current()/preceding-sibling::*[self::td or self::th][not(@rowspan) or (@rowspan = 1)])]"/>
4697
4815
  </xsl:otherwise>
4698
4816
  </xsl:choose>
4699
4817
  </xsl:for-each>
@@ -4879,6 +4997,7 @@
4879
4997
  <xsl:if test="ancestor::*[local-name() = 'sub']"><tag>sub</tag></xsl:if>
4880
4998
  <xsl:if test="ancestor::*[local-name() = 'sup']"><tag>sup</tag></xsl:if>
4881
4999
  <xsl:if test="ancestor::*[local-name() = 'tt']"><tag>tt</tag></xsl:if>
5000
+ <xsl:if test="ancestor::*[local-name() = 'sourcecode']"><tag>sourcecode</tag></xsl:if>
4882
5001
  <xsl:if test="ancestor::*[local-name() = 'keep-together_within-line']"><tag>keep-together_within-line</tag></xsl:if>
4883
5002
  </tags>
4884
5003
  </xsl:template>
@@ -5867,6 +5986,31 @@
5867
5986
  <xsl:apply-templates mode="svg_update"/>
5868
5987
  </xsl:copy>
5869
5988
  </xsl:template>
5989
+
5990
+ <!-- regex for 'display: inline-block;' -->
5991
+ <xsl:variable name="regex_svg_style_notsupported">display(\s|\h)*:(\s|\h)*inline-block(\s|\h)*;</xsl:variable>
5992
+ <xsl:template match="*[local-name() = 'svg']//*[local-name() = 'style']/text()" mode="svg_update">
5993
+ <xsl:value-of select="java:replaceAll(java:java.lang.String.new(.), $regex_svg_style_notsupported, '')"/>
5994
+ </xsl:template>
5995
+
5996
+ <!-- replace
5997
+ stroke="rgba(r, g, b, alpha)" to
5998
+ stroke="rgb(r,g,b)" stroke-opacity="alpha", and
5999
+ fill="rgba(r, g, b, alpha)" to
6000
+ fill="rgb(r,g,b)" fill-opacity="alpha" -->
6001
+ <xsl:template match="@*[local-name() = 'stroke' or local-name() = 'fill'][starts-with(normalize-space(.), 'rgba')]" mode="svg_update">
6002
+ <xsl:variable name="components_">
6003
+ <xsl:call-template name="split">
6004
+ <xsl:with-param name="pText" select="substring-before(substring-after(., '('), ')')"/>
6005
+ <xsl:with-param name="sep" select="','"/>
6006
+ </xsl:call-template>
6007
+ </xsl:variable>
6008
+ <xsl:variable name="components" select="xalan:nodeset($components_)"/>
6009
+ <xsl:variable name="att_name" select="local-name()"/>
6010
+ <xsl:attribute name="{$att_name}"><xsl:value-of select="concat('rgb(', $components/item[1], ',', $components/item[2], ',', $components/item[3], ')')"/></xsl:attribute>
6011
+ <xsl:attribute name="{$att_name}-opacity"><xsl:value-of select="$components/item[4]"/></xsl:attribute>
6012
+ </xsl:template>
6013
+
5870
6014
  <!-- ============== -->
5871
6015
  <!-- END: svg_update -->
5872
6016
  <!-- ============== -->
@@ -6500,44 +6644,22 @@
6500
6644
  <xsl:apply-templates mode="contents_item"/>
6501
6645
  </xsl:template>
6502
6646
 
6503
- <!-- ====== -->
6504
- <!-- sourcecode -->
6505
- <!-- ====== -->
6647
+ <!-- =============== -->
6648
+ <!-- sourcecode -->
6649
+ <!-- =============== -->
6506
6650
  <xsl:template match="*[local-name()='sourcecode']" name="sourcecode">
6507
6651
 
6508
- <fo:block-container xsl:use-attribute-sets="sourcecode-container-style">
6509
-
6510
- <xsl:if test="not(ancestor::*[local-name() = 'li']) or ancestor::*[local-name() = 'example']">
6511
- <xsl:attribute name="margin-left">0mm</xsl:attribute>
6512
- </xsl:if>
6513
-
6514
- <xsl:if test="ancestor::*[local-name() = 'example']">
6515
- <xsl:attribute name="margin-right">0mm</xsl:attribute>
6516
- </xsl:if>
6517
-
6518
- <xsl:copy-of select="@id"/>
6519
-
6520
- <xsl:if test="parent::*[local-name() = 'note']">
6521
- <xsl:attribute name="margin-left">
6522
- <xsl:choose>
6523
- <xsl:when test="not(ancestor::*[local-name() = 'table'])"><xsl:value-of select="$note-body-indent"/></xsl:when>
6524
- <xsl:otherwise><xsl:value-of select="$note-body-indent-table"/></xsl:otherwise>
6525
- </xsl:choose>
6526
- </xsl:attribute>
6527
-
6528
- </xsl:if>
6529
- <fo:block-container margin-left="0mm">
6530
-
6531
- <fo:block xsl:use-attribute-sets="sourcecode-style">
6532
- <xsl:variable name="_font-size">
6533
- 10
6652
+ <xsl:variable name="sourcecode_attributes">
6653
+ <xsl:element name="sourcecode_attributes" use-attribute-sets="sourcecode-style">
6654
+ <xsl:variable name="_font-size">
6655
+ 10
6534
6656
 
6535
6657
 
6536
- <!-- 9 -->
6658
+ <!-- 9 -->
6537
6659
 
6538
- <!-- <xsl:if test="$namespace = 'ieee'">
6539
- <xsl:if test="$current_template = 'standard'">8</xsl:if>
6540
- </xsl:if> -->
6660
+ <!-- <xsl:if test="$namespace = 'ieee'">
6661
+ <xsl:if test="$current_template = 'standard'">8</xsl:if>
6662
+ </xsl:if> -->
6541
6663
 
6542
6664
  </xsl:variable>
6543
6665
 
@@ -6552,14 +6674,60 @@
6552
6674
  </xsl:choose>
6553
6675
  </xsl:attribute>
6554
6676
  </xsl:if>
6677
+ </xsl:element>
6678
+ </xsl:variable>
6555
6679
 
6680
+ <xsl:choose>
6681
+ <xsl:when test="$isGenerateTableIF = 'true' and (ancestor::*[local-name() = 'td'] or ancestor::*[local-name() = 'th'])">
6682
+ <xsl:for-each select="xalan:nodeset($sourcecode_attributes)/sourcecode_attributes/@*">
6683
+ <xsl:attribute name="{local-name()}">
6684
+ <xsl:value-of select="."/>
6685
+ </xsl:attribute>
6686
+ </xsl:for-each>
6556
6687
  <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
6557
- </fo:block>
6688
+ </xsl:when>
6558
6689
 
6559
- <xsl:apply-templates select="*[local-name()='name']"/> <!-- show sourcecode's name AFTER content -->
6690
+ <xsl:otherwise>
6691
+ <fo:block-container xsl:use-attribute-sets="sourcecode-container-style">
6560
6692
 
6561
- </fo:block-container>
6562
- </fo:block-container>
6693
+ <xsl:if test="not(ancestor::*[local-name() = 'li']) or ancestor::*[local-name() = 'example']">
6694
+ <xsl:attribute name="margin-left">0mm</xsl:attribute>
6695
+ </xsl:if>
6696
+
6697
+ <xsl:if test="ancestor::*[local-name() = 'example']">
6698
+ <xsl:attribute name="margin-right">0mm</xsl:attribute>
6699
+ </xsl:if>
6700
+
6701
+ <xsl:copy-of select="@id"/>
6702
+
6703
+ <xsl:if test="parent::*[local-name() = 'note']">
6704
+ <xsl:attribute name="margin-left">
6705
+ <xsl:choose>
6706
+ <xsl:when test="not(ancestor::*[local-name() = 'table'])"><xsl:value-of select="$note-body-indent"/></xsl:when>
6707
+ <xsl:otherwise><xsl:value-of select="$note-body-indent-table"/></xsl:otherwise>
6708
+ </xsl:choose>
6709
+ </xsl:attribute>
6710
+
6711
+ </xsl:if>
6712
+ <fo:block-container margin-left="0mm">
6713
+
6714
+ <fo:block xsl:use-attribute-sets="sourcecode-style">
6715
+
6716
+ <xsl:for-each select="xalan:nodeset($sourcecode_attributes)/sourcecode_attributes/@*">
6717
+ <xsl:attribute name="{local-name()}">
6718
+ <xsl:value-of select="."/>
6719
+ </xsl:attribute>
6720
+ </xsl:for-each>
6721
+
6722
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
6723
+ </fo:block>
6724
+
6725
+ <xsl:apply-templates select="*[local-name()='name']"/> <!-- show sourcecode's name AFTER content -->
6726
+
6727
+ </fo:block-container>
6728
+ </fo:block-container>
6729
+ </xsl:otherwise>
6730
+ </xsl:choose>
6563
6731
  </xsl:template>
6564
6732
 
6565
6733
  <xsl:template match="*[local-name()='sourcecode']/text()" priority="2">
@@ -6801,8 +6969,22 @@
6801
6969
  </fo:block>
6802
6970
  </xsl:if>
6803
6971
  </xsl:template>
6804
- <!-- ====== -->
6805
- <!-- ====== -->
6972
+ <!-- =============== -->
6973
+ <!-- END sourcecode -->
6974
+ <!-- =============== -->
6975
+
6976
+ <!-- =============== -->
6977
+ <!-- pre -->
6978
+ <!-- =============== -->
6979
+ <xsl:template match="*[local-name()='pre']" name="pre">
6980
+ <fo:block xsl:use-attribute-sets="pre-style">
6981
+ <xsl:copy-of select="@id"/>
6982
+ <xsl:apply-templates/>
6983
+ </fo:block>
6984
+ </xsl:template>
6985
+ <!-- =============== -->
6986
+ <!-- pre -->
6987
+ <!-- =============== -->
6806
6988
 
6807
6989
  <!-- ========== -->
6808
6990
  <!-- permission -->
@@ -8759,7 +8941,11 @@
8759
8941
  <!-- ===================================== -->
8760
8942
  <!-- Update xml -->
8761
8943
  <!-- ===================================== -->
8762
- <!-- STEP1: Re-order elements in 'preface', 'sections' based on @displayorder -->
8944
+ <!-- =========================================================================== -->
8945
+ <!-- STEP1: -->
8946
+ <!-- - Re-order elements in 'preface', 'sections' based on @displayorder -->
8947
+ <!-- - Ignore 'span' without style -->
8948
+ <!-- =========================================================================== -->
8763
8949
  <xsl:template match="@*|node()" mode="update_xml_step1">
8764
8950
  <xsl:copy>
8765
8951
  <xsl:apply-templates select="@*|node()" mode="update_xml_step1"/>
@@ -8841,7 +9027,8 @@
8841
9027
  </xsl:copy>
8842
9028
  </xsl:template>
8843
9029
 
8844
- <xsl:template match="*[local-name() = 'span'][@style]" mode="update_xml_step1" priority="2">
9030
+ <!-- Example with 'class': <span class="stdpublisher">ISO</span> <span class="stddocNumber">10303</span>-<span class="stddocPartNumber">1</span>:<span class="stdyear">1994</span> -->
9031
+ <xsl:template match="*[local-name() = 'span'][@style or @class = 'stdpublisher' or @class = 'stddocNumber' or @class = 'stddocPartNumber' or @class = 'stdyear']" mode="update_xml_step1" priority="2">
8845
9032
  <xsl:copy>
8846
9033
  <xsl:copy-of select="@*"/>
8847
9034
  <xsl:apply-templates mode="update_xml_step1"/>
@@ -8851,10 +9038,15 @@
8851
9038
  <xsl:template match="*[local-name() = 'span']" mode="update_xml_step1">
8852
9039
  <xsl:apply-templates mode="update_xml_step1"/>
8853
9040
  </xsl:template>
8854
-
9041
+ <!-- =========================================================================== -->
8855
9042
  <!-- END STEP1: Re-order elements in 'preface', 'sections' based on @displayorder -->
9043
+ <!-- =========================================================================== -->
8856
9044
 
9045
+ <!-- =========================================================================== -->
8857
9046
  <!-- XML UPDATE STEP: enclose standard's name into tag 'keep-together_within-line' -->
9047
+ <!-- keep-together_within-line for: a/b, aaa/b, a/bbb, /b -->
9048
+ <!-- keep-together_within-line for: a.b, aaa.b, a.bbb, .b in table's cell ONLY -->
9049
+ <!-- =========================================================================== -->
8858
9050
  <!-- Example: <keep-together_within-line>ISO 10303-51</keep-together_within-line> -->
8859
9051
  <xsl:template match="@*|node()" mode="update_xml_enclose_keep-together_within-line">
8860
9052
  <xsl:copy>
@@ -8870,10 +9062,15 @@
8870
9062
  <xsl:template match="text()[not(ancestor::*[local-name() = 'bibdata'] or ancestor::*[local-name() = 'link'][not(contains(.,' '))] or ancestor::*[local-name() = 'sourcecode'] or ancestor::*[local-name() = 'math'] or starts-with(., 'http://') or starts-with(., 'https://') or starts-with(., 'www.') )]" name="keep_together_standard_number" mode="update_xml_enclose_keep-together_within-line">
8871
9063
 
8872
9064
  <!-- enclose standard's number into tag 'keep-together_within-line' -->
8873
- <xsl:variable name="regex_standard_reference">([A-Z]{2,}(/[A-Z]{2,})* \d+(-\d+)*(:\d{4})?)</xsl:variable>
8874
9065
  <xsl:variable name="tag_keep-together_within-line_open">###<xsl:value-of select="$element_name_keep-together_within-line"/>###</xsl:variable>
8875
9066
  <xsl:variable name="tag_keep-together_within-line_close">###/<xsl:value-of select="$element_name_keep-together_within-line"/>###</xsl:variable>
8876
- <xsl:variable name="text_" select="java:replaceAll(java:java.lang.String.new(.),$regex_standard_reference,concat($tag_keep-together_within-line_open,'$1',$tag_keep-together_within-line_close))"/>
9067
+ <xsl:variable name="text__" select="java:replaceAll(java:java.lang.String.new(.), $regex_standard_reference, concat($tag_keep-together_within-line_open,'$1',$tag_keep-together_within-line_close))"/>
9068
+ <xsl:variable name="text_">
9069
+ <xsl:choose>
9070
+ <xsl:when test="ancestor::*[local-name() = 'table']"><xsl:value-of select="."/></xsl:when> <!-- no need enclose standard's number into tag 'keep-together_within-line' in table cells -->
9071
+ <xsl:otherwise><xsl:value-of select="$text__"/></xsl:otherwise>
9072
+ </xsl:choose>
9073
+ </xsl:variable>
8877
9074
  <xsl:variable name="text"><text><xsl:call-template name="replace_text_tags">
8878
9075
  <xsl:with-param name="tag_open" select="$tag_keep-together_within-line_open"/>
8879
9076
  <xsl:with-param name="tag_close" select="$tag_keep-together_within-line_close"/>
@@ -8889,7 +9086,11 @@
8889
9086
  </xsl:variable>
8890
9087
 
8891
9088
  <!-- keep-together_within-line for: a/b, aaa/b, a/bbb, /b -->
8892
- <xsl:variable name="regex_solidus_units">((\b((\S{1,3}\/\S+)|(\S+\/\S{1,3}))\b)|(\/\S{1,3})\b)</xsl:variable>
9089
+ <!-- \S matches any non-whitespace character (equivalent to [^\r\n\t\f\v ]) -->
9090
+ <!-- <xsl:variable name="regex_solidus_units">((\b((\S{1,3}\/\S+)|(\S+\/\S{1,3}))\b)|(\/\S{1,3})\b)</xsl:variable> -->
9091
+ <!-- add &lt; and &gt; to \S -->
9092
+ <xsl:variable name="regex_S">[^\r\n\t\f\v \&lt;&gt;]</xsl:variable>
9093
+ <xsl:variable name="regex_solidus_units">((\b((<xsl:value-of select="$regex_S"/>{1,3}\/<xsl:value-of select="$regex_S"/>+)|(<xsl:value-of select="$regex_S"/>+\/<xsl:value-of select="$regex_S"/>{1,3}))\b)|(\/<xsl:value-of select="$regex_S"/>{1,3})\b)</xsl:variable>
8893
9094
  <xsl:variable name="text3">
8894
9095
  <text><xsl:for-each select="xalan:nodeset($text2)/text/node()">
8895
9096
  <xsl:choose>
@@ -8953,9 +9154,8 @@
8953
9154
  <xsl:otherwise><xsl:value-of select="$text"/></xsl:otherwise>
8954
9155
  </xsl:choose>
8955
9156
  </xsl:template>
8956
-
8957
9157
  <!-- ===================================== -->
8958
- <!-- End Update xml -->
9158
+ <!-- END XML UPDATE STEP: enclose standard's name into tag 'keep-together_within-line' -->
8959
9159
  <!-- ===================================== -->
8960
9160
 
8961
9161
  <!-- for correct rendering combining chars -->
@@ -268,6 +268,12 @@ main {
268
268
  padding-left: 30px; }
269
269
  #toc .h3, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) .h3 {
270
270
  padding-left: 50px; }
271
+ #toc .h4, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) .h4 {
272
+ padding-left: 70px; }
273
+ #toc .h5, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) .h5 {
274
+ padding-left: 90px; }
275
+ #toc .h6, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) .h6 {
276
+ padding-left: 110px; }
271
277
  #toc .toc-active, #toc li:hover, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) .toc-active, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) li:hover {
272
278
  background: #4D7EA5;
273
279
  box-shadow: inset -5px 0px 10px -5px #4D7EA5 !important; }
@@ -683,6 +683,156 @@ p.MsoToc3, li.MsoToc3, div.MsoToc3 {
683
683
  font-weight: bold;
684
684
  mso-bidi-font-weight: normal; }
685
685
 
686
+ p.MsoToc4, li.MsoToc4, div.MsoToc4 {
687
+ mso-style-noshow: yes;
688
+ mso-style-priority: 39;
689
+ mso-style-unhide: no;
690
+ mso-style-name: "TOC 4";
691
+ mso-style-parent: "TOC 3";
692
+ mso-style-next: Normal;
693
+ margin-top: 0cm;
694
+ margin-right: 25.0pt;
695
+ margin-bottom: 0cm;
696
+ margin-left: 36.0pt;
697
+ margin-bottom: .0001pt;
698
+ text-indent: -36.0pt;
699
+ line-height: 12.0pt;
700
+ mso-pagination: widow-orphan;
701
+ mso-hyphenate: none;
702
+ tab-stops: 20.15pt 47.9pt right dotted 487.6pt;
703
+ font-size: 10.5pt;
704
+ font-family: {{bodyfont}};
705
+ mso-fareast-font-family: {{bodyfont}};
706
+ mso-bidi-font-family: {{bodyfont}};
707
+ mso-ansi-language: EN-GB;
708
+ font-weight: bold;
709
+ mso-bidi-font-weight: normal; }
710
+
711
+ p.MsoToc5, li.MsoToc5, div.MsoToc5 {
712
+ mso-style-noshow: yes;
713
+ mso-style-priority: 39;
714
+ mso-style-unhide: no;
715
+ mso-style-name: "TOC 5";
716
+ mso-style-parent: "TOC 4";
717
+ mso-style-next: Normal;
718
+ margin-top: 0cm;
719
+ margin-right: 25.0pt;
720
+ margin-bottom: 0cm;
721
+ margin-left: 36.0pt;
722
+ margin-bottom: .0001pt;
723
+ text-indent: -36.0pt;
724
+ line-height: 12.0pt;
725
+ mso-pagination: widow-orphan;
726
+ mso-hyphenate: none;
727
+ tab-stops: 20.15pt 47.9pt right dotted 487.6pt;
728
+ font-size: 10.5pt;
729
+ font-family: {{bodyfont}};
730
+ mso-fareast-font-family: {{bodyfont}};
731
+ mso-bidi-font-family: {{bodyfont}};
732
+ mso-ansi-language: EN-GB;
733
+ font-weight: bold;
734
+ mso-bidi-font-weight: normal; }
735
+
736
+ p.MsoToc6, li.MsoToc6, div.MsoToc6 {
737
+ mso-style-noshow: yes;
738
+ mso-style-priority: 39;
739
+ mso-style-unhide: no;
740
+ mso-style-name: "TOC 6";
741
+ mso-style-parent: "TOC 5";
742
+ mso-style-next: Normal;
743
+ margin-top: 0cm;
744
+ margin-right: 25.0pt;
745
+ margin-bottom: 0cm;
746
+ margin-left: 36.0pt;
747
+ margin-bottom: .0001pt;
748
+ text-indent: -36.0pt;
749
+ line-height: 12.0pt;
750
+ mso-pagination: widow-orphan;
751
+ mso-hyphenate: none;
752
+ tab-stops: 20.15pt 55.0pt right dotted 487.6pt;
753
+ font-size: 10.5pt;
754
+ font-family: {{bodyfont}};
755
+ mso-fareast-font-family: {{bodyfont}};
756
+ mso-bidi-font-family: {{bodyfont}};
757
+ mso-ansi-language: EN-GB;
758
+ font-weight: bold;
759
+ mso-bidi-font-weight: normal; }
760
+
761
+ p.MsoToc7, li.MsoToc7, div.MsoToc7 {
762
+ mso-style-noshow: yes;
763
+ mso-style-priority: 39;
764
+ mso-style-unhide: no;
765
+ mso-style-name: "TOC 7";
766
+ mso-style-parent: "TOC 6";
767
+ mso-style-next: Normal;
768
+ margin-top: 0cm;
769
+ margin-right: 25.0pt;
770
+ margin-bottom: 0cm;
771
+ margin-left: 36.0pt;
772
+ margin-bottom: .0001pt;
773
+ text-indent: -36.0pt;
774
+ line-height: 12.0pt;
775
+ mso-pagination: widow-orphan;
776
+ mso-hyphenate: none;
777
+ tab-stops: 20.15pt 62.7pt right dotted 487.6pt;
778
+ font-size: 10.5pt;
779
+ font-family: {{bodyfont}};
780
+ mso-fareast-font-family: {{bodyfont}};
781
+ mso-bidi-font-family: {{bodyfont}};
782
+ mso-ansi-language: EN-GB;
783
+ font-weight: bold;
784
+ mso-bidi-font-weight: normal; }
785
+
786
+ p.MsoToc8, li.MsoToc8, div.MsoToc8 {
787
+ mso-style-noshow: yes;
788
+ mso-style-priority: 39;
789
+ mso-style-unhide: no;
790
+ mso-style-name: "TOC 8";
791
+ mso-style-parent: "TOC 7";
792
+ mso-style-next: Normal;
793
+ margin-top: 0cm;
794
+ margin-right: 25.0pt;
795
+ margin-bottom: 0cm;
796
+ margin-left: 36.0pt;
797
+ margin-bottom: .0001pt;
798
+ text-indent: -36.0pt;
799
+ line-height: 12.0pt;
800
+ mso-pagination: widow-orphan;
801
+ mso-hyphenate: none;
802
+ tab-stops: 20.15pt 70.3pt right dotted 487.6pt;
803
+ font-size: 10.5pt;
804
+ font-family: {{bodyfont}};
805
+ mso-fareast-font-family: {{bodyfont}};
806
+ mso-bidi-font-family: {{bodyfont}};
807
+ mso-ansi-language: EN-GB;
808
+ font-weight: bold;
809
+ mso-bidi-font-weight: normal; }
810
+
811
+ p.MsoToc9, li.MsoToc9, div.MsoToc9 {
812
+ mso-style-noshow: yes;
813
+ mso-style-priority: 39;
814
+ mso-style-unhide: no;
815
+ mso-style-name: "TOC 9";
816
+ mso-style-parent: "TOC 8";
817
+ mso-style-next: Normal;
818
+ margin-top: 0cm;
819
+ margin-right: 25.0pt;
820
+ margin-bottom: 0cm;
821
+ margin-left: 36.0pt;
822
+ margin-bottom: .0001pt;
823
+ text-indent: -36.0pt;
824
+ line-height: 12.0pt;
825
+ mso-pagination: widow-orphan;
826
+ mso-hyphenate: none;
827
+ tab-stops: 20.15pt 78.0pt right dotted 487.6pt;
828
+ font-size: 10.5pt;
829
+ font-family: {{bodyfont}};
830
+ mso-fareast-font-family: {{bodyfont}};
831
+ mso-bidi-font-family: {{bodyfont}};
832
+ mso-ansi-language: EN-GB;
833
+ font-weight: bold;
834
+ mso-bidi-font-weight: normal; }
835
+
686
836
  span.MsoFootnoteReference {
687
837
  mso-style-priority: 99;
688
838
  mso-style-name: "Footnote Reference";
@@ -642,6 +642,150 @@ p.MsoToc3, li.MsoToc3, div.MsoToc3
642
642
  mso-ansi-language:EN-GB;
643
643
  font-weight:bold;
644
644
  mso-bidi-font-weight:normal;}
645
+ p.MsoToc4, li.MsoToc4, div.MsoToc4
646
+ {mso-style-noshow:yes;
647
+ mso-style-priority:39;
648
+ mso-style-unhide:no;
649
+ mso-style-name:"TOC 4";
650
+ mso-style-parent:"TOC 3";
651
+ mso-style-next:Normal;
652
+ margin-top:0cm;
653
+ margin-right:25.0pt;
654
+ margin-bottom:0cm;
655
+ margin-left:36.0pt;
656
+ margin-bottom:.0001pt;
657
+ text-indent:-36.0pt;
658
+ line-height:12.0pt;
659
+ mso-pagination:widow-orphan;
660
+ mso-hyphenate:none;
661
+ tab-stops:20.15pt 47.9pt right dotted 487.6pt;
662
+ font-size:10.5pt;
663
+ font-family:$bodyfont;
664
+ mso-fareast-font-family:$bodyfont;
665
+ mso-bidi-font-family:$bodyfont;
666
+ mso-ansi-language:EN-GB;
667
+ font-weight:bold;
668
+ mso-bidi-font-weight:normal;}
669
+ p.MsoToc5, li.MsoToc5, div.MsoToc5
670
+ {mso-style-noshow:yes;
671
+ mso-style-priority:39;
672
+ mso-style-unhide:no;
673
+ mso-style-name:"TOC 5";
674
+ mso-style-parent:"TOC 4";
675
+ mso-style-next:Normal;
676
+ margin-top:0cm;
677
+ margin-right:25.0pt;
678
+ margin-bottom:0cm;
679
+ margin-left:36.0pt;
680
+ margin-bottom:.0001pt;
681
+ text-indent:-36.0pt;
682
+ line-height:12.0pt;
683
+ mso-pagination:widow-orphan;
684
+ mso-hyphenate:none;
685
+ tab-stops:20.15pt 47.9pt right dotted 487.6pt;
686
+ font-size:10.5pt;
687
+ font-family:$bodyfont;
688
+ mso-fareast-font-family:$bodyfont;
689
+ mso-bidi-font-family:$bodyfont;
690
+ mso-ansi-language:EN-GB;
691
+ font-weight:bold;
692
+ mso-bidi-font-weight:normal;}
693
+ p.MsoToc6, li.MsoToc6, div.MsoToc6
694
+ {mso-style-noshow:yes;
695
+ mso-style-priority:39;
696
+ mso-style-unhide:no;
697
+ mso-style-name:"TOC 6";
698
+ mso-style-parent:"TOC 5";
699
+ mso-style-next:Normal;
700
+ margin-top:0cm;
701
+ margin-right:25.0pt;
702
+ margin-bottom:0cm;
703
+ margin-left:36.0pt;
704
+ margin-bottom:.0001pt;
705
+ text-indent:-36.0pt;
706
+ line-height:12.0pt;
707
+ mso-pagination:widow-orphan;
708
+ mso-hyphenate:none;
709
+ tab-stops:20.15pt 55.0pt right dotted 487.6pt;
710
+ font-size:10.5pt;
711
+ font-family:$bodyfont;
712
+ mso-fareast-font-family:$bodyfont;
713
+ mso-bidi-font-family:$bodyfont;
714
+ mso-ansi-language:EN-GB;
715
+ font-weight:bold;
716
+ mso-bidi-font-weight:normal;}
717
+ p.MsoToc7, li.MsoToc7, div.MsoToc7
718
+ {mso-style-noshow:yes;
719
+ mso-style-priority:39;
720
+ mso-style-unhide:no;
721
+ mso-style-name:"TOC 7";
722
+ mso-style-parent:"TOC 6";
723
+ mso-style-next:Normal;
724
+ margin-top:0cm;
725
+ margin-right:25.0pt;
726
+ margin-bottom:0cm;
727
+ margin-left:36.0pt;
728
+ margin-bottom:.0001pt;
729
+ text-indent:-36.0pt;
730
+ line-height:12.0pt;
731
+ mso-pagination:widow-orphan;
732
+ mso-hyphenate:none;
733
+ tab-stops:20.15pt 62.7pt right dotted 487.6pt;
734
+ font-size:10.5pt;
735
+ font-family:$bodyfont;
736
+ mso-fareast-font-family:$bodyfont;
737
+ mso-bidi-font-family:$bodyfont;
738
+ mso-ansi-language:EN-GB;
739
+ font-weight:bold;
740
+ mso-bidi-font-weight:normal;}
741
+ p.MsoToc8, li.MsoToc8, div.MsoToc8
742
+ {mso-style-noshow:yes;
743
+ mso-style-priority:39;
744
+ mso-style-unhide:no;
745
+ mso-style-name:"TOC 8";
746
+ mso-style-parent:"TOC 7";
747
+ mso-style-next:Normal;
748
+ margin-top:0cm;
749
+ margin-right:25.0pt;
750
+ margin-bottom:0cm;
751
+ margin-left:36.0pt;
752
+ margin-bottom:.0001pt;
753
+ text-indent:-36.0pt;
754
+ line-height:12.0pt;
755
+ mso-pagination:widow-orphan;
756
+ mso-hyphenate:none;
757
+ tab-stops:20.15pt 70.3pt right dotted 487.6pt;
758
+ font-size:10.5pt;
759
+ font-family:$bodyfont;
760
+ mso-fareast-font-family:$bodyfont;
761
+ mso-bidi-font-family:$bodyfont;
762
+ mso-ansi-language:EN-GB;
763
+ font-weight:bold;
764
+ mso-bidi-font-weight:normal;}
765
+ p.MsoToc9, li.MsoToc9, div.MsoToc9
766
+ {mso-style-noshow:yes;
767
+ mso-style-priority:39;
768
+ mso-style-unhide:no;
769
+ mso-style-name:"TOC 9";
770
+ mso-style-parent:"TOC 8";
771
+ mso-style-next:Normal;
772
+ margin-top:0cm;
773
+ margin-right:25.0pt;
774
+ margin-bottom:0cm;
775
+ margin-left:36.0pt;
776
+ margin-bottom:.0001pt;
777
+ text-indent:-36.0pt;
778
+ line-height:12.0pt;
779
+ mso-pagination:widow-orphan;
780
+ mso-hyphenate:none;
781
+ tab-stops:20.15pt 78.0pt right dotted 487.6pt;
782
+ font-size:10.5pt;
783
+ font-family:$bodyfont;
784
+ mso-fareast-font-family:$bodyfont;
785
+ mso-bidi-font-family:$bodyfont;
786
+ mso-ansi-language:EN-GB;
787
+ font-weight:bold;
788
+ mso-bidi-font-weight:normal;}
645
789
  span.MsoFootnoteReference
646
790
  {mso-style-priority:99;
647
791
  mso-style-name:"Footnote Reference";
@@ -8,7 +8,7 @@ module IsoDoc
8
8
  def annex1(elem)
9
9
  lbl = @xrefs.anchor(elem["id"], :label)
10
10
  if t = elem.at(ns("./title"))
11
- t.children = "<strong>#{t.children.to_xml}</strong>"
11
+ t.children = "<strong>#{to_xml(t.children)}</strong>"
12
12
  end
13
13
  prefix_name(elem, "<br/>", lbl, "title")
14
14
  end
@@ -683,6 +683,9 @@
683
683
  </define>
684
684
  <define name="underline">
685
685
  <element name="underline">
686
+ <optional>
687
+ <attribute name="style"/>
688
+ </optional>
686
689
  <zeroOrMore>
687
690
  <ref name="PureTextElement"/>
688
691
  </zeroOrMore>
@@ -47,7 +47,7 @@
47
47
  </element>
48
48
  </define>
49
49
  <define name="DocumentType">
50
- <value>document</value>
50
+ <text/>
51
51
  </define>
52
52
  <define name="docsubtype">
53
53
  <element name="subdoctype">
@@ -1152,7 +1152,7 @@
1152
1152
  <data type="boolean"/>
1153
1153
  </attribute>
1154
1154
  </optional>
1155
- <ref name="BibliographicItem"/>
1155
+ <ref name="ReducedBibliographicItem"/>
1156
1156
  </element>
1157
1157
  </define>
1158
1158
  <define name="image" combine="choice">
@@ -2653,6 +2653,7 @@
2653
2653
  <value>full</value>
2654
2654
  <value>short</value>
2655
2655
  <value>id</value>
2656
+ <value>modspec</value>
2656
2657
  </choice>
2657
2658
  </define>
2658
2659
  <define name="erefTypeWithConnective">
@@ -1,5 +1,5 @@
1
1
  module Metanorma
2
2
  module Csa
3
- VERSION = "2.1.12".freeze
3
+ VERSION = "2.2.0".freeze
4
4
  end
5
5
  end
@@ -29,7 +29,7 @@ Gem::Specification.new do |spec|
29
29
  spec.require_paths = ["lib"]
30
30
  spec.required_ruby_version = Gem::Requirement.new(">= 2.7.0")
31
31
 
32
- spec.add_dependency "metanorma-generic", "~> 2.2.2"
32
+ spec.add_dependency "metanorma-generic", "~> 2.3.0"
33
33
 
34
34
  spec.add_development_dependency "debug"
35
35
  spec.add_development_dependency "equivalent-xml", "~> 0.6"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metanorma-csa
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.12
4
+ version: 2.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-11-07 00:00:00.000000000 Z
11
+ date: 2022-12-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: metanorma-generic
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 2.2.2
19
+ version: 2.3.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 2.2.2
26
+ version: 2.3.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: debug
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -244,7 +244,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
244
244
  - !ruby/object:Gem::Version
245
245
  version: '0'
246
246
  requirements: []
247
- rubygems_version: 3.3.7
247
+ rubygems_version: 3.3.26
248
248
  signing_key:
249
249
  specification_version: 4
250
250
  summary: metanorma-csa lets you write CSA Normal Documents (CSAND) in AsciiDoc.