XML的名称空间

转载 2006年06月07日 13:47:00

名称空间允许开发人员无冲突地使用具有不同来源或不同用途的信息。名称空间是一个概念范围,其中的所有名称都需要是唯一的。

创建名称空间

由于名称空间的标识符必须是唯一的,因而使用统一资源定位符(或 URI)来指定它们。

数据的默认名称空间将使用 xmlns 属性来指定:

<?xml version="1.0" encoding="UTF-8"?>
<orders xmlns="http://www.nicholaschase.com/orderSystem.html">
     <order>
      <customerid limit="1000">12341<customerid>
...
</orders>

... 表示不相关的节。)

没有指定名称空间的任何元素都在默认名称空间 http://www.nicholaschase.com/orderSystem.html 中。实际的 URI 本身并没有表示任何意义。信息可能在也可能没有在该地址,重要的是它必须是唯一的。

注意默认名称空间和根本没有名称空间之间的巨大区别是很重要的。在本例中,没有名称空间前缀的元素都在默认名称空间中。以前,当不存在默认名称空间时,那些元素就不在任何名称空间中。

您还可以创建次级名称空间,并向它们添加元素或属性。

指定名称空间

通过创建 rating 名称空间,您无需使用实际的数据就可以向订单文本添加信用评级信息。

名称空间连同它的一个别名通常在在文档的根元素上(但不一定是这样)创建。当正在使用多个名称空间时,这个别名根据需要用作元素或属性的前缀,以指定正确的名称空间。

下面的代码。它使用了名称空间和别名 rating 来创建 creditRating 元素。

<?xml version="1.0" encoding="UTF-8"?>
<orders xmlns="http://www.nicholaschase.com/orderSystem.html"
      xmlns:rating="http://www.nicholaschase.com/rating.html">
   <order>
      <customerid limit="1000">
         12341
         <rating:creditRating>good</rating:creditRating>
      </customerid>
      <status>
         pending
      </status>
      <item instock="Y" itemid="SA15">
         <name>
            Silver Show Saddle, 16 inch
         </name>
         <price>
            825.00
         </price>
         <qty>
            1
         </qty>
      </item>
   ...
</orders>

节点的名称空间信息可在解析文档之后获得。

相关文章推荐

jquery解析带名称空间的xml

  • 2012年11月12日 16:59
  • 13KB
  • 下载

XML名称空间小结

一、xml名称空间 xml 文档可以包含许多标签以及属性,为了区分在不同文档中的相同标签,需要使用xml名称空间这个概念,就像java中相同名称的类,需要放在不同的包中一样。通过给元素或者属性加上名...

Spring第二篇和第三篇的补充【JavaConfig配置、c名称空间、装载集合、JavaConfig与XML组合】

前言在写完Spring第二和第三篇后,去读了Spring In Action这本书…发现有知识点要补充,知识点跨越了第二和第三篇,因此专门再开一篇博文来写…通过java代码配置bean由于Spring...
  • hon_3y
  • hon_3y
  • 2017年05月11日 19:38
  • 298

XML名称空间的解析

1.SAX解析名称空间:继承DefaultHandler,复写startPrefixMapping()和endPrefixMapping()两个方法解析名称空间。 代码如下: `impor...

c# 操作XML文件时名称空间两个问题,附xml操作类

1、xmlns为名称空间,读取时,需指定XmlNamespaceManager,否则无法正确读取。 2、当有名称空间时,CreateElement需设置namespace参数需设置父节点的名称空间,如...
  • jjhua
  • jjhua
  • 2014年12月08日 19:15
  • 841

DLL 导出名称空间

  • 2012年09月17日 15:45
  • 40KB
  • 下载

第9章——内存模型和名称空间

l         单独编译 C++鼓励程序员在开发程序时使用多个文件。一种有效的组织策略是,使用头文件来定义用户类型,为操纵用户类型的函数提供函数原型;并将函数定义放在一个独立的源代码文件中。头文...

.NET2.0类库的命名空间名称

  • 2008年05月20日 19:05
  • 38KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:XML的名称空间
举报原因:
原因补充:

(最多只允许输入30个字)