metanorma-mpfa 0.8.3 → 0.8.4

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: 74c12240f896cd17a24d51f79fe345f3a15321e5ac77bca73a8915028ad71d11
4
- data.tar.gz: 9977fd7fa0ae0256db7903c69e08242aba0b8144af3169f97ee3849ab80633fd
3
+ metadata.gz: 4bfc9a6602e7570652108c3aa27876f1f96ca82cc2b3f41dfab772af87f4dcd5
4
+ data.tar.gz: 5b55eace081ae9958552a827578938df2ae5c280cabd784909797aceb9aff6cf
5
5
  SHA512:
6
- metadata.gz: 3e25eb1ec4c89e3045d5966336d76ad8a4378bc847590f30bd000de45808dbc6d306957841973d6fa6faae516e03505455e72b89c56490d39551e66ebc25ab56
7
- data.tar.gz: fe35889aee391f71dcfd7ff2edb9da91ad320777e1fc6fde900c4915f663ab3c207d893d001304b18f0da5bfa0297a0b6db19358d40ced24b18885f1f40d2c15
6
+ metadata.gz: d13d00f1c7ec2320bbbdbe24694b755f040ef017031be6010ac6edb7be7b564f96fac143853e2ef195d906c30a098f4e648260a598b68a4638a718202fb3f6b1
7
+ data.tar.gz: 566e952676574550d67bd6592f352c54269cf1c3d57961cc6ba1977ea3057512b55e1363caef53c7492270ff03216c0e7cefb7b0c7713d011e6740b9393fdb6c
@@ -551,6 +551,10 @@
551
551
  <xsl:text>Édition </xsl:text>
552
552
  </title-edition>
553
553
 
554
+ <title-edition lang="ru">
555
+ <xsl:text>Издание </xsl:text>
556
+ </title-edition>
557
+
554
558
  <!-- These titles of Table of contents renders different than determined in localized-strings -->
555
559
  <title-toc lang="en">
556
560
 
@@ -579,7 +583,11 @@
579
583
 
580
584
 
581
585
 
582
- </title-part>
586
+ </title-part>
587
+ <title-part lang="ru">
588
+
589
+
590
+ </title-part>
583
591
  <title-part lang="zh">第 # 部分:</title-part>
584
592
 
585
593
  <title-subpart lang="en">Sub-part #</title-subpart>
@@ -595,6 +603,7 @@
595
603
 
596
604
  <title-summary lang="en">Summary</title-summary>
597
605
 
606
+ <title-continued lang="ru">(продолжение)</title-continued>
598
607
  <title-continued lang="en">(continued)</title-continued>
599
608
  <title-continued lang="fr">(continué)</title-continued>
600
609
 
@@ -1295,13 +1304,19 @@
1295
1304
  </xsl:attribute-set><xsl:variable name="color-added-text">
1296
1305
  <xsl:text>rgb(0, 255, 0)</xsl:text>
1297
1306
  </xsl:variable><xsl:attribute-set name="add-style">
1298
- <xsl:attribute name="color">red</xsl:attribute>
1299
- <xsl:attribute name="text-decoration">underline</xsl:attribute>
1300
- <!-- <xsl:attribute name="color">black</xsl:attribute>
1301
- <xsl:attribute name="background-color"><xsl:value-of select="$color-added-text"/></xsl:attribute>
1302
- <xsl:attribute name="padding-top">1mm</xsl:attribute>
1303
- <xsl:attribute name="padding-bottom">0.5mm</xsl:attribute> -->
1304
- </xsl:attribute-set><xsl:variable name="color-deleted-text">
1307
+
1308
+ <xsl:attribute name="color">red</xsl:attribute>
1309
+ <xsl:attribute name="text-decoration">underline</xsl:attribute>
1310
+ <!-- <xsl:attribute name="color">black</xsl:attribute>
1311
+ <xsl:attribute name="background-color"><xsl:value-of select="$color-added-text"/></xsl:attribute>
1312
+ <xsl:attribute name="padding-top">1mm</xsl:attribute>
1313
+ <xsl:attribute name="padding-bottom">0.5mm</xsl:attribute> -->
1314
+
1315
+ </xsl:attribute-set><xsl:variable name="add-style">
1316
+ <add-style xsl:use-attribute-sets="add-style"/>
1317
+ </xsl:variable><xsl:template name="append_add-style">
1318
+ <xsl:copy-of select="xalan:nodeset($add-style)/add-style/@*"/>
1319
+ </xsl:template><xsl:variable name="color-deleted-text">
1305
1320
  <xsl:text>red</xsl:text>
1306
1321
  </xsl:variable><xsl:attribute-set name="del-style">
1307
1322
  <xsl:attribute name="color"><xsl:value-of select="$color-deleted-text"/></xsl:attribute>
@@ -1721,14 +1736,42 @@
1721
1736
 
1722
1737
 
1723
1738
  </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">
1739
+ <xsl:variable name="nodes_preface_">
1740
+ <xsl:for-each select="/*/*[local-name()='preface']/*">
1741
+ <node id="{@id}"/>
1742
+ </xsl:for-each>
1743
+ </xsl:variable>
1744
+ <xsl:variable name="nodes_preface" select="xalan:nodeset($nodes_preface_)"/>
1745
+
1724
1746
  <xsl:for-each select="/*/*[local-name()='preface']/*">
1725
1747
  <xsl:sort select="@displayorder" data-type="number"/>
1748
+
1749
+ <!-- process Section's title -->
1750
+ <xsl:variable name="preceding-sibling_id" select="$nodes_preface/node[@id = current()/@id]/preceding-sibling::node[1]/@id"/>
1751
+ <xsl:if test="$preceding-sibling_id != ''">
1752
+ <xsl:apply-templates select="parent::*/*[@type = 'section-title' and @id = $preceding-sibling_id and not(@displayorder)]" mode="contents_no_displayorder"/>
1753
+ </xsl:if>
1754
+
1726
1755
  <xsl:apply-templates select="." mode="contents"/>
1727
1756
  </xsl:for-each>
1728
1757
  </xsl:template><xsl:template name="processMainSectionsDefault_Contents">
1729
1758
 
1759
+ <xsl:variable name="nodes_sections_">
1760
+ <xsl:for-each select="/*/*[local-name()='sections']/*">
1761
+ <node id="{@id}"/>
1762
+ </xsl:for-each>
1763
+ </xsl:variable>
1764
+ <xsl:variable name="nodes_sections" select="xalan:nodeset($nodes_sections_)"/>
1765
+
1730
1766
  <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']]">
1731
1767
  <xsl:sort select="@displayorder" data-type="number"/>
1768
+
1769
+ <!-- process Section's title -->
1770
+ <xsl:variable name="preceding-sibling_id" select="$nodes_sections/node[@id = current()/@id]/preceding-sibling::node[1]/@id"/>
1771
+ <xsl:if test="$preceding-sibling_id != ''">
1772
+ <xsl:apply-templates select="parent::*/*[@type = 'section-title' and @id = $preceding-sibling_id and not(@displayorder)]" mode="contents_no_displayorder"/>
1773
+ </xsl:if>
1774
+
1732
1775
  <xsl:apply-templates select="." mode="contents"/>
1733
1776
  </xsl:for-each>
1734
1777
 
@@ -1867,7 +1910,7 @@
1867
1910
  </xsl:call-template>
1868
1911
  </xsl:if>
1869
1912
  </xsl:variable>
1870
- <!-- colwidths=<xsl:copy-of select="$colwidths"/> -->
1913
+ <!-- DEBUG colwidths=<xsl:copy-of select="$colwidths"/> -->
1871
1914
 
1872
1915
 
1873
1916
  <xsl:variable name="margin-side">
@@ -2127,7 +2170,7 @@
2127
2170
  <!-- <xsl:with-param name="text" select="translate(td[$curr-col],'- —:', ' ')"/> -->
2128
2171
  <!-- 2009 thinspace -->
2129
2172
  <!-- <xsl:with-param name="text" select="translate(normalize-space($td_text),'- —:', ' ')"/> -->
2130
- <xsl:with-param name="text" select="normalize-space(translate($string_with_added_zerospaces, '', ' '))"/>
2173
+ <xsl:with-param name="text" select="normalize-space(translate($string_with_added_zerospaces, '​­', ' '))"/> <!-- replace zero-width-space and soft-hyphen to space -->
2131
2174
  </xsl:call-template>
2132
2175
  </xsl:variable>
2133
2176
  <xsl:variable name="max_length">
@@ -3751,6 +3794,9 @@
3751
3794
  </fo:inline>
3752
3795
  </xsl:template><xsl:template match="*[local-name() = 'xref']">
3753
3796
  <fo:basic-link internal-destination="{@target}" fox:alt-text="{@target}" xsl:use-attribute-sets="xref-style">
3797
+ <xsl:if test="parent::*[local-name() = 'add']">
3798
+ <xsl:call-template name="append_add-style"/>
3799
+ </xsl:if>
3754
3800
  <xsl:apply-templates/>
3755
3801
  </fo:basic-link>
3756
3802
  </xsl:template><xsl:template match="*[local-name() = 'formula']" name="formula">
@@ -3848,6 +3894,13 @@
3848
3894
 
3849
3895
 
3850
3896
 
3897
+ <!-- if 'p' contains all text in 'add' first and last elements in first p are 'add' -->
3898
+ <!-- <xsl:if test="*[not(local-name()='name')][1][node()[normalize-space() != ''][1][local-name() = 'add'] and node()[normalize-space() != ''][last()][local-name() = 'add']]"> -->
3899
+ <xsl:if test="*[not(local-name()='name')][1][count(node()[normalize-space() != '']) = 1 and *[local-name() = 'add']]">
3900
+ <xsl:call-template name="append_add-style"/>
3901
+ </xsl:if>
3902
+
3903
+
3851
3904
  <!-- if note contains only one element and first and last childs are `add` ace-tag, then move start ace-tag before NOTE's name-->
3852
3905
  <xsl:if test="count(*[not(local-name() = 'name')]) = 1 and *[not(local-name() = 'name')]/node()[last()][local-name() = 'add'][starts-with(text(), $ace_tag)]">
3853
3906
  <xsl:apply-templates select="*[not(local-name() = 'name')]/node()[1][local-name() = 'add'][starts-with(text(), $ace_tag)]">
@@ -3886,6 +3939,12 @@
3886
3939
 
3887
3940
 
3888
3941
 
3942
+ <!-- if 'p' contains all text in 'add' first and last elements in first p are 'add' -->
3943
+ <!-- <xsl:if test="*[not(local-name()='name')][1][node()[normalize-space() != ''][1][local-name() = 'add'] and node()[normalize-space() != ''][last()][local-name() = 'add']]"> -->
3944
+ <xsl:if test="*[not(local-name()='name')][1][count(node()[normalize-space() != '']) = 1 and *[local-name() = 'add']]">
3945
+ <xsl:call-template name="append_add-style"/>
3946
+ </xsl:if>
3947
+
3889
3948
  <xsl:apply-templates select="*[local-name() = 'name']"/>
3890
3949
 
3891
3950
  </fo:inline>
@@ -3935,6 +3994,7 @@
3935
3994
  </fo:block>
3936
3995
  </xsl:template><xsl:template match="*[local-name() = 'term']">
3937
3996
  <fo:block id="{@id}" xsl:use-attribute-sets="term-style">
3997
+
3938
3998
 
3939
3999
 
3940
4000
 
@@ -4371,7 +4431,11 @@
4371
4431
  <xsl:value-of select="."/>
4372
4432
  </xsl:template><xsl:template match="node()" mode="contents">
4373
4433
  <xsl:apply-templates mode="contents"/>
4374
- </xsl:template><xsl:template match="*[local-name() = 'p'][@type = 'floating-title' or @type = 'section-title']" priority="2" mode="contents">
4434
+ </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">
4435
+ <xsl:call-template name="contents_section-title"/>
4436
+ </xsl:template><xsl:template match="*[local-name() = 'p'][@type = 'section-title']" mode="contents_in_clause">
4437
+ <xsl:call-template name="contents_section-title"/>
4438
+ </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">
4375
4439
  <xsl:variable name="level">
4376
4440
  <xsl:call-template name="getLevel">
4377
4441
  <xsl:with-param name="depth" select="@depth"/>
@@ -5674,7 +5738,7 @@
5674
5738
 
5675
5739
 
5676
5740
 
5677
-
5741
+
5678
5742
  <xsl:apply-templates select="node()[not(local-name() = 'note')]"/>
5679
5743
  </fo:list-block>
5680
5744
  <!-- <xsl:for-each select="./iho:note">
@@ -5692,6 +5756,11 @@
5692
5756
 
5693
5757
 
5694
5758
 
5759
+ <!-- if 'p' contains all text in 'add' first and last elements in first p are 'add' -->
5760
+ <xsl:if test="*[1][count(node()[normalize-space() != '']) = 1 and *[local-name() = 'add']]">
5761
+ <xsl:call-template name="append_add-style"/>
5762
+ </xsl:if>
5763
+
5695
5764
  <xsl:call-template name="getListItemFormat"/>
5696
5765
  </fo:block>
5697
5766
  </fo:list-item-label>
@@ -6768,53 +6837,153 @@
6768
6837
  <xsl:param name="first"/>
6769
6838
  <xsl:if test="$number != ''">
6770
6839
  <xsl:variable name="words">
6771
- <words>
6772
- <word cardinal="1">One-</word>
6773
- <word ordinal="1">First </word>
6774
- <word cardinal="2">Two-</word>
6775
- <word ordinal="2">Second </word>
6776
- <word cardinal="3">Three-</word>
6777
- <word ordinal="3">Third </word>
6778
- <word cardinal="4">Four-</word>
6779
- <word ordinal="4">Fourth </word>
6780
- <word cardinal="5">Five-</word>
6781
- <word ordinal="5">Fifth </word>
6782
- <word cardinal="6">Six-</word>
6783
- <word ordinal="6">Sixth </word>
6784
- <word cardinal="7">Seven-</word>
6785
- <word ordinal="7">Seventh </word>
6786
- <word cardinal="8">Eight-</word>
6787
- <word ordinal="8">Eighth </word>
6788
- <word cardinal="9">Nine-</word>
6789
- <word ordinal="9">Ninth </word>
6790
- <word ordinal="10">Tenth </word>
6791
- <word ordinal="11">Eleventh </word>
6792
- <word ordinal="12">Twelfth </word>
6793
- <word ordinal="13">Thirteenth </word>
6794
- <word ordinal="14">Fourteenth </word>
6795
- <word ordinal="15">Fifteenth </word>
6796
- <word ordinal="16">Sixteenth </word>
6797
- <word ordinal="17">Seventeenth </word>
6798
- <word ordinal="18">Eighteenth </word>
6799
- <word ordinal="19">Nineteenth </word>
6800
- <word cardinal="20">Twenty-</word>
6801
- <word ordinal="20">Twentieth </word>
6802
- <word cardinal="30">Thirty-</word>
6803
- <word ordinal="30">Thirtieth </word>
6804
- <word cardinal="40">Forty-</word>
6805
- <word ordinal="40">Fortieth </word>
6806
- <word cardinal="50">Fifty-</word>
6807
- <word ordinal="50">Fiftieth </word>
6808
- <word cardinal="60">Sixty-</word>
6809
- <word ordinal="60">Sixtieth </word>
6810
- <word cardinal="70">Seventy-</word>
6811
- <word ordinal="70">Seventieth </word>
6812
- <word cardinal="80">Eighty-</word>
6813
- <word ordinal="80">Eightieth </word>
6814
- <word cardinal="90">Ninety-</word>
6815
- <word ordinal="90">Ninetieth </word>
6816
- <word cardinal="100">Hundred-</word>
6817
- <word ordinal="100">Hundredth </word>
6840
+ <words>
6841
+ <xsl:choose>
6842
+ <xsl:when test="$lang = 'fr'"> <!-- https://en.wiktionary.org/wiki/Appendix:French_numbers -->
6843
+ <word cardinal="1">Une-</word>
6844
+ <word ordinal="1">Première </word>
6845
+ <word cardinal="2">Deux-</word>
6846
+ <word ordinal="2">Seconde </word>
6847
+ <word cardinal="3">Trois-</word>
6848
+ <word ordinal="3">Tierce </word>
6849
+ <word cardinal="4">Quatre-</word>
6850
+ <word ordinal="4">Quatrième </word>
6851
+ <word cardinal="5">Cinq-</word>
6852
+ <word ordinal="5">Cinquième </word>
6853
+ <word cardinal="6">Six-</word>
6854
+ <word ordinal="6">Sixième </word>
6855
+ <word cardinal="7">Sept-</word>
6856
+ <word ordinal="7">Septième </word>
6857
+ <word cardinal="8">Huit-</word>
6858
+ <word ordinal="8">Huitième </word>
6859
+ <word cardinal="9">Neuf-</word>
6860
+ <word ordinal="9">Neuvième </word>
6861
+ <word ordinal="10">Dixième </word>
6862
+ <word ordinal="11">Onzième </word>
6863
+ <word ordinal="12">Douzième </word>
6864
+ <word ordinal="13">Treizième </word>
6865
+ <word ordinal="14">Quatorzième </word>
6866
+ <word ordinal="15">Quinzième </word>
6867
+ <word ordinal="16">Seizième </word>
6868
+ <word ordinal="17">Dix-septième </word>
6869
+ <word ordinal="18">Dix-huitième </word>
6870
+ <word ordinal="19">Dix-neuvième </word>
6871
+ <word cardinal="20">Vingt-</word>
6872
+ <word ordinal="20">Vingtième </word>
6873
+ <word cardinal="30">Trente-</word>
6874
+ <word ordinal="30">Trentième </word>
6875
+ <word cardinal="40">Quarante-</word>
6876
+ <word ordinal="40">Quarantième </word>
6877
+ <word cardinal="50">Cinquante-</word>
6878
+ <word ordinal="50">Cinquantième </word>
6879
+ <word cardinal="60">Soixante-</word>
6880
+ <word ordinal="60">Soixantième </word>
6881
+ <word cardinal="70">Septante-</word>
6882
+ <word ordinal="70">Septantième </word>
6883
+ <word cardinal="80">Huitante-</word>
6884
+ <word ordinal="80">Huitantième </word>
6885
+ <word cardinal="90">Nonante-</word>
6886
+ <word ordinal="90">Nonantième </word>
6887
+ <word cardinal="100">Cent-</word>
6888
+ <word ordinal="100">Centième </word>
6889
+ </xsl:when>
6890
+ <xsl:when test="$lang = 'ru'">
6891
+ <word cardinal="1">Одна-</word>
6892
+ <word ordinal="1">Первое </word>
6893
+ <word cardinal="2">Две-</word>
6894
+ <word ordinal="2">Второе </word>
6895
+ <word cardinal="3">Три-</word>
6896
+ <word ordinal="3">Третье </word>
6897
+ <word cardinal="4">Четыре-</word>
6898
+ <word ordinal="4">Четвертое </word>
6899
+ <word cardinal="5">Пять-</word>
6900
+ <word ordinal="5">Пятое </word>
6901
+ <word cardinal="6">Шесть-</word>
6902
+ <word ordinal="6">Шестое </word>
6903
+ <word cardinal="7">Семь-</word>
6904
+ <word ordinal="7">Седьмое </word>
6905
+ <word cardinal="8">Восемь-</word>
6906
+ <word ordinal="8">Восьмое </word>
6907
+ <word cardinal="9">Девять-</word>
6908
+ <word ordinal="9">Девятое </word>
6909
+ <word ordinal="10">Десятое </word>
6910
+ <word ordinal="11">Одиннадцатое </word>
6911
+ <word ordinal="12">Двенадцатое </word>
6912
+ <word ordinal="13">Тринадцатое </word>
6913
+ <word ordinal="14">Четырнадцатое </word>
6914
+ <word ordinal="15">Пятнадцатое </word>
6915
+ <word ordinal="16">Шестнадцатое </word>
6916
+ <word ordinal="17">Семнадцатое </word>
6917
+ <word ordinal="18">Восемнадцатое </word>
6918
+ <word ordinal="19">Девятнадцатое </word>
6919
+ <word cardinal="20">Двадцать-</word>
6920
+ <word ordinal="20">Двадцатое </word>
6921
+ <word cardinal="30">Тридцать-</word>
6922
+ <word ordinal="30">Тридцатое </word>
6923
+ <word cardinal="40">Сорок-</word>
6924
+ <word ordinal="40">Сороковое </word>
6925
+ <word cardinal="50">Пятьдесят-</word>
6926
+ <word ordinal="50">Пятидесятое </word>
6927
+ <word cardinal="60">Шестьдесят-</word>
6928
+ <word ordinal="60">Шестидесятое </word>
6929
+ <word cardinal="70">Семьдесят-</word>
6930
+ <word ordinal="70">Семидесятое </word>
6931
+ <word cardinal="80">Восемьдесят-</word>
6932
+ <word ordinal="80">Восьмидесятое </word>
6933
+ <word cardinal="90">Девяносто-</word>
6934
+ <word ordinal="90">Девяностое </word>
6935
+ <word cardinal="100">Сто-</word>
6936
+ <word ordinal="100">Сотое </word>
6937
+ </xsl:when>
6938
+ <xsl:otherwise> <!-- default english -->
6939
+ <word cardinal="1">One-</word>
6940
+ <word ordinal="1">First </word>
6941
+ <word cardinal="2">Two-</word>
6942
+ <word ordinal="2">Second </word>
6943
+ <word cardinal="3">Three-</word>
6944
+ <word ordinal="3">Third </word>
6945
+ <word cardinal="4">Four-</word>
6946
+ <word ordinal="4">Fourth </word>
6947
+ <word cardinal="5">Five-</word>
6948
+ <word ordinal="5">Fifth </word>
6949
+ <word cardinal="6">Six-</word>
6950
+ <word ordinal="6">Sixth </word>
6951
+ <word cardinal="7">Seven-</word>
6952
+ <word ordinal="7">Seventh </word>
6953
+ <word cardinal="8">Eight-</word>
6954
+ <word ordinal="8">Eighth </word>
6955
+ <word cardinal="9">Nine-</word>
6956
+ <word ordinal="9">Ninth </word>
6957
+ <word ordinal="10">Tenth </word>
6958
+ <word ordinal="11">Eleventh </word>
6959
+ <word ordinal="12">Twelfth </word>
6960
+ <word ordinal="13">Thirteenth </word>
6961
+ <word ordinal="14">Fourteenth </word>
6962
+ <word ordinal="15">Fifteenth </word>
6963
+ <word ordinal="16">Sixteenth </word>
6964
+ <word ordinal="17">Seventeenth </word>
6965
+ <word ordinal="18">Eighteenth </word>
6966
+ <word ordinal="19">Nineteenth </word>
6967
+ <word cardinal="20">Twenty-</word>
6968
+ <word ordinal="20">Twentieth </word>
6969
+ <word cardinal="30">Thirty-</word>
6970
+ <word ordinal="30">Thirtieth </word>
6971
+ <word cardinal="40">Forty-</word>
6972
+ <word ordinal="40">Fortieth </word>
6973
+ <word cardinal="50">Fifty-</word>
6974
+ <word ordinal="50">Fiftieth </word>
6975
+ <word cardinal="60">Sixty-</word>
6976
+ <word ordinal="60">Sixtieth </word>
6977
+ <word cardinal="70">Seventy-</word>
6978
+ <word ordinal="70">Seventieth </word>
6979
+ <word cardinal="80">Eighty-</word>
6980
+ <word ordinal="80">Eightieth </word>
6981
+ <word cardinal="90">Ninety-</word>
6982
+ <word ordinal="90">Ninetieth </word>
6983
+ <word cardinal="100">Hundred-</word>
6984
+ <word ordinal="100">Hundredth </word>
6985
+ </xsl:otherwise>
6986
+ </xsl:choose>
6818
6987
  </words>
6819
6988
  </xsl:variable>
6820
6989
 
@@ -6888,4 +7057,18 @@
6888
7057
  <xsl:otherwise>_</xsl:otherwise>
6889
7058
  </xsl:choose>
6890
7059
  </xsl:attribute>
7060
+ </xsl:template><xsl:template name="substring-after-last">
7061
+ <xsl:param name="value"/>
7062
+ <xsl:param name="delimiter"/>
7063
+ <xsl:choose>
7064
+ <xsl:when test="contains($value, $delimiter)">
7065
+ <xsl:call-template name="substring-after-last">
7066
+ <xsl:with-param name="value" select="substring-after($value, $delimiter)"/>
7067
+ <xsl:with-param name="delimiter" select="$delimiter"/>
7068
+ </xsl:call-template>
7069
+ </xsl:when>
7070
+ <xsl:otherwise>
7071
+ <xsl:value-of select="$value"/>
7072
+ </xsl:otherwise>
7073
+ </xsl:choose>
6891
7074
  </xsl:template></xsl:stylesheet>