根目录后面的 XSL 标记格式不正确



我有一个被在线检查器认为格式良好的文件,但是在尝试使用jaxb封送它时,我不断收到错误。

这是错误:

系统 ID 未知;#1行;列 #144;

文档中根元素后面的标记必须格式正确。

这是使用的 XSL :

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:stats="http://aps.edf.fr/xsd/stats"  exclude-result-prefixes="stats">
<xsl:output method="xml" version="1.0" indent="yes" omit-xml-declaration="yes"/>
<xsl:template match="/stats:Data">
    <COMM>
        <COM_DAT><xsl:value-of select="stats:DateEnvoi"/></COM_DAT>
        <COM_VAR>{COM_VAR}</COM_VAR>
        <COM_LNG>FR</COM_LNG>
        <COM_MARQUE><xsl:value-of select="stats:Flag"/></COM_MARQUE>
        <COD_FIL>{COD_FIL}</COD_FIL>
        <COM_REF><xsl:value-of select="stats:Reference"/></COM_REF>
        <DATA_COM>
            <ENT_EDI>
                <PER type="DEST">
                    <CIV>{Civilite}</CIV>
                    <NOM>{Nom}</NOM>
                </PER>
                <URL_ESP_CLI><xsl:value-of select="stats:UrlEspClient"/></URL_ESP_CLI>
                <NOM_FICH_STAT><xsl:value-of select="stats:NomFichier"/></NOM_FICH_STAT>
            </ENT_EDI>
        </DATA_COM>
    </COMM>
</xsl:template>
</xsl:stylesheet>

你们很容易看到错误吗?
我已经坚持了 2 天了:(

我使用 xslttest.appspot.com 检查了您的 XSLT,没有收到任何错误。

从错误的位置(第 1 行,第 144 列)我得出结论,您的 XSLT 处理器无法使用单词 exclude-result-prefix .

检查您的 XSLT 处理器是否支持此功能。例如,尝试在没有此子句的情况下运行转换。

另一种可能性是 XML 文件中的错误。实际上我不确定哪个文件与错误消息(XML或XSLT)相关。

例如,检查您的XML文件是否包含正确的xmlns规范。

请特别注意 XML 中的第 1 行第 144 列。

最新更新