Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
不显示带有XSLT的CDATA_Xslt_Cdata - Fatal编程技术网

不显示带有XSLT的CDATA

不显示带有XSLT的CDATA,xslt,cdata,Xslt,Cdata,我有一个xml文件,其中包含以下信息: <infAdic> <infAdFisco>IMUNIDADE ICMS CONF. ART.155 DA CONST. FEDERAL-LUB. DERIVADO</infAdFisco> <infCpl> Preco sujeito alteracao. - O(s) produto(s) objeto(s) desta Nota Fiscal esta(ao)

我有一个xml文件,其中包含以下信息:

  <infAdic>
   <infAdFisco>IMUNIDADE ICMS CONF. ART.155 DA CONST. FEDERAL-LUB.     DERIVADO</infAdFisco> 
    <infCpl>
      Preco sujeito alteracao. - O(s) produto(s) objeto(s) desta Nota Fiscal esta(ao)      adequadamente acondicionado(s) para suportar os riscosnormais de carregamento,     descarregamento, transbordo e transporte (Letra C do Item II, de Artigo 22, do Decreto N.96044/88) 
       <![CDATA[ <fabEntrega>Codi</fabEntrega>]]> 
        PO. number: Teste NFe 13122012 
    </infCpl>
    <obsCont xCampo="DOCNUM">
      <xTexto>0006703134</xTexto> 
    </obsCont>
    <obsCont xCampo="emailDestinatarioNFe">
      <xTexto>xxxxx@xxxx.com</xTexto> 
    </obsCont>
    <obsCont xCampo="idAplic">
    <xTexto>LUBES</xTexto> 
    </obsCont>
 </infAdic>

IMUNIDADE ICMS形态第155条常数。联邦润滑油。派生词
Preco sujeito Alteraco.-O(s)产品目标(s)财政计划(ao)制定卡雷加门托、德卡雷加门托、transbordo e transporte(第22条第II项,第96044/88号法令)
Codi]]>
阿宝。编号:Teste NFe 13122012
0006703134
xxxxx@xxxx.com 
润滑油
但是当我用下面的xlst程序执行上面的xml文件时

 <?xml version="1.0" encoding="UTF-8"?>
  <xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:nfe="http://www.portalfiscal.inf.br/nfe">
    <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no" cdata-section-elements="nfe:infCpl"/>
<xsl:template match="/nfe:enviNFe">
    <soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
        <soap12:Header>
            <nfeCabecMsg xmlns="http://www.portalfiscal.inf.br/nfe/wsdl/NfeRecepcao2">
                <cUF>
                    <xsl:value-of select="nfe:NFe[1]/nfe:infNFe/nfe:ide/nfe:cUF"/>
                </cUF>
                <versaoDados>
                    <xsl:value-of select="@versao"/>
                </versaoDados>
            </nfeCabecMsg>
        </soap12:Header>
        <soap12:Body>
            <nfeDadosMsg xmlns="http://www.portalfiscal.inf.br/nfe/wsdl/NfeRecepcao2">
                    <enviNFe xmlns="http://www.portalfiscal.inf.br/nfe">
                        <xsl:attribute name="versao"><xsl:value-of select="@versao"/></xsl:attribute>
                        <xsl:copy-of select="nfe:idLote"/>
                        <xsl:for-each select="nfe:NFe">
                            <xsl:text disable-output-escaping="yes"><![CDATA[<NFe xmlns="http://www.portalfiscal.inf.br/nfe">]]></xsl:text>
                            <xsl:copy-of select="*"/>
                            <xsl:text disable-output-escaping="yes"><![CDATA[</NFe>]]></xsl:text>
                        </xsl:for-each>
                    </enviNFe>
            </nfeDadosMsg>
        </soap12:Body>
    </soap12:Envelope>
 </xsl:template>
</xsl:stylesheet>

]]>
]]>
我看不到包含CDATA信息的infCpl字段。 这就是我看到的结果:

 <infCpl>
     Preco sujeito alteracao. - O(s) produto(s) objeto(s) desta Nota Fiscal esta      (ao) adequadamente acondicionado(s) para suportar os riscosnormais de    carregamento,      descarregamento, transbordo e transporte (Letra C do Item II, de         Artigo     22, do Decreto N.96044/88) 
    <fabEntrega>Codi</fabEntrega> 
      PO. number: Teste NFe 13122012 
 </infCpl>

Preco sujeito Alteraco.-O(s)产品目标(s)财政计划(ao)制定卡雷加门托、德卡雷加门托、transbordo e transporte(第22条第II项,第96044/88号法令)
科迪
阿宝。编号:Teste NFe 13122012
你能帮我吗,因为我想要下面的结果

 <infCpl>
    Preco sujeito alteracao. - O(s) produto(s) objeto(s) desta Nota Fiscal esta(ao)      adequadamente acondicionado(s) para suportar os riscosnormais de carregamento,     descarregamento, transbordo e transporte (Letra C do Item II, de Artigo     22, do Decreto N.96044/88) 
     <![CDATA[ <fabEntrega>Codi</fabEntrega>]]> 
  PO. number: Teste NFe 13122012 
 </infCpl>

Preco sujeito Alteraco.-O(s)产品目标(s)财政计划(ao)制定卡雷加门托、德卡雷加门托、transbordo e transporte(第22条第II项,第96044/88号法令)
Codi]]>
阿宝。编号:Teste NFe 13122012
问候,,
Sérgio Salomão

如果您确信
infCpl
只包含CDATA而不包含混合内容(元素和CDATA),那么可以在
xsl:output
中将
infCpl
指定为
CDATA节元素

<xsl:output indent="yes" cdata-section-elements="infCpl"/>

例如

XML输入

<infAdic>
    <infAdFisco>IMUNIDADE ICMS CONF. ART.155 DA CONST. FEDERAL-LUB.     DERIVADO</infAdFisco> 
    <infCpl>
        Preco &amp; &gt; &lt; &apos; &quot; sujeito alteracao. - O(s) produto(s) objeto(s) desta Nota Fiscal esta(ao)      adequadamente acondicionado(s) para suportar os riscosnormais de carregamento,     descarregamento, transbordo e transporte (Letra C do Item II, de Artigo 22, do Decreto N.96044/88) 
        <![CDATA[ <fabEntrega>Codi</fabEntrega>]]> 
        PO. number: Teste NFe 13122012 
    </infCpl>
    <obsCont xCampo="DOCNUM">
        <xTexto>0006703134</xTexto> 
    </obsCont>
    <obsCont xCampo="emailDestinatarioNFe">
        <xTexto>xxxxx@xxxx.com</xTexto> 
    </obsCont>
    <obsCont xCampo="idAplic">
        <xTexto>LUBES</xTexto> 
    </obsCont>
</infAdic>
<infAdic>
   <infAdFisco>IMUNIDADE ICMS CONF. ART.155 DA CONST. FEDERAL-LUB.     DERIVADO</infAdFisco>
   <infCpl><![CDATA[
        Preco & > < ' " sujeito alteracao. - O(s) produto(s) objeto(s) desta Nota Fiscal esta(ao)      adequadamente acondicionado(s) para suportar os riscosnormais de carregamento,     descarregamento, transbordo e transporte (Letra C do Item II, de Artigo 22, do Decreto N.96044/88) 
         <fabEntrega>Codi</fabEntrega> 
        PO. number: Teste NFe 13122012 
    ]]></infCpl>
   <obsCont xCampo="DOCNUM">
      <xTexto>0006703134</xTexto>
   </obsCont>
   <obsCont xCampo="emailDestinatarioNFe">
      <xTexto>xxxxx@xxxx.com</xTexto>
   </obsCont>
   <obsCont xCampo="idAplic">
      <xTexto>LUBES</xTexto>
   </obsCont>
</infAdic>

IMUNIDADE ICMS形态第155条常数。联邦润滑油。派生词
Preco&&载脂蛋白;“替代产品——不属于财政部门的产品(不属于财政部门的产品),不属于运输、运输和运输行业的风险标准支持部门(第96044/88号法令第二条)
Codi]]>
采购订单编号:Teste NFe 13122012
0006703134
xxxxx@xxxx.com 
润滑油
XSLT2.0

<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output indent="yes" cdata-section-elements="infCpl"/>
    <xsl:strip-space elements="*"/>

    <xsl:template match="@*|node()">
        <xsl:copy>
            <xsl:apply-templates select="@*|node()"/>
        </xsl:copy>
    </xsl:template>

</xsl:stylesheet>

XML输出

<infAdic>
    <infAdFisco>IMUNIDADE ICMS CONF. ART.155 DA CONST. FEDERAL-LUB.     DERIVADO</infAdFisco> 
    <infCpl>
        Preco &amp; &gt; &lt; &apos; &quot; sujeito alteracao. - O(s) produto(s) objeto(s) desta Nota Fiscal esta(ao)      adequadamente acondicionado(s) para suportar os riscosnormais de carregamento,     descarregamento, transbordo e transporte (Letra C do Item II, de Artigo 22, do Decreto N.96044/88) 
        <![CDATA[ <fabEntrega>Codi</fabEntrega>]]> 
        PO. number: Teste NFe 13122012 
    </infCpl>
    <obsCont xCampo="DOCNUM">
        <xTexto>0006703134</xTexto> 
    </obsCont>
    <obsCont xCampo="emailDestinatarioNFe">
        <xTexto>xxxxx@xxxx.com</xTexto> 
    </obsCont>
    <obsCont xCampo="idAplic">
        <xTexto>LUBES</xTexto> 
    </obsCont>
</infAdic>
<infAdic>
   <infAdFisco>IMUNIDADE ICMS CONF. ART.155 DA CONST. FEDERAL-LUB.     DERIVADO</infAdFisco>
   <infCpl><![CDATA[
        Preco & > < ' " sujeito alteracao. - O(s) produto(s) objeto(s) desta Nota Fiscal esta(ao)      adequadamente acondicionado(s) para suportar os riscosnormais de carregamento,     descarregamento, transbordo e transporte (Letra C do Item II, de Artigo 22, do Decreto N.96044/88) 
         <fabEntrega>Codi</fabEntrega> 
        PO. number: Teste NFe 13122012 
    ]]></infCpl>
   <obsCont xCampo="DOCNUM">
      <xTexto>0006703134</xTexto>
   </obsCont>
   <obsCont xCampo="emailDestinatarioNFe">
      <xTexto>xxxxx@xxxx.com</xTexto>
   </obsCont>
   <obsCont xCampo="idAplic">
      <xTexto>LUBES</xTexto>
   </obsCont>
</infAdic>

IMUNIDADE ICMS形态第155条联邦润滑油
“sujeito Alteraco”O(s)产品目标(s)财政计划(ao)制定卡雷加门托、德卡雷加门托、transbordo e transporte(第22条第II项,第96044/88号法令)
科迪
阿宝。编号:Teste NFe 13122012
]]>
0006703134
xxxxx@xxxx.com
润滑油

XML中的CDATA不是为承载信息而设计的。您不应该关心输入中的CDATA边界。如果您确实关心它们,那么您需要不同的工具—XSLT假定CDATA只是一种创作便利,而不是一种向文档接收者传递信息的方式


但是,如果您一直在处理CDATA被这样滥用的XML,那么您可以看看Andrew Welch的LexEv工具,它捆绑在KernowForSaxon中。

Hi Daniel,infCpl字段将混合文本和CDATA。你还有别的选择吗?您好,@user1916896-text和CDATA结合在一起很好(它们实际上是同一件事),所以我的答案应该适合您。甚至实体引用,如
&
将在cdata部分以文字字符(
&
)结束。(我将更新示例。)嗨,丹尼尔,如果我使用您告知的代码,我将看到如下所示的infCpl字段?Preco sujeito Alteraco.-O(s)产品目标(s)设计财政计划(O)设计方案(O)设计方案(s)设计方案(s)设计方案(s)设计方案)设计方案(s)设计方案(s)设计方案(s)设计方案)设计方案(s)设计方案(s)设计方案(s)设计方案)设计方案(s)设计方案(s)设计方案)设计方案(s)设计方案)设计方案(s)设计方案)设计方案(s)设计方案)设计方案(s)设计方案)设计方案(s)设计方案)设计方案(s)设计方案)设计方案)设计方案(s)设计方案)设计。编号:Teste NFe 13122012@user1916896-不,您将看到它与我的示例中的输出类似。
infCpl
的所有内容都将包装在CDATA中,但这没关系,相当于您评论中的
infCpl
。嗨,丹尼尔,我想看到文本和CDATA混合但不包装。我想要这个结果:infCpl>Preco sujeito alteraco。-O(s)产品目标(s)设计财政计划(O)设计方案(O)设计方案(s)设计方案(s)设计方案(s)设计方案)设计方案(s)设计方案(s)设计方案(s)设计方案)设计方案(s)设计方案(s)设计方案(s)设计方案)设计方案(s)设计方案(s)设计方案)设计方案(s)设计方案)设计方案(s)设计方案)设计方案(s)设计方案)设计方案(s)设计方案)设计方案(s)设计方案)设计方案(s)设计方案)设计方案)设计方案(s)设计方案)设计。电话号码:Teste NFe 13122012你能帮我吗?