对于开发人员来说,XQuery 很像 SQL,自然而然地对两者加以比较。何况越来越多的数据正使用 XML 标记,这就迫使数据库公司在产品中增加 XML 存储、持久性和查询的能力。XQuery 拥有如此众多的开发人员支持,以至于 IBM 和 Oracle 将它们的角逐放在一旁,转而扩展其核心数据库产品以提供 XQuery 能力。
数据库公司也看到了成为第一个充分利用 XML 格式的数据库供应商(从而最终成为市场霸主)所带来的机会。 目前存储在关系数据库中的数据按照行和字段进行了规格化。在 XML 世界中,每一行包含无限多个字段,每个字段都是父/子层次结构中的一部分。最先提供高性能和 XQuery 灵活性的供应商将赢得一个巨大的新市场。
一个证据是,XQuery 将 IBM 和 Oracle 团结在一起(不再是凶狠的对手),合作提出 JSR 225(参阅参考资料), XQuery API for Java (XQJ)。在 .NET 这一边,Microsoft 和 IBM 共同向万维网联盟(W3C)提交了 XQuery 测试包。
XQuery 用于 XML 数据并不比 XML 解析 API 更难。JDOM、JAXP 以及其他 XML 解析 API 提供了处理 XML 数据的 Java 代码和方法。很多面向对象的设计模式都准备编写处理 XML 文档复杂性的对象。编写 Java 对象需要时间、精力和专门的技能。底层 XML 数据格式的任何细微变化都需要修改对象。XQuery 的拥护者可以肯定地说,和使用 JDOM 编写 Java 对象相比,XQuery 脚本能够更快地发现应用程序需要表示的 XML 数据。另外,很多 XQuery 库都提供了 Java 接口,因此可以在 Java 类中编写 XQuery 代码来获得结果集,就像调用一个方法一样。然后让 Java 类处理结果。