根目录后的XSL标记不完整

时间:2017-01-19 15:50:15

标签: xslt jaxb marshalling

我有这个文件被认为是由在线检查器很好地形成但我在尝试使用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天了:(

1 个答案:

答案 0 :(得分:1)

我使用xslttest.appspot.com检查了您的XSLT并且没有错误。

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

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

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

E.g。检查您的XML文件是否包含正确的 xmlns 规范。

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