首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >value-of不返回任何值

value-of不返回任何值
EN

Stack Overflow用户
提问于 2011-10-31 22:12:29
回答 1查看 121关注 0票数 1

嗨,我有一个我正在创建的XSL,它看起来像这样:

代码语言:javascript
复制
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" encoding="UTF-8" indent="yes"/>
<xsl:template match="/">
    <datum><xsl:value-of select="/wechselkurse/datum[1]" /></datum>
    <kurs><xsl:value-of select="/wechselkurse/devise[@code='eur']/kurs" /></kurs>
</xsl:template>

输入如下所示:

代码语言:javascript
复制
<wechselkurse xmlns="http://www.afd.admin.ch/publicdb/newdb/mwst_kurse" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.afd.admin.ch/publicdb/newdb/mwst_kurse http://www.afd.admin.ch/publicdb/newdb/mwst_kurse/tageskurse.xsd">
<datum>2011-10-25</datum>
<zeit>04:30:39</zeit>
<devise code="egp">
    <land_de>Ägypten</land_de>
    <land_fr>Egypte</land_fr>
    <land_it>Egitto</land_it>
    <land_en>Egypt</land_en>
    <waehrung>100 EGP</waehrung>
    <kurs>14.90711</kurs>
</devise>
<devise code="all">
    <land_de>Albanien</land_de>
    <land_fr>Albanie</land_fr>
    <land_it>Albania</land_it>
    <land_en>Albania</land_en>
    <waehrung>100 ALL</waehrung>
    <kurs>0.88044</kurs>
</devise>

诸若此类。我得到的唯一输出如下所示:

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<datum/>
<kurs/>

因此,我基本上没有从源xml中获得任何值。元素Devise存在,属性为code=eur我很确定,但是我就是不明白为什么我没有从源XML接收到任何东西。

请帮帮我。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-10-31 22:27:45

您的.xsl有大约一百万处错误,但最重要的是您没有使用名称空间。

您的.xml包含此命名空间:xmlns="http://www.afd.admin.ch/publicdb/newdb/mwst_kurse"

但是,您不会在.xsl文件中使用它。为此,首先声明它,然后使用它来访问所需的元素:

代码语言:javascript
复制
<xsl:stylesheet version="1.0"
                xml:space="preserve"
                xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                xmlns:n="http://www.afd.admin.ch/publicdb/newdb/mwst_kurse">

    <xsl:output method='xml'/>

    <xsl:template match="/">
        <datum><xsl:value-of select="n:wechselkurse/n:datum" />

        </datum>
    </xsl:template> 
</xsl:stylesheet>

此外,一个.xml文件只能有一个单个根元素。所以你必须修改你的.xsl文件。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7954868

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档