Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/374.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/hadoop/6.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
Java 具有名称空间的XSLT属性_Java_Xml_Xslt_Xml Namespaces - Fatal编程技术网

Java 具有名称空间的XSLT属性

Java 具有名称空间的XSLT属性,java,xml,xslt,xml-namespaces,Java,Xml,Xslt,Xml Namespaces,如果之前有类似我的答案,请提前道歉,但我已经检查过,没有找到这个简单问题的确切答案: <self-uri xlink:href="http://www.harmreductionjournal.com/content/1/1/5"> 我在处理过程中迭代了属性值 xlink:href: http://www.harmreductionjournal.com/content/1/1/5 我的问题很简单:如何获得具有名称空间的atribute的值?我的理解是,它应该是这样工作的 如果你

如果之前有类似我的答案,请提前道歉,但我已经检查过,没有找到这个简单问题的确切答案:

<self-uri xlink:href="http://www.harmreductionjournal.com/content/1/1/5">
我在处理过程中迭代了属性值

xlink:href: http://www.harmreductionjournal.com/content/1/1/5
我的问题很简单:如何获得具有名称空间的atribute的值?我的理解是,它应该是这样工作的

如果你能给我指出正确的问题,那也就足够了

提前谢谢

编辑:

根据答案,我检查了我的根样式表声明,它如下所示:

<xsl:stylesheet version="1.0"
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  xmlns:xlink="http://www.w3.org/1999/xlink"
  xmlns:mml="http://www.w3.org/1998/Math/MathML"
  exclude-result-prefixes="xlink mml">


我猜exclude属性与这个问题有关。如果替换它,我会发现它仍然不起作用,结果xml在任意位置都充满了它。

只要您的XSL文件具有映射到相同名称空间的相同前缀,您的方法就应该起作用。换句话说,XSL文件应该具有名称空间映射

xmlns:xlink="..."

其中,
是源文档中为该名称空间前缀定义的相同值。

只要XSL文件具有映射到相同名称空间的相同前缀,您的方法就应该有效。换句话说,XSL文件应该具有名称空间映射

xmlns:xlink="..."
<xsl:template match="self-uri">
  <xsl:value-of
   select="@xlink:href"
   xmlns:xlink="http://www.w3.org/1999/xlink"/>
</xsl:template>
其中,
与源文档中为该名称空间前缀定义的值相同。


<xsl:template match="self-uri">
  <xsl:value-of
   select="@xlink:href"
   xmlns:xlink="http://www.w3.org/1999/xlink"/>
</xsl:template>
应该这样做,假设输入文档使用。当然,您通常会简单地将
xmlns:xlink=”http://www.w3.org/1999/xlink“
在代码的
xsl:stylesheet
元素上。



应该这样做,假设输入文档使用。当然,您通常会简单地将
xmlns:xlink=”http://www.w3.org/1999/xlink“
在代码的
xsl:stylesheet
元素上。

显示XSLT、XML输入、所需结果和当前结果的最小但完整的示例,以便我们重现问题。到目前为止,我们需要猜测XML输入使用了哪些名称空间,以及在哪个上下文中您有
xsl:value
。向我们展示XSLT、XML输入、所需结果和当前结果的最小但完整的示例,以便我们重现问题。到目前为止,我们需要猜测XML输入使用哪些名称空间,以及在哪个上下文中有
xsl:value