问题标签 [xquery-3.1]

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.

0 投票
1 回答
71 浏览

xml - 将纯文本块包装在 P 中,同时跳过已经包装在 P 中的块

我需要用段落包装所有纯文本块,但可能有一个应该跳过的嵌套段落。我将如何解决这个问题?

我很难理解如何在跳过现有段落的同时将一些纯文本包装到一个段落中。

给定 XML:

预期结果:

0 投票
1 回答
54 浏览

xquery - 如何使用 SQL 模块在数据库中插入 XML 内容

我是 XQuery 的初学者,我可以使用一些帮助来了解如何在我的 MySQL 数据库中插入 XML 元素。到目前为止,它只插入 xml 文件的片段,但我想获取完整的片段,包括内容中的元素。例如,假设我有:

我实际上需要完整的片段。如何做到这一点?

谢谢你的帮助。

0 投票
0 回答
29 浏览

xquery - xquery typeswitch 引入空格?

我在typeswitch(eXist 5.3) 的输出中有一个小问题,我不知道如何解决。鉴于这个小例子:

我得到这个输出:

但我正在寻找的是以下内容 - 标点符号与文本没有被空格分隔:

请记住,在生产中,里面的内容<p>可能会混合在最终的 html 输出中。

0 投票
1 回答
73 浏览

xml - XQuery 从 XML 文件中删除所有具有属性 onlyChannels="print" 的元素

尝试onlyChannels="print"从 XML 中删除所有具有属性的元素 使用 XQuery 具有的元素onlyChannels="print"可以在任何地方和不同级别。

输入 XML


预期输出 XML

我正在尝试这个 XQuery,但它只删除第一级的元素并且没有 XML 标记。

我得到了什么:

我如何打印 xml 标签并删除属性 onlyChannels="print" 的所有元素

0 投票
1 回答
61 浏览

xquery - 使用 XQuery 以对象格式获取单个记录而不是数组的 JSON 输出

我从 API 以数组格式(用于多条记录)和以对象格式获取单条记录的 JSON 输出。相反,消费者希望保持一种格式 - 作为单个记录的数组。请让我知道是否有办法以数组格式显示 JSON 输出,而不管使用 XQuery 的单条/多条记录

我尝试了以下 XQuery:

上述 XQuery 的实际输出:

预期输出:输出应为“records”和“user_records”的数组格式

0 投票
0 回答
27 浏览

xquery - 在 Basex DB 中存储格式不正确的 XHTML

我必须存储格式不正确的 XHTML,例如(<img href"tes.jpg">),因此没有元素或自我关闭的关闭元素。

我正在使用 REST 服务将数据存储到数据库中,下面是代码:

我使用了“skipcorrupt”选项,但它不起作用,并且在摄取内容时出现错误:

(第 369 行):元素类型“img”必须由匹配的结束标记“”终止。]

有没有我需要在“web.xml”或“.basex”文件中配置的选项,请建议。

谢谢

0 投票
1 回答
25 浏览

xquery - 计算工作缓慢 BaseX xquery 的单词出现次数

我想计算 XML 文档中单词的出现次数,查询给出实际计数,但它运行缓慢。

只有两个 xml 文件大小(236 KB,155 KB),需要 17 秒才能产生结果。

以下是查询:

在上面的查询中 let $count := count($stringtoken[. = $result]) 花费了太多时间。

任何提高代码性能的建议都非常感谢。

0 投票
1 回答
63 浏览

xquery - 如果文档 BaseX 中的文本匹配,则将文本节点替换为元素

如果文档与该文本匹配,我正在尝试用元素替换文本节点,在我尝试过的查询下面但它给出了错误“目标不是元素、文本、属性、注释或 pi”下面是我的查询。

输入XML:

预期输出:

我使用的是 BaseX 9.5.1 版本,下面是代码。

以前我使用的是“用 {$selectedterm} 替换节点 $nodes/node()[fn:contains(.,$selectedterm)] ”而不是“用 {$selectedterm} 替换节点 $nodes/$selectedterm”工作,但是像蒸汽这样的术语(包括,包括)所以它匹配两个不正确的词所以我将代码更改为“用{$selectedterm}替换节点“$nodes/$selectedterm”