我试图弄清楚 XQuery 是否是我正在从事的项目的一个很好的解决方案。我以前没有真正使用过它,我正在尝试遵循简单的教程。我在这里尝试这个:http: //www.w3schools.com/xquery/xquery_add.asp
看起来很简单,但根据我从中得到的印象,我无法让它发挥作用。这对我说的是我必须创建一个包含以下内容的 HTML 文档:
<html>
<body>
<h1>Bookstore</h1>
<ul>
{
for $x in doc("books.xml")/bookstore/book
order by $x/title
return <li>{data($x/title)}. Category: {data($x/@category)}</li>
}
</ul>
</body>
</html>
这会查询 XML 文档:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Edited by XMLSpy® -->
<bookstore>
<book category="COOKING">
<title lang="en">Everyday Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
</book>
<book category="CHILDREN">
<title lang="en">Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
<book category="WEB">
<title lang="en">XQuery Kick Start</title>
<author>James McGovern</author>
<author>Per Bothner</author>
<author>Kurt Cagle</author>
<author>James Linn</author>
<author>Vaidyanathan Nagarajan</author>
<year>2003</year>
<price>49.99</price>
</book>
<book category="WEB">
<title lang="en">Learning XML</title>
<author>Erik T. Ray</author>
<year>2003</year>
<price>39.95</price>
</book>
</bookstore>
看起来这并不简单,因为浏览器将数据解释为语法不正确的 HTML。我尝试将 HTML 代码添加到 XML 文件,但再次显示不正确的 XML 格式。您是否应该将其用作 XSLT 文件而不是 HTML?这可能是一个愚蠢的问题,但对于“在 HTML 页面中运行 XQuery 需要什么?”这个问题,我没有找到直接的答案。为什么本教程不澄清您需要第三方库或 API 或其他东西。我没有正确引用xml文件吗?或者我只是愚蠢(这可能是一种可能性)?