metanorma-ieee 0.0.5 → 0.0.6

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: 6c86c6a16bc8dd970b847c292e019e32cccadfc47724d72b4bdc1d6088219f57
4
- data.tar.gz: ceefc8bc98e602f43a31838d391ea66ce34589bd02e2c012771fd3d18b75f231
3
+ metadata.gz: 8c9939939b89c93f5ce6e9a8eaa89d0359d094f9591004e36a4b5831980689e5
4
+ data.tar.gz: 276b9b33e783fcc888e618751d51bcd44f9537194c3f591ce705d7f2a54a39f4
5
5
  SHA512:
6
- metadata.gz: e8f6e7048509be967c9e265bd5e30599fe0d329afbf4b48034f9e05d8673c9caaae896c20fa913e38d8c79d3bb293dba2cf87c40b45b39fee6ff69e467055d74
7
- data.tar.gz: be9a6467394e494473dcdf60b4a1cf2cccff6bcdc997ddf047b26d672929555e62e93b021ae728303f3ffd276e3a008270963e5796a1a09719968b5be93f1988
6
+ metadata.gz: 4484ea31dd9daef10321ce9902a445aefa305c5fb6ea1421ec65297509e3403abfd76c77d87659ed6f4a7b1eee19ab3dad77c44355f771c2989b5b5484a2596f
7
+ data.tar.gz: 7253db3fdf6b18ce1e7f622e96a024fdedbfce3a0ce5ce22735b53647d93300e83ddf508a7eb056ae5520c8483c874045d1881fac9203acbd50c58c0f65ec48f
@@ -1,3 +1,5 @@
1
+ # Auto-generated by Cimas: Do not edit it manually!
2
+ # See https://github.com/metanorma/cimas
1
3
  name: rake
2
4
 
3
5
  on:
@@ -7,7 +9,7 @@ on:
7
9
  pull_request:
8
10
 
9
11
  jobs:
10
- rake:
11
- uses: metanorma/metanorma-build-scripts/.github/workflows/generic-rake.yml@main
12
+ notify:
13
+ uses: metanorma/ci/.github/workflows/mn-processor-rake.yml@main
12
14
  secrets:
13
15
  pat_token: ${{ secrets.METANORMA_CI_PAT_TOKEN }}
@@ -0,0 +1,24 @@
1
+ # Auto-generated by Cimas: Do not edit it manually!
2
+ # See https://github.com/metanorma/cimas
3
+ name: release
4
+
5
+ on:
6
+ workflow_dispatch:
7
+ inputs:
8
+ next_version:
9
+ description: |
10
+ Next release version. Possible values: x.y.z, major, minor, patch or pre|rc|etc
11
+ required: true
12
+ default: 'skip'
13
+ push:
14
+ tags: [ v* ]
15
+
16
+ jobs:
17
+ release:
18
+ uses: metanorma/ci/.github/workflows/rubygems-release.yml@main
19
+ with:
20
+ next_version: ${{ github.event.inputs.next_version }}
21
+ secrets:
22
+ rubygems-api-key: ${{ secrets.METANORMA_CI_RUBYGEMS_API_KEY }}
23
+ pat_token: ${{ secrets.METANORMA_CI_PAT_TOKEN }}
24
+
data/.hound.yml ADDED
@@ -0,0 +1,5 @@
1
+ # Auto-generated by Cimas: Do not edit it manually!
2
+ # See https://github.com/metanorma/cimas
3
+ ruby:
4
+ enabled: true
5
+ config_file: .rubocop.yml
@@ -3760,10 +3760,18 @@
3760
3760
 
3761
3761
  <xsl:param name="table_if_debug">false</xsl:param> <!-- set 'true' to put debug width data before table or dl -->
3762
3762
 
3763
- <xsl:variable name="isGenerateTableIF_">
3763
+ <xsl:variable name="isApplyAutolayoutAlgorithm_">
3764
+ true
3765
+ </xsl:variable>
3766
+ <xsl:variable name="isApplyAutolayoutAlgorithm" select="normalize-space($isApplyAutolayoutAlgorithm_)"/>
3764
3767
 
3768
+ <xsl:variable name="isGenerateTableIF_">
3769
+ <xsl:choose>
3770
+ <xsl:when test="$isApplyAutolayoutAlgorithm = 'true'">
3765
3771
  <xsl:value-of select="normalize-space($table_if) = 'true'"/>
3766
-
3772
+ </xsl:when>
3773
+ <xsl:otherwise>false</xsl:otherwise>
3774
+ </xsl:choose>
3767
3775
  </xsl:variable>
3768
3776
  <xsl:variable name="isGenerateTableIF" select="normalize-space($isGenerateTableIF_)"/>
3769
3777
 
@@ -4390,10 +4398,9 @@
4390
4398
  </xsl:attribute-set>
4391
4399
 
4392
4400
  <xsl:attribute-set name="dt-block-style">
4393
- <xsl:attribute name="margin-top">6pt</xsl:attribute>
4401
+ <xsl:attribute name="margin-top">0pt</xsl:attribute>
4394
4402
 
4395
4403
  <xsl:attribute name="margin-left">2mm</xsl:attribute>
4396
- <xsl:attribute name="margin-top">0pt</xsl:attribute>
4397
4404
  <xsl:attribute name="line-height">1.2</xsl:attribute>
4398
4405
 
4399
4406
  </xsl:attribute-set>
@@ -5347,6 +5354,7 @@
5347
5354
 
5348
5355
  <xsl:variable name="margin-side">
5349
5356
  <xsl:choose>
5357
+ <xsl:when test="$isApplyAutolayoutAlgorithm = 'true'">0</xsl:when>
5350
5358
  <xsl:when test="sum(xalan:nodeset($colwidths)//column) &gt; 75">15</xsl:when>
5351
5359
  <xsl:otherwise>0</xsl:otherwise>
5352
5360
  </xsl:choose>
@@ -5431,6 +5439,7 @@
5431
5439
  </td>
5432
5440
  </tr>
5433
5441
  -->
5442
+ <!-- Simple_table=<xsl:copy-of select="$simple-table"/> -->
5434
5443
  <xsl:apply-templates select="xalan:nodeset($simple-table)" mode="process_table-if"/>
5435
5444
 
5436
5445
  </xsl:when>
@@ -5542,9 +5551,17 @@
5542
5551
  <xsl:template name="calculate-column-widths">
5543
5552
  <xsl:param name="table"/>
5544
5553
  <xsl:param name="cols-count"/>
5545
-
5554
+ <xsl:choose>
5555
+ <xsl:when test="$isApplyAutolayoutAlgorithm = 'true'">
5546
5556
  <xsl:call-template name="get-calculated-column-widths-autolayout-algorithm"/>
5547
-
5557
+ </xsl:when>
5558
+ <xsl:otherwise>
5559
+ <xsl:call-template name="calculate-column-widths-proportional">
5560
+ <xsl:with-param name="cols-count" select="$cols-count"/>
5561
+ <xsl:with-param name="table" select="$table"/>
5562
+ </xsl:call-template>
5563
+ </xsl:otherwise>
5564
+ </xsl:choose>
5548
5565
  </xsl:template>
5549
5566
 
5550
5567
  <!-- ================================================== -->
@@ -5722,6 +5739,7 @@
5722
5739
  <!-- (https://www.w3.org/TR/REC-html40/appendix/notes.html#h-B.5.2) -->
5723
5740
  <!-- ================================================== -->
5724
5741
 
5742
+ <!-- INPUT: table with columns widths, generated by table_if.xsl -->
5725
5743
  <xsl:template name="calculate-column-widths-autolayout-algorithm">
5726
5744
  <xsl:param name="parent_table_page-width"/> <!-- for nested tables, in re-calculate step -->
5727
5745
 
@@ -5733,67 +5751,6 @@
5733
5751
 
5734
5752
  <!-- Since line wrap has been disabled, paragraphs are treated as long lines unless broken by BR elements. -->
5735
5753
 
5736
- <!-- get current table id -->
5737
- <xsl:variable name="table_id" select="@id"/>
5738
- <!-- find table by id in the file 'table_widths' -->
5739
- <!-- <xsl:variable name="table-if_" select="$table_widths_from_if//table[@id = $table_id]"/>
5740
- <xsl:variable name="table-if" select="xalan:nodeset($table-if_)"/> -->
5741
-
5742
- <!-- table='<xsl:copy-of select="$table"/>' -->
5743
- <!-- table_id='<xsl:value-of select="$table_id"/>\ -->
5744
- <!-- table-if='<xsl:copy-of select="$table-if"/>' -->
5745
- <!-- table_widths_from_if='<xsl:copy-of select="$table_widths_from_if"/>' -->
5746
-
5747
- <xsl:variable name="table_with_cell_widths_">
5748
- <xsl:apply-templates select="." mode="determine_cell_widths-if"/> <!-- read column's width from IF -->
5749
- </xsl:variable>
5750
- <xsl:variable name="table_with_cell_widths" select="xalan:nodeset($table_with_cell_widths_)"/>
5751
-
5752
- <!-- <xsl:if test="$table_if_debug = 'true'">
5753
- <xsl:copy-of select="$table_with_cell_widths"/>
5754
- </xsl:if> -->
5755
-
5756
- <!-- The minimum and maximum cell widths are then used to determine the corresponding minimum and maximum widths for the columns. -->
5757
-
5758
- <xsl:variable name="column_widths_">
5759
- <!-- iteration of columns -->
5760
- <xsl:for-each select="$table_with_cell_widths//tr[1]/td">
5761
- <xsl:variable name="pos" select="position()"/>
5762
- <column>
5763
- <xsl:attribute name="width_max">
5764
- <xsl:for-each select="ancestor::tbody//tr/td[$pos]/@width_max">
5765
- <xsl:sort select="." data-type="number" order="descending"/>
5766
- <xsl:if test="position() = 1"><xsl:value-of select="."/></xsl:if>
5767
- </xsl:for-each>
5768
- </xsl:attribute>
5769
- <xsl:attribute name="width_min">
5770
- <xsl:for-each select="ancestor::tbody//tr/td[$pos]/@width_min">
5771
- <xsl:sort select="." data-type="number" order="descending"/>
5772
- <xsl:if test="position() = 1"><xsl:value-of select="."/></xsl:if>
5773
- </xsl:for-each>
5774
- </xsl:attribute>
5775
- </column>
5776
- </xsl:for-each>
5777
- </xsl:variable>
5778
- <xsl:variable name="column_widths" select="xalan:nodeset($column_widths_)"/>
5779
-
5780
- <!-- <column_widths>
5781
- <xsl:copy-of select="$column_widths"/>
5782
- </column_widths> -->
5783
-
5784
- <!-- These in turn, are used to find the minimum and maximum width for the table. -->
5785
- <xsl:variable name="table_widths_">
5786
- <table>
5787
- <xsl:attribute name="width_max">
5788
- <xsl:value-of select="sum($column_widths/column/@width_max)"/>
5789
- </xsl:attribute>
5790
- <xsl:attribute name="width_min">
5791
- <xsl:value-of select="sum($column_widths/column/@width_min)"/>
5792
- </xsl:attribute>
5793
- </table>
5794
- </xsl:variable>
5795
- <xsl:variable name="table_widths" select="xalan:nodeset($table_widths_)"/>
5796
-
5797
5754
  <xsl:variable name="page_width">
5798
5755
  <xsl:choose>
5799
5756
  <xsl:when test="$parent_table_page-width != ''">
@@ -5806,16 +5763,13 @@
5806
5763
  </xsl:variable>
5807
5764
 
5808
5765
  <xsl:if test="$table_if_debug = 'true'">
5809
- <table_width>
5810
- <xsl:copy-of select="$table_widths"/>
5811
- </table_width>
5812
- <debug>$page_width=<xsl:value-of select="$page_width"/></debug>
5766
+ <page_width><xsl:value-of select="$page_width"/></page_width>
5813
5767
  </xsl:if>
5814
5768
 
5815
5769
  <!-- There are three cases: -->
5816
5770
  <xsl:choose>
5817
5771
  <!-- 1. The minimum table width is equal to or wider than the available space -->
5818
- <xsl:when test="$table_widths/table/@width_min &gt;= $page_width and 1 = 2"> <!-- this condition isn't working see case 3 below -->
5772
+ <xsl:when test="@width_min &gt;= $page_width and 1 = 2"> <!-- this condition isn't working see case 3 below -->
5819
5773
  <!-- call old algorithm -->
5820
5774
  <case1/>
5821
5775
  <!-- <xsl:variable name="cols-count" select="count(xalan:nodeset($table)/*/tr[1]/td)"/>
@@ -5825,10 +5779,10 @@
5825
5779
  </xsl:call-template> -->
5826
5780
  </xsl:when>
5827
5781
  <!-- 2. The maximum table width fits within the available space. In this case, set the columns to their maximum widths. -->
5828
- <xsl:when test="$table_widths/table/@width_max &lt;= $page_width">
5782
+ <xsl:when test="@width_max &lt;= $page_width">
5829
5783
  <case2/>
5830
5784
  <autolayout/>
5831
- <xsl:for-each select="$column_widths/column/@width_max">
5785
+ <xsl:for-each select="column/@width_max">
5832
5786
  <column divider="100"><xsl:value-of select="."/></column>
5833
5787
  </xsl:for-each>
5834
5788
  </xsl:when>
@@ -5838,19 +5792,19 @@
5838
5792
  For each column, let d be the difference between maximum and minimum width of that column.
5839
5793
  Now set the column's width to the minimum width plus d times W over D.
5840
5794
  This makes columns with large differences between minimum and maximum widths wider than columns with smaller differences. -->
5841
- <xsl:when test="($table_widths/table/@width_max &gt; $page_width and $table_widths/table/@width_min &lt; $page_width) or ($table_widths/table/@width_min &gt;= $page_width)">
5795
+ <xsl:when test="(@width_max &gt; $page_width and @width_min &lt; $page_width) or (@width_min &gt;= $page_width)">
5842
5796
  <!-- difference between the available space and the minimum table width -->
5843
- <xsl:variable name="W" select="$page_width - $table_widths/table/@width_min"/>
5797
+ <xsl:variable name="W" select="$page_width - @width_min"/>
5844
5798
  <W><xsl:value-of select="$W"/></W>
5845
5799
  <!-- difference between maximum and minimum width of the table -->
5846
- <xsl:variable name="D" select="$table_widths/table/@width_max - $table_widths/table/@width_min"/>
5800
+ <xsl:variable name="D" select="@width_max - @width_min"/>
5847
5801
  <D><xsl:value-of select="$D"/></D>
5848
5802
  <case3/>
5849
5803
  <autolayout/>
5850
- <xsl:if test="$table_widths/table/@width_min &gt;= $page_width">
5804
+ <xsl:if test="@width_min &gt;= $page_width">
5851
5805
  <split_keep-within-line>true</split_keep-within-line>
5852
5806
  </xsl:if>
5853
- <xsl:for-each select="$column_widths/column">
5807
+ <xsl:for-each select="column">
5854
5808
  <!-- difference between maximum and minimum width of that column. -->
5855
5809
  <xsl:variable name="d" select="@width_max - @width_min"/>
5856
5810
  <d><xsl:value-of select="$d"/></d>
@@ -5876,23 +5830,39 @@
5876
5830
 
5877
5831
  <parent_element><xsl:value-of select="local-name(..)"/></parent_element>
5878
5832
 
5833
+ <ancestor_tree>
5834
+ <xsl:for-each select="ancestor::*">
5835
+ <ancestor><xsl:value-of select="local-name()"/></ancestor>
5836
+ </xsl:for-each>
5837
+ </ancestor_tree>
5838
+
5879
5839
  <xsl:variable name="parent_table_page-width_">
5880
5840
  <xsl:if test="$parent_table_id != ''">
5881
5841
  <!-- determine column number in the parent table -->
5882
5842
  <xsl:variable name="parent_table_column_number">
5883
5843
  <xsl:choose>
5884
- <xsl:when test="parent::*[local-name() = 'dd']">2</xsl:when>
5844
+ <!-- <xsl:when test="parent::*[local-name() = 'dd']">2</xsl:when> -->
5845
+ <xsl:when test="(ancestor::*[local-name() = 'dd' or local-name() = 'table' or local-name() = 'dl'])[last()][local-name() = 'dd' or local-name() = 'dl']">2</xsl:when>
5885
5846
  <xsl:otherwise> <!-- parent is table -->
5886
5847
  <xsl:value-of select="count(ancestor::*[local-name() = 'td'][1]/preceding-sibling::*[local-name() = 'td']) + 1"/>
5887
5848
  </xsl:otherwise>
5888
5849
  </xsl:choose>
5889
5850
  </xsl:variable>
5890
5851
  <!-- find table by id in the file 'table_widths' and get all Nth `<column>...</column> -->
5891
- <xsl:value-of select="$table_widths_from_if_calculated//table[@id = $parent_table_id]/column[number($parent_table_column_number)]"/>
5852
+
5853
+ <xsl:variable name="parent_table_column_" select="$table_widths_from_if_calculated//table[@id = $parent_table_id]/column[number($parent_table_column_number)]"/>
5854
+ <xsl:variable name="parent_table_column" select="xalan:nodeset($parent_table_column_)"/>
5855
+ <!-- <xsl:variable name="divider">
5856
+ <xsl:value-of select="$parent_table_column/@divider"/>
5857
+ <xsl:if test="not($parent_table_column/@divider)">1</xsl:if>
5858
+ </xsl:variable> -->
5859
+ <xsl:value-of select="$parent_table_column/text()"/> <!-- * 10 -->
5892
5860
  </xsl:if>
5893
5861
  </xsl:variable>
5894
5862
  <xsl:variable name="parent_table_page-width" select="normalize-space($parent_table_page-width_)"/>
5895
5863
 
5864
+ <parent_table_page-width><xsl:value-of select="$parent_table_page-width"/></parent_table_page-width>
5865
+
5896
5866
  <!-- get current table id -->
5897
5867
  <xsl:variable name="table_id" select="@id"/>
5898
5868
 
@@ -5913,50 +5883,6 @@
5913
5883
 
5914
5884
  </xsl:template> <!-- get-calculated-column-widths-autolayout-algorithm -->
5915
5885
 
5916
- <!-- ============================= -->
5917
- <!-- mode: determine_cell_widths-if -->
5918
- <!-- ============================= -->
5919
- <xsl:template match="@*|node()" mode="determine_cell_widths-if">
5920
- <xsl:copy>
5921
- <xsl:apply-templates select="@*|node()" mode="determine_cell_widths-if"/>
5922
- </xsl:copy>
5923
- </xsl:template>
5924
-
5925
- <xsl:template match="td | th" mode="determine_cell_widths-if">
5926
- <xsl:copy>
5927
- <xsl:copy-of select="@*"/>
5928
-
5929
- <!-- The maximum width is given by the widest line. -->
5930
- <xsl:attribute name="width_max">
5931
- <xsl:for-each select="p_len">
5932
- <xsl:sort select="." data-type="number" order="descending"/>
5933
- <xsl:if test="position() = 1"><xsl:value-of select="."/></xsl:if>
5934
- </xsl:for-each>
5935
- </xsl:attribute>
5936
-
5937
- <!-- The minimum width is given by the widest text element (word, image, etc.) -->
5938
- <xsl:variable name="width_min">
5939
- <xsl:for-each select="word_len">
5940
- <xsl:sort select="." data-type="number" order="descending"/>
5941
- <xsl:if test="position() = 1"><xsl:value-of select="."/></xsl:if>
5942
- </xsl:for-each>
5943
- </xsl:variable>
5944
- <xsl:attribute name="width_min">
5945
- <xsl:value-of select="$width_min"/>
5946
- </xsl:attribute>
5947
-
5948
- <xsl:if test="$width_min = 0">
5949
- <xsl:attribute name="width_min">1</xsl:attribute>
5950
- </xsl:if>
5951
-
5952
- <xsl:apply-templates select="node()" mode="determine_cell_widths-if"/>
5953
-
5954
- </xsl:copy>
5955
- </xsl:template>
5956
- <!-- ============================= -->
5957
- <!-- END mode: determine_cell_widths-if -->
5958
- <!-- ============================= -->
5959
-
5960
5886
  <!-- ================================================== -->
5961
5887
  <!-- Calculate column's width based on HTML4 algorithm -->
5962
5888
  <!-- ================================================== -->
@@ -6204,6 +6130,7 @@
6204
6130
  <xsl:when test="$table_or_dl = 'table'">
6205
6131
  <xsl:for-each select="*[local-name() = 'td' or local-name() = 'th']/*">
6206
6132
  <fo:table-row number-columns-spanned="{$col_count}">
6133
+ <xsl:copy-of select="../@font-weight"/>
6207
6134
  <!-- <test_table><xsl:copy-of select="."/></test_table> -->
6208
6135
  <xsl:call-template name="td"/>
6209
6136
  </fo:table-row>
@@ -6368,7 +6295,7 @@
6368
6295
 
6369
6296
  <xsl:apply-templates/>
6370
6297
 
6371
- <xsl:if test="$isGenerateTableIF = 'true'"><fo:inline id="{@id}_end">end</fo:inline></xsl:if> <!-- to determine width of text --> <!-- <xsl:value-of select="$hair_space"/> -->
6298
+ <xsl:if test="$isGenerateTableIF = 'true'"> <fo:inline id="{@id}_end">end</fo:inline></xsl:if> <!-- to determine width of text --> <!-- <xsl:value-of select="$hair_space"/> -->
6372
6299
 
6373
6300
  </fo:block>
6374
6301
  </fo:table-cell>
@@ -6703,6 +6630,7 @@
6703
6630
  <xsl:template match="*[local-name()='dl']">
6704
6631
  <xsl:variable name="isAdded" select="@added"/>
6705
6632
  <xsl:variable name="isDeleted" select="@deleted"/>
6633
+ <!-- <dl><xsl:copy-of select="."/></dl> -->
6706
6634
  <fo:block-container>
6707
6635
 
6708
6636
  <xsl:if test="not(ancestor::*[local-name() = 'quote'])">
@@ -7236,21 +7164,16 @@
7236
7164
  <!-- virtual html table for dl/[dt and dd] for IF (Intermediate Format) -->
7237
7165
  <xsl:template match="*[local-name()='dt']" mode="dl_if">
7238
7166
  <xsl:param name="id"/>
7239
- <xsl:variable name="row_number" select="count(preceding-sibling::*[local-name()='dt']) + 1"/>
7240
7167
  <tr>
7241
7168
  <td>
7242
7169
  <xsl:copy-of select="node()"/>
7243
7170
  </td>
7244
7171
  <td>
7245
-
7246
- <xsl:copy-of select="following-sibling::*[local-name()='dd'][1]/node()[not(local-name() = 'dl')]"/>
7247
-
7248
- <!-- get paragraphs from nested 'dl' -->
7249
- <xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]/*[local-name() = 'dl']" mode="dl_if_nested"/>
7250
-
7172
+ <xsl:copy-of select="following-sibling::*[local-name()='dd'][1]/node()[not(local-name() = 'dl')]"/>
7173
+ <!-- get paragraphs from nested 'dl' -->
7174
+ <xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]/*[local-name() = 'dl']" mode="dl_if_nested"/>
7251
7175
  </td>
7252
7176
  </tr>
7253
-
7254
7177
  </xsl:template>
7255
7178
  <xsl:template match="*[local-name()='dd']" mode="dl_if"/>
7256
7179
 
@@ -7901,6 +7824,9 @@
7901
7824
  <xsl:variable name="td">
7902
7825
  <xsl:element name="td">
7903
7826
  <xsl:attribute name="divide"><xsl:value-of select="@colspan"/></xsl:attribute>
7827
+ <xsl:if test="local-name()='th'">
7828
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
7829
+ </xsl:if>
7904
7830
  <xsl:apply-templates select="@*" mode="simple-table-colspan"/>
7905
7831
  <xsl:apply-templates mode="simple-table-colspan"/>
7906
7832
  </xsl:element>
@@ -7913,6 +7839,9 @@
7913
7839
  <xsl:otherwise>
7914
7840
  <xsl:element name="td">
7915
7841
  <xsl:apply-templates select="@*" mode="simple-table-colspan"/>
7842
+ <xsl:if test="local-name()='th'">
7843
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
7844
+ </xsl:if>
7916
7845
  <xsl:apply-templates mode="simple-table-colspan"/>
7917
7846
  </xsl:element>
7918
7847
  </xsl:otherwise>
@@ -8042,8 +7971,14 @@
8042
7971
  <xsl:copy-of select="@*"/>
8043
7972
  <xsl:variable name="row_number" select="count(../preceding-sibling::*) + 1"/>
8044
7973
  <xsl:variable name="col_number" select="count(preceding-sibling::*) + 1"/>
7974
+ <xsl:variable name="divide">
7975
+ <xsl:choose>
7976
+ <xsl:when test="@divide"><xsl:value-of select="@divide"/></xsl:when>
7977
+ <xsl:otherwise>1</xsl:otherwise>
7978
+ </xsl:choose>
7979
+ </xsl:variable>
8045
7980
  <xsl:attribute name="id">
8046
- <xsl:value-of select="concat($id,'_',$row_number,'_',$col_number)"/>
7981
+ <xsl:value-of select="concat($id,'_',$row_number,'_',$col_number,'_',$divide)"/>
8047
7982
  </xsl:attribute>
8048
7983
 
8049
7984
  <xsl:for-each select="*[local-name() = 'p']">
@@ -8051,10 +7986,12 @@
8051
7986
  <xsl:copy-of select="@*"/>
8052
7987
  <xsl:variable name="p_num" select="count(preceding-sibling::*[local-name() = 'p']) + 1"/>
8053
7988
  <xsl:attribute name="id">
8054
- <xsl:value-of select="concat($id,'_',$row_number,'_',$col_number,'_p_',$p_num)"/>
7989
+ <xsl:value-of select="concat($id,'_',$row_number,'_',$col_number,'_p_',$p_num,'_',$divide)"/>
8055
7990
  </xsl:attribute>
8056
7991
 
8057
- <xsl:copy-of select="node()"/>
7992
+ <!-- <xsl:copy-of select="node()" /> -->
7993
+ <xsl:apply-templates mode="simple-table-noid"/>
7994
+
8058
7995
  </xsl:copy>
8059
7996
  </xsl:for-each>
8060
7997
 
@@ -8083,7 +8020,7 @@
8083
8020
  <xsl:variable name="num" select="count(preceding-sibling::word) + 1"/>
8084
8021
  <xsl:copy>
8085
8022
  <xsl:attribute name="id">
8086
- <xsl:value-of select="concat($id,'_',$row_number,'_',$col_number,'_word_',$num)"/>
8023
+ <xsl:value-of select="concat($id,'_',$row_number,'_',$col_number,'_word_',$num,'_',$divide)"/>
8087
8024
  </xsl:attribute>
8088
8025
  <xsl:copy-of select="node()"/>
8089
8026
  </xsl:copy>
@@ -8092,6 +8029,24 @@
8092
8029
  </xsl:copy>
8093
8030
 
8094
8031
  </xsl:template>
8032
+
8033
+ <xsl:template match="*[local-name()='th' or local-name()='td']/*[local-name() = 'p']//*" mode="simple-table-noid">
8034
+ <xsl:copy>
8035
+ <xsl:choose>
8036
+ <xsl:when test="$isGenerateTableIF = 'true'">
8037
+ <xsl:copy-of select="@*[local-name() != 'id']"/> <!-- to prevent repeat id in colspan/rowspan cells -->
8038
+ <!-- <xsl:if test="local-name() = 'dl' or local-name() = 'table'">
8039
+ <xsl:copy-of select="@id"/>
8040
+ </xsl:if> -->
8041
+ </xsl:when>
8042
+ <xsl:otherwise>
8043
+ <xsl:copy-of select="@*"/>
8044
+ </xsl:otherwise>
8045
+ </xsl:choose>
8046
+ <xsl:apply-templates select="node()" mode="simple-table-noid"/>
8047
+ </xsl:copy>
8048
+ </xsl:template>
8049
+
8095
8050
  <!-- End mode: simple-table-id -->
8096
8051
  <!-- ===================== -->
8097
8052
  <!-- ===================== -->
@@ -8101,7 +8056,7 @@
8101
8056
  <!-- =============================== -->
8102
8057
  <xsl:template match="@*|node()" mode="td_text_with_formatting">
8103
8058
  <xsl:copy>
8104
- <xsl:apply-templates select="@*|node()" mode="td_text_with_formatting"/>
8059
+ <xsl:apply-templates select="@*|node()" mode="td_text_with_formatting"/>
8105
8060
  </xsl:copy>
8106
8061
  </xsl:template>
8107
8062
 
@@ -8215,6 +8170,10 @@
8215
8170
 
8216
8171
  <fo:inline xsl:use-attribute-sets="mathml-style">
8217
8172
 
8173
+ <xsl:if test="$isGenerateTableIF = 'true' and ancestor::*[local-name() = 'td' or local-name() = 'th' or local-name() = 'dl'] and not(following-sibling::node()[not(self::comment())][normalize-space() != ''])"> <!-- math in table cell, and math is last element -->
8174
+ <!-- <xsl:attribute name="padding-right">1mm</xsl:attribute> -->
8175
+ </xsl:if>
8176
+
8218
8177
  <xsl:call-template name="setTrackChangesStyles">
8219
8178
  <xsl:with-param name="isAdded" select="$isAdded"/>
8220
8179
  <xsl:with-param name="isDeleted" select="$isDeleted"/>
@@ -10208,15 +10167,12 @@
10208
10167
 
10209
10168
  <xsl:template match="*[local-name()='tr']" mode="requirement">
10210
10169
  <fo:table-row height="7mm" border-bottom="0.5pt solid grey">
10211
- <xsl:if test="parent::*[local-name()='thead']"> <!-- and not(ancestor::*[local-name() = 'table'][@class = 'recommendation' or @class='requirement' or @class='permission']) -->
10212
- <xsl:attribute name="background-color">rgb(33, 55, 92)</xsl:attribute>
10213
- </xsl:if>
10214
- <xsl:if test="starts-with(*[local-name()='td'][1], 'Requirement ')">
10215
- <xsl:attribute name="background-color">rgb(252, 246, 222)</xsl:attribute>
10216
- </xsl:if>
10217
- <xsl:if test="starts-with(*[local-name()='td'][1], 'Recommendation ')">
10218
- <xsl:attribute name="background-color">rgb(233, 235, 239)</xsl:attribute>
10170
+
10171
+ <xsl:if test="parent::*[local-name()='thead'] or starts-with(*[local-name()='td' or local-name()='th'][1], 'Requirement ') or starts-with(*[local-name()='td' or local-name()='th'][1], 'Recommendation ')">
10172
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
10173
+
10219
10174
  </xsl:if>
10175
+
10220
10176
  <xsl:apply-templates mode="requirement"/>
10221
10177
  </fo:table-row>
10222
10178
  </xsl:template>
@@ -11764,7 +11720,7 @@
11764
11720
  </tbody>
11765
11721
  </xsl:variable>
11766
11722
  <xsl:variable name="cols-count" select="count(xalan:nodeset($toc_table_simple)/*/tr[1]/td)"/>
11767
- <xsl:call-template name="calculate-column-widths">
11723
+ <xsl:call-template name="calculate-column-widths-proportional">
11768
11724
  <xsl:with-param name="cols-count" select="$cols-count"/>
11769
11725
  <xsl:with-param name="table" select="$toc_table_simple"/>
11770
11726
  </xsl:call-template>