问题标签 [xquery-3.0]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
xpath - xQuery如何将两个列表合并为一个?
我有一个 XML 文档:
目前,我的代码如下:
我的问题是,是否只能使用$first
并$last
生成以下结果?
基本上,如果我们有两个相同大小的节点列表,我们如何将它们一一合并?我试过了
($first_name, $last_name)
,($first_name union $last_name)
但没有用,
谢谢!
xpath - xquery group by 不消除重复项
我有一个 XML 文档,
我想对名字进行排序并删除重复的名字来产生这个:
以下是我写的代码:
但是,此代码按名字对 XML 文档进行排序,但未能删除重复的名字 ('Bezalel'),它返回:
我知道如何使用两个 FLOWR 语句来解决这个问题。group by
行为很奇怪,你能解释一下为什么它不删除重复项吗?有什么方法可以使用ONE FLOWR 循环并且只使用两个变量来解决这个问题?谢谢,$first_name
$last_name
xpath - xQuery如何在路径表达式中使用变量
我有一个 XML 文档:
我有一个变量查询emp_no
字段定义为:
我想在查询中使用 $emp_no 节点名称 (emp_no) 来做同样的事情,例如:
是否可以在表达式左侧的路径中包含变量?
xquery - 如何使用 xslt-xquery-serialization 命名空间导出为 JSON
我正在尝试在此处使用 WikiBooks 中的“将 XML 转换为 JSON”示例https://en.wikibooks.org/wiki/XQuery/Convert_XML_to_JSON
我正在使用 Saxon 解析器,带有这个命令行
但它仍然将 $test 变量作为 xml 返回,我错过了什么?
xquery - 不返回输出
我对 xquery 很陌生,我正在尝试使用 xquery 检查属性是否存在于元素中,如果存在则返回,仅返回具有 id 的 b 元素。
我尝试了以下方法:
输入
查询:
但我也得到了不存在项目的返回字符串。如何不返回没有 id 的元素。
输出:
有什么简单的方法可以做到这一点。
basex - 在 XQuery 3.0 中选择元素范围
我有以下xml数据结构
我想从to中选择leg
元素origin='b'
dest='e'
我尝试过使用翻转窗口,跟随兄弟,但似乎只能匹配第一个和最后一个元素,中间没有任何内容。
我在 BaseX 8.6 中使用 XQuery 3.0
xquery - xQuery 删除非选定元素
我有一个名为 employees.xml 的 XML 文档:
我想编写一个名为的函数my-remove-elements
,它将删除未选择的属性。例如,只在 XML 文档中保留first_name
和:last_name
我的函数的定义是:
这就是我所说的方式:
它抛出我“err:XPTY0004 ...不是元素()的子类型......”我已经更改了代码:
这次仍然是:“err:XPTY0004: 参数 1 的实际基数与函数签名中的基数不匹配......”。你知道如何解决这个问题并让它发挥作用吗?
xquery - 递归替换
如何在不使用 xquery 更新的情况下查找所有空字符串并将其替换为 xquery 中的“空”元素。我使用 xquery update 实现了这一点,但我想在不使用 update 的情况下获得。
xquery - fn:replace 在迭代时返回一个字符串
我希望通过使用映射的键和值对来实现对文档中的字符串的查找和替换。由于 2 个映射值,我目前拥有的代码似乎返回了 2 个字符串。我希望返回一个字符串,其中大括号中的值被映射中的值替换。
xml - XQuery 返回不在集合中的项目
我正在以下文档中编写一些 XQuery:
我想查询给定年份和月份的文档,并让它只返回那个月份的整个节点(不包括其他月份)。我的 XQuery 如下:
我的结果是给了我第 1 个月和第 2 个月。如果我搜索 monthID="3",我会得到第 2 个月和第 3 个月。我尝试只搜索月份(没有年份过滤器)并且得到相同的结果. 为什么它给了我上个月的一部分以及我想要的月份?如何删除我不想要的月份?