Xml 使用XSLT从指定的子节点元素中选择字符串/文字
这是XML文件的摘录Xml 使用XSLT从指定的子节点元素中选择字符串/文字,xml,string,xslt,Xml,String,Xslt,这是XML文件的摘录 <rdf:RDF> <rdf:Description rdf:about="http://abc.org/JohnD"> <video:Movie xml:lang="en" xmlns:video="http://example.org/movie">Avatar</video:Movie> </rdf:Description> <r
<rdf:RDF>
<rdf:Description rdf:about="http://abc.org/JohnD">
<video:Movie xml:lang="en" xmlns:video="http://example.org/movie">Avatar</video:Movie>
</rdf:Description>
<rdf:Description rdf:about="http://abc.org/JohnD">
<foaf:interest xml:lang="en" xmlns:foaf="http://xmlns.com/foaf/0.1/">games</foaf:interest>
</rdf:Description>
</rdf:RDF>
阿凡达
游戏
XSL摘录
<xsl:template match="rdf:RDF/rdf:Description">
<xsl:value-of select="video:Movie"/>
</xsl:template>
我只想从名为
的节点中选择文字“Avatar”
我试过使用
和其他各种组合,但它就是不显示。我在XSL头中相应地声明了名称空间 以下代码选择元素,而不考虑名称空间url:
<xsl:template match="rdf:RDF/rdf:Description">
<xsl:value-of select="*[name() = 'video:Movie']"/>
</xsl:template>
但是,如果所有名称空间都正确,那么您提供的代码应该可以工作,我只是用以下XSLT测试了它(注意XSLT顶部的视频名称空间)
以下代码选择元素,与名称空间url无关:
<xsl:template match="rdf:RDF/rdf:Description">
<xsl:value-of select="*[name() = 'video:Movie']"/>
</xsl:template>
但是,如果所有名称空间都正确,那么您提供的代码应该可以工作,我只是用以下XSLT测试了它(注意XSLT顶部的视频名称空间)
rdf名称空间是否在Xml文档和样式表中声明?除了xmlns:rdf=“…”之外,这里的所有内容看起来都是正确的,我已经声明了所需的每个名称空间。因为如果没有,XSL链接到的ASP.net应用程序将抛出异常。rdf命名空间是否在Xml文档和样式表中声明?除了xmlns:rdf=“…”之外,这里的所有内容看起来都是正确的,我已经声明了所需的每个名称空间。因为如果不是,XSL链接到的ASP.net应用程序将抛出异常。