metanorma-ogc 1.2.9 → 1.2.10

Sign up to get free protection for your applications and to get access to all the features.
@@ -1887,6 +1887,7 @@
1887
1887
  <xsl:attribute name="font-weight">bold</xsl:attribute>
1888
1888
  <xsl:attribute name="padding-right">1mm</xsl:attribute>
1889
1889
 
1890
+
1890
1891
  </xsl:attribute-set><xsl:attribute-set name="quote-style">
1891
1892
 
1892
1893
  <xsl:attribute name="margin-top">12pt</xsl:attribute>
@@ -2946,7 +2947,9 @@
2946
2947
  </xsl:template><xsl:template match="*[local-name()='dl']">
2947
2948
  <fo:block-container>
2948
2949
 
2949
- <xsl:attribute name="margin-left">0mm</xsl:attribute>
2950
+ <xsl:if test="not(ancestor::*[local-name() = 'quote'])">
2951
+ <xsl:attribute name="margin-left">0mm</xsl:attribute>
2952
+ </xsl:if>
2950
2953
 
2951
2954
 
2952
2955
  <xsl:if test="parent::*[local-name() = 'note']">
@@ -2961,6 +2964,7 @@
2961
2964
  <fo:block-container>
2962
2965
 
2963
2966
  <xsl:attribute name="margin-left">0mm</xsl:attribute>
2967
+ <xsl:attribute name="margin-right">0mm</xsl:attribute>
2964
2968
 
2965
2969
 
2966
2970
  <xsl:variable name="parent" select="local-name(..)"/>
@@ -3144,12 +3148,32 @@
3144
3148
  </xsl:otherwise>
3145
3149
  </xsl:choose>
3146
3150
  </xsl:template><xsl:template name="getMaxLength_dt">
3147
- <xsl:for-each select="*[local-name()='dt']">
3148
- <xsl:sort select="string-length(normalize-space(.))" data-type="number" order="descending"/>
3149
- <xsl:if test="position() = 1">
3150
- <xsl:value-of select="string-length(normalize-space(.))"/>
3151
- </xsl:if>
3152
- </xsl:for-each>
3151
+ <xsl:variable name="lengths">
3152
+ <xsl:for-each select="*[local-name()='dt']">
3153
+ <xsl:variable name="maintext_length" select="string-length(normalize-space(.))"/>
3154
+ <xsl:variable name="attributes">
3155
+ <xsl:for-each select=".//@open"><xsl:value-of select="."/></xsl:for-each>
3156
+ <xsl:for-each select=".//@close"><xsl:value-of select="."/></xsl:for-each>
3157
+ </xsl:variable>
3158
+ <length><xsl:value-of select="string-length(normalize-space(.)) + string-length($attributes)"/></length>
3159
+ </xsl:for-each>
3160
+ </xsl:variable>
3161
+ <xsl:variable name="maxLength">
3162
+ <!-- <xsl:for-each select="*[local-name()='dt']">
3163
+ <xsl:sort select="string-length(normalize-space(.))" data-type="number" order="descending"/>
3164
+ <xsl:if test="position() = 1">
3165
+ <xsl:value-of select="string-length(normalize-space(.))"/>
3166
+ </xsl:if>
3167
+ </xsl:for-each> -->
3168
+ <xsl:for-each select="xalan:nodeset($lengths)/length">
3169
+ <xsl:sort select="." data-type="number" order="descending"/>
3170
+ <xsl:if test="position() = 1">
3171
+ <xsl:value-of select="."/>
3172
+ </xsl:if>
3173
+ </xsl:for-each>
3174
+ </xsl:variable>
3175
+ <!-- <xsl:message>DEBUG:<xsl:value-of select="$maxLength"/></xsl:message> -->
3176
+ <xsl:value-of select="$maxLength"/>
3153
3177
  </xsl:template><xsl:template match="*[local-name()='dl']/*[local-name()='note']" priority="2">
3154
3178
  <xsl:param name="key_iso"/>
3155
3179
 
@@ -3959,6 +3983,8 @@
3959
3983
  <xsl:variable name="bookmark-title_">
3960
3984
  <xsl:call-template name="getLangVersion">
3961
3985
  <xsl:with-param name="lang" select="@lang"/>
3986
+ <xsl:with-param name="doctype" select="@doctype"/>
3987
+ <xsl:with-param name="title" select="@title-part"/>
3962
3988
  </xsl:call-template>
3963
3989
  </xsl:variable>
3964
3990
  <xsl:choose>
@@ -3976,13 +4002,34 @@
3976
4002
  </xsl:choose>
3977
4003
  </fo:bookmark-title>
3978
4004
  <xsl:apply-templates select="contents/item" mode="bookmark"/>
4005
+
4006
+ <xsl:call-template name="insertFigureBookmarks">
4007
+ <xsl:with-param name="contents" select="contents"/>
4008
+ </xsl:call-template>
4009
+
4010
+ <xsl:call-template name="insertTableBookmarks">
4011
+ <xsl:with-param name="contents" select="contents"/>
4012
+ <xsl:with-param name="lang" select="@lang"/>
4013
+ </xsl:call-template>
4014
+
3979
4015
  </fo:bookmark>
3980
4016
 
3981
4017
  </xsl:for-each>
3982
4018
  </xsl:when>
3983
4019
  <xsl:otherwise>
3984
4020
  <xsl:for-each select="xalan:nodeset($contents)/doc">
4021
+
3985
4022
  <xsl:apply-templates select="contents/item" mode="bookmark"/>
4023
+
4024
+ <xsl:call-template name="insertFigureBookmarks">
4025
+ <xsl:with-param name="contents" select="contents"/>
4026
+ </xsl:call-template>
4027
+
4028
+ <xsl:call-template name="insertTableBookmarks">
4029
+ <xsl:with-param name="contents" select="contents"/>
4030
+ <xsl:with-param name="lang" select="@lang"/>
4031
+ </xsl:call-template>
4032
+
3986
4033
  </xsl:for-each>
3987
4034
  </xsl:otherwise>
3988
4035
  </xsl:choose>
@@ -4044,8 +4091,44 @@
4044
4091
 
4045
4092
  </fo:bookmark-tree>
4046
4093
  </xsl:if>
4094
+ </xsl:template><xsl:template name="insertFigureBookmarks">
4095
+ <xsl:param name="contents"/>
4096
+ <xsl:if test="xalan:nodeset($contents)/figure">
4097
+ <fo:bookmark internal-destination="{xalan:nodeset($contents)/figure[1]/@id}" starting-state="hide">
4098
+ <fo:bookmark-title>Figures</fo:bookmark-title>
4099
+ <xsl:for-each select="xalan:nodeset($contents)/figure">
4100
+ <fo:bookmark internal-destination="{@id}">
4101
+ <fo:bookmark-title>
4102
+ <xsl:value-of select="normalize-space(title)"/>
4103
+ </fo:bookmark-title>
4104
+ </fo:bookmark>
4105
+ </xsl:for-each>
4106
+ </fo:bookmark>
4107
+ </xsl:if>
4108
+ </xsl:template><xsl:template name="insertTableBookmarks">
4109
+ <xsl:param name="contents"/>
4110
+ <xsl:param name="lang"/>
4111
+ <xsl:if test="xalan:nodeset($contents)/table">
4112
+ <fo:bookmark internal-destination="{xalan:nodeset($contents)/table[1]/@id}" starting-state="hide">
4113
+ <fo:bookmark-title>
4114
+ <xsl:choose>
4115
+ <xsl:when test="$lang = 'fr'">Tableaux</xsl:when>
4116
+ <xsl:otherwise>Tables</xsl:otherwise>
4117
+ </xsl:choose>
4118
+ </fo:bookmark-title>
4119
+ <xsl:for-each select="xalan:nodeset($contents)/table">
4120
+ <fo:bookmark internal-destination="{@id}">
4121
+ <fo:bookmark-title>
4122
+ <xsl:value-of select="normalize-space(title)"/>
4123
+ </fo:bookmark-title>
4124
+ </fo:bookmark>
4125
+ </xsl:for-each>
4126
+ </fo:bookmark>
4127
+ </xsl:if>
4047
4128
  </xsl:template><xsl:template name="getLangVersion">
4048
4129
  <xsl:param name="lang"/>
4130
+ <xsl:param name="doctype" select="''"/>
4131
+ <xsl:param name="title" select="''"/>
4049
4132
  <xsl:choose>
4050
4133
  <xsl:when test="$lang = 'en'">
4051
4134
 
@@ -4548,7 +4631,8 @@
4548
4631
  <fo:block-container margin-left="0mm">
4549
4632
 
4550
4633
  <fo:block xsl:use-attribute-sets="quote-style">
4551
- <xsl:apply-templates select=".//*[local-name() = 'p']"/>
4634
+ <!-- <xsl:apply-templates select=".//*[local-name() = 'p']"/> -->
4635
+ <xsl:apply-templates select="./*[not(local-name() = 'author') and not(local-name() = 'source')]"/> <!-- process all nested nodes, except author and source -->
4552
4636
  </fo:block>
4553
4637
  <xsl:if test="*[local-name() = 'author'] or *[local-name() = 'source']">
4554
4638
  <fo:block xsl:use-attribute-sets="quote-source-style">
@@ -1887,6 +1887,7 @@
1887
1887
  <xsl:attribute name="font-weight">bold</xsl:attribute>
1888
1888
  <xsl:attribute name="padding-right">1mm</xsl:attribute>
1889
1889
 
1890
+
1890
1891
  </xsl:attribute-set><xsl:attribute-set name="quote-style">
1891
1892
 
1892
1893
  <xsl:attribute name="margin-top">12pt</xsl:attribute>
@@ -2946,7 +2947,9 @@
2946
2947
  </xsl:template><xsl:template match="*[local-name()='dl']">
2947
2948
  <fo:block-container>
2948
2949
 
2949
- <xsl:attribute name="margin-left">0mm</xsl:attribute>
2950
+ <xsl:if test="not(ancestor::*[local-name() = 'quote'])">
2951
+ <xsl:attribute name="margin-left">0mm</xsl:attribute>
2952
+ </xsl:if>
2950
2953
 
2951
2954
 
2952
2955
  <xsl:if test="parent::*[local-name() = 'note']">
@@ -2961,6 +2964,7 @@
2961
2964
  <fo:block-container>
2962
2965
 
2963
2966
  <xsl:attribute name="margin-left">0mm</xsl:attribute>
2967
+ <xsl:attribute name="margin-right">0mm</xsl:attribute>
2964
2968
 
2965
2969
 
2966
2970
  <xsl:variable name="parent" select="local-name(..)"/>
@@ -3144,12 +3148,32 @@
3144
3148
  </xsl:otherwise>
3145
3149
  </xsl:choose>
3146
3150
  </xsl:template><xsl:template name="getMaxLength_dt">
3147
- <xsl:for-each select="*[local-name()='dt']">
3148
- <xsl:sort select="string-length(normalize-space(.))" data-type="number" order="descending"/>
3149
- <xsl:if test="position() = 1">
3150
- <xsl:value-of select="string-length(normalize-space(.))"/>
3151
- </xsl:if>
3152
- </xsl:for-each>
3151
+ <xsl:variable name="lengths">
3152
+ <xsl:for-each select="*[local-name()='dt']">
3153
+ <xsl:variable name="maintext_length" select="string-length(normalize-space(.))"/>
3154
+ <xsl:variable name="attributes">
3155
+ <xsl:for-each select=".//@open"><xsl:value-of select="."/></xsl:for-each>
3156
+ <xsl:for-each select=".//@close"><xsl:value-of select="."/></xsl:for-each>
3157
+ </xsl:variable>
3158
+ <length><xsl:value-of select="string-length(normalize-space(.)) + string-length($attributes)"/></length>
3159
+ </xsl:for-each>
3160
+ </xsl:variable>
3161
+ <xsl:variable name="maxLength">
3162
+ <!-- <xsl:for-each select="*[local-name()='dt']">
3163
+ <xsl:sort select="string-length(normalize-space(.))" data-type="number" order="descending"/>
3164
+ <xsl:if test="position() = 1">
3165
+ <xsl:value-of select="string-length(normalize-space(.))"/>
3166
+ </xsl:if>
3167
+ </xsl:for-each> -->
3168
+ <xsl:for-each select="xalan:nodeset($lengths)/length">
3169
+ <xsl:sort select="." data-type="number" order="descending"/>
3170
+ <xsl:if test="position() = 1">
3171
+ <xsl:value-of select="."/>
3172
+ </xsl:if>
3173
+ </xsl:for-each>
3174
+ </xsl:variable>
3175
+ <!-- <xsl:message>DEBUG:<xsl:value-of select="$maxLength"/></xsl:message> -->
3176
+ <xsl:value-of select="$maxLength"/>
3153
3177
  </xsl:template><xsl:template match="*[local-name()='dl']/*[local-name()='note']" priority="2">
3154
3178
  <xsl:param name="key_iso"/>
3155
3179
 
@@ -3959,6 +3983,8 @@
3959
3983
  <xsl:variable name="bookmark-title_">
3960
3984
  <xsl:call-template name="getLangVersion">
3961
3985
  <xsl:with-param name="lang" select="@lang"/>
3986
+ <xsl:with-param name="doctype" select="@doctype"/>
3987
+ <xsl:with-param name="title" select="@title-part"/>
3962
3988
  </xsl:call-template>
3963
3989
  </xsl:variable>
3964
3990
  <xsl:choose>
@@ -3976,13 +4002,34 @@
3976
4002
  </xsl:choose>
3977
4003
  </fo:bookmark-title>
3978
4004
  <xsl:apply-templates select="contents/item" mode="bookmark"/>
4005
+
4006
+ <xsl:call-template name="insertFigureBookmarks">
4007
+ <xsl:with-param name="contents" select="contents"/>
4008
+ </xsl:call-template>
4009
+
4010
+ <xsl:call-template name="insertTableBookmarks">
4011
+ <xsl:with-param name="contents" select="contents"/>
4012
+ <xsl:with-param name="lang" select="@lang"/>
4013
+ </xsl:call-template>
4014
+
3979
4015
  </fo:bookmark>
3980
4016
 
3981
4017
  </xsl:for-each>
3982
4018
  </xsl:when>
3983
4019
  <xsl:otherwise>
3984
4020
  <xsl:for-each select="xalan:nodeset($contents)/doc">
4021
+
3985
4022
  <xsl:apply-templates select="contents/item" mode="bookmark"/>
4023
+
4024
+ <xsl:call-template name="insertFigureBookmarks">
4025
+ <xsl:with-param name="contents" select="contents"/>
4026
+ </xsl:call-template>
4027
+
4028
+ <xsl:call-template name="insertTableBookmarks">
4029
+ <xsl:with-param name="contents" select="contents"/>
4030
+ <xsl:with-param name="lang" select="@lang"/>
4031
+ </xsl:call-template>
4032
+
3986
4033
  </xsl:for-each>
3987
4034
  </xsl:otherwise>
3988
4035
  </xsl:choose>
@@ -4044,8 +4091,44 @@
4044
4091
 
4045
4092
  </fo:bookmark-tree>
4046
4093
  </xsl:if>
4094
+ </xsl:template><xsl:template name="insertFigureBookmarks">
4095
+ <xsl:param name="contents"/>
4096
+ <xsl:if test="xalan:nodeset($contents)/figure">
4097
+ <fo:bookmark internal-destination="{xalan:nodeset($contents)/figure[1]/@id}" starting-state="hide">
4098
+ <fo:bookmark-title>Figures</fo:bookmark-title>
4099
+ <xsl:for-each select="xalan:nodeset($contents)/figure">
4100
+ <fo:bookmark internal-destination="{@id}">
4101
+ <fo:bookmark-title>
4102
+ <xsl:value-of select="normalize-space(title)"/>
4103
+ </fo:bookmark-title>
4104
+ </fo:bookmark>
4105
+ </xsl:for-each>
4106
+ </fo:bookmark>
4107
+ </xsl:if>
4108
+ </xsl:template><xsl:template name="insertTableBookmarks">
4109
+ <xsl:param name="contents"/>
4110
+ <xsl:param name="lang"/>
4111
+ <xsl:if test="xalan:nodeset($contents)/table">
4112
+ <fo:bookmark internal-destination="{xalan:nodeset($contents)/table[1]/@id}" starting-state="hide">
4113
+ <fo:bookmark-title>
4114
+ <xsl:choose>
4115
+ <xsl:when test="$lang = 'fr'">Tableaux</xsl:when>
4116
+ <xsl:otherwise>Tables</xsl:otherwise>
4117
+ </xsl:choose>
4118
+ </fo:bookmark-title>
4119
+ <xsl:for-each select="xalan:nodeset($contents)/table">
4120
+ <fo:bookmark internal-destination="{@id}">
4121
+ <fo:bookmark-title>
4122
+ <xsl:value-of select="normalize-space(title)"/>
4123
+ </fo:bookmark-title>
4124
+ </fo:bookmark>
4125
+ </xsl:for-each>
4126
+ </fo:bookmark>
4127
+ </xsl:if>
4047
4128
  </xsl:template><xsl:template name="getLangVersion">
4048
4129
  <xsl:param name="lang"/>
4130
+ <xsl:param name="doctype" select="''"/>
4131
+ <xsl:param name="title" select="''"/>
4049
4132
  <xsl:choose>
4050
4133
  <xsl:when test="$lang = 'en'">
4051
4134
 
@@ -4548,7 +4631,8 @@
4548
4631
  <fo:block-container margin-left="0mm">
4549
4632
 
4550
4633
  <fo:block xsl:use-attribute-sets="quote-style">
4551
- <xsl:apply-templates select=".//*[local-name() = 'p']"/>
4634
+ <!-- <xsl:apply-templates select=".//*[local-name() = 'p']"/> -->
4635
+ <xsl:apply-templates select="./*[not(local-name() = 'author') and not(local-name() = 'source')]"/> <!-- process all nested nodes, except author and source -->
4552
4636
  </fo:block>
4553
4637
  <xsl:if test="*[local-name() = 'author'] or *[local-name() = 'source']">
4554
4638
  <fo:block xsl:use-attribute-sets="quote-source-style">
@@ -1887,6 +1887,7 @@
1887
1887
  <xsl:attribute name="font-weight">bold</xsl:attribute>
1888
1888
  <xsl:attribute name="padding-right">1mm</xsl:attribute>
1889
1889
 
1890
+
1890
1891
  </xsl:attribute-set><xsl:attribute-set name="quote-style">
1891
1892
 
1892
1893
  <xsl:attribute name="margin-top">12pt</xsl:attribute>
@@ -2946,7 +2947,9 @@
2946
2947
  </xsl:template><xsl:template match="*[local-name()='dl']">
2947
2948
  <fo:block-container>
2948
2949
 
2949
- <xsl:attribute name="margin-left">0mm</xsl:attribute>
2950
+ <xsl:if test="not(ancestor::*[local-name() = 'quote'])">
2951
+ <xsl:attribute name="margin-left">0mm</xsl:attribute>
2952
+ </xsl:if>
2950
2953
 
2951
2954
 
2952
2955
  <xsl:if test="parent::*[local-name() = 'note']">
@@ -2961,6 +2964,7 @@
2961
2964
  <fo:block-container>
2962
2965
 
2963
2966
  <xsl:attribute name="margin-left">0mm</xsl:attribute>
2967
+ <xsl:attribute name="margin-right">0mm</xsl:attribute>
2964
2968
 
2965
2969
 
2966
2970
  <xsl:variable name="parent" select="local-name(..)"/>
@@ -3144,12 +3148,32 @@
3144
3148
  </xsl:otherwise>
3145
3149
  </xsl:choose>
3146
3150
  </xsl:template><xsl:template name="getMaxLength_dt">
3147
- <xsl:for-each select="*[local-name()='dt']">
3148
- <xsl:sort select="string-length(normalize-space(.))" data-type="number" order="descending"/>
3149
- <xsl:if test="position() = 1">
3150
- <xsl:value-of select="string-length(normalize-space(.))"/>
3151
- </xsl:if>
3152
- </xsl:for-each>
3151
+ <xsl:variable name="lengths">
3152
+ <xsl:for-each select="*[local-name()='dt']">
3153
+ <xsl:variable name="maintext_length" select="string-length(normalize-space(.))"/>
3154
+ <xsl:variable name="attributes">
3155
+ <xsl:for-each select=".//@open"><xsl:value-of select="."/></xsl:for-each>
3156
+ <xsl:for-each select=".//@close"><xsl:value-of select="."/></xsl:for-each>
3157
+ </xsl:variable>
3158
+ <length><xsl:value-of select="string-length(normalize-space(.)) + string-length($attributes)"/></length>
3159
+ </xsl:for-each>
3160
+ </xsl:variable>
3161
+ <xsl:variable name="maxLength">
3162
+ <!-- <xsl:for-each select="*[local-name()='dt']">
3163
+ <xsl:sort select="string-length(normalize-space(.))" data-type="number" order="descending"/>
3164
+ <xsl:if test="position() = 1">
3165
+ <xsl:value-of select="string-length(normalize-space(.))"/>
3166
+ </xsl:if>
3167
+ </xsl:for-each> -->
3168
+ <xsl:for-each select="xalan:nodeset($lengths)/length">
3169
+ <xsl:sort select="." data-type="number" order="descending"/>
3170
+ <xsl:if test="position() = 1">
3171
+ <xsl:value-of select="."/>
3172
+ </xsl:if>
3173
+ </xsl:for-each>
3174
+ </xsl:variable>
3175
+ <!-- <xsl:message>DEBUG:<xsl:value-of select="$maxLength"/></xsl:message> -->
3176
+ <xsl:value-of select="$maxLength"/>
3153
3177
  </xsl:template><xsl:template match="*[local-name()='dl']/*[local-name()='note']" priority="2">
3154
3178
  <xsl:param name="key_iso"/>
3155
3179
 
@@ -3959,6 +3983,8 @@
3959
3983
  <xsl:variable name="bookmark-title_">
3960
3984
  <xsl:call-template name="getLangVersion">
3961
3985
  <xsl:with-param name="lang" select="@lang"/>
3986
+ <xsl:with-param name="doctype" select="@doctype"/>
3987
+ <xsl:with-param name="title" select="@title-part"/>
3962
3988
  </xsl:call-template>
3963
3989
  </xsl:variable>
3964
3990
  <xsl:choose>
@@ -3976,13 +4002,34 @@
3976
4002
  </xsl:choose>
3977
4003
  </fo:bookmark-title>
3978
4004
  <xsl:apply-templates select="contents/item" mode="bookmark"/>
4005
+
4006
+ <xsl:call-template name="insertFigureBookmarks">
4007
+ <xsl:with-param name="contents" select="contents"/>
4008
+ </xsl:call-template>
4009
+
4010
+ <xsl:call-template name="insertTableBookmarks">
4011
+ <xsl:with-param name="contents" select="contents"/>
4012
+ <xsl:with-param name="lang" select="@lang"/>
4013
+ </xsl:call-template>
4014
+
3979
4015
  </fo:bookmark>
3980
4016
 
3981
4017
  </xsl:for-each>
3982
4018
  </xsl:when>
3983
4019
  <xsl:otherwise>
3984
4020
  <xsl:for-each select="xalan:nodeset($contents)/doc">
4021
+
3985
4022
  <xsl:apply-templates select="contents/item" mode="bookmark"/>
4023
+
4024
+ <xsl:call-template name="insertFigureBookmarks">
4025
+ <xsl:with-param name="contents" select="contents"/>
4026
+ </xsl:call-template>
4027
+
4028
+ <xsl:call-template name="insertTableBookmarks">
4029
+ <xsl:with-param name="contents" select="contents"/>
4030
+ <xsl:with-param name="lang" select="@lang"/>
4031
+ </xsl:call-template>
4032
+
3986
4033
  </xsl:for-each>
3987
4034
  </xsl:otherwise>
3988
4035
  </xsl:choose>
@@ -4044,8 +4091,44 @@
4044
4091
 
4045
4092
  </fo:bookmark-tree>
4046
4093
  </xsl:if>
4094
+ </xsl:template><xsl:template name="insertFigureBookmarks">
4095
+ <xsl:param name="contents"/>
4096
+ <xsl:if test="xalan:nodeset($contents)/figure">
4097
+ <fo:bookmark internal-destination="{xalan:nodeset($contents)/figure[1]/@id}" starting-state="hide">
4098
+ <fo:bookmark-title>Figures</fo:bookmark-title>
4099
+ <xsl:for-each select="xalan:nodeset($contents)/figure">
4100
+ <fo:bookmark internal-destination="{@id}">
4101
+ <fo:bookmark-title>
4102
+ <xsl:value-of select="normalize-space(title)"/>
4103
+ </fo:bookmark-title>
4104
+ </fo:bookmark>
4105
+ </xsl:for-each>
4106
+ </fo:bookmark>
4107
+ </xsl:if>
4108
+ </xsl:template><xsl:template name="insertTableBookmarks">
4109
+ <xsl:param name="contents"/>
4110
+ <xsl:param name="lang"/>
4111
+ <xsl:if test="xalan:nodeset($contents)/table">
4112
+ <fo:bookmark internal-destination="{xalan:nodeset($contents)/table[1]/@id}" starting-state="hide">
4113
+ <fo:bookmark-title>
4114
+ <xsl:choose>
4115
+ <xsl:when test="$lang = 'fr'">Tableaux</xsl:when>
4116
+ <xsl:otherwise>Tables</xsl:otherwise>
4117
+ </xsl:choose>
4118
+ </fo:bookmark-title>
4119
+ <xsl:for-each select="xalan:nodeset($contents)/table">
4120
+ <fo:bookmark internal-destination="{@id}">
4121
+ <fo:bookmark-title>
4122
+ <xsl:value-of select="normalize-space(title)"/>
4123
+ </fo:bookmark-title>
4124
+ </fo:bookmark>
4125
+ </xsl:for-each>
4126
+ </fo:bookmark>
4127
+ </xsl:if>
4047
4128
  </xsl:template><xsl:template name="getLangVersion">
4048
4129
  <xsl:param name="lang"/>
4130
+ <xsl:param name="doctype" select="''"/>
4131
+ <xsl:param name="title" select="''"/>
4049
4132
  <xsl:choose>
4050
4133
  <xsl:when test="$lang = 'en'">
4051
4134
 
@@ -4548,7 +4631,8 @@
4548
4631
  <fo:block-container margin-left="0mm">
4549
4632
 
4550
4633
  <fo:block xsl:use-attribute-sets="quote-style">
4551
- <xsl:apply-templates select=".//*[local-name() = 'p']"/>
4634
+ <!-- <xsl:apply-templates select=".//*[local-name() = 'p']"/> -->
4635
+ <xsl:apply-templates select="./*[not(local-name() = 'author') and not(local-name() = 'source')]"/> <!-- process all nested nodes, except author and source -->
4552
4636
  </fo:block>
4553
4637
  <xsl:if test="*[local-name() = 'author'] or *[local-name() = 'source']">
4554
4638
  <fo:block xsl:use-attribute-sets="quote-source-style">