XML命名空间的说明书中说明了前缀的属性的解释通过在它们出现的元素确定 。 而且该为前缀的属性名命名空间名称始终没有价值 。
请问这个规则适用于属性的名称空间jid
在下列情况下。
<query xmlns="jabber:iq:roster">
<item jid="romeo@example.com"></item>
</query>
如果命名空间的声明和相关的属性都没有一个前缀,属性jid
是在命名空间中jabber:iq:roster
。
<q:query xmlns:q="jabber:iq:roster">
<q:item q:jid="romeo@example.com"></q:item>
</q:query>
如果两者的命名空间的声明和属性的前缀相同,属性jid
也有命名空间jabber:iq:roster
:
<q:query xmlns:q="jabber:iq:roster">
<q:item jid="romeo@example.com"></q:item>
</q:query>
但在命名空间属性,如果声明命名空间与前缀,但属性不具有前缀? 我会假设,该属性jid
在父元素中声明默认的命名空间,
<parent xmlns="http://example.com"> <q:query xmlns:q="jabber:iq:roster"> <q:item jid="romeo@example.com"></q:item> </q:query> </parent>
- 或者没有命名空间,如果没有这样的声明。
我得到这个权利?