我是使用撒克逊语的新手。能否请一位使用 Saxon 处理 XQuery 的专家指出一些关于 Saxon 有什么好处的细节?它与其他 XQuery 处理器有何不同? 提前致谢
2 回答
XQuery 处理器的主要区别可能在于它们分为三个类别:
在内存中处理 XML 的独立 XQuery 处理器
XQuery 作为原生 XML 数据库的查询语言
XQuery 作为 SQL 的扩展,用于访问关系数据库中保存的 XML(和其他数据)
撒克逊人属于头等舱,尽管它当然没有自己的空间。如果您正在选择一种产品,那么您就会被宠坏了。我知道有些人试图确保他们的应用程序使用多个 XQuery 处理器运行,以便他们可以在一段时间内进行比较,但这有点奢侈。大多数人只是随机选择一个或多或少一个,然后只有在它被证明是无效的时候才改变。
Saxon 并不总是在性能基准测试中名列前茅,尽管它通常足够接近前沿,因此性能不会成为与其他领先产品的显着差异化因素。当然,基准测试的结果会因工作负载的种类而异。持续获得银牌比偶尔获得金牌更重要。但性能本身并不是我们开发 Saxon 的首要目标:我们的首要任务是符合标准,其次是可用性(尤其是调试和错误消息,还有 API),而性能仅排在第三位。
如果你想要一个选择 Saxon 的理由,我会说它是为了调试和诊断。您将花费大部分时间和金钱来尝试找出您的查询给出错误答案的原因,我们付出了巨大的努力来帮助您尽可能快速、轻松地回答这个问题。
Saxon 的作者 Michael Kay 在论文Saxon XQuery 快速的十个原因(PDF)中写到了这一点。它很好地描述了在开发 Saxon 时所做的设计选择。