CTOCIO IT专家网

天极传媒 比特网 | 天极网 | IT专家网 | IT商网 | 52PK游戏网 | 手机天极 | IT分众 |
IT专家网搜索

您现在的位置: IT专家网 > Web服务子站 > 技巧

查询包含名称空间的 XML 数据

作者: C. M. Saracco,  出处:developerWorks 中国, 责任编辑: 叶江, 
2007-07-02 14:19
  XML 消息和文档中名称空间的广泛使用对应用程序开发人员如何编写查询有很大的影响。不幸的是,名称空间与流行的查询语言(例如 SQL/XML 和 XQuery)之间的关系往往遭到误解。本文通过几个常见的场景,帮助您理解如何查询包含名称空间的 XML 数据

  考虑清单 2 中的例子:

  清单 2. 一个含多个名称空间的示例 XML 文档

<mydoc>
    <employee xmlns="http://www.bogus.com/employee/1.0">
          <name>John Jones</name>
           . . .
    <employee>
    <p:partner xmlns:p="urn:xmlns:bogus:partner1.0"/>
           <name>Acme Computer Corp.</name>
            . . .
     </p:partner>
     <department>
 <name>Sales</name>
 . . .
      </department>
</mydoc>

  在这个例子中,employee 元素的子元素 name 属于 <employee> 元素中声明的默认名称空间(http://www.bogus.com/employee/1.0)。但是,partner 元素的子元素 name 不属于任何名称空间。虽然它是 <partner> 的子元素,但这个 <name> 元素没有继承其父元素的名称空间,因为那个名称空间是用一个前缀声明的。为了使 partner 的 name 信息也被包括在其父元素所在的名称空间内,可以重写这一行,如下所示

  清单 3. 修改后的包括名称空间前缀的元素

<p:name>Acme Computer Corp.</p:name>

  最后,department 元素的子元素 name 不属于任何名称空间。这是因为在 元素中没有声明名称空间,它不会被绑定到默认名称空间。

  可以看到,在同一个文档中混合使用不同形式的名称空间声明很容易产生混乱。通常,如果有机会定义将来要使用的 XML 数据,那么在名称空间的使用上应保持一致性。这样可以简化应用程序和查询。接下来的几个小节将探索名称空间的作用域对查询的影响。

……


  阅读关于 XML Web服务 WSDL SOAP 标准 XQuery 的全部文章
共2页。 9 1 2

网友评论

笔名 
请您注意:遵守国家有关法律、法规,尊重网上道德,承担一切因您的行为而直接或间接引起的法律责任。    IT专家网友拥有管理笔名和留言的一切权利。
  • 周排行榜
  • 月排行榜

邮件订阅

       
天极服务 | 关于我们 | 网站律师 | 加入我们 | 联系我们 | 广告业务 | 友情链接 | 我要挑错
All Rights Reserved, Copyright 2004-2008, Ctocio.com.cn
渝ICP证B2-20030003号 如有意见请与我们联系 powered by 天极内容管理平台CMS4i