Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.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
Xml 使用XSLT从指定的子节点元素中选择字符串/文字_Xml_String_Xslt - Fatal编程技术网

Xml 使用XSLT从指定的子节点元素中选择字符串/文字

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

这是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>

      <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应用程序将抛出异常。