使用XHTML命名空间,每个属性是否也应该具有命名空间?

时间:2011-03-18 20:35:17

标签: xml xhtml

在为非常简单的CMS扩展XHTML时,我想知道是否应该使用

<cms:include document="foo/bar" />

<cms:include cms:document="foo/bar" />

鉴于文件声明如下:

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:cms="http://spongegroup.com/ns/cms">

(基本上我的想法是制作一个简单的解析器,白色列出一些XHTML标签,并添加一些我自己的标签。)

cms:namespace中的元素的属性是否需要cms:前缀?

1 个答案:

答案 0 :(得分:3)

cms:元素的属性不需要cms:前缀,因为这些属性的含义由它们所属的元素决定。

参见XML namespace recommendation:“无前缀属性的解释由它们出现的元素决定。”

从技术上讲,无前缀属性属于null命名空间。

在2011-06-06编辑的答案,以纠正一个误导性的句子。感谢评论者。