XML中的名称空间又被叫做命名空间

名称空间的作用?

为了解决不同领域的XML词汇的同名冲突和区分识别。(参考底下的示例

注意:名称空间只存在逻辑意义,无法真正实现对URI的引用。

名称空间的声明:

放在元素(一般是根元素)的起始标签内,以类似属性的形式声明。

名称空间的声明将名称前缀和URI关联起来。

名称空间的作用范围:

只在声明名称空间的元素以及该元素所包含的元素属性内有效。

(注意:默认名称空间不直接作用于属性)

声明名称空间的元素,称为包容体Container)。名称空间和前缀的关联关系在包容体的范围内有效。

名称空间的两种声明方式:

1显式名称空间声明:xmlns : 前缀名 = “URI”

例如:

<根元素 xmlns: xg = “http://xugang.cnblogs.com” >           <xg:子元素  attName = “myname” />

2默认名称空间声明:xmlns = “URI”

它没有前缀名,所以在包容体内没有前缀名的XML元素和属性都属于默认名称空间。

例如:

<根元素 xmlns = “http://xugang.cnblogs.com” >           <子元素 attName =“myname” />

注意:尽量只在根元素声明默认名称空间。若默认名称空间声明在非根元素,则容易被用户误解或忽略成没有名称空间的元素。所以,非根元素尽量不使用默认名称空间声明(推荐使用显式名称空间声明)。

名称空间的声明注意:

* 双引号内必须是一个URI;
* XML区分大小写,前缀名也不例外;
* 前缀名建议采用英文缩写,也可以用中文(但不推荐用中文);
* 尽量避免同名前缀却对应不同URI的名称空间的情况,它将容易误导用户;
* 尽量在根元素中声明所有的名称空间;
* 如果一个属性所在的元素属于某显式声明的名称空间,一般就不需要为该属性添加前缀。

URI (Uniform Resource Identifier):统一格式资源标识符。

URI URL URN 的超集。

URLUniform Resource Locater,统一格式资源定位器):用于标记网络上某资源的位置,就是通常所说的网址。

URNUniform Resource Name,统一格式资源名称):表示Internet上某个持久(persistent)的资源,格式相对自由。如:“myURN: IT”表示本示例内部使用的名称。

示例:

IT部门使用.xml

<?xml version="1.0" encoding="GB2312" standalone="yes"?><资料>   <设备 编号="联想6515b">      <生产商>联想集团</生产商>      <地址>北京市中关村127号</地址>   </设备></资料>

建筑部门使用.xml

<?xml version="1.0" encoding="GB2312" standalone="yes" ?><资料>   <设备 编号="中联F001">      <生产商>中联重科</生产商>      <地址>湖南省长沙市新开铺113号</地址>   </设备></资料>

错误的部门融合.xml

<?xml version="1.0" encoding="GB2312" standalone="yes"?><资料>   <设备 编号="联想6515b" 编号="中联F001">      <设备名>笔记本</设备名>      <生产商>联想集团</生产商>      <地址>北京市中关村127号</地址>      <设备名>起重机</设备名>      <生产商>中联重科</生产商>      <地址>湖南省长沙市新开铺113号</地址>   </设备></资料>

正确的部门融合.xml

<?xml version="1.0" encoding="GB2312" standalone="yes"?><资料 xmlns:IT="http://www.lenovo.com" xmlns:建筑="myURN:中联">   <设备 IT:编号="联想6515b" 建筑:编号="中联F001">      <IT:设备名>笔记本</IT:设备名>      <IT:生产商>联想集团</IT:生产商>      <IT:地址>北京市中关村127号</IT:地址>      <建筑:设备名>起重机</建筑:设备名>      <建筑:生产商>中联重科</建筑:生产商>      <建筑:地址>湖南省长沙市新开铺113号</建筑:地址>   </设备></资料>

更多相关文章

  1. 详解在XML文档中替换元素名称的方法(图)
  2. 详细介绍XML中名字空间的代码案例
  3. 应用名称访问XML文档的代码案例详解
  4. XML和Schema命名空间的详细介绍
  5. XML和Schema命名空间的具体实例代码分享
  6. 关于应用名称的文章推荐
  7. 关于省份名称的详细介绍
  8. 免费且支持远程连接的MySql空间
  9. 升级华为网络设备(路由器,防火墙和交换机),提示空间不足,怎么解决?

随机推荐

  1. Android View和ViewGroup的关系
  2. Android Studio 1.5 opencv开发
  3. Android(安卓)快捷键
  4. Android Java执行Shell命令
  5. Android构建工具Gradle知识1
  6. Android USB/MTP相关实现
  7. android 界面布局 很好的一篇总结 【转】
  8. android面试题整理(2)
  9. 配置Qt Creator for Android
  10. Android Intent个人介绍