4

我是编程新手,对 xml / xquery 非常陌生

我有一个 .xq 文件(带有 html 和 xquery 代码)和 .xml 文件(用于存储数据)。

在测试它时,我可以查看 .xq 页面如何使用 stylus studio 显示,但我无法使用网络服务器或网络主机使页面正常运行。我知道这并不罕见,但我无法弄清楚如何解决它(或者如果它甚至可能的话)。

与此同时,我一直在使用 Saxon,它运行良好,但不理想必须使用完全独立于应用程序的命令行代码。

我还读到 Jedit 是一个选项,但我无法让 xquery/saxon 插件与 xquery 一起使用。我还想知道是否可以使用样式表,但在这方面找不到任何东西。

那么第一个问题,浏览器(即使用网络主机)是否可以显示 .xq 文件?还有其他软件的推荐吗?

4

2 回答 2

2

如果您的目标是通过 Web 浏览器访问和执行 XQuery 程序,那么您将需要一个带有 Web 服务器的 XQuery 引擎。有许多这样的产品。我个人使用并且可以推荐eXist-db,一个免费的、开源的原生 XML 数据库。除了有效地存储、索引和查询您的 XML 之外,eXist-db 默认使用轻量级 Web 服务器运行,允许您通过浏览器访问查询,例如http://localhost:8080/exist/apps /myapp/myquery.xq. 访问此 URL 将导致 eXist-db 在数据库的“myapp”目录中查找您的查询 (myquery.xq),并假设它确实存在,eXist-db 将执行查询并将结果序列化到浏览器。这是一个非常强大的组合——XQuery 和原生 XML 数据库 + 像 eXist-db 这样的 Web 服务器。随意阅读更多关于 eXist-db 的文档,并在exist-open 邮件列表中询问有关 eXist-db 的问题。祝你好运!

于 2012-05-05T00:07:53.460 回答
1

正如 Joe 所说,您需要一个能够执行 XQuery 代码的 Web 应用程序框架。最明显的选择是 Web 服务器附带的任何类型的 XML 数据库。eXist-db 就是一个例子。MarkLogic ( www.marklogic.com ) 是另一个。还有 Sausalito ( www.28msec.com ),它带有一个 Eclipse 派生的开发人员环境,允许在小型 Web 服务器中进行本地测试。您还可以查看 ServletX ( www.expath.org ),这是一个用于执行 xslt、xproc、xquery 等的小型 Web 容器。稍加努力,你甚至可以采取像 Cocoon 这样的东西,把 Saxon ( www.saxonica.com) 在它后面,并使用它来执行您的 XQuery。所有提到的示例都允许免费运行代码,甚至是来自商业供应商的产品。

于 2012-05-05T14:56:58.957 回答