XML 命名空间(Namespace)
XML 命名空间(Namespace)
为什么要使用命名空间
为了避免元素名冲突。
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>
显然,如果这两个文档都要用,这就发生了命名的冲突。
用前缀来解决命名冲突
使用前缀可以解决命名冲突问题:
<h:table> <h:tr> <h:td>Apples</h:td> <h:td>Bananas</h:td> </h:tr> </h:table>
<f:table> <f:name>African Coffee Table</f:name> <f:width>80</f:width> <f:length>120</f:length> </f:table>
现在,两个文档都加上了前缀,所以标签变成了不同的名字,就解决了命名冲突。
使用命名空间(Namespaces)来解决命名冲突
为标签加上xmlns 属性,这样就为前缀赋予了一个与某个命名空间相关联的限定名称。
<h:table xmlns:h="http://www.w3.org/TR/html4/"> <h:tr> <h:td>Apples</h:td> <h:td>Bananas</h:td> </h:tr> </h:table>
<f:table xmlns:f="http://www.w3school.com.cn/furniture"> <f:name>African Coffee Table</f:name> <f:width>80</f:width> <f:length>120</f:length> </f:table>
XML 命名空间属性被放置于元素的开始标签之中,并使用以下的语法:
xmlns:namespace-prefix="namespaceURI"
当命名空间被定义在元素的开始标签中时,所有带有相同前缀的子元素都会与同一个命名空间相关联。
元素和属性都可以应用命名空间。
参考资料
w3school:
http://www.w3school.com.cn/xml/xml_namespaces.asp
圣思园张龙老师视频教程。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· Obsidian + DeepSeek:免费 AI 助力你的知识管理,让你的笔记飞起来!
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了