Xml 通过XSLT1.0提取CDATA内容
从上周开始,我一直在谷歌上搜索,阅读所有与这个主题相关的答案/主题(也来自其他来源),但还没有找到解决方案 我有以下XML:Xml 通过XSLT1.0提取CDATA内容,xml,xslt,xslt-1.0,Xml,Xslt,Xslt 1.0,从上周开始,我一直在谷歌上搜索,阅读所有与这个主题相关的答案/主题(也来自其他来源),但还没有找到解决方案 我有以下XML: ?xml version="1.0" encoding="UTF-8" standalone="yes"?> <root xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <p
?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<root xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<process id="10" name="Process 1" ownerOE="OE1" accountableOE="accounttableOE1" lastUpdate="" delete="aktiv">
<description>
<![CDATA[Some description 1]]>
</description>
<App name="App1" ic-id="100" />
</process>
<process id="20" name="Process 2" ownerOE="OE2" accountableOE="accounttableOE2" lastUpdate="" delete="aktiv">
<description>
<![CDATA[Some description 2]]>
</description>
<App name="App1" ic-id="100" />
</process>
</root>
?xml version=“1.0”encoding=“UTF-8”standalone=“是”?>
我需要使用XSLT1.0
提前感谢您的帮助,在XML中,description
是process
的子元素,而不是属性。要获取其字符串值,必须更改:
<xsl:value-of select="@description"/>
致:
或许:
<xsl:value-of select="normalize-space(description)"/>
这与CDATA无关
<ImportSchemaBase>
<Process>
<Title>Process 1</Title>
<Description>Some description 1</Description>
<Tech_ID>10</Tech_ID>
<lastUpdate/>
<deleteFlag/>
</Process>
<Process>
<Title>Process 2</Title>
<Description>Some description 2</Description>
<Tech_ID>20</Tech_ID>
<lastUpdate/>
<deleteFlag/>
</Process>
</ImportSchemaBase>
<xsl:value-of select="@description"/>
<xsl:value-of select="description"/>
<xsl:value-of select="normalize-space(description)"/>