网站首页站长博客下载中心域名交易站长论坛域名主机免费电邮免费域名中文排行排名查询站长书库书籍教程下载
设为首页
加入收藏
总编信箱
投稿或申请专栏请先 [登 陆]
学院首页 网络编程 网页设计 图形图象 数 据 库 服 务 器 网络媒体 网络安全 个人专栏 站长CLUB 业界新闻 信息公告
 当前位置:首页 >> 网络编程 >> XML专区 >> 正文
公告通知
返回上级列表
资料搜索
相关文章
使XML本地化和关系化
[ 来源:天极网络 | 作者:无从考证 | 时间:2005-8-19 13:59:19 | 浏览:人次 ]
收藏到新浪ViVi 收藏到365KEY 收藏到我摘  字号选择〖    〗/ 双击滚屏 单击停止  

使用RESOURCE_VIEW

  你应该知道的一个重要视图是名为RESOURCE_VIEW的视图。RESOURCE_VIEW视图为你所访问的知识库中的每个文档和文件夹返回一行。例如,通过执行下面的查询你可以得到/CD文件夹下所有XML文档的一个列表。

SELECT any_path
FROM resource_view
WHERE under_path(res,'/CD')=1
AND extractValue(res,
'/Resource/ContentType')='text/xml';

ANY_PATH
-------------------------------
/CD/Gospel/NothingLess.xml
/CD/LegendsOfTheGreatLakes.xml
 

  上面显示的新的UNDER_PATH函数使你能够测试一个给定的知识库资源是否在你指定的文件夹(或路径)中。在这个例子中,我使用该函数把查询结果限定在/CD文件夹及其子文件夹的资源中。通过使用对基本表所创建的一个层次式域索引可以使对RESOURCE_VIEW视图进行的基于路径的查询更高效。这个索引是该知识库的一部分;你不用创建它。


图1:XML DB知识库中示例CD模式的一部分

   资源视图中的RES字段并不代表资源自身,而只是代表资源的元数据。对RES字段运用新的extractValue函数检查每个资源的内容类型。因此查询的结果被进一步地限制到指向XML文档的路径。'/Resource/ContentType'语法代表XPath表示法。XPath是指定XML文档各部分的标准表示法;你将在许多对XML数据的查询中使用它。

  给定一个资料库路径,你可以使用新的XDBUriType对象类型检索全部或部分基本XML文档。清单6显示两个查询。第一个查询是对以上代码的扩展,使用XDBUriType来检索/CD文件夹下的所有XML文档。为了只提取CD标题,清单6中的第二个查询进行了进一步的改进,把标准的XPath语法附加到URL的末端。

对知识库数据的关系访问
       也可以通过直接访问基本表来访问知识库中的XML数据。我注册CD模式时创建的基本表是CD331_TAB。你可以直接对这个表编写查询语句,但这些查询必须是支持XML的。要简化通过设计用于关系数据的报表工具访问XML数据,你可以创建一个如清单7中所示的视图。除了视图,清单7还对艺术家名字创建了一个索引。视图和索引使我能够有效地执行诸如下面的标准关系查询:

  SELECT title
  FROM cd_master
  WHERE artist='Carl Behrend';

  更新XML数据

  不幸的是,因为在cd_master视图中的所有字段都是基于SQL函数的,所以该视图不能被更新。然而,可以更新知识库中的XML数据;我只需要如下所示更新注册模式时所创建的基本表:

UPDATE CD331_TAB cd
SET VALUE(cd) = updateXML(
value(cd),
'/CD/Website/text()',
'http://greatlakeslegends.com/
legends.htm');

  注意这个新的updateXML函数中的XPath语法的使用。路径'/CD/Website/text()'说明我要更新CD文档的Website元素的文本。updateXML的第三个参数为那个文本指定新值。这是一个恰当的更新,并非常高效。XML DB知识库并不需要重建被改变的整个XML文档。因为模式被注册了,所以XML DB知识库能够以在底层对象结构只有Website属性被触及的方式重写这个查询。

  结论

  通过使用XML DB知识库,你可以把XML文档存储在数据库中,并使用标准的互联网协议访问那些文档。同时,你还可以使用标准的关系查询访问相同的XML文档或是那些文档的部分。你没有XML数据和关系数据,只有数据。"XML"和"关系"只是查看数据的不同范例。通过把数据从范例中分离出来,Oracle9i保护你最重要的资产之一--数据--免受范例改变的影响。

本新闻共2页,当前在第2页  1  2  


[发送给好友]  [打印本页]  [关闭窗口]  [返回顶部]   转载请注明来源:http://edu.chinaz.com   
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
栏目编辑: 设计风 责任编辑: 简若宁
原始作者: 无从考证 录入时间: 2005-8-19 13:59:19
信息来源: 天极网络 投稿信箱: Edu#chinaz.com
设为首页 - 加入收藏 - 关于我们 - 广告服务 - 版权申明 - 友情链接 - 联系方式 - 总编信箱 - 会员投稿