XQuery学习笔记(一) XQuery概览

一、什么是XQuery

  XQuery是W3C设计的一种针对于XML的查询语言,类似于SQL,能够筛选出XML的子集,并进行分组、排序、计算等,功能非常强大,主流编程语言、关系数据库均提供了部分(完全)的支持,为处理XML数据提供了一种新的思路。

 

二、XQuery的主要用途

1、从关系数据库中提取信息并用于网络服务。

2、产生存储在数据库中数据的报表,以HTML显示在网页。

3、从XML数据库中搜索信息。

4、从数据库或打包好的软件中提取数据,并进行转换以进行其他应用。

5、合并传统的非XML的数据以进行统一管理。

 

三、XQuery推荐资源

1、书籍:《XQuery权威指南》、《ASP.NET 2.0 XML高级编程》、《SQL Server 2005 XML高级编程》

2、网站:

1)W3C XQuery主页

2) XMLPlease

3) W3School

4) DataDirect

5) TechNet XQuery主页

 

四、开发工具

1、推荐使用 Altova XML Spy 2010 Enterprise Edition,试用版可以在这里下载。

2、Stylus Studio 2010 Enterprise Edition,试用版可以在这里下载。

3、Dreamweaver、Visual Studio、UltraEdit等。

 

五、XQuery Hello World

1、打开Altova XML Spy,点击【Project】--【New Project】新建一个项目,Ctrl + S保存,重命名为Simple Test:

 

2、点击【File】--【New】,选择【XML  Extensible Markup Language】,点击【OK】,注意这时会提示要选择一个DTD还是Schema,由于只是新建一个简单的XML文件,故选择Cancel,添加一个XML文件:Users.xml

代码
<?xml version="1.0" encoding="UTF-8"?>
<Users>
    
<User id="1">
        
<Name>Tom</Name>
        
<Age>12</Age>
    
</User>
    
<User id="2">
        
<Name>Jerry</Name>
        
<Age>9</Age>
    
</User>
    
<User id="3">
        
<Name>Brooks</Name>
        
<Age>24</Age>
    
</User>
</Users>

 

 

3、新添加的文件默认不是在项目中,保存后在项目中的【XML Files】上右击,选择【Add Files】,将Users.xml添加到项目中。

4、以类似的方法,新建一个XQuery文件:Users.xq并添加到项目中,模板类型选择【xq  XML Query Language】。

5、输入如下代码:

xquery version "1.0";
doc("Users.xml")/Users/User/Name

 

doc()是一个内置函数,将读取指定的XML文件,“/Users/User/Name”称之为路径表达式,注意必须按照元素出现的顺序书写,查询出所有的Name节点。

 

Alt + F10 执行查询,当提示选择哪个XML文件时,定位到Users.xml,点击【Execute】:

将会新打开一个XML文件以显示查询结果:

 

6、查询所有指定的元素:

xquery version "1.0";
doc("Users.xml")//User

双斜线"//"表示任意路径,即User上面可以有任意父级元素,上面代码即查询所有的User元素。

 

7、查询指定属性的元素:

xquery version "1.0";
doc("Users.xml")/Users/User[@id= "1"]

 

"@"表示获取属性,并用中括号括起来,上面表达式的意思为:获取User元素中属性id为“1”的所有User元素,并将查询出相应User的所有子元素。

 

8、用索引获取指定的元素:

xquery version "1.0";
doc("Users.xml")//User[2]

 

获取第二个"User"元素及其子元素,注意XQuery的索引从1开始而不是从0。

 

六、小结

  这次只是说说XQuery的基础内容及总体概览,XQuery的整体框架还是非常庞大的,鉴于XML的重要地位,学习及掌握基础的XQuery表达式十分必要,以后会继续深入的对XQuery的细节进行介绍,并研究,Net SQL Server等其他技术与XQuery的互操作。

附注:

  后续篇章会对Altova XML Spy 2010进行简单的配置,以更方便的进行开发。

posted @ 2010-01-31 23:57  江苏瑞步科技  阅读(3925)  评论(2编辑  收藏  举报