XQuery 与 XPath 3.1(在 Saxon 中)

XQuery vs. XPath 3.1 (in Saxon)

我们使用 Saxon 纯粹是为了查询数据。我们即将更新到 XPath 3.1。对于读取查询(没有insert/update/delete)XPath 3.1 和XQuery(最新版本)有什么区别吗?

如果是,是什么?我想确定我们是否应该在我们的系统中与 XPath 3.1 一起实施 XQuery API?

主要区别是:

  • XQuery 具有节点构造函数(例如 <out>{/x/y}</out>
  • XQuery 具有完整的 FLWOR 表达式,包含 order by、group by、window 子句等

所以 XQuery 对于复杂查询来说更强大一些,但更重要的是,它允许构建一个新的 XML 文档来表示结果。