命名空间通过xmlns声明避免XML元素冲突,支持前缀(如xmlns:isbn="URI")和默认命名空间(xmlns="URI"),作用范围从声明元素起至其子元素,可被重新定义覆盖,确保文档结构清晰与互操作性。
在XML中,命名空间用来避免元素和属性名称的冲突,特别是在合并多个XML文档或使用不同来源的标签时。命名空间通过xmlns属性声明,可以绑定一个前缀或作为默认命名空间。
使用前缀可以为特定元素及其子元素指定命名空间。格式如下:
xmlns:前缀="URI"
示例:
这里isbn是前缀,http://example.com/isbn是命名空间URI,表示该命名空间下的number元素属于ISBN相关数据。
如果不希望每个元素都加前缀,可以使用默认命名空间:
xmlns="URI"
示例:
在这个例子中,book、title和author都属于http://example.com/book命名空间,因为没有前缀且定义了默认命名空间。
命名空间声明从其所在的元素开始,作用于该元素及其所有子元素,除非被子元素重新声明覆盖。
例如:
第一个item属于http://a.com,第二个则属于新的默认命名空间http://default.com。