XQuery 获取不同的值

问题描述

我是 XQuery 的新手,正在尝试学习如何将它与 BaseX 结合使用。

我有这个包含多个程序元素的xml:

<program id="4565">
        <name>Musiken i P3</name>
        <url>http://sverigesradio.se/sida/default.aspx?programid=4565</url>
        <editor>Anna-Karin Larsson</editor>
        <channel>164</channel>
        <category>5</category>
</program>

到目前为止,我已经理解我可以获得例如这样的编辑器的不同值:

let $vals := $sr/sr/programs/program/editor
let $uniqe-items := distinct-values($vals)

for $vals in $uniqe-items
    order by $vals
    return <li>{string($vals)}</li>

然而,当我这样做时,我只能得到编辑者的名字,我不明白我是如何检查这样的:

 let $vals := $sr/sr/programs/program/editor
 let $uniqe-items := distinct-values($vals)

 for $vals in $uniqe-items
     where $vals/channel = "132"
     order by $vals
     return <li>{string($vals)}</li>

我想我可以做一些类似 $vals/../channel 的事情来回到频道属性,但事实并非如此。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)