简单了解XML中的命名空间

   2016-03-06 0
核心提示:这篇文章主要介绍了XML的命名空间,包括命名空间的声明等XML入门学习中的基础知识,需要的朋友可以参考下

命名空间就是一组唯一名称。命名空间是确定哪个元素和属性名可以被分配到某个组的一种机制。命名空间通过 URI(统一资源标示符)识别。

命名空间声明
命名空间使用保留属性声明。这种属性名必须是 xmlns 或者以 xmlns: 开头。如下所示:

XML/HTML Code复制内容到剪贴板
  1. <element xmlns:name="URL">  

语法
命名空间以关键字 xmlns 开头。
name 就是命名空间前缀。
URL 就是命名空间标识符。


示例
命名空间只影响文档中有限的区域。包含这个声明的元素以及其所有子元素都在命名空间范围之内。下面是一个 XML 命名空间的简单示例:

XML/HTML Code复制内容到剪贴板
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <cont:contact xmlns:cont="www.tutorialspoint.com/profile">  
  3.     <cont:name>Tanmay Patil</cont:name>  
  4.     <cont:company>TutorialsPoint</cont:company>  
  5.     <cont:phone>(011) 123-4567</cont:phone>  
  6. </cont:contact>  

这里,命名空间前缀是 cont,标示符(URI)是 www.tutorialspoint.com/profile。这意味着,带有 cont 前缀元素名和属性名都(包括 contact 元素)属于 www.tutorialspoint.com/profile 这个命名空间。

在XML中,名称空间的使用涉及范畴的概念,范畴即名称空间的覆盖范围,它指的是哪些元素和属性在该名称空间中,哪些不在该名称空间中。名称空间既可以限定整个XML文档,也可以只针对XML文档中的一部分。
     (1).名称空间限定整个XML文档

XML/HTML Code复制内容到剪贴板
  1. <span style="font-family:SimSun;font-size:14px;"><?xml version=”1.0”?>     
  2. <member_details xmlns=”http://www.testns.com/ns.xsd”>     
  3.    <name>Tom</name>     
  4.    <age>12</age>     
  5.    <sex>male</sex>     
  6. </member_details></span>    

     (2)名称空间只针对XML文档中的一部分

XML/HTML Code复制内容到剪贴板
  1. <span style="font-family:SimSun;font-size:14px;"><?xml version=”1.0”?>     
  2. <member_details>     
  3.    <name xmlns=”http://www.testns.com/ns.xsd”>Tom</name>     
  4.    <age>12</age>     
  5.    <sex>male</sex>     
  6. </member_details></span>    

     (3)嵌套的命名空间

XML/HTML Code复制内容到剪贴板
  1. <span style="font-family:SimSun;font-size:14px;"><?xml version=”1.0”?>     
  2. <member_details xmlns=”http://www.testns.com/ns.xsd”     
  3. xmlns:newns=”http://www.testns/newns.xsd”>     
  4.    <name>Tom</name>     
  5.    <age>12</age>     
  6.    <newns:sex>male</sex>     
  7. </member_details>     
  8. //<span style="line-height: 26px;"> 此例中,除了元素sex被定义在新的名称空间中外,其余的元素仍然使用原来的名称空间。</span></span>  
 
标签: 命名空间 XML
反对 0举报 0 评论 0
 

免责声明:本文仅代表作者个人观点,与乐学笔记(本网)无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
    本网站有部分内容均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,若因作品内容、知识产权、版权和其他问题,请及时提供相关证明等材料并与我们留言联系,本网站将在规定时间内给予删除等相关处理.

  • JQuery..bind命名空间
    先看手册,由于bind方法有三个参数(type,[data],fn),所以手册上这么介绍: .bind() 方法是用于往文档上附加行为的主要方式。所有JavaScript事件对象, 比如focus, mouseover, 和 resize,都是可以作为type参数传递进来的。 任何作为type参数的字符串都是合法
    02-12
  • 在XSLT样式表中声明命名空间小结
    如何在XSLT样式表中声明命名空间
点击排行