通过XML和XSL(i18n上下文)生成HTML页面时出现问题

通过XML和XSL(i18n上下文)生成HTML页面时出现问题,xml,xslt,internationalization,Xml,Xslt,Internationalization,我尝试使用密钥转换系统将xsl国际化。 我有一个主xsl文件,它引用键,并导入另一个xsl,其中包含所有英语或法语键。 问题:在法语中,我们的单词中有简单的引号。 结果:我的最终HTML页面未正确生成 经过一些研究: 我试图用&apos来代替简单的引用。 我尝试用双简单引号替换简单引号 主XSL文件: 其他内容。。。 其他内容。。。 I18 FR XSL 在xsl:value和select中使用简单引号时,不会生成我的HTML。我希望在我的页面中显示“test d'un撇号”字符串。如果您真的使

我尝试使用密钥转换系统将xsl国际化。 我有一个主xsl文件,它引用键,并导入另一个xsl,其中包含所有英语或法语键。 问题:在法语中,我们的单词中有简单的引号。 结果:我的最终HTML页面未正确生成

经过一些研究: 我试图用&apos来代替简单的引用。 我尝试用双简单引号替换简单引号

主XSL文件:

其他内容。。。 其他内容。。。 I18 FR XSL


在xsl:value和select中使用简单引号时,不会生成我的HTML。我希望在我的页面中显示“test d'un撇号”字符串。

如果您真的使用XSLT 2处理器,并且这样您可以在select属性的表达式级别使用XPath 2,那么您可以使用select='test dun撇号'来解决它。请参阅有关字符串文本的规则,但它似乎更易于使用

<xsl:variable name="lang.mainData" as="xs:string">test d'un apostrophe</xsl:variable>

确保样式表随后声明xmlns:xs=http://www.w3.org/2001/XMLSchema.

当您使用托管语言时,这是关于分隔符的常见情况:在本例中,XSLT作为XML词汇表,XPath作为某些属性中的字符串。这是一种常见现象,在以下情况下可以预见:

XPath表达式通常出现在XML属性中。指定的语法 在本节中,将应用于XML 1.0之后的属性值 规范化例如,如果语法使用字符
<xsl:variable name="lang.mainData" select="&quot;test d'un apostrophe&quot;"/>
<xsl:variable name="lang.mainData" select='"test d&apos;un apostrophe"'/>