Xml 获取CDATA内容(幻灯片放映)
我有一个用这个表示的XML。我可以通过xsl访问标题和链接,如下所示Xml 获取CDATA内容(幻灯片放映),xml,xslt,Xml,Xslt,我有一个用这个表示的XML。我可以通过xsl访问标题和链接,如下所示 <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" xmlns:media="http://search.yahoo.com/mrss/"> <xsl:output method="xml" inde
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
xmlns:media="http://search.yahoo.com/mrss/">
<xsl:output method="xml" indent="yes"/>
<xsl:template match="/">
<rss xmlns:georss="http://www.georss.org/georss" xmlns:twitter="http://api.twitter.com" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0">
<channel>
<author>
<xsl:text>Content-Feed-Pics</xsl:text>
</author>
<xsl:for-each select="rss/channel/item[position() < 30]">
<item>
<title><xsl:value-of select="title"/></title>
<!--author><xsl:value-of select="dc:rss/dc:channel/dc:item/dc:creator"/></author-->
<!--icon>
<xsl:value-of select="concat(entities/media//media_url,':thumb')"/>
</icon-->
<link><xsl:value-of select="link"/></link>
<description><xsl:value-of select="description"/></description>
<pubDate><xsl:value-of select="pubDate"/></pubDate>
</item>
</xsl:for-each>
</channel>
</rss>
</xsl:template>
</xsl:stylesheet>
内容提要图片
这两个问题是获取节点的CDATA内容,该内容是%%内的幻灯片。
第二个问题是,有些节点与名称空间类似并具有名称空间。我尝试将dc:namespace添加到路径中的所有节点,但没有访问这些节点
请建议对于获取CDATA,您不需要做任何特殊的事情,这只是一种转义XML文本的方法。只需获取节点的值,即通过执行
,即可获得其中的任何数据。请注意,未切换的CDATA将以这种方式输出。要在输出中再次使用CDATA,请将CDATA元素
属性添加到
(但不确定XSLT 1.0中是否已经提供了该属性)
要使用名称空间,还必须使用xmlns:xx
绑定名称空间,其中xx
是前缀。之后,您可以在XPath NameTest表达式中使用该前缀
若要在任何名称空间中获取元素,请使用
*:elementname
如果您查看提要API有一个描述标记,您认为幻灯片本身是一个内容还是一个变量,可以使用某种xsl引用文本。@user3255127:我不知道。description元素可以包含任何内容。它放在CDATACDATA
中是不相关的,没有它也会完全一样。描述通常是一种描述。如果不是,则有人正在滥用某个字段来获取它不打算用于的内容。您应该咨询提要的所有者,以获得任何“更高”的含义。