metanorma-ribose 2.0.2 → 2.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8480f32efd17d0b5c2d9148d66bc0b48aedf3e5e043f2a4dcef6dccfab5b6480
4
- data.tar.gz: 014e2b6af3a65e8592116e9f95f83af48045d0a35158d5d240dff8d42e029ab2
3
+ metadata.gz: afce4df8078e939307df9a38c0cb603dcf2a74a9cfadb767d0aa9384eb563456
4
+ data.tar.gz: 32135eb6eb812c9cea21c521aa1905c388ee07a179253db796c21b2de4acd9c5
5
5
  SHA512:
6
- metadata.gz: '062922a281b836eadefd56cb767f03b124e5b6576044970dbc9d2365a0362ee6e781a089a2a076b567937a0d8d94275e7b1e1323138addc4ded8d08853ab9fc1'
7
- data.tar.gz: b80840c6465ce0656ee6c3d1012c3b1bc5f5c234ceabe6c1e2b093b43329f249bfd1a6d11765afb3de31a326c2dadadb444262e833a4218821fb18dfcb660d22
6
+ metadata.gz: a2671c7646f5be2bab152569e1d2309e66c98ca46b5e1e4a345c1c13be7babc79aebfa9b02b12ebd561c517b9bdb3f5afd8dce91bfd7f4cfb93e1f171c45807c
7
+ data.tar.gz: dea9e8f36d6fbf625921edb5535c06111995f8dcd7271fb2c077346b7b26f4b5e4319e7d8e185b8c98c2f16f4f5526ec94ee8fff1959a319a16ed7d6cd7a5503
@@ -785,8 +785,7 @@ div.example p.MsoListParagraph {
785
785
  font-size: {{smallerfontsize}}; }
786
786
 
787
787
  div.Note p.MsoListParagraph {
788
- font-size: {{smallerfontsize}};
789
- margin-left: 1.0cm; }
788
+ font-size: {{smallerfontsize}}; }
790
789
 
791
790
  div.Note span.stem {
792
791
  font-size: {{smallerfontsize}}; }
@@ -744,7 +744,6 @@ div.example p.MsoListParagraph {
744
744
 
745
745
  div.Note p.MsoListParagraph {
746
746
  font-size: $smallerfontsize;
747
- margin-left: 1.0cm;
748
747
  }
749
748
 
750
749
  div.Note span.stem {
@@ -1,19 +1,9 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?><xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:rsd="https://www.metanorma.org/ns/rsd" xmlns:mathml="http://www.w3.org/1998/Math/MathML" xmlns:xalan="http://xml.apache.org/xalan" xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" xmlns:java="http://xml.apache.org/xalan/java" exclude-result-prefixes="java" version="1.0">
2
2
 
3
3
  <xsl:output version="1.0" method="xml" encoding="UTF-8" indent="no"/>
4
-
5
- <xsl:param name="svg_images"/>
6
- <xsl:param name="external_index"/><!-- path to index xml, generated on 1st pass, based on FOP Intermediate Format -->
7
- <xsl:variable name="images" select="document($svg_images)"/>
8
- <xsl:param name="basepath"/>
9
4
 
10
5
  <xsl:key name="kfn" match="*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure') and not(ancestor::*[local-name() = 'name'])])]" use="@reference"/>
11
6
 
12
- <xsl:variable name="marginLeftRight1" select="29"/>
13
- <xsl:variable name="marginLeftRight2" select="29"/>
14
- <xsl:variable name="marginTop" select="14"/>
15
- <xsl:variable name="marginBottom" select="22"/>
16
-
17
7
 
18
8
 
19
9
  <xsl:variable name="debug">false</xsl:variable>
@@ -45,9 +35,6 @@
45
35
  </contents>
46
36
  </xsl:variable>
47
37
 
48
- <xsl:variable name="lang">
49
- <xsl:call-template name="getLang"/>
50
- </xsl:variable>
51
38
 
52
39
  <xsl:variable name="docnumber_version">
53
40
  <xsl:value-of select="/rsd:rsd-standard/rsd:bibdata/rsd:docidentifier[@type = 'rsd' or @type = 'Ribose']"/>
@@ -798,21 +785,9 @@
798
785
  </fo:block>
799
786
  </xsl:template>
800
787
 
801
-
802
788
 
803
-
804
-
805
- <xsl:template match="rsd:ul | rsd:ol" mode="ul_ol">
806
- <xsl:variable name="level">
807
- <xsl:call-template name="getLevel">
808
- <xsl:with-param name="depth" select="ancestor::rsd:clause[1]/rsd:title/@depth"/>
809
- </xsl:call-template>
810
- </xsl:variable>
789
+ <xsl:template match="rsd:ul | rsd:ol" mode="list" priority="2">
811
790
  <fo:block-container>
812
- <xsl:if test="$level &gt;= 3">
813
- <!-- <xsl:variable name="list_level" select="count(ancestor-or-self::rsd:ul) + count(ancestor-or-self::rsd:ul)"/> -->
814
- <!-- <xsl:attribute name="margin-left">13mm</xsl:attribute> -->
815
- </xsl:if>
816
791
  <fo:block-container margin-left="0mm">
817
792
  <xsl:choose>
818
793
  <xsl:when test="not(ancestor::rsd:ul) and not(ancestor::rsd:ol)">
@@ -829,57 +804,11 @@
829
804
  </xsl:template>
830
805
 
831
806
  <xsl:template name="listProcessing">
832
- <fo:list-block provisional-distance-between-starts="6mm"> <!-- 12mm -->
833
- <xsl:if test="ancestor::rsd:ul | ancestor::rsd:ol">
834
- <!-- <xsl:attribute name="margin-bottom">0pt</xsl:attribute> -->
835
- </xsl:if>
836
- <xsl:if test="following-sibling::*[1][local-name() = 'ul' or local-name() = 'ol']">
837
- <!-- <xsl:attribute name="margin-bottom">0pt</xsl:attribute> -->
838
- </xsl:if>
807
+ <fo:list-block xsl:use-attribute-sets="list-style">
839
808
  <xsl:apply-templates/>
840
809
  </fo:list-block>
841
810
  </xsl:template>
842
811
 
843
-
844
- <xsl:template match="rsd:li">
845
- <fo:list-item space-after="4pt">
846
- <fo:list-item-label end-indent="label-end()">
847
- <fo:block color="{$color_blue}" font-weight="bold">
848
- <xsl:choose>
849
- <xsl:when test="local-name(..) = 'ul'">
850
- <xsl:call-template name="setULLabel"/>
851
- </xsl:when>
852
- <!-- <xsl:when test="local-name(..) = 'ul' and (../ancestor::rsd:ul or ../ancestor::rsd:ol)">&#x2014;</xsl:when> --> <!-- - &#x2014; dash -->
853
- <!-- <xsl:when test="local-name(..) = 'ul'">•</xsl:when> -->
854
- <xsl:otherwise> <!-- for ordered lists -->
855
- <xsl:choose>
856
- <xsl:when test="../@type = 'arabic'">
857
- <xsl:number format="1."/>
858
- </xsl:when>
859
- <xsl:when test="../@type = 'alphabet'">
860
- <xsl:number format="a." lang="en"/>
861
- </xsl:when>
862
- <xsl:when test="../@type = 'alphabet_upper'">
863
- <xsl:number format="A." lang="en"/>
864
- </xsl:when>
865
- <xsl:when test="../@type = 'roman'">
866
- <xsl:number format="i."/>
867
- </xsl:when>
868
- <xsl:otherwise>
869
- <xsl:number format="1."/>
870
- </xsl:otherwise>
871
- </xsl:choose>
872
- </xsl:otherwise>
873
- </xsl:choose>
874
- </fo:block>
875
- </fo:list-item-label>
876
- <fo:list-item-body start-indent="body-start()" line-height-shift-adjustment="disregard-shifts">
877
- <fo:block>
878
- <xsl:apply-templates/>
879
- </fo:block>
880
- </fo:list-item-body>
881
- </fo:list-item>
882
- </xsl:template>
883
812
 
884
813
  <xsl:template match="rsd:ul/rsd:note | rsd:ol/rsd:note" priority="2">
885
814
  <fo:list-item font-size="10pt">
@@ -985,29 +914,6 @@
985
914
  </xsl:template>
986
915
 
987
916
 
988
- <xsl:template match="rsd:formula/rsd:stem">
989
- <fo:block margin-top="6pt" margin-bottom="12pt">
990
- <fo:table table-layout="fixed" width="100%">
991
- <fo:table-column column-width="95%"/>
992
- <fo:table-column column-width="5%"/>
993
- <fo:table-body>
994
- <fo:table-row>
995
- <fo:table-cell display-align="center">
996
- <fo:block text-align="left" margin-left="5mm">
997
- <xsl:apply-templates/>
998
- </fo:block>
999
- </fo:table-cell>
1000
- <fo:table-cell display-align="center">
1001
- <fo:block text-align="right">
1002
- <xsl:apply-templates select="../rsd:name" mode="formula_number"/>
1003
- </fo:block>
1004
- </fo:table-cell>
1005
- </fo:table-row>
1006
- </fo:table-body>
1007
- </fo:table>
1008
- </fo:block>
1009
- </xsl:template>
1010
-
1011
917
 
1012
918
  <xsl:template match="*[local-name()='table' or local-name()='figure' or local-name()='sourcecode']/*[local-name() = 'name']/node()[1][self::text()]" priority="2">
1013
919
  <xsl:choose>
@@ -1257,11 +1163,21 @@
1257
1163
 
1258
1164
 
1259
1165
 
1260
- <xsl:variable name="pageWidth_">
1166
+ <xsl:param name="svg_images"/><xsl:variable name="images" select="document($svg_images)"/><xsl:param name="basepath"/><xsl:param name="external_index"/><xsl:param name="syntax-highlight">false</xsl:param><xsl:variable name="lang">
1167
+ <xsl:call-template name="getLang"/>
1168
+ </xsl:variable><xsl:variable name="pageWidth_">
1261
1169
  215.9
1262
1170
  </xsl:variable><xsl:variable name="pageWidth" select="normalize-space($pageWidth_)"/><xsl:variable name="pageHeight_">
1263
1171
  279.4
1264
- </xsl:variable><xsl:variable name="pageHeight" select="normalize-space($pageHeight_)"/><xsl:variable name="titles_">
1172
+ </xsl:variable><xsl:variable name="pageHeight" select="normalize-space($pageHeight_)"/><xsl:variable name="marginLeftRight1_">
1173
+ 29
1174
+ </xsl:variable><xsl:variable name="marginLeftRight1" select="normalize-space($marginLeftRight1_)"/><xsl:variable name="marginLeftRight2_">
1175
+ 29
1176
+ </xsl:variable><xsl:variable name="marginLeftRight2" select="normalize-space($marginLeftRight2_)"/><xsl:variable name="marginTop_">
1177
+ 14
1178
+ </xsl:variable><xsl:variable name="marginTop" select="normalize-space($marginTop_)"/><xsl:variable name="marginBottom_">
1179
+ 22
1180
+ </xsl:variable><xsl:variable name="marginBottom" select="normalize-space($marginBottom_)"/><xsl:variable name="titles_">
1265
1181
 
1266
1182
  <title-edition lang="en">
1267
1183
 
@@ -1321,7 +1237,7 @@
1321
1237
  </xsl:variable><xsl:variable name="titles" select="xalan:nodeset($titles_)"/><xsl:variable name="bibdata">
1322
1238
  <xsl:copy-of select="//*[contains(local-name(), '-standard')]/*[local-name() = 'bibdata']"/>
1323
1239
  <xsl:copy-of select="//*[contains(local-name(), '-standard')]/*[local-name() = 'localized-strings']"/>
1324
- </xsl:variable><xsl:variable name="tab_zh"> </xsl:variable><xsl:template name="getTitle">
1240
+ </xsl:variable><xsl:variable name="linebreak">&#8232;</xsl:variable><xsl:variable name="tab_zh"> </xsl:variable><xsl:variable name="non_breaking_hyphen">‑</xsl:variable><xsl:variable name="thin_space"> </xsl:variable><xsl:variable name="zero_width_space">​</xsl:variable><xsl:variable name="en_dash">–</xsl:variable><xsl:template name="getTitle">
1325
1241
  <xsl:param name="name"/>
1326
1242
  <xsl:param name="lang"/>
1327
1243
  <xsl:variable name="lang_">
@@ -1344,7 +1260,7 @@
1344
1260
  <xsl:value-of select="$titles/*[local-name() = $name][@lang = 'en']"/>
1345
1261
  </xsl:otherwise>
1346
1262
  </xsl:choose>
1347
- </xsl:template><xsl:variable name="lower">abcdefghijklmnopqrstuvwxyz</xsl:variable><xsl:variable name="upper">ABCDEFGHIJKLMNOPQRSTUVWXYZ</xsl:variable><xsl:variable name="en_chars" select="concat($lower,$upper,',.`1234567890-=~!@#$%^*()_+[]{}\|?/')"/><xsl:variable name="linebreak" select="'&#8232;'"/><xsl:attribute-set name="root-style">
1263
+ </xsl:template><xsl:variable name="lower">abcdefghijklmnopqrstuvwxyz</xsl:variable><xsl:variable name="upper">ABCDEFGHIJKLMNOPQRSTUVWXYZ</xsl:variable><xsl:variable name="en_chars" select="concat($lower,$upper,',.`1234567890-=~!@#$%^*()_+[]{}\|?/')"/><xsl:attribute-set name="root-style">
1348
1264
 
1349
1265
 
1350
1266
 
@@ -1517,7 +1433,7 @@
1517
1433
 
1518
1434
 
1519
1435
  </xsl:attribute-set><xsl:attribute-set name="example-name-style">
1520
- <xsl:attribute name="keep-with-next">always</xsl:attribute>
1436
+
1521
1437
 
1522
1438
 
1523
1439
 
@@ -1924,11 +1840,11 @@
1924
1840
  <xsl:attribute name="padding-right">0.5mm</xsl:attribute>
1925
1841
 
1926
1842
  </xsl:attribute-set><xsl:attribute-set name="quote-style">
1927
- <xsl:attribute name="role">BlockQuote</xsl:attribute>
1843
+ <xsl:attribute name="margin-left">12mm</xsl:attribute>
1844
+ <xsl:attribute name="margin-right">12mm</xsl:attribute>
1928
1845
 
1929
1846
  <xsl:attribute name="margin-top">12pt</xsl:attribute>
1930
1847
  <xsl:attribute name="margin-left">13mm</xsl:attribute>
1931
- <xsl:attribute name="margin-right">12mm</xsl:attribute>
1932
1848
 
1933
1849
 
1934
1850
 
@@ -1937,12 +1853,11 @@
1937
1853
 
1938
1854
 
1939
1855
  </xsl:attribute-set><xsl:attribute-set name="quote-source-style">
1856
+ <xsl:attribute name="text-align">right</xsl:attribute>
1940
1857
 
1941
- <xsl:attribute name="text-align">right</xsl:attribute>
1942
1858
  <xsl:attribute name="margin-right">25mm</xsl:attribute>
1943
1859
 
1944
1860
 
1945
-
1946
1861
  </xsl:attribute-set><xsl:attribute-set name="termsource-style">
1947
1862
 
1948
1863
 
@@ -1966,6 +1881,9 @@
1966
1881
 
1967
1882
  </xsl:attribute-set><xsl:attribute-set name="term-style">
1968
1883
 
1884
+ </xsl:attribute-set><xsl:attribute-set name="term-name-style">
1885
+ <xsl:attribute name="keep-with-next">always</xsl:attribute>
1886
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
1969
1887
  </xsl:attribute-set><xsl:attribute-set name="figure-style">
1970
1888
  <!-- background for image -->
1971
1889
  <xsl:attribute name="background-color">rgb(236,242,246)</xsl:attribute>
@@ -2007,6 +1925,36 @@
2007
1925
 
2008
1926
 
2009
1927
  </xsl:attribute-set><xsl:attribute-set name="formula-style">
1928
+ <xsl:attribute name="margin-top">6pt</xsl:attribute>
1929
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1930
+
1931
+
1932
+
1933
+
1934
+
1935
+
1936
+ </xsl:attribute-set><xsl:attribute-set name="formula-stem-block-style">
1937
+ <xsl:attribute name="text-align">center</xsl:attribute>
1938
+
1939
+
1940
+
1941
+
1942
+
1943
+
1944
+
1945
+
1946
+
1947
+
1948
+
1949
+ <xsl:attribute name="text-align">left</xsl:attribute>
1950
+ <xsl:attribute name="margin-left">5mm</xsl:attribute>
1951
+
1952
+ </xsl:attribute-set><xsl:attribute-set name="formula-stem-number-style">
1953
+ <xsl:attribute name="text-align">right</xsl:attribute>
1954
+
1955
+
1956
+
1957
+
2010
1958
 
2011
1959
  </xsl:attribute-set><xsl:attribute-set name="image-style">
2012
1960
  <xsl:attribute name="text-align">center</xsl:attribute>
@@ -2050,6 +1998,18 @@
2050
1998
  <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
2051
1999
  <xsl:attribute name="keep-with-next">always</xsl:attribute>
2052
2000
 
2001
+ </xsl:attribute-set><xsl:attribute-set name="preferred-block-style">
2002
+
2003
+
2004
+
2005
+
2006
+
2007
+
2008
+ </xsl:attribute-set><xsl:attribute-set name="preferred-term-style">
2009
+ <xsl:attribute name="keep-with-next">always</xsl:attribute>
2010
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
2011
+
2012
+
2053
2013
  </xsl:attribute-set><xsl:attribute-set name="domain-style">
2054
2014
 
2055
2015
  </xsl:attribute-set><xsl:attribute-set name="admitted-style">
@@ -2093,6 +2053,42 @@
2093
2053
 
2094
2054
  </xsl:attribute-set><xsl:attribute-set name="list-style">
2095
2055
 
2056
+
2057
+
2058
+
2059
+
2060
+
2061
+
2062
+
2063
+
2064
+
2065
+
2066
+
2067
+
2068
+
2069
+
2070
+ <xsl:attribute name="provisional-distance-between-starts">6mm</xsl:attribute>
2071
+
2072
+
2073
+
2074
+ </xsl:attribute-set><xsl:attribute-set name="list-item-style">
2075
+
2076
+
2077
+ <xsl:attribute name="space-after">4pt</xsl:attribute>
2078
+
2079
+ </xsl:attribute-set><xsl:attribute-set name="list-item-label-style">
2080
+
2081
+
2082
+
2083
+ <xsl:attribute name="color"><xsl:value-of select="$color_blue"/></xsl:attribute>
2084
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
2085
+
2086
+ </xsl:attribute-set><xsl:attribute-set name="list-item-body-style">
2087
+
2088
+
2089
+
2090
+ <xsl:attribute name="line-height-shift-adjustment">disregard-shifts</xsl:attribute>
2091
+
2096
2092
  </xsl:attribute-set><xsl:attribute-set name="toc-style">
2097
2093
  <xsl:attribute name="line-height">135%</xsl:attribute>
2098
2094
  </xsl:attribute-set><xsl:attribute-set name="fn-reference-style">
@@ -2386,6 +2382,111 @@
2386
2382
 
2387
2383
 
2388
2384
 
2385
+ </xsl:attribute-set><xsl:attribute-set name="hljs-doctag">
2386
+ <xsl:attribute name="color">#d73a49</xsl:attribute>
2387
+ </xsl:attribute-set><xsl:attribute-set name="hljs-keyword">
2388
+ <xsl:attribute name="color">#d73a49</xsl:attribute>
2389
+ </xsl:attribute-set><xsl:attribute-set name="hljs-meta_hljs-keyword">
2390
+ <xsl:attribute name="color">#d73a49</xsl:attribute>
2391
+ </xsl:attribute-set><xsl:attribute-set name="hljs-template-tag">
2392
+ <xsl:attribute name="color">#d73a49</xsl:attribute>
2393
+ </xsl:attribute-set><xsl:attribute-set name="hljs-template-variable">
2394
+ <xsl:attribute name="color">#d73a49</xsl:attribute>
2395
+ </xsl:attribute-set><xsl:attribute-set name="hljs-type">
2396
+ <xsl:attribute name="color">#d73a49</xsl:attribute>
2397
+ </xsl:attribute-set><xsl:attribute-set name="hljs-variable_and_language_">
2398
+ <xsl:attribute name="color">#d73a49</xsl:attribute>
2399
+ </xsl:attribute-set><xsl:attribute-set name="hljs-title">
2400
+ <xsl:attribute name="color">#6f42c1</xsl:attribute>
2401
+ </xsl:attribute-set><xsl:attribute-set name="hljs-title_and_class_">
2402
+ <xsl:attribute name="color">#6f42c1</xsl:attribute>
2403
+ </xsl:attribute-set><xsl:attribute-set name="hljs-title_and_class__and_inherited__">
2404
+ <xsl:attribute name="color">#6f42c1</xsl:attribute>
2405
+ </xsl:attribute-set><xsl:attribute-set name="hljs-title_and_function_">
2406
+ <xsl:attribute name="color">#6f42c1</xsl:attribute>
2407
+ </xsl:attribute-set><xsl:attribute-set name="hljs-attr">
2408
+ <xsl:attribute name="color">#005cc5</xsl:attribute>
2409
+ </xsl:attribute-set><xsl:attribute-set name="hljs-attribute">
2410
+ <xsl:attribute name="color">#005cc5</xsl:attribute>
2411
+ </xsl:attribute-set><xsl:attribute-set name="hljs-literal">
2412
+ <xsl:attribute name="color">#005cc5</xsl:attribute>
2413
+ </xsl:attribute-set><xsl:attribute-set name="hljs-meta">
2414
+ <xsl:attribute name="color">#005cc5</xsl:attribute>
2415
+ </xsl:attribute-set><xsl:attribute-set name="hljs-number">
2416
+ <xsl:attribute name="color">#005cc5</xsl:attribute>
2417
+ </xsl:attribute-set><xsl:attribute-set name="hljs-operator">
2418
+ <xsl:attribute name="color">#005cc5</xsl:attribute>
2419
+ </xsl:attribute-set><xsl:attribute-set name="hljs-variable">
2420
+ <xsl:attribute name="color">#005cc5</xsl:attribute>
2421
+ </xsl:attribute-set><xsl:attribute-set name="hljs-selector-attr">
2422
+ <xsl:attribute name="color">#005cc5</xsl:attribute>
2423
+ </xsl:attribute-set><xsl:attribute-set name="hljs-selector-class">
2424
+ <xsl:attribute name="color">#005cc5</xsl:attribute>
2425
+ </xsl:attribute-set><xsl:attribute-set name="hljs-selector-id">
2426
+ <xsl:attribute name="color">#005cc5</xsl:attribute>
2427
+ </xsl:attribute-set><xsl:attribute-set name="hljs-regexp">
2428
+ <xsl:attribute name="color">#032f62</xsl:attribute>
2429
+ </xsl:attribute-set><xsl:attribute-set name="hljs-string">
2430
+ <xsl:attribute name="color">#032f62</xsl:attribute>
2431
+ </xsl:attribute-set><xsl:attribute-set name="hljs-meta_hljs-string">
2432
+ <xsl:attribute name="color">#032f62</xsl:attribute>
2433
+ </xsl:attribute-set><xsl:attribute-set name="hljs-built_in">
2434
+ <xsl:attribute name="color">#e36209</xsl:attribute>
2435
+ </xsl:attribute-set><xsl:attribute-set name="hljs-symbol">
2436
+ <xsl:attribute name="color">#e36209</xsl:attribute>
2437
+ </xsl:attribute-set><xsl:attribute-set name="hljs-comment">
2438
+ <xsl:attribute name="color">#6a737d</xsl:attribute>
2439
+ </xsl:attribute-set><xsl:attribute-set name="hljs-code">
2440
+ <xsl:attribute name="color">#6a737d</xsl:attribute>
2441
+ </xsl:attribute-set><xsl:attribute-set name="hljs-formula">
2442
+ <xsl:attribute name="color">#6a737d</xsl:attribute>
2443
+ </xsl:attribute-set><xsl:attribute-set name="hljs-name">
2444
+ <xsl:attribute name="color">#22863a</xsl:attribute>
2445
+ </xsl:attribute-set><xsl:attribute-set name="hljs-quote">
2446
+ <xsl:attribute name="color">#22863a</xsl:attribute>
2447
+ </xsl:attribute-set><xsl:attribute-set name="hljs-selector-tag">
2448
+ <xsl:attribute name="color">#22863a</xsl:attribute>
2449
+ </xsl:attribute-set><xsl:attribute-set name="hljs-selector-pseudo">
2450
+ <xsl:attribute name="color">#22863a</xsl:attribute>
2451
+ </xsl:attribute-set><xsl:attribute-set name="hljs-subst">
2452
+ <xsl:attribute name="color">#24292e</xsl:attribute>
2453
+ </xsl:attribute-set><xsl:attribute-set name="hljs-section">
2454
+ <xsl:attribute name="color">#005cc5</xsl:attribute>
2455
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
2456
+ </xsl:attribute-set><xsl:attribute-set name="hljs-bullet">
2457
+ <xsl:attribute name="color">#735c0f</xsl:attribute>
2458
+ </xsl:attribute-set><xsl:attribute-set name="hljs-emphasis">
2459
+ <xsl:attribute name="color">#24292e</xsl:attribute>
2460
+ <xsl:attribute name="font-style">italic</xsl:attribute>
2461
+ </xsl:attribute-set><xsl:attribute-set name="hljs-strong">
2462
+ <xsl:attribute name="color">#24292e</xsl:attribute>
2463
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
2464
+ </xsl:attribute-set><xsl:attribute-set name="hljs-addition">
2465
+ <xsl:attribute name="color">#22863a</xsl:attribute>
2466
+ <xsl:attribute name="background-color">#f0fff4</xsl:attribute>
2467
+ </xsl:attribute-set><xsl:attribute-set name="hljs-deletion">
2468
+ <xsl:attribute name="color">#b31d28</xsl:attribute>
2469
+ <xsl:attribute name="background-color">#ffeef0</xsl:attribute>
2470
+ </xsl:attribute-set><xsl:attribute-set name="hljs-char_and_escape_">
2471
+ </xsl:attribute-set><xsl:attribute-set name="hljs-link">
2472
+ </xsl:attribute-set><xsl:attribute-set name="hljs-params">
2473
+ </xsl:attribute-set><xsl:attribute-set name="hljs-property">
2474
+ </xsl:attribute-set><xsl:attribute-set name="hljs-punctuation">
2475
+ </xsl:attribute-set><xsl:attribute-set name="hljs-tag">
2476
+ </xsl:attribute-set><xsl:attribute-set name="indexsect-title-style">
2477
+ <xsl:attribute name="role">H1</xsl:attribute>
2478
+
2479
+
2480
+
2481
+
2482
+
2483
+ </xsl:attribute-set><xsl:attribute-set name="indexsect-clause-title-style">
2484
+ <xsl:attribute name="keep-with-next">always</xsl:attribute>
2485
+
2486
+
2487
+
2488
+
2489
+
2389
2490
  </xsl:attribute-set><xsl:variable name="border-block-added">2.5pt solid rgb(0, 176, 80)</xsl:variable><xsl:variable name="border-block-deleted">2.5pt solid rgb(255, 0, 0)</xsl:variable><xsl:variable name="ace_tag">ace-tag_</xsl:variable><xsl:template name="processPrefaceSectionsDefault_Contents">
2390
2491
  <xsl:for-each select="/*/*[local-name()='preface']/*">
2391
2492
  <xsl:sort select="@displayorder" data-type="number"/>
@@ -2477,9 +2578,12 @@
2477
2578
 
2478
2579
 
2479
2580
  </xsl:template><xsl:template match="*[local-name()='legal-statement']//*[local-name()='p']">
2581
+ <xsl:param name="margin"/>
2480
2582
 
2481
2583
  <!-- process in the template 'paragraph' -->
2482
- <xsl:call-template name="paragraph"/>
2584
+ <xsl:call-template name="paragraph">
2585
+ <xsl:with-param name="margin" select="$margin"/>
2586
+ </xsl:call-template>
2483
2587
 
2484
2588
  </xsl:template><xsl:template match="*[local-name()='feedback-statement']">
2485
2589
  <fo:block xsl:use-attribute-sets="feedback-statement-style">
@@ -2491,9 +2595,12 @@
2491
2595
  <xsl:call-template name="title"/>
2492
2596
 
2493
2597
  </xsl:template><xsl:template match="*[local-name()='feedback-statement']//*[local-name()='p']">
2598
+ <xsl:param name="margin"/>
2494
2599
 
2495
2600
  <!-- process in the template 'paragraph' -->
2496
- <xsl:call-template name="paragraph"/>
2601
+ <xsl:call-template name="paragraph">
2602
+ <xsl:with-param name="margin" select="$margin"/>
2603
+ </xsl:call-template>
2497
2604
 
2498
2605
  </xsl:template><xsl:template match="*[local-name()='td']//text() | *[local-name()='th']//text() | *[local-name()='dt']//text() | *[local-name()='dd']//text()" priority="1">
2499
2606
  <!-- <xsl:call-template name="add-zero-spaces"/> -->
@@ -2831,8 +2938,7 @@
2831
2938
  </xsl:call-template>
2832
2939
  </xsl:if>
2833
2940
  </xsl:template><xsl:template match="text()" mode="td_text">
2834
- <xsl:variable name="zero-space">​</xsl:variable>
2835
- <xsl:value-of select="translate(., $zero-space, ' ')"/><xsl:text> </xsl:text>
2941
+ <xsl:value-of select="translate(., $zero_width_space, ' ')"/><xsl:text> </xsl:text>
2836
2942
  </xsl:template><xsl:template match="*[local-name()='termsource']" mode="td_text">
2837
2943
  <xsl:value-of select="*[local-name()='origin']/@citeas"/>
2838
2944
  </xsl:template><xsl:template match="*[local-name()='link']" mode="td_text">
@@ -3820,20 +3926,44 @@
3820
3926
  <fo:inline text-decoration="underline">
3821
3927
  <xsl:apply-templates/>
3822
3928
  </fo:inline>
3823
- </xsl:template><xsl:template match="*[local-name()='add']">
3929
+ </xsl:template><xsl:template match="*[local-name()='add']" name="tag_add">
3824
3930
  <xsl:param name="skip">true</xsl:param>
3931
+ <xsl:param name="block">false</xsl:param>
3932
+ <xsl:param name="type"/>
3933
+ <xsl:param name="text-align"/>
3825
3934
  <xsl:choose>
3826
3935
  <xsl:when test="starts-with(., $ace_tag)"> <!-- examples: ace-tag_A1_start, ace-tag_A2_end, C1_start, AC_start -->
3827
3936
  <xsl:choose>
3828
- <xsl:when test="$skip = 'true' and ((local-name(../..) = 'note' and not(preceding-sibling::node())) or (local-name(..) = 'title' and preceding-sibling::node()[1][local-name() = 'tab'])) and ../node()[last()][local-name() = 'add'][starts-with(text(), $ace_tag)]"><!-- start tag displayed in template name="note" and title --></xsl:when>
3937
+ <xsl:when test="$skip = 'true' and ((local-name(../..) = 'note' and not(preceding-sibling::node())) or (local-name(..) = 'title' and preceding-sibling::node()[1][local-name() = 'tab']) or local-name(..) = 'formattedref' and not(preceding-sibling::node())) and ../node()[last()][local-name() = 'add'][starts-with(text(), $ace_tag)]"><!-- start tag displayed in template name="note" and title --></xsl:when>
3829
3938
  <xsl:otherwise>
3830
- <fo:inline>
3939
+ <xsl:variable name="tag">
3831
3940
  <xsl:call-template name="insertTag">
3832
- <xsl:with-param name="type" select="substring-after(substring-after(., $ace_tag), '_')"/> <!-- start or end -->
3941
+ <xsl:with-param name="type">
3942
+ <xsl:choose>
3943
+ <xsl:when test="$type = ''"><xsl:value-of select="substring-after(substring-after(., $ace_tag), '_')"/> <!-- start or end --></xsl:when>
3944
+ <xsl:otherwise><xsl:value-of select="$type"/></xsl:otherwise>
3945
+ </xsl:choose>
3946
+ </xsl:with-param>
3833
3947
  <xsl:with-param name="kind" select="substring(substring-before(substring-after(., $ace_tag), '_'), 1, 1)"/> <!-- A or C -->
3834
3948
  <xsl:with-param name="value" select="substring(substring-before(substring-after(., $ace_tag), '_'), 2)"/> <!-- 1, 2, C -->
3835
3949
  </xsl:call-template>
3836
- </fo:inline>
3950
+ </xsl:variable>
3951
+ <xsl:choose>
3952
+ <xsl:when test="$block = 'false'">
3953
+ <fo:inline>
3954
+ <xsl:copy-of select="$tag"/>
3955
+ </fo:inline>
3956
+ </xsl:when>
3957
+ <xsl:otherwise>
3958
+ <fo:block> <!-- for around figures -->
3959
+ <xsl:if test="$text-align != ''">
3960
+ <xsl:attribute name="text-align"><xsl:value-of select="$text-align"/></xsl:attribute>
3961
+ </xsl:if>
3962
+ <xsl:copy-of select="$tag"/>
3963
+ </fo:block>
3964
+ </xsl:otherwise>
3965
+ </xsl:choose>
3966
+
3837
3967
  </xsl:otherwise>
3838
3968
  </xsl:choose>
3839
3969
  </xsl:when>
@@ -4192,17 +4322,21 @@
4192
4322
  </xsl:apply-templates>
4193
4323
  </xsl:template><xsl:template name="getLang">
4194
4324
  <xsl:variable name="language_current" select="normalize-space(//*[local-name()='bibdata']//*[local-name()='language'][@current = 'true'])"/>
4195
- <xsl:variable name="language_current_2" select="normalize-space(xalan:nodeset($bibdata)//*[local-name()='bibdata']//*[local-name()='language'][@current = 'true'])"/>
4196
4325
  <xsl:variable name="language">
4197
4326
  <xsl:choose>
4198
4327
  <xsl:when test="$language_current != ''">
4199
4328
  <xsl:value-of select="$language_current"/>
4200
4329
  </xsl:when>
4201
- <xsl:when test="$language_current_2 != ''">
4202
- <xsl:value-of select="$language_current_2"/>
4203
- </xsl:when>
4204
4330
  <xsl:otherwise>
4205
- <xsl:value-of select="//*[local-name()='bibdata']//*[local-name()='language']"/>
4331
+ <xsl:variable name="language_current_2" select="normalize-space(xalan:nodeset($bibdata)//*[local-name()='bibdata']//*[local-name()='language'][@current = 'true'])"/>
4332
+ <xsl:choose>
4333
+ <xsl:when test="$language_current_2 != ''">
4334
+ <xsl:value-of select="$language_current_2"/>
4335
+ </xsl:when>
4336
+ <xsl:otherwise>
4337
+ <xsl:value-of select="//*[local-name()='bibdata']//*[local-name()='language']"/>
4338
+ </xsl:otherwise>
4339
+ </xsl:choose>
4206
4340
  </xsl:otherwise>
4207
4341
  </xsl:choose>
4208
4342
  </xsl:variable>
@@ -4425,8 +4559,8 @@
4425
4559
 
4426
4560
  </xsl:if>
4427
4561
  <fo:block-container margin-left="0mm">
4428
- <fo:block id="{@id}" xsl:use-attribute-sets="formula-style">
4429
- <xsl:apply-templates/>
4562
+ <fo:block id="{@id}">
4563
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/> <!-- formula's number will be process in 'stem' template -->
4430
4564
  </fo:block>
4431
4565
  </fo:block-container>
4432
4566
  </fo:block-container>
@@ -4438,10 +4572,43 @@
4438
4572
  <fo:inline>
4439
4573
  <xsl:apply-templates/>
4440
4574
  </fo:inline>
4441
- </xsl:template><xsl:template match="*[local-name() = 'formula']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'formula']/*[local-name() = 'name']" mode="formula_number"> <!-- show by demand -->
4575
+ </xsl:template><xsl:template match="*[local-name() = 'formula']/*[local-name() = 'name']"> <!-- show in 'stem' template -->
4442
4576
  <xsl:if test="normalize-space() != ''">
4443
4577
  <xsl:text>(</xsl:text><xsl:apply-templates/><xsl:text>)</xsl:text>
4444
4578
  </xsl:if>
4579
+ </xsl:template><xsl:template match="*[local-name() = 'formula'][*[local-name() = 'name']]/*[local-name() = 'stem']">
4580
+ <fo:block xsl:use-attribute-sets="formula-style">
4581
+
4582
+
4583
+
4584
+ <fo:table table-layout="fixed" width="100%">
4585
+ <fo:table-column column-width="95%"/>
4586
+ <fo:table-column column-width="5%"/>
4587
+ <fo:table-body>
4588
+ <fo:table-row>
4589
+ <fo:table-cell display-align="center">
4590
+ <fo:block xsl:use-attribute-sets="formula-stem-block-style">
4591
+
4592
+
4593
+
4594
+ <xsl:apply-templates/>
4595
+ </fo:block>
4596
+ </fo:table-cell>
4597
+ <fo:table-cell display-align="center">
4598
+ <fo:block xsl:use-attribute-sets="formula-stem-number-style">
4599
+ <xsl:apply-templates select="../*[local-name() = 'name']"/>
4600
+ </fo:block>
4601
+ </fo:table-cell>
4602
+ </fo:table-row>
4603
+ </fo:table-body>
4604
+ </fo:table>
4605
+ </fo:block>
4606
+ </xsl:template><xsl:template match="*[local-name() = 'formula'][not(*[local-name() = 'name'])]/*[local-name() = 'stem']">
4607
+ <fo:block xsl:use-attribute-sets="formula-style">
4608
+ <fo:block xsl:use-attribute-sets="formula-stem-block-style">
4609
+ <xsl:apply-templates/>
4610
+ </fo:block>
4611
+ </fo:block>
4445
4612
  </xsl:template><xsl:template match="*[local-name() = 'note']" name="note">
4446
4613
 
4447
4614
  <fo:block-container id="{@id}" xsl:use-attribute-sets="note-style">
@@ -5414,12 +5581,140 @@
5414
5581
  </fo:block-container>
5415
5582
  </fo:block-container>
5416
5583
  </xsl:template><xsl:template match="*[local-name()='sourcecode']/text()" priority="2">
5417
- <xsl:variable name="text">
5584
+ <xsl:choose>
5585
+ <xsl:when test="normalize-space($syntax-highlight) = 'true' and normalize-space(../@lang) != ''"> <!-- condition for turn on of highlighting -->
5586
+ <xsl:variable name="syntax" select="java:org.metanorma.fop.Util.syntaxHighlight(., ../@lang)"/>
5587
+ <xsl:choose>
5588
+ <xsl:when test="normalize-space($syntax) != ''"><!-- if there is highlighted result -->
5589
+ <xsl:apply-templates select="xalan:nodeset($syntax)" mode="syntax_highlight"/> <!-- process span tags -->
5590
+ </xsl:when>
5591
+ <xsl:otherwise> <!-- if case of non-succesfull syntax highlight (for instance, unknown lang), process without highlighting -->
5592
+ <xsl:call-template name="add_spaces_to_sourcecode"/>
5593
+ </xsl:otherwise>
5594
+ </xsl:choose>
5595
+ </xsl:when>
5596
+ <xsl:otherwise>
5597
+ <xsl:call-template name="add_spaces_to_sourcecode"/>
5598
+ </xsl:otherwise>
5599
+ </xsl:choose>
5600
+
5601
+ </xsl:template><xsl:template name="add_spaces_to_sourcecode">
5602
+ <xsl:variable name="text_step1">
5418
5603
  <xsl:call-template name="add-zero-spaces-equal"/>
5419
5604
  </xsl:variable>
5420
- <xsl:call-template name="add-zero-spaces-java">
5421
- <xsl:with-param name="text" select="$text"/>
5422
- </xsl:call-template>
5605
+ <xsl:variable name="text_step2">
5606
+ <xsl:call-template name="add-zero-spaces-java">
5607
+ <xsl:with-param name="text" select="$text_step1"/>
5608
+ </xsl:call-template>
5609
+ </xsl:variable>
5610
+ <xsl:value-of select="$text_step2"/>
5611
+ </xsl:template><xsl:template match="*" mode="syntax_highlight">
5612
+ <xsl:apply-templates mode="syntax_highlight"/>
5613
+ </xsl:template><xsl:variable name="syntax_highlight_styles_">
5614
+ <style class="hljs-addition" xsl:use-attribute-sets="hljs-addition"/>
5615
+ <style class="hljs-attr" xsl:use-attribute-sets="hljs-attr"/>
5616
+ <style class="hljs-attribute" xsl:use-attribute-sets="hljs-attribute"/>
5617
+ <style class="hljs-built_in" xsl:use-attribute-sets="hljs-built_in"/>
5618
+ <style class="hljs-bullet" xsl:use-attribute-sets="hljs-bullet"/>
5619
+ <style class="hljs-char_and_escape_" xsl:use-attribute-sets="hljs-char_and_escape_"/>
5620
+ <style class="hljs-code" xsl:use-attribute-sets="hljs-code"/>
5621
+ <style class="hljs-comment" xsl:use-attribute-sets="hljs-comment"/>
5622
+ <style class="hljs-deletion" xsl:use-attribute-sets="hljs-deletion"/>
5623
+ <style class="hljs-doctag" xsl:use-attribute-sets="hljs-doctag"/>
5624
+ <style class="hljs-emphasis" xsl:use-attribute-sets="hljs-emphasis"/>
5625
+ <style class="hljs-formula" xsl:use-attribute-sets="hljs-formula"/>
5626
+ <style class="hljs-keyword" xsl:use-attribute-sets="hljs-keyword"/>
5627
+ <style class="hljs-link" xsl:use-attribute-sets="hljs-link"/>
5628
+ <style class="hljs-literal" xsl:use-attribute-sets="hljs-literal"/>
5629
+ <style class="hljs-meta" xsl:use-attribute-sets="hljs-meta"/>
5630
+ <style class="hljs-meta_hljs-string" xsl:use-attribute-sets="hljs-meta_hljs-string"/>
5631
+ <style class="hljs-meta_hljs-keyword" xsl:use-attribute-sets="hljs-meta_hljs-keyword"/>
5632
+ <style class="hljs-name" xsl:use-attribute-sets="hljs-name"/>
5633
+ <style class="hljs-number" xsl:use-attribute-sets="hljs-number"/>
5634
+ <style class="hljs-operator" xsl:use-attribute-sets="hljs-operator"/>
5635
+ <style class="hljs-params" xsl:use-attribute-sets="hljs-params"/>
5636
+ <style class="hljs-property" xsl:use-attribute-sets="hljs-property"/>
5637
+ <style class="hljs-punctuation" xsl:use-attribute-sets="hljs-punctuation"/>
5638
+ <style class="hljs-quote" xsl:use-attribute-sets="hljs-quote"/>
5639
+ <style class="hljs-regexp" xsl:use-attribute-sets="hljs-regexp"/>
5640
+ <style class="hljs-section" xsl:use-attribute-sets="hljs-section"/>
5641
+ <style class="hljs-selector-attr" xsl:use-attribute-sets="hljs-selector-attr"/>
5642
+ <style class="hljs-selector-class" xsl:use-attribute-sets="hljs-selector-class"/>
5643
+ <style class="hljs-selector-id" xsl:use-attribute-sets="hljs-selector-id"/>
5644
+ <style class="hljs-selector-pseudo" xsl:use-attribute-sets="hljs-selector-pseudo"/>
5645
+ <style class="hljs-selector-tag" xsl:use-attribute-sets="hljs-selector-tag"/>
5646
+ <style class="hljs-string" xsl:use-attribute-sets="hljs-string"/>
5647
+ <style class="hljs-strong" xsl:use-attribute-sets="hljs-strong"/>
5648
+ <style class="hljs-subst" xsl:use-attribute-sets="hljs-subst"/>
5649
+ <style class="hljs-symbol" xsl:use-attribute-sets="hljs-symbol"/>
5650
+ <style class="hljs-tag" xsl:use-attribute-sets="hljs-tag"/>
5651
+ <!-- <style class="hljs-tag_hljs-attr" xsl:use-attribute-sets="hljs-tag_hljs-attr"></style> -->
5652
+ <!-- <style class="hljs-tag_hljs-name" xsl:use-attribute-sets="hljs-tag_hljs-name"></style> -->
5653
+ <style class="hljs-template-tag" xsl:use-attribute-sets="hljs-template-tag"/>
5654
+ <style class="hljs-template-variable" xsl:use-attribute-sets="hljs-template-variable"/>
5655
+ <style class="hljs-title" xsl:use-attribute-sets="hljs-title"/>
5656
+ <style class="hljs-title_and_class_" xsl:use-attribute-sets="hljs-title_and_class_"/>
5657
+ <style class="hljs-title_and_class__and_inherited__" xsl:use-attribute-sets="hljs-title_and_class__and_inherited__"/>
5658
+ <style class="hljs-title_and_function_" xsl:use-attribute-sets="hljs-title_and_function_"/>
5659
+ <style class="hljs-type" xsl:use-attribute-sets="hljs-type"/>
5660
+ <style class="hljs-variable" xsl:use-attribute-sets="hljs-variable"/>
5661
+ <style class="hljs-variable_and_language_" xsl:use-attribute-sets="hljs-variable_and_language_"/>
5662
+ </xsl:variable><xsl:variable name="syntax_highlight_styles" select="xalan:nodeset($syntax_highlight_styles_)"/><xsl:template match="span" mode="syntax_highlight" priority="2">
5663
+ <!-- <fo:inline color="green" font-style="italic"><xsl:apply-templates mode="syntax_highlight"/></fo:inline> -->
5664
+ <fo:inline>
5665
+ <xsl:variable name="classes_">
5666
+ <xsl:call-template name="split">
5667
+ <xsl:with-param name="pText" select="@class"/>
5668
+ <xsl:with-param name="sep" select="' '"/>
5669
+ </xsl:call-template>
5670
+ <!-- a few classes together (_and_ suffix) -->
5671
+ <xsl:if test="contains(@class, 'hljs-char') and contains(@class, 'escape_')">
5672
+ <item>hljs-char_and_escape_</item>
5673
+ </xsl:if>
5674
+ <xsl:if test="contains(@class, 'hljs-title') and contains(@class, 'class_')">
5675
+ <item>hljs-title_and_class_</item>
5676
+ </xsl:if>
5677
+ <xsl:if test="contains(@class, 'hljs-title') and contains(@class, 'class_') and contains(@class, 'inherited__')">
5678
+ <item>hljs-title_and_class__and_inherited__</item>
5679
+ </xsl:if>
5680
+ <xsl:if test="contains(@class, 'hljs-title') and contains(@class, 'function_')">
5681
+ <item>hljs-title_and_function_</item>
5682
+ </xsl:if>
5683
+ <xsl:if test="contains(@class, 'hljs-variable') and contains(@class, 'language_')">
5684
+ <item>hljs-variable_and_language_</item>
5685
+ </xsl:if>
5686
+ <!-- with parent classes (_ suffix) -->
5687
+ <xsl:if test="contains(@class, 'hljs-keyword') and contains(ancestor::*/@class, 'hljs-meta')">
5688
+ <item>hljs-meta_hljs-keyword</item>
5689
+ </xsl:if>
5690
+ <xsl:if test="contains(@class, 'hljs-string') and contains(ancestor::*/@class, 'hljs-meta')">
5691
+ <item>hljs-meta_hljs-string</item>
5692
+ </xsl:if>
5693
+ </xsl:variable>
5694
+ <xsl:variable name="classes" select="xalan:nodeset($classes_)"/>
5695
+
5696
+ <xsl:for-each select="$classes/item">
5697
+ <xsl:variable name="class_name" select="."/>
5698
+ <xsl:for-each select="$syntax_highlight_styles/style[@class = $class_name]/@*[not(local-name() = 'class')]">
5699
+ <xsl:attribute name="{local-name()}"><xsl:value-of select="."/></xsl:attribute>
5700
+ </xsl:for-each>
5701
+ </xsl:for-each>
5702
+
5703
+ <!-- <xsl:variable name="class_name">
5704
+ <xsl:choose>
5705
+ <xsl:when test="@class = 'hljs-attr' and ancestor::*/@class = 'hljs-tag'">hljs-tag_hljs-attr</xsl:when>
5706
+ <xsl:when test="@class = 'hljs-name' and ancestor::*/@class = 'hljs-tag'">hljs-tag_hljs-name</xsl:when>
5707
+ <xsl:when test="@class = 'hljs-string' and ancestor::*/@class = 'hljs-meta'">hljs-meta_hljs-string</xsl:when>
5708
+ <xsl:otherwise><xsl:value-of select="@class"/></xsl:otherwise>
5709
+ </xsl:choose>
5710
+ </xsl:variable>
5711
+ <xsl:for-each select="$syntax_highlight_styles/style[@class = $class_name]/@*[not(local-name() = 'class')]">
5712
+ <xsl:attribute name="{local-name()}"><xsl:value-of select="."/></xsl:attribute>
5713
+ </xsl:for-each> -->
5714
+
5715
+ <xsl:apply-templates mode="syntax_highlight"/></fo:inline>
5716
+ </xsl:template><xsl:template match="text()" mode="syntax_highlight" priority="2">
5717
+ <xsl:call-template name="add_spaces_to_sourcecode"/>
5423
5718
  </xsl:template><xsl:template match="*[local-name() = 'sourcecode']/*[local-name() = 'name']">
5424
5719
  <xsl:if test="normalize-space() != ''">
5425
5720
  <fo:block xsl:use-attribute-sets="sourcecode-name-style">
@@ -5800,11 +6095,14 @@
5800
6095
 
5801
6096
 
5802
6097
  <fo:block-container margin-left="0mm">
5803
-
5804
- <fo:block xsl:use-attribute-sets="quote-style">
6098
+ <fo:block-container xsl:use-attribute-sets="quote-style">
5805
6099
 
5806
- <xsl:apply-templates select="./node()[not(local-name() = 'author') and not(local-name() = 'source')]"/> <!-- process all nested nodes, except author and source -->
5807
- </fo:block>
6100
+ <fo:block-container margin-left="0mm" margin-right="0mm">
6101
+ <fo:block role="BlockQuote">
6102
+ <xsl:apply-templates select="./node()[not(local-name() = 'author') and not(local-name() = 'source')]"/> <!-- process all nested nodes, except author and source -->
6103
+ </fo:block>
6104
+ </fo:block-container>
6105
+ </fo:block-container>
5808
6106
  <xsl:if test="*[local-name() = 'author'] or *[local-name() = 'source']">
5809
6107
  <fo:block xsl:use-attribute-sets="quote-source-style">
5810
6108
  <!-- — ISO, ISO 7301:2011, Clause 1 -->
@@ -5944,6 +6242,31 @@
5944
6242
  <xsl:with-param name="count" select="$count - 1"/>
5945
6243
  </xsl:call-template>
5946
6244
  </xsl:if>
6245
+ </xsl:template><xsl:template match="*[local-name() = 'preferred']">
6246
+ <xsl:variable name="level">
6247
+ <xsl:call-template name="getLevel"/>
6248
+ </xsl:variable>
6249
+ <xsl:variable name="font-size">
6250
+ inherit
6251
+ </xsl:variable>
6252
+ <xsl:variable name="levelTerm">
6253
+ <xsl:call-template name="getLevelTermName"/>
6254
+ </xsl:variable>
6255
+ <fo:block font-size="{normalize-space($font-size)}" role="H{$levelTerm}" xsl:use-attribute-sets="preferred-block-style">
6256
+
6257
+
6258
+
6259
+ <xsl:if test="parent::*[local-name() = 'term'] and not(preceding-sibling::*[local-name() = 'preferred'])"> <!-- if first preffered in term, then display term's name -->
6260
+ <fo:block xsl:use-attribute-sets="term-name-style">
6261
+ <xsl:apply-templates select="ancestor::*[local-name() = 'term'][1]/*[local-name() = 'name']"/>
6262
+ </fo:block>
6263
+ </xsl:if>
6264
+
6265
+ <fo:block xsl:use-attribute-sets="preferred-term-style">
6266
+ <xsl:call-template name="setStyle_preferred"/>
6267
+ <xsl:apply-templates/>
6268
+ </fo:block>
6269
+ </fo:block>
5947
6270
  </xsl:template><xsl:template match="*[local-name() = 'domain']">
5948
6271
  <fo:inline xsl:use-attribute-sets="domain-style">&lt;<xsl:apply-templates/>&gt;</fo:inline>
5949
6272
  <xsl:text> </xsl:text>
@@ -6032,26 +6355,10 @@
6032
6355
  <xsl:value-of select="java:replaceAll(java:java.lang.String.new(.),' ',' ')"/>
6033
6356
  </xsl:template><xsl:variable name="ul_labels_">
6034
6357
 
6035
-
6036
-
6037
-
6038
-
6039
-
6040
-
6041
-
6042
-
6043
-
6044
-
6045
-
6046
-
6047
-
6048
-
6049
- <label level="1" font-size="75%">o</label> <!-- white circle -->
6050
- <label level="2">—</label> <!-- em dash -->
6051
- <label level="3" font-size="140%">•</label> <!-- bullet -->
6052
-
6053
-
6054
-
6358
+ <label level="1" font-size="75%">o</label> <!-- white circle -->
6359
+ <label level="2">—</label> <!-- em dash -->
6360
+ <label level="3" font-size="140%">•</label> <!-- bullet -->
6361
+
6055
6362
  </xsl:variable><xsl:variable name="ul_labels" select="xalan:nodeset($ul_labels_)"/><xsl:template name="setULLabel">
6056
6363
  <xsl:variable name="list_level_" select="count(ancestor::*[local-name() = 'ul']) + count(ancestor::*[local-name() = 'ol'])"/>
6057
6364
  <xsl:variable name="list_level">
@@ -6077,6 +6384,91 @@
6077
6384
  </xsl:template><xsl:template match="label" mode="ul_labels">
6078
6385
  <xsl:copy-of select="@*[not(local-name() = 'level')]"/>
6079
6386
  <xsl:value-of select="."/>
6387
+ </xsl:template><xsl:template name="getListItemFormat">
6388
+ <!-- Example: for BSI <?list-type loweralpha?> -->
6389
+ <xsl:variable name="processing_instruction_type" select="normalize-space(../preceding-sibling::*[1]/processing-instruction('list-type'))"/>
6390
+ <xsl:choose>
6391
+ <xsl:when test="local-name(..) = 'ul'">
6392
+ <xsl:choose>
6393
+ <xsl:when test="normalize-space($processing_instruction_type) = 'simple'"/>
6394
+ <xsl:otherwise><xsl:call-template name="setULLabel"/></xsl:otherwise>
6395
+ </xsl:choose>
6396
+ </xsl:when>
6397
+ <xsl:otherwise> <!-- for ordered lists 'ol' -->
6398
+
6399
+ <!-- Example: for BSI <?list-start 2?> -->
6400
+ <xsl:variable name="processing_instruction_start" select="normalize-space(../preceding-sibling::*[1]/processing-instruction('list-start'))"/>
6401
+
6402
+ <xsl:variable name="start_value">
6403
+ <xsl:choose>
6404
+ <xsl:when test="normalize-space($processing_instruction_start) != ''">
6405
+ <xsl:value-of select="number($processing_instruction_start) - 1"/><!-- if start="3" then start_value=2 + xsl:number(1) = 3 -->
6406
+ </xsl:when>
6407
+ <xsl:when test="normalize-space(../@start) != ''">
6408
+ <xsl:value-of select="number(../@start) - 1"/><!-- if start="3" then start_value=2 + xsl:number(1) = 3 -->
6409
+ </xsl:when>
6410
+ <xsl:otherwise>0</xsl:otherwise>
6411
+ </xsl:choose>
6412
+ </xsl:variable>
6413
+
6414
+ <xsl:variable name="curr_value"><xsl:number/></xsl:variable>
6415
+
6416
+ <xsl:variable name="type">
6417
+ <xsl:choose>
6418
+ <xsl:when test="normalize-space($processing_instruction_type) != ''"><xsl:value-of select="$processing_instruction_type"/></xsl:when>
6419
+ <xsl:when test="normalize-space(../@type) != ''"><xsl:value-of select="../@type"/></xsl:when>
6420
+
6421
+ <xsl:otherwise> <!-- if no @type or @class = 'steps' -->
6422
+
6423
+ <xsl:variable name="list_level_" select="count(ancestor::*[local-name() = 'ul']) + count(ancestor::*[local-name() = 'ol'])"/>
6424
+ <xsl:variable name="list_level">
6425
+ <xsl:choose>
6426
+ <xsl:when test="$list_level_ &lt;= 5"><xsl:value-of select="$list_level_"/></xsl:when>
6427
+ <xsl:otherwise><xsl:value-of select="$list_level_ mod 5"/></xsl:otherwise>
6428
+ </xsl:choose>
6429
+ </xsl:variable>
6430
+
6431
+ <xsl:choose>
6432
+ <xsl:when test="$list_level mod 5 = 0">roman_upper</xsl:when> <!-- level 5 -->
6433
+ <xsl:when test="$list_level mod 4 = 0">alphabet_upper</xsl:when> <!-- level 4 -->
6434
+ <xsl:when test="$list_level mod 3 = 0">roman</xsl:when> <!-- level 3 -->
6435
+ <xsl:when test="$list_level mod 2 = 0 and ancestor::*/@class = 'steps'">alphabet</xsl:when> <!-- level 2 and @class = 'steps'-->
6436
+ <xsl:when test="$list_level mod 2 = 0">arabic</xsl:when> <!-- level 2 -->
6437
+ <xsl:otherwise> <!-- level 1 -->
6438
+ <xsl:choose>
6439
+ <xsl:when test="ancestor::*/@class = 'steps'">arabic</xsl:when>
6440
+ <xsl:otherwise>alphabet</xsl:otherwise>
6441
+ </xsl:choose>
6442
+ </xsl:otherwise>
6443
+ </xsl:choose>
6444
+
6445
+ </xsl:otherwise>
6446
+ </xsl:choose>
6447
+ </xsl:variable>
6448
+
6449
+ <xsl:variable name="format">
6450
+ <xsl:choose>
6451
+ <xsl:when test="$type = 'arabic'">
6452
+ 1.
6453
+ </xsl:when>
6454
+ <xsl:when test="$type = 'alphabet'">
6455
+ a.
6456
+ </xsl:when>
6457
+ <xsl:when test="$type = 'alphabet_upper'">
6458
+ A.
6459
+ </xsl:when>
6460
+ <xsl:when test="$type = 'roman'">
6461
+ i.
6462
+ </xsl:when>
6463
+ <xsl:when test="$type = 'roman_upper'">I.</xsl:when>
6464
+ <xsl:otherwise>1.</xsl:otherwise> <!-- for any case, if $type has non-determined value, not using -->
6465
+ </xsl:choose>
6466
+ </xsl:variable>
6467
+
6468
+ <xsl:number value="$start_value + $curr_value" format="{normalize-space($format)}" lang="en"/>
6469
+
6470
+ </xsl:otherwise>
6471
+ </xsl:choose>
6080
6472
  </xsl:template><xsl:template match="*[local-name() = 'ul'] | *[local-name() = 'ol']">
6081
6473
  <xsl:choose>
6082
6474
  <xsl:when test="parent::*[local-name() = 'note'] or parent::*[local-name() = 'termnote']">
@@ -6092,18 +6484,66 @@
6092
6484
 
6093
6485
  <fo:block-container margin-left="0mm">
6094
6486
  <fo:block>
6095
- <xsl:apply-templates select="." mode="ul_ol"/>
6487
+ <xsl:apply-templates select="." mode="list"/>
6096
6488
  </fo:block>
6097
6489
  </fo:block-container>
6098
6490
  </fo:block-container>
6099
6491
  </xsl:when>
6100
6492
  <xsl:otherwise>
6101
6493
  <fo:block>
6102
- <xsl:apply-templates select="." mode="ul_ol"/>
6494
+ <xsl:apply-templates select="." mode="list"/>
6103
6495
  </fo:block>
6104
6496
  </xsl:otherwise>
6105
6497
  </xsl:choose>
6106
- </xsl:template><xsl:variable name="index" select="document($external_index)"/><xsl:variable name="dash" select="'–'"/><xsl:variable name="bookmark_in_fn">
6498
+ </xsl:template><xsl:template match="*[local-name()='ul'] | *[local-name()='ol']" mode="list" name="list">
6499
+ <fo:list-block xsl:use-attribute-sets="list-style">
6500
+
6501
+
6502
+
6503
+
6504
+
6505
+
6506
+
6507
+
6508
+
6509
+ <xsl:apply-templates select="node()[not(local-name() = 'note')]"/>
6510
+ </fo:list-block>
6511
+ <!-- <xsl:for-each select="./iho:note">
6512
+ <xsl:call-template name="note"/>
6513
+ </xsl:for-each> -->
6514
+ <xsl:apply-templates select="./*[local-name() = 'note']"/>
6515
+ </xsl:template><xsl:template match="*[local-name()='li']">
6516
+ <fo:list-item xsl:use-attribute-sets="list-item-style">
6517
+ <xsl:copy-of select="@id"/>
6518
+
6519
+
6520
+
6521
+ <fo:list-item-label end-indent="label-end()">
6522
+ <fo:block xsl:use-attribute-sets="list-item-label-style">
6523
+
6524
+
6525
+
6526
+ <xsl:call-template name="getListItemFormat"/>
6527
+ </fo:block>
6528
+ </fo:list-item-label>
6529
+ <fo:list-item-body start-indent="body-start()" xsl:use-attribute-sets="list-item-body-style">
6530
+ <fo:block>
6531
+
6532
+
6533
+
6534
+
6535
+
6536
+ <xsl:apply-templates/>
6537
+
6538
+ <!-- <xsl:apply-templates select="node()[not(local-name() = 'note')]" />
6539
+
6540
+ <xsl:for-each select="./bsi:note">
6541
+ <xsl:call-template name="note"/>
6542
+ </xsl:for-each> -->
6543
+ </fo:block>
6544
+ </fo:list-item-body>
6545
+ </fo:list-item>
6546
+ </xsl:template><xsl:variable name="index" select="document($external_index)"/><xsl:variable name="bookmark_in_fn">
6107
6547
  <xsl:for-each select="//*[local-name() = 'bookmark'][ancestor::*[local-name() = 'fn']]">
6108
6548
  <bookmark><xsl:value-of select="@id"/></bookmark>
6109
6549
  </xsl:for-each>
@@ -6125,7 +6565,7 @@
6125
6565
  <!-- split <xref target="bm1" to="End" pagenumber="true"> to two xref:
6126
6566
  <xref target="bm1" pagenumber="true"> and <xref target="End" pagenumber="true"> -->
6127
6567
  <xsl:if test="@to">
6128
- <xsl:value-of select="$dash"/>
6568
+ <xsl:value-of select="$en_dash"/>
6129
6569
  <xsl:copy>
6130
6570
  <xsl:copy-of select="@*"/>
6131
6571
  <xsl:attribute name="target"><xsl:value-of select="@to"/></xsl:attribute>
@@ -6150,7 +6590,7 @@
6150
6590
  <xsl:param name="target"/>
6151
6591
  <!-- <node></node> -->
6152
6592
  <xsl:choose>
6153
- <xsl:when test="self::text() and (normalize-space(.) = ',' or normalize-space(.) = $dash) and $remove = 'true'">
6593
+ <xsl:when test="self::text() and (normalize-space(.) = ',' or normalize-space(.) = $en_dash) and $remove = 'true'">
6154
6594
  <!-- skip text (i.e. remove it) and process next element -->
6155
6595
  <!-- [removed_<xsl:value-of select="."/>] -->
6156
6596
  <xsl:apply-templates select="following-sibling::node()[1]" mode="process_li_element">
@@ -6234,12 +6674,22 @@
6234
6674
  </xsl:variable>
6235
6675
  <xsl:variable name="xref_number"><xsl:number count="*[local-name() = 'xref']"/></xsl:variable>
6236
6676
  <xsl:value-of select="concat($docid, '_', $item_number, '_', $xref_number)"/> <!-- $level, '_', -->
6677
+ </xsl:template><xsl:template match="*[local-name() = 'indexsect']/*[local-name() = 'title']" priority="4">
6678
+ <fo:block xsl:use-attribute-sets="indexsect-title-style">
6679
+ <!-- Index -->
6680
+ <xsl:apply-templates/>
6681
+ </fo:block>
6682
+ </xsl:template><xsl:template match="*[local-name() = 'indexsect']/*[local-name() = 'clause']/*[local-name() = 'title']" priority="4">
6683
+ <!-- Letter A, B, C, ... -->
6684
+ <fo:block xsl:use-attribute-sets="indexsect-clause-title-style">
6685
+ <xsl:apply-templates/>
6686
+ </fo:block>
6237
6687
  </xsl:template><xsl:template match="*[local-name() = 'indexsect']/*[local-name() = 'clause']" priority="4">
6238
6688
  <xsl:apply-templates/>
6239
6689
  <fo:block>
6240
- <xsl:if test="following-sibling::*[local-name() = 'clause']">
6241
- <fo:block> </fo:block>
6242
- </xsl:if>
6690
+ <xsl:if test="following-sibling::*[local-name() = 'clause']">
6691
+ <fo:block> </fo:block>
6692
+ </xsl:if>
6243
6693
  </fo:block>
6244
6694
  </xsl:template><xsl:template match="*[local-name() = 'indexsect']//*[local-name() = 'ul']" priority="4">
6245
6695
  <xsl:apply-templates/>
@@ -6249,6 +6699,9 @@
6249
6699
 
6250
6700
  <xsl:apply-templates/>
6251
6701
  </fo:block>
6702
+ </xsl:template><xsl:template match="*[local-name() = 'indexsect']//*[local-name() = 'li']/text()">
6703
+ <!-- to split by '_' and other chars -->
6704
+ <xsl:call-template name="add-zero-spaces-java"/>
6252
6705
  </xsl:template><xsl:template match="*[local-name() = 'bookmark']" name="bookmark">
6253
6706
  <fo:inline id="{@id}" font-size="1pt"/>
6254
6707
  </xsl:template><xsl:template match="*[local-name() = 'errata']">
@@ -6607,7 +7060,7 @@
6607
7060
  </fo:table-body>
6608
7061
  </fo:table>
6609
7062
  </fo:block>
6610
- </xsl:template><xsl:template match="*[local-name() = 'toc']//*[local-name() = 'li']">
7063
+ </xsl:template><xsl:template match="*[local-name() = 'toc']//*[local-name() = 'li']" priority="2">
6611
7064
  <fo:table-row min-height="5mm">
6612
7065
  <xsl:apply-templates/>
6613
7066
  </fo:table-row>
@@ -6840,9 +7293,6 @@
6840
7293
  <xsl:otherwise><xsl:value-of select="$charAtEnd"/></xsl:otherwise>
6841
7294
  </xsl:choose>
6842
7295
  </xsl:template><xsl:template name="addPDFUAmeta">
6843
- <xsl:variable name="lang">
6844
- <xsl:call-template name="getLang"/>
6845
- </xsl:variable>
6846
7296
  <pdf:catalog xmlns:pdf="http://xmlgraphics.apache.org/fop/extensions/pdf">
6847
7297
  <pdf:dictionary type="normal" key="ViewerPreferences">
6848
7298
  <pdf:boolean key="DisplayDocTitle">true</pdf:boolean>
@@ -7070,10 +7520,12 @@
7070
7520
  <xsl:param name="key"/>
7071
7521
  <xsl:param name="formatted">false</xsl:param>
7072
7522
  <xsl:param name="lang"/>
7523
+ <xsl:param name="returnEmptyIfNotFound">false</xsl:param>
7073
7524
 
7074
7525
  <xsl:variable name="curr_lang">
7075
7526
  <xsl:choose>
7076
7527
  <xsl:when test="$lang != ''"><xsl:value-of select="$lang"/></xsl:when>
7528
+ <xsl:when test="$returnEmptyIfNotFound = 'true'"/>
7077
7529
  <xsl:otherwise>
7078
7530
  <xsl:call-template name="getLang"/>
7079
7531
  </xsl:otherwise>
@@ -7108,6 +7560,7 @@
7108
7560
  </xsl:otherwise>
7109
7561
  </xsl:choose>
7110
7562
  </xsl:when>
7563
+ <xsl:when test="$returnEmptyIfNotFound = 'true'"/>
7111
7564
  <xsl:otherwise>
7112
7565
  <xsl:variable name="key_">
7113
7566
  <xsl:call-template name="capitalize">
@@ -173,9 +173,11 @@
173
173
  <data type="dateTime"/>
174
174
  </attribute>
175
175
  </optional>
176
- <attribute name="from">
177
- <data type="IDREF"/>
178
- </attribute>
176
+ <optional>
177
+ <attribute name="from">
178
+ <data type="IDREF"/>
179
+ </attribute>
180
+ </optional>
179
181
  <optional>
180
182
  <attribute name="to">
181
183
  <data type="IDREF"/>
@@ -209,9 +209,6 @@
209
209
  <zeroOrMore>
210
210
  <ref name="contact"/>
211
211
  </zeroOrMore>
212
- <zeroOrMore>
213
- <ref name="uri"/>
214
- </zeroOrMore>
215
212
  </element>
216
213
  </define>
217
214
  <define name="fullname">
@@ -828,6 +825,11 @@
828
825
  <optional>
829
826
  <attribute name="scope"/>
830
827
  </optional>
828
+ <optional>
829
+ <attribute name="primary">
830
+ <data type="boolean"/>
831
+ </attribute>
832
+ </optional>
831
833
  <text/>
832
834
  </element>
833
835
  </define>
@@ -1,5 +1,5 @@
1
1
  module Metanorma
2
2
  module Ribose
3
- VERSION = "2.0.2".freeze
3
+ VERSION = "2.0.3".freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metanorma-ribose
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.2
4
+ version: 2.0.3
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-01-22 00:00:00.000000000 Z
11
+ date: 2022-02-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: metanorma-generic