metanorma-ogc 1.4.4 → 1.4.5

Sign up to get free protection for your applications and to get access to all the features.
@@ -1658,6 +1658,8 @@
1658
1658
 
1659
1659
  <title-list-figures lang="en">List of Figures</title-list-figures>
1660
1660
 
1661
+ <title-table-figures lang="en">Table of Figures</title-table-figures>
1662
+
1661
1663
  <title-list-recommendations lang="en">List of Recommendations</title-list-recommendations>
1662
1664
 
1663
1665
  <title-acknowledgements lang="en">Acknowledgements</title-acknowledgements>
@@ -4562,6 +4564,7 @@
4562
4564
  <xsl:otherwise>
4563
4565
  <fo:block xsl:use-attribute-sets="image-style">
4564
4566
 
4567
+
4565
4568
  <xsl:variable name="src">
4566
4569
  <xsl:call-template name="image_src"/>
4567
4570
  </xsl:variable>
@@ -4928,7 +4931,7 @@
4928
4931
  <xsl:text> </xsl:text>
4929
4932
  </xsl:template><xsl:template match="*[local-name() = 'figure' or local-name() = 'table' or local-name() = 'permission' or local-name() = 'recommendation' or local-name() = 'requirement']/*[local-name() = 'name']/text()" mode="contents" priority="2">
4930
4933
  <xsl:value-of select="."/>
4931
- </xsl:template><xsl:template match="*[local-name() = 'figure' or local-name() = 'table' or local-name() = 'permission' or local-name() = 'recommendation' or local-name() = 'requirement']/*[local-name() = 'name']/text()" mode="bookmarks" priority="2">
4934
+ </xsl:template><xsl:template match="*[local-name() = 'figure' or local-name() = 'table' or local-name() = 'permission' or local-name() = 'recommendation' or local-name() = 'requirement']/*[local-name() = 'name']//text()" mode="bookmarks" priority="2">
4932
4935
  <xsl:value-of select="."/>
4933
4936
  </xsl:template><xsl:template match="node()" mode="contents">
4934
4937
  <xsl:apply-templates mode="contents"/>
@@ -5021,41 +5024,72 @@
5021
5024
 
5022
5025
 
5023
5026
 
5024
- <xsl:if test="//*[local-name() = 'figure'][@id and *[local-name() = 'name']]">
5025
- <fo:bookmark internal-destination="{//*[local-name() = 'figure'][@id and *[local-name() = 'name']][1]/@id}" starting-state="hide">
5026
- <fo:bookmark-title>Figures</fo:bookmark-title>
5027
- <xsl:for-each select="//*[local-name() = 'figure'][@id and *[local-name() = 'name']]">
5027
+
5028
+
5029
+
5030
+
5031
+
5032
+ <xsl:variable name="list_of_tables_">
5033
+ <xsl:for-each select="//*[local-name() = 'table'][@id and *[local-name() = 'name'] and contains(*[local-name() = 'name'], '—')]">
5034
+ <table id="{@id}"><xsl:apply-templates select="*[local-name() = 'name']" mode="bookmarks"/></table>
5035
+ </xsl:for-each>
5036
+ </xsl:variable>
5037
+ <xsl:variable name="list_of_tables" select="xalan:nodeset($list_of_tables_)"/>
5038
+
5039
+ <xsl:variable name="list_of_figures_">
5040
+ <xsl:for-each select="//*[local-name() = 'figure'][@id and *[local-name() = 'name'] and contains(*[local-name() = 'name'], '—')]">
5041
+ <figure id="{@id}"><xsl:apply-templates select="*[local-name() = 'name']" mode="bookmarks"/></figure>
5042
+ </xsl:for-each>
5043
+ </xsl:variable>
5044
+ <xsl:variable name="list_of_figures" select="xalan:nodeset($list_of_figures_)"/>
5045
+
5046
+ <xsl:if test="$list_of_tables//table or $list_of_figures/figure or //*[local-name() = 'table'][.//*[local-name() = 'p'][@class = 'RecommendationTitle']]">
5047
+ <fo:bookmark internal-destination="empty_bookmark">
5048
+ <fo:bookmark-title>—————</fo:bookmark-title>
5049
+ </fo:bookmark>
5050
+ </xsl:if>
5051
+
5052
+ <xsl:if test="$list_of_tables//table">
5053
+ <fo:bookmark internal-destination="empty_bookmark" starting-state="hide"> <!-- {$list_of_tables//table[1]/@id} -->
5054
+ <fo:bookmark-title>
5055
+ <xsl:call-template name="getTitle">
5056
+ <xsl:with-param name="name" select="'title-list-tables'"/>
5057
+ </xsl:call-template>
5058
+ </fo:bookmark-title>
5059
+ <xsl:for-each select="$list_of_tables//table">
5028
5060
  <fo:bookmark internal-destination="{@id}">
5029
- <fo:bookmark-title><xsl:apply-templates select="*[local-name() = 'name']/text()" mode="bookmarks"/></fo:bookmark-title>
5061
+ <fo:bookmark-title><xsl:value-of select="."/></fo:bookmark-title>
5030
5062
  </fo:bookmark>
5031
5063
  </xsl:for-each>
5032
- </fo:bookmark>
5064
+ </fo:bookmark>
5033
5065
  </xsl:if>
5034
-
5035
-
5036
-
5037
- <xsl:if test="//*[local-name() = 'table'][@id and *[local-name() = 'name']]">
5038
- <fo:bookmark internal-destination="{//*[local-name() = 'table'][@id and *[local-name() = 'name']][1]/@id}" starting-state="hide">
5066
+
5067
+ <xsl:if test="$list_of_figures//figure">
5068
+ <fo:bookmark internal-destination="empty_bookmark" starting-state="hide"> <!-- {$list_of_figures//figure[1]/@id} -->
5039
5069
  <fo:bookmark-title>
5040
- <xsl:choose>
5041
- <xsl:when test="@lang = 'fr'">Tableaux</xsl:when>
5042
- <xsl:otherwise>Tables</xsl:otherwise>
5043
- </xsl:choose>
5070
+
5071
+ <xsl:call-template name="getTitle">
5072
+ <xsl:with-param name="name" select="'title-list-figures'"/>
5073
+ </xsl:call-template>
5074
+
5075
+
5044
5076
  </fo:bookmark-title>
5045
- <xsl:for-each select="//*[local-name() = 'table'][@id and *[local-name() = 'name']]">
5077
+ <xsl:for-each select="$list_of_figures//figure">
5046
5078
  <fo:bookmark internal-destination="{@id}">
5047
- <fo:bookmark-title><xsl:apply-templates select="*[local-name() = 'name']//text()" mode="bookmarks"/></fo:bookmark-title>
5079
+ <fo:bookmark-title><xsl:value-of select="."/></fo:bookmark-title>
5048
5080
  </fo:bookmark>
5049
5081
  </xsl:for-each>
5050
- </fo:bookmark>
5082
+ </fo:bookmark>
5051
5083
  </xsl:if>
5052
-
5053
-
5054
-
5055
-
5084
+
5085
+
5056
5086
  <xsl:if test="//*[local-name() = 'table'][.//*[local-name() = 'p'][@class = 'RecommendationTitle']]">
5057
- <fo:bookmark internal-destination="{//*[local-name() = 'table'][.//*[local-name() = 'p'][@class = 'RecommendationTitle']][1]/@id}" starting-state="hide">
5058
- <fo:bookmark-title>Recommendations</fo:bookmark-title>
5087
+ <fo:bookmark internal-destination="empty_bookmark" starting-state="hide"> <!-- {//*[local-name() = 'table'][.//*[local-name() = 'p'][@class = 'RecommendationTitle']][1]/@id} -->
5088
+ <fo:bookmark-title>
5089
+ <xsl:call-template name="getTitle">
5090
+ <xsl:with-param name="name" select="'title-list-recommendations'"/>
5091
+ </xsl:call-template>
5092
+ </fo:bookmark-title>
5059
5093
  <xsl:for-each select="//*[local-name() = 'table'][.//*[local-name() = 'p'][@class = 'RecommendationTitle']]">
5060
5094
  <xsl:variable name="table_id" select="@id"/>
5061
5095
  <fo:bookmark internal-destination="{@id}">
@@ -5063,8 +5097,7 @@
5063
5097
  </fo:bookmark>
5064
5098
  </xsl:for-each>
5065
5099
  </fo:bookmark>
5066
-
5067
- </xsl:if>
5100
+ </xsl:if>
5068
5101
 
5069
5102
 
5070
5103
 
@@ -1658,6 +1658,8 @@
1658
1658
 
1659
1659
  <title-list-figures lang="en">List of Figures</title-list-figures>
1660
1660
 
1661
+ <title-table-figures lang="en">Table of Figures</title-table-figures>
1662
+
1661
1663
  <title-list-recommendations lang="en">List of Recommendations</title-list-recommendations>
1662
1664
 
1663
1665
  <title-acknowledgements lang="en">Acknowledgements</title-acknowledgements>
@@ -4562,6 +4564,7 @@
4562
4564
  <xsl:otherwise>
4563
4565
  <fo:block xsl:use-attribute-sets="image-style">
4564
4566
 
4567
+
4565
4568
  <xsl:variable name="src">
4566
4569
  <xsl:call-template name="image_src"/>
4567
4570
  </xsl:variable>
@@ -4928,7 +4931,7 @@
4928
4931
  <xsl:text> </xsl:text>
4929
4932
  </xsl:template><xsl:template match="*[local-name() = 'figure' or local-name() = 'table' or local-name() = 'permission' or local-name() = 'recommendation' or local-name() = 'requirement']/*[local-name() = 'name']/text()" mode="contents" priority="2">
4930
4933
  <xsl:value-of select="."/>
4931
- </xsl:template><xsl:template match="*[local-name() = 'figure' or local-name() = 'table' or local-name() = 'permission' or local-name() = 'recommendation' or local-name() = 'requirement']/*[local-name() = 'name']/text()" mode="bookmarks" priority="2">
4934
+ </xsl:template><xsl:template match="*[local-name() = 'figure' or local-name() = 'table' or local-name() = 'permission' or local-name() = 'recommendation' or local-name() = 'requirement']/*[local-name() = 'name']//text()" mode="bookmarks" priority="2">
4932
4935
  <xsl:value-of select="."/>
4933
4936
  </xsl:template><xsl:template match="node()" mode="contents">
4934
4937
  <xsl:apply-templates mode="contents"/>
@@ -5021,41 +5024,72 @@
5021
5024
 
5022
5025
 
5023
5026
 
5024
- <xsl:if test="//*[local-name() = 'figure'][@id and *[local-name() = 'name']]">
5025
- <fo:bookmark internal-destination="{//*[local-name() = 'figure'][@id and *[local-name() = 'name']][1]/@id}" starting-state="hide">
5026
- <fo:bookmark-title>Figures</fo:bookmark-title>
5027
- <xsl:for-each select="//*[local-name() = 'figure'][@id and *[local-name() = 'name']]">
5027
+
5028
+
5029
+
5030
+
5031
+
5032
+ <xsl:variable name="list_of_tables_">
5033
+ <xsl:for-each select="//*[local-name() = 'table'][@id and *[local-name() = 'name'] and contains(*[local-name() = 'name'], '—')]">
5034
+ <table id="{@id}"><xsl:apply-templates select="*[local-name() = 'name']" mode="bookmarks"/></table>
5035
+ </xsl:for-each>
5036
+ </xsl:variable>
5037
+ <xsl:variable name="list_of_tables" select="xalan:nodeset($list_of_tables_)"/>
5038
+
5039
+ <xsl:variable name="list_of_figures_">
5040
+ <xsl:for-each select="//*[local-name() = 'figure'][@id and *[local-name() = 'name'] and contains(*[local-name() = 'name'], '—')]">
5041
+ <figure id="{@id}"><xsl:apply-templates select="*[local-name() = 'name']" mode="bookmarks"/></figure>
5042
+ </xsl:for-each>
5043
+ </xsl:variable>
5044
+ <xsl:variable name="list_of_figures" select="xalan:nodeset($list_of_figures_)"/>
5045
+
5046
+ <xsl:if test="$list_of_tables//table or $list_of_figures/figure or //*[local-name() = 'table'][.//*[local-name() = 'p'][@class = 'RecommendationTitle']]">
5047
+ <fo:bookmark internal-destination="empty_bookmark">
5048
+ <fo:bookmark-title>—————</fo:bookmark-title>
5049
+ </fo:bookmark>
5050
+ </xsl:if>
5051
+
5052
+ <xsl:if test="$list_of_tables//table">
5053
+ <fo:bookmark internal-destination="empty_bookmark" starting-state="hide"> <!-- {$list_of_tables//table[1]/@id} -->
5054
+ <fo:bookmark-title>
5055
+ <xsl:call-template name="getTitle">
5056
+ <xsl:with-param name="name" select="'title-list-tables'"/>
5057
+ </xsl:call-template>
5058
+ </fo:bookmark-title>
5059
+ <xsl:for-each select="$list_of_tables//table">
5028
5060
  <fo:bookmark internal-destination="{@id}">
5029
- <fo:bookmark-title><xsl:apply-templates select="*[local-name() = 'name']/text()" mode="bookmarks"/></fo:bookmark-title>
5061
+ <fo:bookmark-title><xsl:value-of select="."/></fo:bookmark-title>
5030
5062
  </fo:bookmark>
5031
5063
  </xsl:for-each>
5032
- </fo:bookmark>
5064
+ </fo:bookmark>
5033
5065
  </xsl:if>
5034
-
5035
-
5036
-
5037
- <xsl:if test="//*[local-name() = 'table'][@id and *[local-name() = 'name']]">
5038
- <fo:bookmark internal-destination="{//*[local-name() = 'table'][@id and *[local-name() = 'name']][1]/@id}" starting-state="hide">
5066
+
5067
+ <xsl:if test="$list_of_figures//figure">
5068
+ <fo:bookmark internal-destination="empty_bookmark" starting-state="hide"> <!-- {$list_of_figures//figure[1]/@id} -->
5039
5069
  <fo:bookmark-title>
5040
- <xsl:choose>
5041
- <xsl:when test="@lang = 'fr'">Tableaux</xsl:when>
5042
- <xsl:otherwise>Tables</xsl:otherwise>
5043
- </xsl:choose>
5070
+
5071
+ <xsl:call-template name="getTitle">
5072
+ <xsl:with-param name="name" select="'title-list-figures'"/>
5073
+ </xsl:call-template>
5074
+
5075
+
5044
5076
  </fo:bookmark-title>
5045
- <xsl:for-each select="//*[local-name() = 'table'][@id and *[local-name() = 'name']]">
5077
+ <xsl:for-each select="$list_of_figures//figure">
5046
5078
  <fo:bookmark internal-destination="{@id}">
5047
- <fo:bookmark-title><xsl:apply-templates select="*[local-name() = 'name']//text()" mode="bookmarks"/></fo:bookmark-title>
5079
+ <fo:bookmark-title><xsl:value-of select="."/></fo:bookmark-title>
5048
5080
  </fo:bookmark>
5049
5081
  </xsl:for-each>
5050
- </fo:bookmark>
5082
+ </fo:bookmark>
5051
5083
  </xsl:if>
5052
-
5053
-
5054
-
5055
-
5084
+
5085
+
5056
5086
  <xsl:if test="//*[local-name() = 'table'][.//*[local-name() = 'p'][@class = 'RecommendationTitle']]">
5057
- <fo:bookmark internal-destination="{//*[local-name() = 'table'][.//*[local-name() = 'p'][@class = 'RecommendationTitle']][1]/@id}" starting-state="hide">
5058
- <fo:bookmark-title>Recommendations</fo:bookmark-title>
5087
+ <fo:bookmark internal-destination="empty_bookmark" starting-state="hide"> <!-- {//*[local-name() = 'table'][.//*[local-name() = 'p'][@class = 'RecommendationTitle']][1]/@id} -->
5088
+ <fo:bookmark-title>
5089
+ <xsl:call-template name="getTitle">
5090
+ <xsl:with-param name="name" select="'title-list-recommendations'"/>
5091
+ </xsl:call-template>
5092
+ </fo:bookmark-title>
5059
5093
  <xsl:for-each select="//*[local-name() = 'table'][.//*[local-name() = 'p'][@class = 'RecommendationTitle']]">
5060
5094
  <xsl:variable name="table_id" select="@id"/>
5061
5095
  <fo:bookmark internal-destination="{@id}">
@@ -5063,8 +5097,7 @@
5063
5097
  </fo:bookmark>
5064
5098
  </xsl:for-each>
5065
5099
  </fo:bookmark>
5066
-
5067
- </xsl:if>
5100
+ </xsl:if>
5068
5101
 
5069
5102
 
5070
5103
 
@@ -1658,6 +1658,8 @@
1658
1658
 
1659
1659
  <title-list-figures lang="en">List of Figures</title-list-figures>
1660
1660
 
1661
+ <title-table-figures lang="en">Table of Figures</title-table-figures>
1662
+
1661
1663
  <title-list-recommendations lang="en">List of Recommendations</title-list-recommendations>
1662
1664
 
1663
1665
  <title-acknowledgements lang="en">Acknowledgements</title-acknowledgements>
@@ -4562,6 +4564,7 @@
4562
4564
  <xsl:otherwise>
4563
4565
  <fo:block xsl:use-attribute-sets="image-style">
4564
4566
 
4567
+
4565
4568
  <xsl:variable name="src">
4566
4569
  <xsl:call-template name="image_src"/>
4567
4570
  </xsl:variable>
@@ -4928,7 +4931,7 @@
4928
4931
  <xsl:text> </xsl:text>
4929
4932
  </xsl:template><xsl:template match="*[local-name() = 'figure' or local-name() = 'table' or local-name() = 'permission' or local-name() = 'recommendation' or local-name() = 'requirement']/*[local-name() = 'name']/text()" mode="contents" priority="2">
4930
4933
  <xsl:value-of select="."/>
4931
- </xsl:template><xsl:template match="*[local-name() = 'figure' or local-name() = 'table' or local-name() = 'permission' or local-name() = 'recommendation' or local-name() = 'requirement']/*[local-name() = 'name']/text()" mode="bookmarks" priority="2">
4934
+ </xsl:template><xsl:template match="*[local-name() = 'figure' or local-name() = 'table' or local-name() = 'permission' or local-name() = 'recommendation' or local-name() = 'requirement']/*[local-name() = 'name']//text()" mode="bookmarks" priority="2">
4932
4935
  <xsl:value-of select="."/>
4933
4936
  </xsl:template><xsl:template match="node()" mode="contents">
4934
4937
  <xsl:apply-templates mode="contents"/>
@@ -5021,41 +5024,72 @@
5021
5024
 
5022
5025
 
5023
5026
 
5024
- <xsl:if test="//*[local-name() = 'figure'][@id and *[local-name() = 'name']]">
5025
- <fo:bookmark internal-destination="{//*[local-name() = 'figure'][@id and *[local-name() = 'name']][1]/@id}" starting-state="hide">
5026
- <fo:bookmark-title>Figures</fo:bookmark-title>
5027
- <xsl:for-each select="//*[local-name() = 'figure'][@id and *[local-name() = 'name']]">
5027
+
5028
+
5029
+
5030
+
5031
+
5032
+ <xsl:variable name="list_of_tables_">
5033
+ <xsl:for-each select="//*[local-name() = 'table'][@id and *[local-name() = 'name'] and contains(*[local-name() = 'name'], '—')]">
5034
+ <table id="{@id}"><xsl:apply-templates select="*[local-name() = 'name']" mode="bookmarks"/></table>
5035
+ </xsl:for-each>
5036
+ </xsl:variable>
5037
+ <xsl:variable name="list_of_tables" select="xalan:nodeset($list_of_tables_)"/>
5038
+
5039
+ <xsl:variable name="list_of_figures_">
5040
+ <xsl:for-each select="//*[local-name() = 'figure'][@id and *[local-name() = 'name'] and contains(*[local-name() = 'name'], '—')]">
5041
+ <figure id="{@id}"><xsl:apply-templates select="*[local-name() = 'name']" mode="bookmarks"/></figure>
5042
+ </xsl:for-each>
5043
+ </xsl:variable>
5044
+ <xsl:variable name="list_of_figures" select="xalan:nodeset($list_of_figures_)"/>
5045
+
5046
+ <xsl:if test="$list_of_tables//table or $list_of_figures/figure or //*[local-name() = 'table'][.//*[local-name() = 'p'][@class = 'RecommendationTitle']]">
5047
+ <fo:bookmark internal-destination="empty_bookmark">
5048
+ <fo:bookmark-title>—————</fo:bookmark-title>
5049
+ </fo:bookmark>
5050
+ </xsl:if>
5051
+
5052
+ <xsl:if test="$list_of_tables//table">
5053
+ <fo:bookmark internal-destination="empty_bookmark" starting-state="hide"> <!-- {$list_of_tables//table[1]/@id} -->
5054
+ <fo:bookmark-title>
5055
+ <xsl:call-template name="getTitle">
5056
+ <xsl:with-param name="name" select="'title-list-tables'"/>
5057
+ </xsl:call-template>
5058
+ </fo:bookmark-title>
5059
+ <xsl:for-each select="$list_of_tables//table">
5028
5060
  <fo:bookmark internal-destination="{@id}">
5029
- <fo:bookmark-title><xsl:apply-templates select="*[local-name() = 'name']/text()" mode="bookmarks"/></fo:bookmark-title>
5061
+ <fo:bookmark-title><xsl:value-of select="."/></fo:bookmark-title>
5030
5062
  </fo:bookmark>
5031
5063
  </xsl:for-each>
5032
- </fo:bookmark>
5064
+ </fo:bookmark>
5033
5065
  </xsl:if>
5034
-
5035
-
5036
-
5037
- <xsl:if test="//*[local-name() = 'table'][@id and *[local-name() = 'name']]">
5038
- <fo:bookmark internal-destination="{//*[local-name() = 'table'][@id and *[local-name() = 'name']][1]/@id}" starting-state="hide">
5066
+
5067
+ <xsl:if test="$list_of_figures//figure">
5068
+ <fo:bookmark internal-destination="empty_bookmark" starting-state="hide"> <!-- {$list_of_figures//figure[1]/@id} -->
5039
5069
  <fo:bookmark-title>
5040
- <xsl:choose>
5041
- <xsl:when test="@lang = 'fr'">Tableaux</xsl:when>
5042
- <xsl:otherwise>Tables</xsl:otherwise>
5043
- </xsl:choose>
5070
+
5071
+ <xsl:call-template name="getTitle">
5072
+ <xsl:with-param name="name" select="'title-list-figures'"/>
5073
+ </xsl:call-template>
5074
+
5075
+
5044
5076
  </fo:bookmark-title>
5045
- <xsl:for-each select="//*[local-name() = 'table'][@id and *[local-name() = 'name']]">
5077
+ <xsl:for-each select="$list_of_figures//figure">
5046
5078
  <fo:bookmark internal-destination="{@id}">
5047
- <fo:bookmark-title><xsl:apply-templates select="*[local-name() = 'name']//text()" mode="bookmarks"/></fo:bookmark-title>
5079
+ <fo:bookmark-title><xsl:value-of select="."/></fo:bookmark-title>
5048
5080
  </fo:bookmark>
5049
5081
  </xsl:for-each>
5050
- </fo:bookmark>
5082
+ </fo:bookmark>
5051
5083
  </xsl:if>
5052
-
5053
-
5054
-
5055
-
5084
+
5085
+
5056
5086
  <xsl:if test="//*[local-name() = 'table'][.//*[local-name() = 'p'][@class = 'RecommendationTitle']]">
5057
- <fo:bookmark internal-destination="{//*[local-name() = 'table'][.//*[local-name() = 'p'][@class = 'RecommendationTitle']][1]/@id}" starting-state="hide">
5058
- <fo:bookmark-title>Recommendations</fo:bookmark-title>
5087
+ <fo:bookmark internal-destination="empty_bookmark" starting-state="hide"> <!-- {//*[local-name() = 'table'][.//*[local-name() = 'p'][@class = 'RecommendationTitle']][1]/@id} -->
5088
+ <fo:bookmark-title>
5089
+ <xsl:call-template name="getTitle">
5090
+ <xsl:with-param name="name" select="'title-list-recommendations'"/>
5091
+ </xsl:call-template>
5092
+ </fo:bookmark-title>
5059
5093
  <xsl:for-each select="//*[local-name() = 'table'][.//*[local-name() = 'p'][@class = 'RecommendationTitle']]">
5060
5094
  <xsl:variable name="table_id" select="@id"/>
5061
5095
  <fo:bookmark internal-destination="{@id}">
@@ -5063,8 +5097,7 @@
5063
5097
  </fo:bookmark>
5064
5098
  </xsl:for-each>
5065
5099
  </fo:bookmark>
5066
-
5067
- </xsl:if>
5100
+ </xsl:if>
5068
5101
 
5069
5102
 
5070
5103
 
@@ -1658,6 +1658,8 @@
1658
1658
 
1659
1659
  <title-list-figures lang="en">List of Figures</title-list-figures>
1660
1660
 
1661
+ <title-table-figures lang="en">Table of Figures</title-table-figures>
1662
+
1661
1663
  <title-list-recommendations lang="en">List of Recommendations</title-list-recommendations>
1662
1664
 
1663
1665
  <title-acknowledgements lang="en">Acknowledgements</title-acknowledgements>
@@ -4562,6 +4564,7 @@
4562
4564
  <xsl:otherwise>
4563
4565
  <fo:block xsl:use-attribute-sets="image-style">
4564
4566
 
4567
+
4565
4568
  <xsl:variable name="src">
4566
4569
  <xsl:call-template name="image_src"/>
4567
4570
  </xsl:variable>
@@ -4928,7 +4931,7 @@
4928
4931
  <xsl:text> </xsl:text>
4929
4932
  </xsl:template><xsl:template match="*[local-name() = 'figure' or local-name() = 'table' or local-name() = 'permission' or local-name() = 'recommendation' or local-name() = 'requirement']/*[local-name() = 'name']/text()" mode="contents" priority="2">
4930
4933
  <xsl:value-of select="."/>
4931
- </xsl:template><xsl:template match="*[local-name() = 'figure' or local-name() = 'table' or local-name() = 'permission' or local-name() = 'recommendation' or local-name() = 'requirement']/*[local-name() = 'name']/text()" mode="bookmarks" priority="2">
4934
+ </xsl:template><xsl:template match="*[local-name() = 'figure' or local-name() = 'table' or local-name() = 'permission' or local-name() = 'recommendation' or local-name() = 'requirement']/*[local-name() = 'name']//text()" mode="bookmarks" priority="2">
4932
4935
  <xsl:value-of select="."/>
4933
4936
  </xsl:template><xsl:template match="node()" mode="contents">
4934
4937
  <xsl:apply-templates mode="contents"/>
@@ -5021,41 +5024,72 @@
5021
5024
 
5022
5025
 
5023
5026
 
5024
- <xsl:if test="//*[local-name() = 'figure'][@id and *[local-name() = 'name']]">
5025
- <fo:bookmark internal-destination="{//*[local-name() = 'figure'][@id and *[local-name() = 'name']][1]/@id}" starting-state="hide">
5026
- <fo:bookmark-title>Figures</fo:bookmark-title>
5027
- <xsl:for-each select="//*[local-name() = 'figure'][@id and *[local-name() = 'name']]">
5027
+
5028
+
5029
+
5030
+
5031
+
5032
+ <xsl:variable name="list_of_tables_">
5033
+ <xsl:for-each select="//*[local-name() = 'table'][@id and *[local-name() = 'name'] and contains(*[local-name() = 'name'], '—')]">
5034
+ <table id="{@id}"><xsl:apply-templates select="*[local-name() = 'name']" mode="bookmarks"/></table>
5035
+ </xsl:for-each>
5036
+ </xsl:variable>
5037
+ <xsl:variable name="list_of_tables" select="xalan:nodeset($list_of_tables_)"/>
5038
+
5039
+ <xsl:variable name="list_of_figures_">
5040
+ <xsl:for-each select="//*[local-name() = 'figure'][@id and *[local-name() = 'name'] and contains(*[local-name() = 'name'], '—')]">
5041
+ <figure id="{@id}"><xsl:apply-templates select="*[local-name() = 'name']" mode="bookmarks"/></figure>
5042
+ </xsl:for-each>
5043
+ </xsl:variable>
5044
+ <xsl:variable name="list_of_figures" select="xalan:nodeset($list_of_figures_)"/>
5045
+
5046
+ <xsl:if test="$list_of_tables//table or $list_of_figures/figure or //*[local-name() = 'table'][.//*[local-name() = 'p'][@class = 'RecommendationTitle']]">
5047
+ <fo:bookmark internal-destination="empty_bookmark">
5048
+ <fo:bookmark-title>—————</fo:bookmark-title>
5049
+ </fo:bookmark>
5050
+ </xsl:if>
5051
+
5052
+ <xsl:if test="$list_of_tables//table">
5053
+ <fo:bookmark internal-destination="empty_bookmark" starting-state="hide"> <!-- {$list_of_tables//table[1]/@id} -->
5054
+ <fo:bookmark-title>
5055
+ <xsl:call-template name="getTitle">
5056
+ <xsl:with-param name="name" select="'title-list-tables'"/>
5057
+ </xsl:call-template>
5058
+ </fo:bookmark-title>
5059
+ <xsl:for-each select="$list_of_tables//table">
5028
5060
  <fo:bookmark internal-destination="{@id}">
5029
- <fo:bookmark-title><xsl:apply-templates select="*[local-name() = 'name']/text()" mode="bookmarks"/></fo:bookmark-title>
5061
+ <fo:bookmark-title><xsl:value-of select="."/></fo:bookmark-title>
5030
5062
  </fo:bookmark>
5031
5063
  </xsl:for-each>
5032
- </fo:bookmark>
5064
+ </fo:bookmark>
5033
5065
  </xsl:if>
5034
-
5035
-
5036
-
5037
- <xsl:if test="//*[local-name() = 'table'][@id and *[local-name() = 'name']]">
5038
- <fo:bookmark internal-destination="{//*[local-name() = 'table'][@id and *[local-name() = 'name']][1]/@id}" starting-state="hide">
5066
+
5067
+ <xsl:if test="$list_of_figures//figure">
5068
+ <fo:bookmark internal-destination="empty_bookmark" starting-state="hide"> <!-- {$list_of_figures//figure[1]/@id} -->
5039
5069
  <fo:bookmark-title>
5040
- <xsl:choose>
5041
- <xsl:when test="@lang = 'fr'">Tableaux</xsl:when>
5042
- <xsl:otherwise>Tables</xsl:otherwise>
5043
- </xsl:choose>
5070
+
5071
+ <xsl:call-template name="getTitle">
5072
+ <xsl:with-param name="name" select="'title-list-figures'"/>
5073
+ </xsl:call-template>
5074
+
5075
+
5044
5076
  </fo:bookmark-title>
5045
- <xsl:for-each select="//*[local-name() = 'table'][@id and *[local-name() = 'name']]">
5077
+ <xsl:for-each select="$list_of_figures//figure">
5046
5078
  <fo:bookmark internal-destination="{@id}">
5047
- <fo:bookmark-title><xsl:apply-templates select="*[local-name() = 'name']//text()" mode="bookmarks"/></fo:bookmark-title>
5079
+ <fo:bookmark-title><xsl:value-of select="."/></fo:bookmark-title>
5048
5080
  </fo:bookmark>
5049
5081
  </xsl:for-each>
5050
- </fo:bookmark>
5082
+ </fo:bookmark>
5051
5083
  </xsl:if>
5052
-
5053
-
5054
-
5055
-
5084
+
5085
+
5056
5086
  <xsl:if test="//*[local-name() = 'table'][.//*[local-name() = 'p'][@class = 'RecommendationTitle']]">
5057
- <fo:bookmark internal-destination="{//*[local-name() = 'table'][.//*[local-name() = 'p'][@class = 'RecommendationTitle']][1]/@id}" starting-state="hide">
5058
- <fo:bookmark-title>Recommendations</fo:bookmark-title>
5087
+ <fo:bookmark internal-destination="empty_bookmark" starting-state="hide"> <!-- {//*[local-name() = 'table'][.//*[local-name() = 'p'][@class = 'RecommendationTitle']][1]/@id} -->
5088
+ <fo:bookmark-title>
5089
+ <xsl:call-template name="getTitle">
5090
+ <xsl:with-param name="name" select="'title-list-recommendations'"/>
5091
+ </xsl:call-template>
5092
+ </fo:bookmark-title>
5059
5093
  <xsl:for-each select="//*[local-name() = 'table'][.//*[local-name() = 'p'][@class = 'RecommendationTitle']]">
5060
5094
  <xsl:variable name="table_id" select="@id"/>
5061
5095
  <fo:bookmark internal-destination="{@id}">
@@ -5063,8 +5097,7 @@
5063
5097
  </fo:bookmark>
5064
5098
  </xsl:for-each>
5065
5099
  </fo:bookmark>
5066
-
5067
- </xsl:if>
5100
+ </xsl:if>
5068
5101
 
5069
5102
 
5070
5103