Tob*_*zer 5 xml xml-namespaces
XML 命名空间规范解释说,无前缀属性的解释由它们出现的元素决定。并且无前缀属性名称的命名空间名称始终没有值:
无前缀属性名称的命名空间名称始终没有值。
jid在以下情况下,此规则如何应用于属性的命名空间。
<query xmlns="jabber:iq:roster">
<item jid="romeo@example.com"></item>
</query>
Run Code Online (Sandbox Code Playgroud)
如果命名空间的声明和相关属性都没有前缀,则该属性jid位于命名空间中jabber:iq:roster。
<q:query xmlns:q="jabber:iq:roster">
<q:item q:jid="romeo@example.com"></q:item>
</q:query>
Run Code Online (Sandbox Code Playgroud)
如果命名空间的声明和属性具有相同的前缀,则属性jid也具有命名空间jabber:iq:roster:
<q:query xmlns:q="jabber:iq:roster">
<q:item jid="romeo@example.com"></q:item>
</q:query>
Run Code Online (Sandbox Code Playgroud)
但是,如果使用前缀声明命名空间但该属性没有前缀,则该属性位于哪个命名空间中?我假设该属性jid
具有在父元素中声明的默认名称空间,
<parent xmlns="http://example.com">
<q:query xmlns:q="jabber:iq:roster">
<q:item jid="romeo@example.com"></q:item>
</q:query>
</parent>
Run Code Online (Sandbox Code Playgroud)
或者没有命名空间,如果没有这样的声明。
我理解得对吗?
| 归档时间: |
|
| 查看次数: |
1858 次 |
| 最近记录: |