实体“nbsp”被引用,但未声明

Uma*_*ima 5 html css xml dtd xslt-2.0

我编写了一个 XSLT 将 xml 转换为 xml。

输入 XML:

<test>The Spanish word for "Spain" is "Espa&nbsp;a" Dagon his Name, Sea Monster</test>
Run Code Online (Sandbox Code Playgroud)

输出XML:

<test>The Spanish word for "Spain" is "Espa a" Dagon his Name, Sea Monster</test>
Run Code Online (Sandbox Code Playgroud)

XSL 文件:我已在 doctype at 下添加了实体 nbsp 声明的代码并替换为实体,但仍然是相同的错误实体“nbsp”被引用,但未声明。

<xsl:template match="test">
<test>
  <xsl:apply-templates/>
</test>
Run Code Online (Sandbox Code Playgroud)

Mar*_*nen 4

您需要让输入声明它使用的实体,如http://xsltransform.net/gVhD8QR中所示,例如

\n\n
<!DOCTYPE test [\n  <!ENTITY nbsp "&#160;">\n]>\n<test>The Spanish word for "Spain" is "Espa&nbsp;a" Dagon his Name, Sea Monster</test>\n
Run Code Online (Sandbox Code Playgroud)\n\n

请注意,“西班牙”的西班牙语单词是“Espa\xc3\xb1a”,因此此处使用的示例实体无论如何都没有意义。

\n