简单了解XML中的命名空间

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

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

<element xmlns:name="URL">  

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


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

<?xml version="1.0" encoding="UTF-8"?>  
<cont:contact xmlns:cont="www.tutorialspoint.com/profile">  
    <cont:name>Tanmay Patil</cont:name>  
    <cont:company>TutorialsPoint</cont:company>  
    <cont:phone>(011) 123-4567</cont:phone>  
</cont:contact> 

 

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

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

<?xml version=”1.0”?>     
<member_details xmlns=”http://www.testns.com/ns.xsd”>     
   <name>Tom</name>     
   <age>12</age>     
   <sex>male</sex>     
</member_details>

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

<?xml version=”1.0”?>     
<member_details>     
   <name xmlns=”http://www.testns.com/ns.xsd”>Tom</name>     
   <age>12</age>     
   <sex>male</sex>     
</member_details> 

(3)嵌套的命名空间(常用)

<?xml version=”1.0”?>     
<member_details xmlns=”http://www.testns.com/ns.xsd”     
xmlns:newns=”http://www.testns/newns.xsd”>     
   <name>Tom</name>     
   <age>12</age>     
   <newns:sex>male</sex>     
</member_details>     
此例中,除了元素sex被定义在新的名称空间中外,其余的元素仍然使用原来的名称空间。</span></span>  

 

posted on   会走路的虾米  阅读(257)  评论(0编辑  收藏  举报

编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix

导航

点击右上角即可分享
微信分享提示