XQuery 是一种用于从XML 格式的文档中获取数据的查询语言,它的前身是Quilt 。
XQuery 能查询任何可以以XML 形式呈现的数据,如:数据库的XML 形式数据、Web 页面等等。
XQuery 相对于XML 的关系,就如同SQL 相对于数据库的关系。
接下来,我将以一个简单的示例来演示XQuery 的功能和作用。
首先,新建XML 形式的数据源(class.xml ),代码如下:
<?xml version="1.0" encoding="UTF-8"?> |
<class> |
<student grade="S1"> |
<name>zhangsan</name> |
<score>85</score> |
</student> |
<student grade="S2"> |
<name>lisi</name> |
<score>50</score> |
</student> |
<student grade="S3"> |
<name>wangwu</name> |
<score>100</score> |
</student> |
<student grade="s1"> |
<name>zhaoliu</name> |
<score>90</score> |
</student> |
</class> |
然后,创建XQuery 文件,其扩展名为.xq。创建的步骤如下:
a > 打开Altova XMLSpy 软件(也可以使用 Stylus Studio 软件);
b > 选择菜单【File】 ----> 【New...】----> “xq XML Query Language”来创建XQuery 文件;
截图如下:
c > 打开创建好的XQuery 文件,编写XQuery 语句。代码如下:
xquery version "1.0"; |
for $student in doc("class.xml")/class/student |
where lower-case($student/@grade) = "s1" |
return string($student/name) |
保存该文件为:XQuery.xq 文件名,并确保与class.xml 文件在同一目录下。
最后,执行该代码。步骤如下:
单击菜单【XSL/XQuery】----> 【XQuery Execution】执行代码。
截图如下:
注意,它将会弹出一个对话框用于选择你要执行的XML 文件的路径位置,由于我在XQuery.xq 代码中已经直接指定了class.xml 文件的相对路径,所以在此,直接选择“Skip XML”按钮跳过指定class.xml 文件的路径,即刻执行。
截图如下:
点击“Skip XML”按钮,表示跳过XML 指定,直接执行,显示结果。
结果的截图如下:
执行结果正确。完毕!