metanorma-ribose 2.0.3 → 2.0.4

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: afce4df8078e939307df9a38c0cb603dcf2a74a9cfadb767d0aa9384eb563456
4
- data.tar.gz: 32135eb6eb812c9cea21c521aa1905c388ee07a179253db796c21b2de4acd9c5
3
+ metadata.gz: 9a21ab68ff679fa7e137987eb42da1fe84a3395e0aa4289464a689a7601c2584
4
+ data.tar.gz: 5c241f3b5a64623f02d3fd82e48cb9f99da6dd1d3bde0a00aba4932418d31483
5
5
  SHA512:
6
- metadata.gz: a2671c7646f5be2bab152569e1d2309e66c98ca46b5e1e4a345c1c13be7babc79aebfa9b02b12ebd561c517b9bdb3f5afd8dce91bfd7f4cfb93e1f171c45807c
7
- data.tar.gz: dea9e8f36d6fbf625921edb5535c06111995f8dcd7271fb2c077346b7b26f4b5e4319e7d8e185b8c98c2f16f4f5526ec94ee8fff1959a319a16ed7d6cd7a5503
6
+ metadata.gz: 24cc694393250970b0c8db8374d7be4c52b3ca473d42cb5e6d1ff6a223d25aa534d435816e0e354dd5b59fcfddab7e10038c478c884d1aa6ce603cd4e2d58b66
7
+ data.tar.gz: 11d88a39e147a99cf54fa845f58b69284681483a45f737c5cc83eccbf7cb624aa1cc3f907f17fd87b6af4c1d264319677294427de903b3cf170c1b365b418045
@@ -1189,6 +1189,10 @@
1189
1189
  <xsl:text>Édition </xsl:text>
1190
1190
  </title-edition>
1191
1191
 
1192
+ <title-edition lang="ru">
1193
+ <xsl:text>Издание </xsl:text>
1194
+ </title-edition>
1195
+
1192
1196
  <!-- These titles of Table of contents renders different than determined in localized-strings -->
1193
1197
  <title-toc lang="en">
1194
1198
 
@@ -1215,7 +1219,11 @@
1215
1219
 
1216
1220
 
1217
1221
 
1218
- </title-part>
1222
+ </title-part>
1223
+ <title-part lang="ru">
1224
+
1225
+
1226
+ </title-part>
1219
1227
  <title-part lang="zh">第 # 部分:</title-part>
1220
1228
 
1221
1229
  <title-subpart lang="en">Sub-part #</title-subpart>
@@ -1231,6 +1239,7 @@
1231
1239
 
1232
1240
  <title-summary lang="en">Summary</title-summary>
1233
1241
 
1242
+ <title-continued lang="ru">(продолжение)</title-continued>
1234
1243
  <title-continued lang="en">(continued)</title-continued>
1235
1244
  <title-continued lang="fr">(continué)</title-continued>
1236
1245
 
@@ -2036,13 +2045,19 @@
2036
2045
  </xsl:attribute-set><xsl:variable name="color-added-text">
2037
2046
  <xsl:text>rgb(0, 255, 0)</xsl:text>
2038
2047
  </xsl:variable><xsl:attribute-set name="add-style">
2039
- <xsl:attribute name="color">red</xsl:attribute>
2040
- <xsl:attribute name="text-decoration">underline</xsl:attribute>
2041
- <!-- <xsl:attribute name="color">black</xsl:attribute>
2042
- <xsl:attribute name="background-color"><xsl:value-of select="$color-added-text"/></xsl:attribute>
2043
- <xsl:attribute name="padding-top">1mm</xsl:attribute>
2044
- <xsl:attribute name="padding-bottom">0.5mm</xsl:attribute> -->
2045
- </xsl:attribute-set><xsl:variable name="color-deleted-text">
2048
+
2049
+ <xsl:attribute name="color">red</xsl:attribute>
2050
+ <xsl:attribute name="text-decoration">underline</xsl:attribute>
2051
+ <!-- <xsl:attribute name="color">black</xsl:attribute>
2052
+ <xsl:attribute name="background-color"><xsl:value-of select="$color-added-text"/></xsl:attribute>
2053
+ <xsl:attribute name="padding-top">1mm</xsl:attribute>
2054
+ <xsl:attribute name="padding-bottom">0.5mm</xsl:attribute> -->
2055
+
2056
+ </xsl:attribute-set><xsl:variable name="add-style">
2057
+ <add-style xsl:use-attribute-sets="add-style"/>
2058
+ </xsl:variable><xsl:template name="append_add-style">
2059
+ <xsl:copy-of select="xalan:nodeset($add-style)/add-style/@*"/>
2060
+ </xsl:template><xsl:variable name="color-deleted-text">
2046
2061
  <xsl:text>red</xsl:text>
2047
2062
  </xsl:variable><xsl:attribute-set name="del-style">
2048
2063
  <xsl:attribute name="color"><xsl:value-of select="$color-deleted-text"/></xsl:attribute>
@@ -2488,14 +2503,42 @@
2488
2503
 
2489
2504
 
2490
2505
  </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">
2506
+ <xsl:variable name="nodes_preface_">
2507
+ <xsl:for-each select="/*/*[local-name()='preface']/*">
2508
+ <node id="{@id}"/>
2509
+ </xsl:for-each>
2510
+ </xsl:variable>
2511
+ <xsl:variable name="nodes_preface" select="xalan:nodeset($nodes_preface_)"/>
2512
+
2491
2513
  <xsl:for-each select="/*/*[local-name()='preface']/*">
2492
2514
  <xsl:sort select="@displayorder" data-type="number"/>
2515
+
2516
+ <!-- process Section's title -->
2517
+ <xsl:variable name="preceding-sibling_id" select="$nodes_preface/node[@id = current()/@id]/preceding-sibling::node[1]/@id"/>
2518
+ <xsl:if test="$preceding-sibling_id != ''">
2519
+ <xsl:apply-templates select="parent::*/*[@type = 'section-title' and @id = $preceding-sibling_id and not(@displayorder)]" mode="contents_no_displayorder"/>
2520
+ </xsl:if>
2521
+
2493
2522
  <xsl:apply-templates select="." mode="contents"/>
2494
2523
  </xsl:for-each>
2495
2524
  </xsl:template><xsl:template name="processMainSectionsDefault_Contents">
2496
2525
 
2526
+ <xsl:variable name="nodes_sections_">
2527
+ <xsl:for-each select="/*/*[local-name()='sections']/*">
2528
+ <node id="{@id}"/>
2529
+ </xsl:for-each>
2530
+ </xsl:variable>
2531
+ <xsl:variable name="nodes_sections" select="xalan:nodeset($nodes_sections_)"/>
2532
+
2497
2533
  <xsl:for-each select="/*/*[local-name()='sections']/* | /*/*[local-name()='bibliography']/*[local-name()='references'][@normative='true'] | /*/*[local-name()='bibliography']/*[local-name()='clause'][*[local-name()='references'][@normative='true']]">
2498
2534
  <xsl:sort select="@displayorder" data-type="number"/>
2535
+
2536
+ <!-- process Section's title -->
2537
+ <xsl:variable name="preceding-sibling_id" select="$nodes_sections/node[@id = current()/@id]/preceding-sibling::node[1]/@id"/>
2538
+ <xsl:if test="$preceding-sibling_id != ''">
2539
+ <xsl:apply-templates select="parent::*/*[@type = 'section-title' and @id = $preceding-sibling_id and not(@displayorder)]" mode="contents_no_displayorder"/>
2540
+ </xsl:if>
2541
+
2499
2542
  <xsl:apply-templates select="." mode="contents"/>
2500
2543
  </xsl:for-each>
2501
2544
 
@@ -2637,7 +2680,7 @@
2637
2680
  </xsl:call-template>
2638
2681
  </xsl:if>
2639
2682
  </xsl:variable>
2640
- <!-- colwidths=<xsl:copy-of select="$colwidths"/> -->
2683
+ <!-- DEBUG colwidths=<xsl:copy-of select="$colwidths"/> -->
2641
2684
 
2642
2685
 
2643
2686
  <xsl:variable name="margin-side">
@@ -2897,7 +2940,7 @@
2897
2940
  <!-- <xsl:with-param name="text" select="translate(td[$curr-col],'- —:', ' ')"/> -->
2898
2941
  <!-- 2009 thinspace -->
2899
2942
  <!-- <xsl:with-param name="text" select="translate(normalize-space($td_text),'- —:', ' ')"/> -->
2900
- <xsl:with-param name="text" select="normalize-space(translate($string_with_added_zerospaces, '', ' '))"/>
2943
+ <xsl:with-param name="text" select="normalize-space(translate($string_with_added_zerospaces, '​­', ' '))"/> <!-- replace zero-width-space and soft-hyphen to space -->
2901
2944
  </xsl:call-template>
2902
2945
  </xsl:variable>
2903
2946
  <xsl:variable name="max_length">
@@ -4545,6 +4588,9 @@
4545
4588
  </fo:inline>
4546
4589
  </xsl:template><xsl:template match="*[local-name() = 'xref']">
4547
4590
  <fo:basic-link internal-destination="{@target}" fox:alt-text="{@target}" xsl:use-attribute-sets="xref-style">
4591
+ <xsl:if test="parent::*[local-name() = 'add']">
4592
+ <xsl:call-template name="append_add-style"/>
4593
+ </xsl:if>
4548
4594
  <xsl:apply-templates/>
4549
4595
  </fo:basic-link>
4550
4596
  </xsl:template><xsl:template match="*[local-name() = 'formula']" name="formula">
@@ -4647,6 +4693,13 @@
4647
4693
 
4648
4694
 
4649
4695
 
4696
+ <!-- if 'p' contains all text in 'add' first and last elements in first p are 'add' -->
4697
+ <!-- <xsl:if test="*[not(local-name()='name')][1][node()[normalize-space() != ''][1][local-name() = 'add'] and node()[normalize-space() != ''][last()][local-name() = 'add']]"> -->
4698
+ <xsl:if test="*[not(local-name()='name')][1][count(node()[normalize-space() != '']) = 1 and *[local-name() = 'add']]">
4699
+ <xsl:call-template name="append_add-style"/>
4700
+ </xsl:if>
4701
+
4702
+
4650
4703
  <!-- if note contains only one element and first and last childs are `add` ace-tag, then move start ace-tag before NOTE's name-->
4651
4704
  <xsl:if test="count(*[not(local-name() = 'name')]) = 1 and *[not(local-name() = 'name')]/node()[last()][local-name() = 'add'][starts-with(text(), $ace_tag)]">
4652
4705
  <xsl:apply-templates select="*[not(local-name() = 'name')]/node()[1][local-name() = 'add'][starts-with(text(), $ace_tag)]">
@@ -4685,6 +4738,12 @@
4685
4738
 
4686
4739
 
4687
4740
 
4741
+ <!-- if 'p' contains all text in 'add' first and last elements in first p are 'add' -->
4742
+ <!-- <xsl:if test="*[not(local-name()='name')][1][node()[normalize-space() != ''][1][local-name() = 'add'] and node()[normalize-space() != ''][last()][local-name() = 'add']]"> -->
4743
+ <xsl:if test="*[not(local-name()='name')][1][count(node()[normalize-space() != '']) = 1 and *[local-name() = 'add']]">
4744
+ <xsl:call-template name="append_add-style"/>
4745
+ </xsl:if>
4746
+
4688
4747
  <xsl:apply-templates select="*[local-name() = 'name']"/>
4689
4748
 
4690
4749
  </fo:inline>
@@ -4738,6 +4797,7 @@
4738
4797
  </fo:block>
4739
4798
  </xsl:template><xsl:template match="*[local-name() = 'term']">
4740
4799
  <fo:block id="{@id}" xsl:use-attribute-sets="term-style">
4800
+
4741
4801
 
4742
4802
 
4743
4803
 
@@ -5174,7 +5234,11 @@
5174
5234
  <xsl:value-of select="."/>
5175
5235
  </xsl:template><xsl:template match="node()" mode="contents">
5176
5236
  <xsl:apply-templates mode="contents"/>
5177
- </xsl:template><xsl:template match="*[local-name() = 'p'][@type = 'floating-title' or @type = 'section-title']" priority="2" mode="contents">
5237
+ </xsl:template><xsl:template match="*[local-name() = 'preface' or local-name() = 'sections']/*[local-name() = 'p'][@type = 'section-title' and not(@displayorder)]" priority="3" mode="contents"/><xsl:template match="*[local-name() = 'p'][@type = 'section-title' and not(@displayorder)]" mode="contents_no_displayorder">
5238
+ <xsl:call-template name="contents_section-title"/>
5239
+ </xsl:template><xsl:template match="*[local-name() = 'p'][@type = 'section-title']" mode="contents_in_clause">
5240
+ <xsl:call-template name="contents_section-title"/>
5241
+ </xsl:template><xsl:template match="*[local-name() = 'clause']/*[local-name() = 'p'][@type = 'section-title' and (@depth != ../*[local-name() = 'title']/@depth or ../*[local-name() = 'title']/@depth = 1)]" priority="3" mode="contents"/><xsl:template match="*[local-name() = 'p'][@type = 'floating-title' or @type = 'section-title']" priority="2" name="contents_section-title" mode="contents">
5178
5242
  <xsl:variable name="level">
5179
5243
  <xsl:call-template name="getLevel">
5180
5244
  <xsl:with-param name="depth" select="@depth"/>
@@ -6505,7 +6569,7 @@
6505
6569
 
6506
6570
 
6507
6571
 
6508
-
6572
+
6509
6573
  <xsl:apply-templates select="node()[not(local-name() = 'note')]"/>
6510
6574
  </fo:list-block>
6511
6575
  <!-- <xsl:for-each select="./iho:note">
@@ -6523,6 +6587,11 @@
6523
6587
 
6524
6588
 
6525
6589
 
6590
+ <!-- if 'p' contains all text in 'add' first and last elements in first p are 'add' -->
6591
+ <xsl:if test="*[1][count(node()[normalize-space() != '']) = 1 and *[local-name() = 'add']]">
6592
+ <xsl:call-template name="append_add-style"/>
6593
+ </xsl:if>
6594
+
6526
6595
  <xsl:call-template name="getListItemFormat"/>
6527
6596
  </fo:block>
6528
6597
  </fo:list-item-label>
@@ -7630,53 +7699,153 @@
7630
7699
  <xsl:param name="first"/>
7631
7700
  <xsl:if test="$number != ''">
7632
7701
  <xsl:variable name="words">
7633
- <words>
7634
- <word cardinal="1">One-</word>
7635
- <word ordinal="1">First </word>
7636
- <word cardinal="2">Two-</word>
7637
- <word ordinal="2">Second </word>
7638
- <word cardinal="3">Three-</word>
7639
- <word ordinal="3">Third </word>
7640
- <word cardinal="4">Four-</word>
7641
- <word ordinal="4">Fourth </word>
7642
- <word cardinal="5">Five-</word>
7643
- <word ordinal="5">Fifth </word>
7644
- <word cardinal="6">Six-</word>
7645
- <word ordinal="6">Sixth </word>
7646
- <word cardinal="7">Seven-</word>
7647
- <word ordinal="7">Seventh </word>
7648
- <word cardinal="8">Eight-</word>
7649
- <word ordinal="8">Eighth </word>
7650
- <word cardinal="9">Nine-</word>
7651
- <word ordinal="9">Ninth </word>
7652
- <word ordinal="10">Tenth </word>
7653
- <word ordinal="11">Eleventh </word>
7654
- <word ordinal="12">Twelfth </word>
7655
- <word ordinal="13">Thirteenth </word>
7656
- <word ordinal="14">Fourteenth </word>
7657
- <word ordinal="15">Fifteenth </word>
7658
- <word ordinal="16">Sixteenth </word>
7659
- <word ordinal="17">Seventeenth </word>
7660
- <word ordinal="18">Eighteenth </word>
7661
- <word ordinal="19">Nineteenth </word>
7662
- <word cardinal="20">Twenty-</word>
7663
- <word ordinal="20">Twentieth </word>
7664
- <word cardinal="30">Thirty-</word>
7665
- <word ordinal="30">Thirtieth </word>
7666
- <word cardinal="40">Forty-</word>
7667
- <word ordinal="40">Fortieth </word>
7668
- <word cardinal="50">Fifty-</word>
7669
- <word ordinal="50">Fiftieth </word>
7670
- <word cardinal="60">Sixty-</word>
7671
- <word ordinal="60">Sixtieth </word>
7672
- <word cardinal="70">Seventy-</word>
7673
- <word ordinal="70">Seventieth </word>
7674
- <word cardinal="80">Eighty-</word>
7675
- <word ordinal="80">Eightieth </word>
7676
- <word cardinal="90">Ninety-</word>
7677
- <word ordinal="90">Ninetieth </word>
7678
- <word cardinal="100">Hundred-</word>
7679
- <word ordinal="100">Hundredth </word>
7702
+ <words>
7703
+ <xsl:choose>
7704
+ <xsl:when test="$lang = 'fr'"> <!-- https://en.wiktionary.org/wiki/Appendix:French_numbers -->
7705
+ <word cardinal="1">Une-</word>
7706
+ <word ordinal="1">Première </word>
7707
+ <word cardinal="2">Deux-</word>
7708
+ <word ordinal="2">Seconde </word>
7709
+ <word cardinal="3">Trois-</word>
7710
+ <word ordinal="3">Tierce </word>
7711
+ <word cardinal="4">Quatre-</word>
7712
+ <word ordinal="4">Quatrième </word>
7713
+ <word cardinal="5">Cinq-</word>
7714
+ <word ordinal="5">Cinquième </word>
7715
+ <word cardinal="6">Six-</word>
7716
+ <word ordinal="6">Sixième </word>
7717
+ <word cardinal="7">Sept-</word>
7718
+ <word ordinal="7">Septième </word>
7719
+ <word cardinal="8">Huit-</word>
7720
+ <word ordinal="8">Huitième </word>
7721
+ <word cardinal="9">Neuf-</word>
7722
+ <word ordinal="9">Neuvième </word>
7723
+ <word ordinal="10">Dixième </word>
7724
+ <word ordinal="11">Onzième </word>
7725
+ <word ordinal="12">Douzième </word>
7726
+ <word ordinal="13">Treizième </word>
7727
+ <word ordinal="14">Quatorzième </word>
7728
+ <word ordinal="15">Quinzième </word>
7729
+ <word ordinal="16">Seizième </word>
7730
+ <word ordinal="17">Dix-septième </word>
7731
+ <word ordinal="18">Dix-huitième </word>
7732
+ <word ordinal="19">Dix-neuvième </word>
7733
+ <word cardinal="20">Vingt-</word>
7734
+ <word ordinal="20">Vingtième </word>
7735
+ <word cardinal="30">Trente-</word>
7736
+ <word ordinal="30">Trentième </word>
7737
+ <word cardinal="40">Quarante-</word>
7738
+ <word ordinal="40">Quarantième </word>
7739
+ <word cardinal="50">Cinquante-</word>
7740
+ <word ordinal="50">Cinquantième </word>
7741
+ <word cardinal="60">Soixante-</word>
7742
+ <word ordinal="60">Soixantième </word>
7743
+ <word cardinal="70">Septante-</word>
7744
+ <word ordinal="70">Septantième </word>
7745
+ <word cardinal="80">Huitante-</word>
7746
+ <word ordinal="80">Huitantième </word>
7747
+ <word cardinal="90">Nonante-</word>
7748
+ <word ordinal="90">Nonantième </word>
7749
+ <word cardinal="100">Cent-</word>
7750
+ <word ordinal="100">Centième </word>
7751
+ </xsl:when>
7752
+ <xsl:when test="$lang = 'ru'">
7753
+ <word cardinal="1">Одна-</word>
7754
+ <word ordinal="1">Первое </word>
7755
+ <word cardinal="2">Две-</word>
7756
+ <word ordinal="2">Второе </word>
7757
+ <word cardinal="3">Три-</word>
7758
+ <word ordinal="3">Третье </word>
7759
+ <word cardinal="4">Четыре-</word>
7760
+ <word ordinal="4">Четвертое </word>
7761
+ <word cardinal="5">Пять-</word>
7762
+ <word ordinal="5">Пятое </word>
7763
+ <word cardinal="6">Шесть-</word>
7764
+ <word ordinal="6">Шестое </word>
7765
+ <word cardinal="7">Семь-</word>
7766
+ <word ordinal="7">Седьмое </word>
7767
+ <word cardinal="8">Восемь-</word>
7768
+ <word ordinal="8">Восьмое </word>
7769
+ <word cardinal="9">Девять-</word>
7770
+ <word ordinal="9">Девятое </word>
7771
+ <word ordinal="10">Десятое </word>
7772
+ <word ordinal="11">Одиннадцатое </word>
7773
+ <word ordinal="12">Двенадцатое </word>
7774
+ <word ordinal="13">Тринадцатое </word>
7775
+ <word ordinal="14">Четырнадцатое </word>
7776
+ <word ordinal="15">Пятнадцатое </word>
7777
+ <word ordinal="16">Шестнадцатое </word>
7778
+ <word ordinal="17">Семнадцатое </word>
7779
+ <word ordinal="18">Восемнадцатое </word>
7780
+ <word ordinal="19">Девятнадцатое </word>
7781
+ <word cardinal="20">Двадцать-</word>
7782
+ <word ordinal="20">Двадцатое </word>
7783
+ <word cardinal="30">Тридцать-</word>
7784
+ <word ordinal="30">Тридцатое </word>
7785
+ <word cardinal="40">Сорок-</word>
7786
+ <word ordinal="40">Сороковое </word>
7787
+ <word cardinal="50">Пятьдесят-</word>
7788
+ <word ordinal="50">Пятидесятое </word>
7789
+ <word cardinal="60">Шестьдесят-</word>
7790
+ <word ordinal="60">Шестидесятое </word>
7791
+ <word cardinal="70">Семьдесят-</word>
7792
+ <word ordinal="70">Семидесятое </word>
7793
+ <word cardinal="80">Восемьдесят-</word>
7794
+ <word ordinal="80">Восьмидесятое </word>
7795
+ <word cardinal="90">Девяносто-</word>
7796
+ <word ordinal="90">Девяностое </word>
7797
+ <word cardinal="100">Сто-</word>
7798
+ <word ordinal="100">Сотое </word>
7799
+ </xsl:when>
7800
+ <xsl:otherwise> <!-- default english -->
7801
+ <word cardinal="1">One-</word>
7802
+ <word ordinal="1">First </word>
7803
+ <word cardinal="2">Two-</word>
7804
+ <word ordinal="2">Second </word>
7805
+ <word cardinal="3">Three-</word>
7806
+ <word ordinal="3">Third </word>
7807
+ <word cardinal="4">Four-</word>
7808
+ <word ordinal="4">Fourth </word>
7809
+ <word cardinal="5">Five-</word>
7810
+ <word ordinal="5">Fifth </word>
7811
+ <word cardinal="6">Six-</word>
7812
+ <word ordinal="6">Sixth </word>
7813
+ <word cardinal="7">Seven-</word>
7814
+ <word ordinal="7">Seventh </word>
7815
+ <word cardinal="8">Eight-</word>
7816
+ <word ordinal="8">Eighth </word>
7817
+ <word cardinal="9">Nine-</word>
7818
+ <word ordinal="9">Ninth </word>
7819
+ <word ordinal="10">Tenth </word>
7820
+ <word ordinal="11">Eleventh </word>
7821
+ <word ordinal="12">Twelfth </word>
7822
+ <word ordinal="13">Thirteenth </word>
7823
+ <word ordinal="14">Fourteenth </word>
7824
+ <word ordinal="15">Fifteenth </word>
7825
+ <word ordinal="16">Sixteenth </word>
7826
+ <word ordinal="17">Seventeenth </word>
7827
+ <word ordinal="18">Eighteenth </word>
7828
+ <word ordinal="19">Nineteenth </word>
7829
+ <word cardinal="20">Twenty-</word>
7830
+ <word ordinal="20">Twentieth </word>
7831
+ <word cardinal="30">Thirty-</word>
7832
+ <word ordinal="30">Thirtieth </word>
7833
+ <word cardinal="40">Forty-</word>
7834
+ <word ordinal="40">Fortieth </word>
7835
+ <word cardinal="50">Fifty-</word>
7836
+ <word ordinal="50">Fiftieth </word>
7837
+ <word cardinal="60">Sixty-</word>
7838
+ <word ordinal="60">Sixtieth </word>
7839
+ <word cardinal="70">Seventy-</word>
7840
+ <word ordinal="70">Seventieth </word>
7841
+ <word cardinal="80">Eighty-</word>
7842
+ <word ordinal="80">Eightieth </word>
7843
+ <word cardinal="90">Ninety-</word>
7844
+ <word ordinal="90">Ninetieth </word>
7845
+ <word cardinal="100">Hundred-</word>
7846
+ <word ordinal="100">Hundredth </word>
7847
+ </xsl:otherwise>
7848
+ </xsl:choose>
7680
7849
  </words>
7681
7850
  </xsl:variable>
7682
7851
 
@@ -7750,4 +7919,18 @@
7750
7919
  <xsl:otherwise>_</xsl:otherwise>
7751
7920
  </xsl:choose>
7752
7921
  </xsl:attribute>
7922
+ </xsl:template><xsl:template name="substring-after-last">
7923
+ <xsl:param name="value"/>
7924
+ <xsl:param name="delimiter"/>
7925
+ <xsl:choose>
7926
+ <xsl:when test="contains($value, $delimiter)">
7927
+ <xsl:call-template name="substring-after-last">
7928
+ <xsl:with-param name="value" select="substring-after($value, $delimiter)"/>
7929
+ <xsl:with-param name="delimiter" select="$delimiter"/>
7930
+ </xsl:call-template>
7931
+ </xsl:when>
7932
+ <xsl:otherwise>
7933
+ <xsl:value-of select="$value"/>
7934
+ </xsl:otherwise>
7935
+ </xsl:choose>
7753
7936
  </xsl:template></xsl:stylesheet>
@@ -152,9 +152,7 @@
152
152
  <data type="boolean"/>
153
153
  </attribute>
154
154
  </optional>
155
- <oneOrMore>
156
- <ref name="PureTextElement"/>
157
- </oneOrMore>
155
+ <ref name="XrefBody"/>
158
156
  </element>
159
157
  </define>
160
158
  <define name="erefType">
@@ -188,6 +186,42 @@
188
186
  <ref name="PureTextElement"/>
189
187
  </oneOrMore>
190
188
  </define>
189
+ <define name="localityStack">
190
+ <element name="localityStack">
191
+ <optional>
192
+ <attribute name="connective">
193
+ <choice>
194
+ <value>and</value>
195
+ <value>or</value>
196
+ <value>from</value>
197
+ <value>to</value>
198
+ <value/>
199
+ </choice>
200
+ </attribute>
201
+ </optional>
202
+ <zeroOrMore>
203
+ <ref name="locality"/>
204
+ </zeroOrMore>
205
+ </element>
206
+ </define>
207
+ <define name="sourceLocalityStack">
208
+ <element name="sourceLocalityStack">
209
+ <optional>
210
+ <attribute name="connective">
211
+ <choice>
212
+ <value>and</value>
213
+ <value>or</value>
214
+ <value>from</value>
215
+ <value>to</value>
216
+ <value/>
217
+ </choice>
218
+ </attribute>
219
+ </optional>
220
+ <zeroOrMore>
221
+ <ref name="sourceLocality"/>
222
+ </zeroOrMore>
223
+ </element>
224
+ </define>
191
225
  <define name="ul">
192
226
  <element name="ul">
193
227
  <attribute name="id">
@@ -1098,6 +1132,16 @@
1098
1132
  </define>
1099
1133
  </include>
1100
1134
  <!-- end overrides -->
1135
+ <define name="image" combine="choice">
1136
+ <element name="svg">
1137
+ <oneOrMore>
1138
+ <choice>
1139
+ <text/>
1140
+ <ref name="AnyElement"/>
1141
+ </choice>
1142
+ </oneOrMore>
1143
+ </element>
1144
+ </define>
1101
1145
  <define name="MultilingualRenderingType">
1102
1146
  <choice>
1103
1147
  <value>common</value>
@@ -2631,4 +2675,30 @@
2631
2675
  </zeroOrMore>
2632
2676
  </element>
2633
2677
  </define>
2678
+ <define name="XrefBody">
2679
+ <zeroOrMore>
2680
+ <ref name="XrefTarget"/>
2681
+ </zeroOrMore>
2682
+ <oneOrMore>
2683
+ <ref name="PureTextElement"/>
2684
+ </oneOrMore>
2685
+ </define>
2686
+ <define name="XrefTarget">
2687
+ <element name="location">
2688
+ <attribute name="target">
2689
+ <data type="string">
2690
+ <param name="pattern">\i\c*|\c+#\c+</param>
2691
+ </data>
2692
+ </attribute>
2693
+ <attribute name="connective">
2694
+ <choice>
2695
+ <value>and</value>
2696
+ <value>or</value>
2697
+ <value>from</value>
2698
+ <value>to</value>
2699
+ <value/>
2700
+ </choice>
2701
+ </attribute>
2702
+ </element>
2703
+ </define>
2634
2704
  </grammar>
@@ -1,5 +1,5 @@
1
1
  module Metanorma
2
2
  module Ribose
3
- VERSION = "2.0.3".freeze
3
+ VERSION = "2.0.4".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.3
4
+ version: 2.0.4
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-02-07 00:00:00.000000000 Z
11
+ date: 2022-02-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: metanorma-generic