Atitit xml命名空间机制

命名冲突1

使用前缀来避免命名冲突2

使用命名空间(Namespaces)2

XML Namespace (xmlns) 属性2

默认的命名空间(Default Namespaces)2

命名空间的语法如下   xmlns:[prefix]=”[url of name]”3

XML 命名空间提供避免元素命名冲突的方法。

命名冲突

在 XML 中,元素名称是由开发者定义的,当两个不同的文档使用相同的元素名时,就会发生命名冲突。

这个 XML 文档携带着某个表格中的信息:

<table>

<tr>

<td>Apples</td>

<td>Bananas</td>

</tr></table>

这个 XML 文档携带有关桌子的信息(一件家具):

<table>

<name>African Coffee Table</name>

<width>80</width>

<length>120</length></table>

假如这两个 XML 文档被一起使用,由于两个文档都包含带有不同内容和定义的 <table> 元素,就会发生命名冲突。

XML 解析器无法确定如何处理这类冲突。

使用前缀来避免命名冲突

此文档带有某个表格中的信息:

<h:table>

<h:tr>

<h:td>Apples</h:td>

<h:td>Bananas</h:td>

</h:tr></h:table>

现在,命名冲突不存在了,这是由于两个文档都使用了不同的名称来命名它们的 <table> 元素 (<h:table> 和 <f:table>)。

通过使用前缀,我们创建了两种不同类型的 <table> 元素。

使用命名空间(Namespaces)

这个 XML 文档携带着某个表格中的信息:

与仅仅使用前缀不同,我们为 <table> 标签添加了一个 xmlns 属性,这样就为前缀赋予了一个与某个命名空间相关联的限定名称。

XML Namespace (xmlns) 属性

XML 命名空间属性被放置于元素的开始标签之中,并使用以下的语法:

xmlns:namespace-prefix="namespaceURI"

当命名空间被定义在元素的开始标签中时,所有带有相同前缀的子元素都会与同一个命名空间相关联。

注释:用于标示命名空间的地址不会被解析器用于查找信息。其惟一的作用是赋予命名空间一个惟一的名称。不过,很多公司常常会作为指针来使用命名空间指向实际存在的网页,这个网页包含关于命名空间的信息。

默认的命名空间(Default Namespaces)

为元素定义默认的命名空间可以让我们省去在所有的子元素中使用前缀的工作。

请使用下面的语法:

xmlns="namespaceURI"

这个 XML 文档携带着某个表格中的信息:

<table xmlns="http://www.w3.org/TR/html4/">

<tr>

<td>Apples</td>

<td>Bananas</td>

</tr>

</table>

命名空间的语法如下   xmlns:[prefix]=”[url of name]”

其中“xmlns:”是必须的属性。“prefix”是命名空间的别名,它的值不能为xml。

<sample xmlns:ins=”http://www.lsmx.net.ac”>

作者:: 绰号:老哇的爪子claw of Eagle 偶像破坏者Iconoclast image-smasher

捕鸟王"Bird Catcher 王中之王King of Kings 虔诚者Pious 宗教信仰捍卫者 Defender of the Faith. 卡拉卡拉红斗篷 Caracalla red cloak

简称:: Emir Attilax Akbar 埃米尔 阿提拉克斯 阿克巴

全名::Emir Attilax Akbar bin Mahmud bin  attila bin Solomon bin adam Al Rapanui

埃米尔 阿提拉克斯 阿克巴 本 马哈茂德 本 阿提拉 本 所罗门 本亚当 阿尔 拉帕努伊

常用名:艾提拉(艾龙),   EMAIL:1466519819@qq.com

头衔:uke总部o2o负责人,全球网格化项目创始人,uke宗教与文化融合事务部部长,Uke部落首席大酋长,uke制度与重大会议委员会委员长,uke保安部首席大队长,uke制度检查委员会副会长,奶牛科技cto ,uke波利尼西亚区大区连锁负责人,克尔格伦群岛区连锁负责人,莱恩群岛区连锁负责人,uke汤加王国区域负责人。布维岛和南乔治亚和南桑威奇群岛大区连锁负责人

转载请注明来源:attilax的专栏   http://www.cnblogs.com/attilax/

--Atiend

最新文章

  1. 在线调试lua原型设计
  2. Bootstrap &lt;基础三十一&gt;插件概览
  3. TimeQuest 静态时序分析 基本概论
  4. 另类分析SIGSEGV信号
  5. JavaScript之旅(三)
  6. nios II--实验6——串口软件部分
  7. DataTable过滤重复字段
  8. Dreamweaver中清除php代码中多余空行的方法
  9. tyvj1038忠诚
  10. mysql技能提升篇 - Sqlyog高级应用
  11. Python之Django rest_Framework框架源码分析
  12. unity shaderlab Blend操作
  13. c/c++线性循环队列
  14. 第七章 LED将为我闪烁:控制发光二级管
  15. keepalived+mysql backup服务器可ping通过vip但telnet vip+3306失败问题
  16. 【转帖】如何在redhat单机服务器上运行postgresql的多个实例(howto run multiple postgresql instance on one redhat server)
  17. 2018/03/19 每日一个Linux命令 之 touch
  18. 模仿linux内核定时器代码,用python语言实现定时器
  19. Selenium私房菜系列4 -- Selenium IDE的使用
  20. 131.007 Unsupervised Learning - Feature Selection | 非监督学习 - 特征选择

热门文章

  1. [spring源码学习]二、IOC源码——配置文件读取
  2. (转) Android开发性能优化简介
  3. node cmd bash 相关命令
  4. c:out标签和el表达式与跨域攻击XSS
  5. android 常用URI
  6. java基础
  7. perl学习之路1
  8. scala - multiple overloaded alternatives of method bar define default arguments
  9. C代码实现栈
  10. mui框架中底部导航的跳转2