metanorma-ribose 2.0.2 → 2.0.3

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: 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