标签: cdata

转换内容在CDATA内的xml元素

我有一个像下面的xml片段

<Detail uid="6">
    <![CDATA[
    <div class="heading">welcome to my page</div>
    <div class="paragraph">this is paraph</div>
    ]]>
</Detail>
Run Code Online (Sandbox Code Playgroud)

我希望能够改变

<div class="heading">...</div> to <h1>Welcome to my page</h1>
<div class="paragraph">...</div> to <p>this is paragraph</p>
Run Code Online (Sandbox Code Playgroud)

你知道我怎么能在xslt 1.0中做到这一点

xml xslt cdata

8
推荐指数
1
解决办法
2万
查看次数

是否可以在<pre>标签内使用CDATA

我想在HTML页面中显示异常跟踪.

一种方法是在异常跟踪中转义HTML特殊字符并将其转储到<pre>标记内.

虽然它有效,但效率非常低.我认为一种方法是用CDATA包裹跟踪.我试过了,但没有显示出来.

我的问题,这可以吗?

这是我的微弱尝试.

  <pre><![CDATA[blah, blah, blah with <>
  and blah blah blah with &
    and more blah, blah]]></pre>
Run Code Online (Sandbox Code Playgroud)

html xhtml cdata

8
推荐指数
1
解决办法
3396
查看次数

如何解析<![CDATA []]>的XML

如何解析包含数据的XML <![CDATA[---]...如何解析xml并获取包含在CDATA???中的数据?

java xml parsing cdata

8
推荐指数
1
解决办法
5万
查看次数

不引入只有一个值的CDATA

My Wrapper类是这样的:

@XmlRootElement(name = "GETA")
public class EfGetAResponseWrapperXmlObject {

    private String something;


    @XmlElement(name = "result")
    public String getSomething() {
        return something;
    }

    public void setSomething(String something) {
        this.something = something;
    }

}
Run Code Online (Sandbox Code Playgroud)

对于这个包装类,我在SoapUI上得到了这个答案:

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
       <S:Body>
          <ns2:ef_getAresponse xmlns:ns2="http://service.package/">
             <ef_get_AReturn>&lt;GETA>
        &lt;result>mystring&lt;/result>
    &lt;/GETA></ef_get_AReturn>
          </ns2:ef_get_AResponse>
       </S:Body>
    </S:Envelope>
Run Code Online (Sandbox Code Playgroud)

如果我在我的Wrapper类中引入另一个变量:

@XmlRootElement(name = "GETA")
    public class EfGetAResponseWrapperXmlObject {

        private String something;
        private String other;


        @XmlElement(name = "result")
        public String getSomething() {
            return something;
        }

        public void setSomething(String something) {
            this.something = something;
        }

        public String getOther() …
Run Code Online (Sandbox Code Playgroud)

java web-services soapui cdata

8
推荐指数
0
解决办法
159
查看次数

XML CDATA编码

我正在尝试使用CDATA在C#中构建XML文档以将文本保存在元素中.例如..

<email>
<![CDATA[test@test.com]]>
</email>
Run Code Online (Sandbox Code Playgroud)

但是,当我获得文档的InnerXml属性时,CDATA已经重新格式化,因此InnerXml字符串看起来像下面的失败.

<email>
&lt;![CDATA[test@test.com]]&gt;
</email>
Run Code Online (Sandbox Code Playgroud)

如何在访问XML字符串时保留原始格式?

干杯

c# xml cdata

7
推荐指数
2
解决办法
1万
查看次数

XML序列化 - XmlCDataSection为Serialization.XmlText

我在使用c#序列化cdata部分时遇到问题

我需要将XmlCDataSection对象属性序列化为元素的innertext.

我要找的结果是这样的:

<Test value2="Another Test">
  <![CDATA[<p>hello world</p>]]>
</Test>
Run Code Online (Sandbox Code Playgroud)

为了产生这个,我使用这个对象:

public class Test
{
    [System.Xml.Serialization.XmlText()]
    public XmlCDataSection value { get; set; }

    [System.Xml.Serialization.XmlAttributeAttribute()]
    public string value2 { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

在value属性上使用xmltext注释时,将引发以下错误.

System.InvalidOperationException:反映属性'value'时出错.---> System.InvalidOperationException:无法序列化System.Xml.XmlCDataSection类型的成员'value'.XmlAttribute/XmlText不能用于编码复杂类型

如果我注释掉注释,序列化将起作用,但cdata部分被放入一个值元素,这对我想要做的事情没有好处:

<Test value2="Another Test">
  <value><![CDATA[<p>hello world</p>]]></value>
</Test>
Run Code Online (Sandbox Code Playgroud)

任何人都可以指出我正确的方向让这个工作.

谢谢,亚当

c# xml xml-serialization cdata

7
推荐指数
1
解决办法
1万
查看次数

带有CDATA的SQL Server XML输出

有没有办法让SQL Server XML返回使用CDATA?我有SQL Server返回的XML,如下所示:

<locations>
    <site id="124">
        <sitename>Texas A &amp; M</sitename>
    </site>
</locations>
Run Code Online (Sandbox Code Playgroud)

当我需要这个:

<locations>
    <site id="124">
        <sitename><![CDATA[Texas A & M]]></sitename>
    </site>
</locations>
Run Code Online (Sandbox Code Playgroud)

xml sql-server cdata

7
推荐指数
1
解决办法
3万
查看次数

使用XSLT转换XML并保留CDATA(在Ruby中)

我正在尝试将包含以下内容的文档转换为另一个文档,使CDATA与第一个文档中的完全一样,但我还没有弄清楚如何使用XSLT保留CDATA.

初始XML:

<node>
    <subNode>
        <![CDATA[ HI THERE ]]>
    </subNode>
    <subNode>
        <![CDATA[ SOME TEXT ]]>
    </subNode>
</node>
Run Code Online (Sandbox Code Playgroud)

最终的XML:

<newDoc>
    <data>
        <text>
            <![CDATA[ HI THERE ]]>
        </text>
        <text>
            <![CDATA[ SOME TEXT ]]>
        </text>
    </data>
</newDoc>
Run Code Online (Sandbox Code Playgroud)

我尝试过类似的东西,但没有运气,一切都变得混乱:

<xsl:element name="subNode">
    <xsl:value-of select="." disable-output-escaping="yes"/>
</xsl:element>
Run Code Online (Sandbox Code Playgroud)

有关如何保存CDATA的任何想法?

谢谢!长矛

使用ruby/nokogiri

更新:这是有效的.

<text disable-output-escaping="yes">&lt;![CDATA[</text>
<value-of select="normalize-space(text())" disable-output-escaping="yes"/>
<text disable-output-escaping="yes">]]&gt;</text>
Run Code Online (Sandbox Code Playgroud)

这将包装CDATA中的所有text()节点,这对我需要的东西起作用,并且它将在文本中保留html标签.

xml xslt parsing cdata nokogiri

7
推荐指数
1
解决办法
8722
查看次数

CDATA真的有必要吗?

我使用内联Javascript很多,通常在我制作的WordPress主题中.//<![CDATA[ ... //]]>直到几个月前我还没有听说过将内联Javascript包装起来,而且我已经在相当的能力水平上做了几年.

我google了,我听说人们使用它,因为他们的Javascript不会验证.我使用严格的1.0 xHTML文档类型,并且在验证我的标记时从未遇到过问题.是因为我使用jquery,还是因为我通常只有几行代码来激活插件?或者w3验证器在这方面是否宽松?不使用这些CDATA标记时是否有任何功能影响的证据?

javascript xml xhtml jquery cdata

7
推荐指数
1
解决办法
2395
查看次数

从XmlNode中删除CDATA标记

我有一个XmlNode代表以下xml的例子:

XmlNode xml.innerText =
<book>
<name><![CDATA[Harry Potter]]</name>
<author><![CDATA[J.K. Rolling]]</author>
</book>
Run Code Online (Sandbox Code Playgroud)

我想更改此节点,以便它包含以下内容:

XmlNode xml.innerText =
<book>
<name>Harry Potter</name>
<author>J.K. Rolling</author>
</book>
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?
谢谢!

c# xmldocument xmlnode cdata

7
推荐指数
1
解决办法
9826
查看次数