【XML】(5)命名空间

    xiaoxiao2021-03-25  101

    【简介】XML中的命名空间是为了实现,在一个XML树种出现两个或多个相同名称但不同含义的标签的正常解释,使用的是xmlns属性。

    1. 通过xmlns属性定义前缀的命名空间

    <table> <tr> <td>苹果</td> <td>柚子</td> </tr> </table> <table> <name>桌子</name> <width>80</width> <length>120</length> </table>

    这两段代码都描述了一个<table>标签对,但两个的含义是不一样的,第一个描述的是HTML中的table列表,而第二个描述的是table桌子的数据,如果这两段代码出现在了同一个文件中,解析器在解析的时候,就不能准确的解析两个的含义,而发生错误。 所以,我们需要对这两个table进行声明,通过命名空间来声明,使用xmlns的属性。

    <root> <h:table xmlns:h="http://www.w3.org/TR/html4/"> <h:tr> <h:td>苹果</h:td> <h:td>柚子</h:td> </h:tr> </h:table> <f:table xmlns:f="http://www.w3cschool.cc/furniture"> <f:name>桌子</f:name> <f:width>80</f:width> <f:length>120</f:length> </f:table> </root>

    两个<table>标签分别定义了xmlns属性 h: 和 f: 前缀的命名空间。当命名空间被定义在元素的开始标签中时,所有带有相同前缀的子元素都会与同一个命名空间相关联。 在使用的时候,在标签名前面加上”前缀 : “

    同时,为了代码更加清晰,我们可以同时将两个命名空间都定义在根元素中,而在下面的<table>中调用。

    <root xmlns:h="http://www.w3.org/TR/html4/" xmlns:f="http://www.w3cschool.cc/furniture"> <h:table> <h:tr> <h:td>苹果</h:td> <h:td>柚子</h:td> </h:tr> </h:table> <f:table> <f:name>桌子</f:name> <f:width>80</f:width> <f:length>120</f:length> </f:table> </root>

    附: 欢迎大家关注我的优酷空间一点编程 ,里边有同步视频教程- 【XML】命名空间-05 。同时也可以关注我的新浪微博-一点编程。

    转载请注明原文地址: https://ju.6miu.com/read-6798.html

    最新回复(0)