metanorma-mpfa 0.5.8 → 0.5.9

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: 596d79a5ba9b9bb29e0f198f49ad991e2e7050b0544208ac76debb9f7c85d18c
4
- data.tar.gz: dd508a80cb6b33f736752c4bf581f6d7721827134db82218ddb043a8726ef9f5
3
+ metadata.gz: f005efd6c0e889d1c0e7c53bb991d7275d3e4b16e4169f70b72754fc54e6bb71
4
+ data.tar.gz: d7fe6df1a1254ff0f99d8795e9a812c3ffd45db9097174234f7fa253a67b2b94
5
5
  SHA512:
6
- metadata.gz: 318a73311033294df909c6231da009cdd54695c1a731017a71945a07f034e6fa6bb66ec2e1217ccaa0703b005ca6fa95efb37ba545b64eac8c0731d873f5bac6
7
- data.tar.gz: 1109389bdd638728883b07c0112a0f714aa7520ba345a9685af1c4cf926127f22035a6e6707faa4e2b7339f50d67b84ed67b9eab890db5b7d3f2801eebb37a9b
6
+ metadata.gz: 5c8fe49df8409f3055cdf06208c2c8ef39cd9b40b1d8fa141da8a7650cd895698d288ae6717830735d530ed1342ccc987203250e24c20c5e3b0cc9fdc0a82079
7
+ data.tar.gz: 6f304abcdfb493b81a8a85c1b51e224653a687d08950d6d769933463f81037a691812fe7db238690e81bdd1576d522c871a3c1973b6b794cedcf9058e55f7202
@@ -596,6 +596,7 @@
596
596
  <ref name="bookmark"/>
597
597
  <ref name="image"/>
598
598
  <ref name="index"/>
599
+ <ref name="index-xref"/>
599
600
  </choice>
600
601
  </define>
601
602
  <define name="PureTextElement">
@@ -737,6 +738,37 @@
737
738
  </optional>
738
739
  </element>
739
740
  </define>
741
+ <define name="index-xref">
742
+ <element name="index-xref">
743
+ <attribute name="also">
744
+ <data type="boolean"/>
745
+ </attribute>
746
+ <element name="primary">
747
+ <oneOrMore>
748
+ <ref name="PureTextElement"/>
749
+ </oneOrMore>
750
+ </element>
751
+ <optional>
752
+ <element name="secondary">
753
+ <oneOrMore>
754
+ <ref name="PureTextElement"/>
755
+ </oneOrMore>
756
+ </element>
757
+ </optional>
758
+ <optional>
759
+ <element name="tertiary">
760
+ <oneOrMore>
761
+ <ref name="PureTextElement"/>
762
+ </oneOrMore>
763
+ </element>
764
+ </optional>
765
+ <element name="target">
766
+ <oneOrMore>
767
+ <ref name="PureTextElement"/>
768
+ </oneOrMore>
769
+ </element>
770
+ </element>
771
+ </define>
740
772
  <!-- bare ID element, used for referencing arbitrary spans of text -->
741
773
  <define name="bookmark">
742
774
  <element name="bookmark">
@@ -246,6 +246,9 @@
246
246
  <data type="boolean"/>
247
247
  </attribute>
248
248
  </optional>
249
+ <optional>
250
+ <ref name="colgroup"/>
251
+ </optional>
249
252
  <optional>
250
253
  <ref name="tname"/>
251
254
  </optional>
@@ -764,6 +767,18 @@
764
767
  </define>
765
768
  </include>
766
769
  <!-- end overrides -->
770
+ <define name="colgroup">
771
+ <element name="colgroup">
772
+ <oneOrMore>
773
+ <ref name="col"/>
774
+ </oneOrMore>
775
+ </element>
776
+ </define>
777
+ <define name="col">
778
+ <element name="col">
779
+ <attribute name="width"/>
780
+ </element>
781
+ </define>
767
782
  <define name="TextElement" combine="choice">
768
783
  <ref name="concept"/>
769
784
  </define>
@@ -328,16 +328,16 @@
328
328
  <xsl:otherwise> <!-- for ordered lists -->
329
329
  <xsl:choose>
330
330
  <xsl:when test="../@type = 'arabic'">
331
- <xsl:number format="a)"/>
331
+ <xsl:number format="a)" lang="en"/>
332
332
  </xsl:when>
333
333
  <xsl:when test="../@type = 'roman'">
334
334
  <xsl:number format="1)"/>
335
335
  </xsl:when>
336
336
  <xsl:when test="../@type = 'alphabet'">
337
- <xsl:number format="a)"/>
337
+ <xsl:number format="a)" lang="en"/>
338
338
  </xsl:when>
339
339
  <xsl:otherwise>
340
- <xsl:number format="a)"/>
340
+ <xsl:number format="a)" lang="en"/>
341
341
  </xsl:otherwise>
342
342
  </xsl:choose>
343
343
  </xsl:otherwise>
@@ -1323,10 +1323,12 @@
1323
1323
 
1324
1324
 
1325
1325
  <xsl:variable name="colwidths">
1326
- <xsl:call-template name="calculate-column-widths">
1327
- <xsl:with-param name="cols-count" select="$cols-count"/>
1328
- <xsl:with-param name="table" select="$simple-table"/>
1329
- </xsl:call-template>
1326
+ <xsl:if test="not(*[local-name()='colgroup']/*[local-name()='col'])">
1327
+ <xsl:call-template name="calculate-column-widths">
1328
+ <xsl:with-param name="cols-count" select="$cols-count"/>
1329
+ <xsl:with-param name="table" select="$simple-table"/>
1330
+ </xsl:call-template>
1331
+ </xsl:if>
1330
1332
  </xsl:variable>
1331
1333
  <!-- colwidths=<xsl:copy-of select="$colwidths"/> -->
1332
1334
 
@@ -1401,16 +1403,25 @@
1401
1403
  <xsl:attribute name="border-bottom">0pt solid black</xsl:attribute> <!-- set 0pt border, because there is a separete table below for footer -->
1402
1404
  </xsl:if>
1403
1405
 
1404
- <xsl:for-each select="xalan:nodeset($colwidths)//column">
1405
- <xsl:choose>
1406
- <xsl:when test=". = 1 or . = 0">
1407
- <fo:table-column column-width="proportional-column-width(2)"/>
1408
- </xsl:when>
1409
- <xsl:otherwise>
1410
- <fo:table-column column-width="proportional-column-width({.})"/>
1411
- </xsl:otherwise>
1412
- </xsl:choose>
1413
- </xsl:for-each>
1406
+ <xsl:choose>
1407
+ <xsl:when test="*[local-name()='colgroup']/*[local-name()='col']">
1408
+ <xsl:for-each select="*[local-name()='colgroup']/*[local-name()='col']">
1409
+ <fo:table-column column-width="{@width}"/>
1410
+ </xsl:for-each>
1411
+ </xsl:when>
1412
+ <xsl:otherwise>
1413
+ <xsl:for-each select="xalan:nodeset($colwidths)//column">
1414
+ <xsl:choose>
1415
+ <xsl:when test=". = 1 or . = 0">
1416
+ <fo:table-column column-width="proportional-column-width(2)"/>
1417
+ </xsl:when>
1418
+ <xsl:otherwise>
1419
+ <fo:table-column column-width="proportional-column-width({.})"/>
1420
+ </xsl:otherwise>
1421
+ </xsl:choose>
1422
+ </xsl:for-each>
1423
+ </xsl:otherwise>
1424
+ </xsl:choose>
1414
1425
 
1415
1426
  <xsl:choose>
1416
1427
  <xsl:when test="not(*[local-name()='tbody']) and *[local-name()='thead']">
@@ -1423,10 +1434,12 @@
1423
1434
 
1424
1435
  </fo:table>
1425
1436
 
1437
+ <xsl:variable name="colgroup" select="*[local-name()='colgroup']"/>
1426
1438
  <xsl:for-each select="*[local-name()='tbody']"><!-- select context to tbody -->
1427
1439
  <xsl:call-template name="insertTableFooterInSeparateTable">
1428
1440
  <xsl:with-param name="table_attributes" select="$table_attributes"/>
1429
1441
  <xsl:with-param name="colwidths" select="$colwidths"/>
1442
+ <xsl:with-param name="colgroup" select="$colgroup"/>
1430
1443
  </xsl:call-template>
1431
1444
  </xsl:for-each>
1432
1445
 
@@ -1680,12 +1693,22 @@
1680
1693
  </xsl:template><xsl:template name="insertTableFooterInSeparateTable">
1681
1694
  <xsl:param name="table_attributes"/>
1682
1695
  <xsl:param name="colwidths"/>
1696
+ <xsl:param name="colgroup"/>
1683
1697
 
1684
1698
  <xsl:variable name="isNoteOrFnExist" select="../*[local-name()='note'] or ..//*[local-name()='fn'][local-name(..) != 'name']"/>
1685
1699
 
1686
1700
  <xsl:if test="$isNoteOrFnExist = 'true'">
1687
1701
 
1688
- <xsl:variable name="cols-count" select="count(xalan:nodeset($colwidths)//column)"/>
1702
+ <xsl:variable name="cols-count">
1703
+ <xsl:choose>
1704
+ <xsl:when test="xalan:nodeset($colgroup)//*[local-name()='col']">
1705
+ <xsl:value-of select="count(xalan:nodeset($colgroup)//*[local-name()='col'])"/>
1706
+ </xsl:when>
1707
+ <xsl:otherwise>
1708
+ <xsl:value-of select="count(xalan:nodeset($colwidths)//column)"/>
1709
+ </xsl:otherwise>
1710
+ </xsl:choose>
1711
+ </xsl:variable>
1689
1712
 
1690
1713
  <fo:table keep-with-previous="always">
1691
1714
  <xsl:for-each select="xalan:nodeset($table_attributes)/attribute">
@@ -1703,16 +1726,25 @@
1703
1726
  </xsl:choose>
1704
1727
  </xsl:for-each>
1705
1728
 
1706
- <xsl:for-each select="xalan:nodeset($colwidths)//column">
1707
- <xsl:choose>
1708
- <xsl:when test=". = 1 or . = 0">
1709
- <fo:table-column column-width="proportional-column-width(2)"/>
1710
- </xsl:when>
1711
- <xsl:otherwise>
1712
- <fo:table-column column-width="proportional-column-width({.})"/>
1713
- </xsl:otherwise>
1714
- </xsl:choose>
1715
- </xsl:for-each>
1729
+ <xsl:choose>
1730
+ <xsl:when test="xalan:nodeset($colgroup)//*[local-name()='col']">
1731
+ <xsl:for-each select="xalan:nodeset($colgroup)//*[local-name()='col']">
1732
+ <fo:table-column column-width="{@width}"/>
1733
+ </xsl:for-each>
1734
+ </xsl:when>
1735
+ <xsl:otherwise>
1736
+ <xsl:for-each select="xalan:nodeset($colwidths)//column">
1737
+ <xsl:choose>
1738
+ <xsl:when test=". = 1 or . = 0">
1739
+ <fo:table-column column-width="proportional-column-width(2)"/>
1740
+ </xsl:when>
1741
+ <xsl:otherwise>
1742
+ <fo:table-column column-width="proportional-column-width({.})"/>
1743
+ </xsl:otherwise>
1744
+ </xsl:choose>
1745
+ </xsl:for-each>
1746
+ </xsl:otherwise>
1747
+ </xsl:choose>
1716
1748
 
1717
1749
  <fo:table-body>
1718
1750
  <fo:table-row>
@@ -3883,7 +3915,8 @@
3883
3915
  <fo:table-column column-width="107mm"/>
3884
3916
  <fo:table-column column-width="15mm"/>
3885
3917
  <fo:table-body>
3886
- <fo:table-row font-family="Arial" text-align="center" font-weight="bold" background-color="black" color="white">
3918
+ <fo:table-row text-align="center" font-weight="bold" background-color="black" color="white">
3919
+
3887
3920
  <fo:table-cell border="1pt solid black"><fo:block>Date</fo:block></fo:table-cell>
3888
3921
  <fo:table-cell border="1pt solid black"><fo:block>Type</fo:block></fo:table-cell>
3889
3922
  <fo:table-cell border="1pt solid black"><fo:block>Change</fo:block></fo:table-cell>
@@ -3901,6 +3934,10 @@
3901
3934
  <fo:block><xsl:apply-templates/></fo:block>
3902
3935
  </fo:table-cell>
3903
3936
  </xsl:template><xsl:template name="processBibitem">
3937
+
3938
+
3939
+ <!-- end BIPM bibitem processing-->
3940
+
3904
3941
 
3905
3942
 
3906
3943
 
@@ -328,16 +328,16 @@
328
328
  <xsl:otherwise> <!-- for ordered lists -->
329
329
  <xsl:choose>
330
330
  <xsl:when test="../@type = 'arabic'">
331
- <xsl:number format="a)"/>
331
+ <xsl:number format="a)" lang="en"/>
332
332
  </xsl:when>
333
333
  <xsl:when test="../@type = 'roman'">
334
334
  <xsl:number format="1)"/>
335
335
  </xsl:when>
336
336
  <xsl:when test="../@type = 'alphabet'">
337
- <xsl:number format="a)"/>
337
+ <xsl:number format="a)" lang="en"/>
338
338
  </xsl:when>
339
339
  <xsl:otherwise>
340
- <xsl:number format="a)"/>
340
+ <xsl:number format="a)" lang="en"/>
341
341
  </xsl:otherwise>
342
342
  </xsl:choose>
343
343
  </xsl:otherwise>
@@ -1323,10 +1323,12 @@
1323
1323
 
1324
1324
 
1325
1325
  <xsl:variable name="colwidths">
1326
- <xsl:call-template name="calculate-column-widths">
1327
- <xsl:with-param name="cols-count" select="$cols-count"/>
1328
- <xsl:with-param name="table" select="$simple-table"/>
1329
- </xsl:call-template>
1326
+ <xsl:if test="not(*[local-name()='colgroup']/*[local-name()='col'])">
1327
+ <xsl:call-template name="calculate-column-widths">
1328
+ <xsl:with-param name="cols-count" select="$cols-count"/>
1329
+ <xsl:with-param name="table" select="$simple-table"/>
1330
+ </xsl:call-template>
1331
+ </xsl:if>
1330
1332
  </xsl:variable>
1331
1333
  <!-- colwidths=<xsl:copy-of select="$colwidths"/> -->
1332
1334
 
@@ -1401,16 +1403,25 @@
1401
1403
  <xsl:attribute name="border-bottom">0pt solid black</xsl:attribute> <!-- set 0pt border, because there is a separete table below for footer -->
1402
1404
  </xsl:if>
1403
1405
 
1404
- <xsl:for-each select="xalan:nodeset($colwidths)//column">
1405
- <xsl:choose>
1406
- <xsl:when test=". = 1 or . = 0">
1407
- <fo:table-column column-width="proportional-column-width(2)"/>
1408
- </xsl:when>
1409
- <xsl:otherwise>
1410
- <fo:table-column column-width="proportional-column-width({.})"/>
1411
- </xsl:otherwise>
1412
- </xsl:choose>
1413
- </xsl:for-each>
1406
+ <xsl:choose>
1407
+ <xsl:when test="*[local-name()='colgroup']/*[local-name()='col']">
1408
+ <xsl:for-each select="*[local-name()='colgroup']/*[local-name()='col']">
1409
+ <fo:table-column column-width="{@width}"/>
1410
+ </xsl:for-each>
1411
+ </xsl:when>
1412
+ <xsl:otherwise>
1413
+ <xsl:for-each select="xalan:nodeset($colwidths)//column">
1414
+ <xsl:choose>
1415
+ <xsl:when test=". = 1 or . = 0">
1416
+ <fo:table-column column-width="proportional-column-width(2)"/>
1417
+ </xsl:when>
1418
+ <xsl:otherwise>
1419
+ <fo:table-column column-width="proportional-column-width({.})"/>
1420
+ </xsl:otherwise>
1421
+ </xsl:choose>
1422
+ </xsl:for-each>
1423
+ </xsl:otherwise>
1424
+ </xsl:choose>
1414
1425
 
1415
1426
  <xsl:choose>
1416
1427
  <xsl:when test="not(*[local-name()='tbody']) and *[local-name()='thead']">
@@ -1423,10 +1434,12 @@
1423
1434
 
1424
1435
  </fo:table>
1425
1436
 
1437
+ <xsl:variable name="colgroup" select="*[local-name()='colgroup']"/>
1426
1438
  <xsl:for-each select="*[local-name()='tbody']"><!-- select context to tbody -->
1427
1439
  <xsl:call-template name="insertTableFooterInSeparateTable">
1428
1440
  <xsl:with-param name="table_attributes" select="$table_attributes"/>
1429
1441
  <xsl:with-param name="colwidths" select="$colwidths"/>
1442
+ <xsl:with-param name="colgroup" select="$colgroup"/>
1430
1443
  </xsl:call-template>
1431
1444
  </xsl:for-each>
1432
1445
 
@@ -1680,12 +1693,22 @@
1680
1693
  </xsl:template><xsl:template name="insertTableFooterInSeparateTable">
1681
1694
  <xsl:param name="table_attributes"/>
1682
1695
  <xsl:param name="colwidths"/>
1696
+ <xsl:param name="colgroup"/>
1683
1697
 
1684
1698
  <xsl:variable name="isNoteOrFnExist" select="../*[local-name()='note'] or ..//*[local-name()='fn'][local-name(..) != 'name']"/>
1685
1699
 
1686
1700
  <xsl:if test="$isNoteOrFnExist = 'true'">
1687
1701
 
1688
- <xsl:variable name="cols-count" select="count(xalan:nodeset($colwidths)//column)"/>
1702
+ <xsl:variable name="cols-count">
1703
+ <xsl:choose>
1704
+ <xsl:when test="xalan:nodeset($colgroup)//*[local-name()='col']">
1705
+ <xsl:value-of select="count(xalan:nodeset($colgroup)//*[local-name()='col'])"/>
1706
+ </xsl:when>
1707
+ <xsl:otherwise>
1708
+ <xsl:value-of select="count(xalan:nodeset($colwidths)//column)"/>
1709
+ </xsl:otherwise>
1710
+ </xsl:choose>
1711
+ </xsl:variable>
1689
1712
 
1690
1713
  <fo:table keep-with-previous="always">
1691
1714
  <xsl:for-each select="xalan:nodeset($table_attributes)/attribute">
@@ -1703,16 +1726,25 @@
1703
1726
  </xsl:choose>
1704
1727
  </xsl:for-each>
1705
1728
 
1706
- <xsl:for-each select="xalan:nodeset($colwidths)//column">
1707
- <xsl:choose>
1708
- <xsl:when test=". = 1 or . = 0">
1709
- <fo:table-column column-width="proportional-column-width(2)"/>
1710
- </xsl:when>
1711
- <xsl:otherwise>
1712
- <fo:table-column column-width="proportional-column-width({.})"/>
1713
- </xsl:otherwise>
1714
- </xsl:choose>
1715
- </xsl:for-each>
1729
+ <xsl:choose>
1730
+ <xsl:when test="xalan:nodeset($colgroup)//*[local-name()='col']">
1731
+ <xsl:for-each select="xalan:nodeset($colgroup)//*[local-name()='col']">
1732
+ <fo:table-column column-width="{@width}"/>
1733
+ </xsl:for-each>
1734
+ </xsl:when>
1735
+ <xsl:otherwise>
1736
+ <xsl:for-each select="xalan:nodeset($colwidths)//column">
1737
+ <xsl:choose>
1738
+ <xsl:when test=". = 1 or . = 0">
1739
+ <fo:table-column column-width="proportional-column-width(2)"/>
1740
+ </xsl:when>
1741
+ <xsl:otherwise>
1742
+ <fo:table-column column-width="proportional-column-width({.})"/>
1743
+ </xsl:otherwise>
1744
+ </xsl:choose>
1745
+ </xsl:for-each>
1746
+ </xsl:otherwise>
1747
+ </xsl:choose>
1716
1748
 
1717
1749
  <fo:table-body>
1718
1750
  <fo:table-row>
@@ -3883,7 +3915,8 @@
3883
3915
  <fo:table-column column-width="107mm"/>
3884
3916
  <fo:table-column column-width="15mm"/>
3885
3917
  <fo:table-body>
3886
- <fo:table-row font-family="Arial" text-align="center" font-weight="bold" background-color="black" color="white">
3918
+ <fo:table-row text-align="center" font-weight="bold" background-color="black" color="white">
3919
+
3887
3920
  <fo:table-cell border="1pt solid black"><fo:block>Date</fo:block></fo:table-cell>
3888
3921
  <fo:table-cell border="1pt solid black"><fo:block>Type</fo:block></fo:table-cell>
3889
3922
  <fo:table-cell border="1pt solid black"><fo:block>Change</fo:block></fo:table-cell>
@@ -3901,6 +3934,10 @@
3901
3934
  <fo:block><xsl:apply-templates/></fo:block>
3902
3935
  </fo:table-cell>
3903
3936
  </xsl:template><xsl:template name="processBibitem">
3937
+
3938
+
3939
+ <!-- end BIPM bibitem processing-->
3940
+
3904
3941
 
3905
3942
 
3906
3943
 
@@ -328,16 +328,16 @@
328
328
  <xsl:otherwise> <!-- for ordered lists -->
329
329
  <xsl:choose>
330
330
  <xsl:when test="../@type = 'arabic'">
331
- <xsl:number format="a)"/>
331
+ <xsl:number format="a)" lang="en"/>
332
332
  </xsl:when>
333
333
  <xsl:when test="../@type = 'roman'">
334
334
  <xsl:number format="1)"/>
335
335
  </xsl:when>
336
336
  <xsl:when test="../@type = 'alphabet'">
337
- <xsl:number format="a)"/>
337
+ <xsl:number format="a)" lang="en"/>
338
338
  </xsl:when>
339
339
  <xsl:otherwise>
340
- <xsl:number format="a)"/>
340
+ <xsl:number format="a)" lang="en"/>
341
341
  </xsl:otherwise>
342
342
  </xsl:choose>
343
343
  </xsl:otherwise>
@@ -1323,10 +1323,12 @@
1323
1323
 
1324
1324
 
1325
1325
  <xsl:variable name="colwidths">
1326
- <xsl:call-template name="calculate-column-widths">
1327
- <xsl:with-param name="cols-count" select="$cols-count"/>
1328
- <xsl:with-param name="table" select="$simple-table"/>
1329
- </xsl:call-template>
1326
+ <xsl:if test="not(*[local-name()='colgroup']/*[local-name()='col'])">
1327
+ <xsl:call-template name="calculate-column-widths">
1328
+ <xsl:with-param name="cols-count" select="$cols-count"/>
1329
+ <xsl:with-param name="table" select="$simple-table"/>
1330
+ </xsl:call-template>
1331
+ </xsl:if>
1330
1332
  </xsl:variable>
1331
1333
  <!-- colwidths=<xsl:copy-of select="$colwidths"/> -->
1332
1334
 
@@ -1401,16 +1403,25 @@
1401
1403
  <xsl:attribute name="border-bottom">0pt solid black</xsl:attribute> <!-- set 0pt border, because there is a separete table below for footer -->
1402
1404
  </xsl:if>
1403
1405
 
1404
- <xsl:for-each select="xalan:nodeset($colwidths)//column">
1405
- <xsl:choose>
1406
- <xsl:when test=". = 1 or . = 0">
1407
- <fo:table-column column-width="proportional-column-width(2)"/>
1408
- </xsl:when>
1409
- <xsl:otherwise>
1410
- <fo:table-column column-width="proportional-column-width({.})"/>
1411
- </xsl:otherwise>
1412
- </xsl:choose>
1413
- </xsl:for-each>
1406
+ <xsl:choose>
1407
+ <xsl:when test="*[local-name()='colgroup']/*[local-name()='col']">
1408
+ <xsl:for-each select="*[local-name()='colgroup']/*[local-name()='col']">
1409
+ <fo:table-column column-width="{@width}"/>
1410
+ </xsl:for-each>
1411
+ </xsl:when>
1412
+ <xsl:otherwise>
1413
+ <xsl:for-each select="xalan:nodeset($colwidths)//column">
1414
+ <xsl:choose>
1415
+ <xsl:when test=". = 1 or . = 0">
1416
+ <fo:table-column column-width="proportional-column-width(2)"/>
1417
+ </xsl:when>
1418
+ <xsl:otherwise>
1419
+ <fo:table-column column-width="proportional-column-width({.})"/>
1420
+ </xsl:otherwise>
1421
+ </xsl:choose>
1422
+ </xsl:for-each>
1423
+ </xsl:otherwise>
1424
+ </xsl:choose>
1414
1425
 
1415
1426
  <xsl:choose>
1416
1427
  <xsl:when test="not(*[local-name()='tbody']) and *[local-name()='thead']">
@@ -1423,10 +1434,12 @@
1423
1434
 
1424
1435
  </fo:table>
1425
1436
 
1437
+ <xsl:variable name="colgroup" select="*[local-name()='colgroup']"/>
1426
1438
  <xsl:for-each select="*[local-name()='tbody']"><!-- select context to tbody -->
1427
1439
  <xsl:call-template name="insertTableFooterInSeparateTable">
1428
1440
  <xsl:with-param name="table_attributes" select="$table_attributes"/>
1429
1441
  <xsl:with-param name="colwidths" select="$colwidths"/>
1442
+ <xsl:with-param name="colgroup" select="$colgroup"/>
1430
1443
  </xsl:call-template>
1431
1444
  </xsl:for-each>
1432
1445
 
@@ -1680,12 +1693,22 @@
1680
1693
  </xsl:template><xsl:template name="insertTableFooterInSeparateTable">
1681
1694
  <xsl:param name="table_attributes"/>
1682
1695
  <xsl:param name="colwidths"/>
1696
+ <xsl:param name="colgroup"/>
1683
1697
 
1684
1698
  <xsl:variable name="isNoteOrFnExist" select="../*[local-name()='note'] or ..//*[local-name()='fn'][local-name(..) != 'name']"/>
1685
1699
 
1686
1700
  <xsl:if test="$isNoteOrFnExist = 'true'">
1687
1701
 
1688
- <xsl:variable name="cols-count" select="count(xalan:nodeset($colwidths)//column)"/>
1702
+ <xsl:variable name="cols-count">
1703
+ <xsl:choose>
1704
+ <xsl:when test="xalan:nodeset($colgroup)//*[local-name()='col']">
1705
+ <xsl:value-of select="count(xalan:nodeset($colgroup)//*[local-name()='col'])"/>
1706
+ </xsl:when>
1707
+ <xsl:otherwise>
1708
+ <xsl:value-of select="count(xalan:nodeset($colwidths)//column)"/>
1709
+ </xsl:otherwise>
1710
+ </xsl:choose>
1711
+ </xsl:variable>
1689
1712
 
1690
1713
  <fo:table keep-with-previous="always">
1691
1714
  <xsl:for-each select="xalan:nodeset($table_attributes)/attribute">
@@ -1703,16 +1726,25 @@
1703
1726
  </xsl:choose>
1704
1727
  </xsl:for-each>
1705
1728
 
1706
- <xsl:for-each select="xalan:nodeset($colwidths)//column">
1707
- <xsl:choose>
1708
- <xsl:when test=". = 1 or . = 0">
1709
- <fo:table-column column-width="proportional-column-width(2)"/>
1710
- </xsl:when>
1711
- <xsl:otherwise>
1712
- <fo:table-column column-width="proportional-column-width({.})"/>
1713
- </xsl:otherwise>
1714
- </xsl:choose>
1715
- </xsl:for-each>
1729
+ <xsl:choose>
1730
+ <xsl:when test="xalan:nodeset($colgroup)//*[local-name()='col']">
1731
+ <xsl:for-each select="xalan:nodeset($colgroup)//*[local-name()='col']">
1732
+ <fo:table-column column-width="{@width}"/>
1733
+ </xsl:for-each>
1734
+ </xsl:when>
1735
+ <xsl:otherwise>
1736
+ <xsl:for-each select="xalan:nodeset($colwidths)//column">
1737
+ <xsl:choose>
1738
+ <xsl:when test=". = 1 or . = 0">
1739
+ <fo:table-column column-width="proportional-column-width(2)"/>
1740
+ </xsl:when>
1741
+ <xsl:otherwise>
1742
+ <fo:table-column column-width="proportional-column-width({.})"/>
1743
+ </xsl:otherwise>
1744
+ </xsl:choose>
1745
+ </xsl:for-each>
1746
+ </xsl:otherwise>
1747
+ </xsl:choose>
1716
1748
 
1717
1749
  <fo:table-body>
1718
1750
  <fo:table-row>
@@ -3883,7 +3915,8 @@
3883
3915
  <fo:table-column column-width="107mm"/>
3884
3916
  <fo:table-column column-width="15mm"/>
3885
3917
  <fo:table-body>
3886
- <fo:table-row font-family="Arial" text-align="center" font-weight="bold" background-color="black" color="white">
3918
+ <fo:table-row text-align="center" font-weight="bold" background-color="black" color="white">
3919
+
3887
3920
  <fo:table-cell border="1pt solid black"><fo:block>Date</fo:block></fo:table-cell>
3888
3921
  <fo:table-cell border="1pt solid black"><fo:block>Type</fo:block></fo:table-cell>
3889
3922
  <fo:table-cell border="1pt solid black"><fo:block>Change</fo:block></fo:table-cell>
@@ -3901,6 +3934,10 @@
3901
3934
  <fo:block><xsl:apply-templates/></fo:block>
3902
3935
  </fo:table-cell>
3903
3936
  </xsl:template><xsl:template name="processBibitem">
3937
+
3938
+
3939
+ <!-- end BIPM bibitem processing-->
3940
+
3904
3941
 
3905
3942
 
3906
3943
 
@@ -328,16 +328,16 @@
328
328
  <xsl:otherwise> <!-- for ordered lists -->
329
329
  <xsl:choose>
330
330
  <xsl:when test="../@type = 'arabic'">
331
- <xsl:number format="a)"/>
331
+ <xsl:number format="a)" lang="en"/>
332
332
  </xsl:when>
333
333
  <xsl:when test="../@type = 'roman'">
334
334
  <xsl:number format="1)"/>
335
335
  </xsl:when>
336
336
  <xsl:when test="../@type = 'alphabet'">
337
- <xsl:number format="a)"/>
337
+ <xsl:number format="a)" lang="en"/>
338
338
  </xsl:when>
339
339
  <xsl:otherwise>
340
- <xsl:number format="a)"/>
340
+ <xsl:number format="a)" lang="en"/>
341
341
  </xsl:otherwise>
342
342
  </xsl:choose>
343
343
  </xsl:otherwise>
@@ -1323,10 +1323,12 @@
1323
1323
 
1324
1324
 
1325
1325
  <xsl:variable name="colwidths">
1326
- <xsl:call-template name="calculate-column-widths">
1327
- <xsl:with-param name="cols-count" select="$cols-count"/>
1328
- <xsl:with-param name="table" select="$simple-table"/>
1329
- </xsl:call-template>
1326
+ <xsl:if test="not(*[local-name()='colgroup']/*[local-name()='col'])">
1327
+ <xsl:call-template name="calculate-column-widths">
1328
+ <xsl:with-param name="cols-count" select="$cols-count"/>
1329
+ <xsl:with-param name="table" select="$simple-table"/>
1330
+ </xsl:call-template>
1331
+ </xsl:if>
1330
1332
  </xsl:variable>
1331
1333
  <!-- colwidths=<xsl:copy-of select="$colwidths"/> -->
1332
1334
 
@@ -1401,16 +1403,25 @@
1401
1403
  <xsl:attribute name="border-bottom">0pt solid black</xsl:attribute> <!-- set 0pt border, because there is a separete table below for footer -->
1402
1404
  </xsl:if>
1403
1405
 
1404
- <xsl:for-each select="xalan:nodeset($colwidths)//column">
1405
- <xsl:choose>
1406
- <xsl:when test=". = 1 or . = 0">
1407
- <fo:table-column column-width="proportional-column-width(2)"/>
1408
- </xsl:when>
1409
- <xsl:otherwise>
1410
- <fo:table-column column-width="proportional-column-width({.})"/>
1411
- </xsl:otherwise>
1412
- </xsl:choose>
1413
- </xsl:for-each>
1406
+ <xsl:choose>
1407
+ <xsl:when test="*[local-name()='colgroup']/*[local-name()='col']">
1408
+ <xsl:for-each select="*[local-name()='colgroup']/*[local-name()='col']">
1409
+ <fo:table-column column-width="{@width}"/>
1410
+ </xsl:for-each>
1411
+ </xsl:when>
1412
+ <xsl:otherwise>
1413
+ <xsl:for-each select="xalan:nodeset($colwidths)//column">
1414
+ <xsl:choose>
1415
+ <xsl:when test=". = 1 or . = 0">
1416
+ <fo:table-column column-width="proportional-column-width(2)"/>
1417
+ </xsl:when>
1418
+ <xsl:otherwise>
1419
+ <fo:table-column column-width="proportional-column-width({.})"/>
1420
+ </xsl:otherwise>
1421
+ </xsl:choose>
1422
+ </xsl:for-each>
1423
+ </xsl:otherwise>
1424
+ </xsl:choose>
1414
1425
 
1415
1426
  <xsl:choose>
1416
1427
  <xsl:when test="not(*[local-name()='tbody']) and *[local-name()='thead']">
@@ -1423,10 +1434,12 @@
1423
1434
 
1424
1435
  </fo:table>
1425
1436
 
1437
+ <xsl:variable name="colgroup" select="*[local-name()='colgroup']"/>
1426
1438
  <xsl:for-each select="*[local-name()='tbody']"><!-- select context to tbody -->
1427
1439
  <xsl:call-template name="insertTableFooterInSeparateTable">
1428
1440
  <xsl:with-param name="table_attributes" select="$table_attributes"/>
1429
1441
  <xsl:with-param name="colwidths" select="$colwidths"/>
1442
+ <xsl:with-param name="colgroup" select="$colgroup"/>
1430
1443
  </xsl:call-template>
1431
1444
  </xsl:for-each>
1432
1445
 
@@ -1680,12 +1693,22 @@
1680
1693
  </xsl:template><xsl:template name="insertTableFooterInSeparateTable">
1681
1694
  <xsl:param name="table_attributes"/>
1682
1695
  <xsl:param name="colwidths"/>
1696
+ <xsl:param name="colgroup"/>
1683
1697
 
1684
1698
  <xsl:variable name="isNoteOrFnExist" select="../*[local-name()='note'] or ..//*[local-name()='fn'][local-name(..) != 'name']"/>
1685
1699
 
1686
1700
  <xsl:if test="$isNoteOrFnExist = 'true'">
1687
1701
 
1688
- <xsl:variable name="cols-count" select="count(xalan:nodeset($colwidths)//column)"/>
1702
+ <xsl:variable name="cols-count">
1703
+ <xsl:choose>
1704
+ <xsl:when test="xalan:nodeset($colgroup)//*[local-name()='col']">
1705
+ <xsl:value-of select="count(xalan:nodeset($colgroup)//*[local-name()='col'])"/>
1706
+ </xsl:when>
1707
+ <xsl:otherwise>
1708
+ <xsl:value-of select="count(xalan:nodeset($colwidths)//column)"/>
1709
+ </xsl:otherwise>
1710
+ </xsl:choose>
1711
+ </xsl:variable>
1689
1712
 
1690
1713
  <fo:table keep-with-previous="always">
1691
1714
  <xsl:for-each select="xalan:nodeset($table_attributes)/attribute">
@@ -1703,16 +1726,25 @@
1703
1726
  </xsl:choose>
1704
1727
  </xsl:for-each>
1705
1728
 
1706
- <xsl:for-each select="xalan:nodeset($colwidths)//column">
1707
- <xsl:choose>
1708
- <xsl:when test=". = 1 or . = 0">
1709
- <fo:table-column column-width="proportional-column-width(2)"/>
1710
- </xsl:when>
1711
- <xsl:otherwise>
1712
- <fo:table-column column-width="proportional-column-width({.})"/>
1713
- </xsl:otherwise>
1714
- </xsl:choose>
1715
- </xsl:for-each>
1729
+ <xsl:choose>
1730
+ <xsl:when test="xalan:nodeset($colgroup)//*[local-name()='col']">
1731
+ <xsl:for-each select="xalan:nodeset($colgroup)//*[local-name()='col']">
1732
+ <fo:table-column column-width="{@width}"/>
1733
+ </xsl:for-each>
1734
+ </xsl:when>
1735
+ <xsl:otherwise>
1736
+ <xsl:for-each select="xalan:nodeset($colwidths)//column">
1737
+ <xsl:choose>
1738
+ <xsl:when test=". = 1 or . = 0">
1739
+ <fo:table-column column-width="proportional-column-width(2)"/>
1740
+ </xsl:when>
1741
+ <xsl:otherwise>
1742
+ <fo:table-column column-width="proportional-column-width({.})"/>
1743
+ </xsl:otherwise>
1744
+ </xsl:choose>
1745
+ </xsl:for-each>
1746
+ </xsl:otherwise>
1747
+ </xsl:choose>
1716
1748
 
1717
1749
  <fo:table-body>
1718
1750
  <fo:table-row>
@@ -3883,7 +3915,8 @@
3883
3915
  <fo:table-column column-width="107mm"/>
3884
3916
  <fo:table-column column-width="15mm"/>
3885
3917
  <fo:table-body>
3886
- <fo:table-row font-family="Arial" text-align="center" font-weight="bold" background-color="black" color="white">
3918
+ <fo:table-row text-align="center" font-weight="bold" background-color="black" color="white">
3919
+
3887
3920
  <fo:table-cell border="1pt solid black"><fo:block>Date</fo:block></fo:table-cell>
3888
3921
  <fo:table-cell border="1pt solid black"><fo:block>Type</fo:block></fo:table-cell>
3889
3922
  <fo:table-cell border="1pt solid black"><fo:block>Change</fo:block></fo:table-cell>
@@ -3901,6 +3934,10 @@
3901
3934
  <fo:block><xsl:apply-templates/></fo:block>
3902
3935
  </fo:table-cell>
3903
3936
  </xsl:template><xsl:template name="processBibitem">
3937
+
3938
+
3939
+ <!-- end BIPM bibitem processing-->
3940
+
3904
3941
 
3905
3942
 
3906
3943
 
@@ -328,16 +328,16 @@
328
328
  <xsl:otherwise> <!-- for ordered lists -->
329
329
  <xsl:choose>
330
330
  <xsl:when test="../@type = 'arabic'">
331
- <xsl:number format="a)"/>
331
+ <xsl:number format="a)" lang="en"/>
332
332
  </xsl:when>
333
333
  <xsl:when test="../@type = 'roman'">
334
334
  <xsl:number format="1)"/>
335
335
  </xsl:when>
336
336
  <xsl:when test="../@type = 'alphabet'">
337
- <xsl:number format="a)"/>
337
+ <xsl:number format="a)" lang="en"/>
338
338
  </xsl:when>
339
339
  <xsl:otherwise>
340
- <xsl:number format="a)"/>
340
+ <xsl:number format="a)" lang="en"/>
341
341
  </xsl:otherwise>
342
342
  </xsl:choose>
343
343
  </xsl:otherwise>
@@ -1323,10 +1323,12 @@
1323
1323
 
1324
1324
 
1325
1325
  <xsl:variable name="colwidths">
1326
- <xsl:call-template name="calculate-column-widths">
1327
- <xsl:with-param name="cols-count" select="$cols-count"/>
1328
- <xsl:with-param name="table" select="$simple-table"/>
1329
- </xsl:call-template>
1326
+ <xsl:if test="not(*[local-name()='colgroup']/*[local-name()='col'])">
1327
+ <xsl:call-template name="calculate-column-widths">
1328
+ <xsl:with-param name="cols-count" select="$cols-count"/>
1329
+ <xsl:with-param name="table" select="$simple-table"/>
1330
+ </xsl:call-template>
1331
+ </xsl:if>
1330
1332
  </xsl:variable>
1331
1333
  <!-- colwidths=<xsl:copy-of select="$colwidths"/> -->
1332
1334
 
@@ -1401,16 +1403,25 @@
1401
1403
  <xsl:attribute name="border-bottom">0pt solid black</xsl:attribute> <!-- set 0pt border, because there is a separete table below for footer -->
1402
1404
  </xsl:if>
1403
1405
 
1404
- <xsl:for-each select="xalan:nodeset($colwidths)//column">
1405
- <xsl:choose>
1406
- <xsl:when test=". = 1 or . = 0">
1407
- <fo:table-column column-width="proportional-column-width(2)"/>
1408
- </xsl:when>
1409
- <xsl:otherwise>
1410
- <fo:table-column column-width="proportional-column-width({.})"/>
1411
- </xsl:otherwise>
1412
- </xsl:choose>
1413
- </xsl:for-each>
1406
+ <xsl:choose>
1407
+ <xsl:when test="*[local-name()='colgroup']/*[local-name()='col']">
1408
+ <xsl:for-each select="*[local-name()='colgroup']/*[local-name()='col']">
1409
+ <fo:table-column column-width="{@width}"/>
1410
+ </xsl:for-each>
1411
+ </xsl:when>
1412
+ <xsl:otherwise>
1413
+ <xsl:for-each select="xalan:nodeset($colwidths)//column">
1414
+ <xsl:choose>
1415
+ <xsl:when test=". = 1 or . = 0">
1416
+ <fo:table-column column-width="proportional-column-width(2)"/>
1417
+ </xsl:when>
1418
+ <xsl:otherwise>
1419
+ <fo:table-column column-width="proportional-column-width({.})"/>
1420
+ </xsl:otherwise>
1421
+ </xsl:choose>
1422
+ </xsl:for-each>
1423
+ </xsl:otherwise>
1424
+ </xsl:choose>
1414
1425
 
1415
1426
  <xsl:choose>
1416
1427
  <xsl:when test="not(*[local-name()='tbody']) and *[local-name()='thead']">
@@ -1423,10 +1434,12 @@
1423
1434
 
1424
1435
  </fo:table>
1425
1436
 
1437
+ <xsl:variable name="colgroup" select="*[local-name()='colgroup']"/>
1426
1438
  <xsl:for-each select="*[local-name()='tbody']"><!-- select context to tbody -->
1427
1439
  <xsl:call-template name="insertTableFooterInSeparateTable">
1428
1440
  <xsl:with-param name="table_attributes" select="$table_attributes"/>
1429
1441
  <xsl:with-param name="colwidths" select="$colwidths"/>
1442
+ <xsl:with-param name="colgroup" select="$colgroup"/>
1430
1443
  </xsl:call-template>
1431
1444
  </xsl:for-each>
1432
1445
 
@@ -1680,12 +1693,22 @@
1680
1693
  </xsl:template><xsl:template name="insertTableFooterInSeparateTable">
1681
1694
  <xsl:param name="table_attributes"/>
1682
1695
  <xsl:param name="colwidths"/>
1696
+ <xsl:param name="colgroup"/>
1683
1697
 
1684
1698
  <xsl:variable name="isNoteOrFnExist" select="../*[local-name()='note'] or ..//*[local-name()='fn'][local-name(..) != 'name']"/>
1685
1699
 
1686
1700
  <xsl:if test="$isNoteOrFnExist = 'true'">
1687
1701
 
1688
- <xsl:variable name="cols-count" select="count(xalan:nodeset($colwidths)//column)"/>
1702
+ <xsl:variable name="cols-count">
1703
+ <xsl:choose>
1704
+ <xsl:when test="xalan:nodeset($colgroup)//*[local-name()='col']">
1705
+ <xsl:value-of select="count(xalan:nodeset($colgroup)//*[local-name()='col'])"/>
1706
+ </xsl:when>
1707
+ <xsl:otherwise>
1708
+ <xsl:value-of select="count(xalan:nodeset($colwidths)//column)"/>
1709
+ </xsl:otherwise>
1710
+ </xsl:choose>
1711
+ </xsl:variable>
1689
1712
 
1690
1713
  <fo:table keep-with-previous="always">
1691
1714
  <xsl:for-each select="xalan:nodeset($table_attributes)/attribute">
@@ -1703,16 +1726,25 @@
1703
1726
  </xsl:choose>
1704
1727
  </xsl:for-each>
1705
1728
 
1706
- <xsl:for-each select="xalan:nodeset($colwidths)//column">
1707
- <xsl:choose>
1708
- <xsl:when test=". = 1 or . = 0">
1709
- <fo:table-column column-width="proportional-column-width(2)"/>
1710
- </xsl:when>
1711
- <xsl:otherwise>
1712
- <fo:table-column column-width="proportional-column-width({.})"/>
1713
- </xsl:otherwise>
1714
- </xsl:choose>
1715
- </xsl:for-each>
1729
+ <xsl:choose>
1730
+ <xsl:when test="xalan:nodeset($colgroup)//*[local-name()='col']">
1731
+ <xsl:for-each select="xalan:nodeset($colgroup)//*[local-name()='col']">
1732
+ <fo:table-column column-width="{@width}"/>
1733
+ </xsl:for-each>
1734
+ </xsl:when>
1735
+ <xsl:otherwise>
1736
+ <xsl:for-each select="xalan:nodeset($colwidths)//column">
1737
+ <xsl:choose>
1738
+ <xsl:when test=". = 1 or . = 0">
1739
+ <fo:table-column column-width="proportional-column-width(2)"/>
1740
+ </xsl:when>
1741
+ <xsl:otherwise>
1742
+ <fo:table-column column-width="proportional-column-width({.})"/>
1743
+ </xsl:otherwise>
1744
+ </xsl:choose>
1745
+ </xsl:for-each>
1746
+ </xsl:otherwise>
1747
+ </xsl:choose>
1716
1748
 
1717
1749
  <fo:table-body>
1718
1750
  <fo:table-row>
@@ -3883,7 +3915,8 @@
3883
3915
  <fo:table-column column-width="107mm"/>
3884
3916
  <fo:table-column column-width="15mm"/>
3885
3917
  <fo:table-body>
3886
- <fo:table-row font-family="Arial" text-align="center" font-weight="bold" background-color="black" color="white">
3918
+ <fo:table-row text-align="center" font-weight="bold" background-color="black" color="white">
3919
+
3887
3920
  <fo:table-cell border="1pt solid black"><fo:block>Date</fo:block></fo:table-cell>
3888
3921
  <fo:table-cell border="1pt solid black"><fo:block>Type</fo:block></fo:table-cell>
3889
3922
  <fo:table-cell border="1pt solid black"><fo:block>Change</fo:block></fo:table-cell>
@@ -3901,6 +3934,10 @@
3901
3934
  <fo:block><xsl:apply-templates/></fo:block>
3902
3935
  </fo:table-cell>
3903
3936
  </xsl:template><xsl:template name="processBibitem">
3937
+
3938
+
3939
+ <!-- end BIPM bibitem processing-->
3940
+
3904
3941
 
3905
3942
 
3906
3943
 
@@ -1,5 +1,5 @@
1
1
  module Metanorma
2
2
  module MPFA
3
- VERSION = "0.5.8"
3
+ VERSION = "0.5.9"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metanorma-mpfa
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.8
4
+ version: 0.5.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-11-30 00:00:00.000000000 Z
11
+ date: 2020-12-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: htmlentities