55

我想要一个没有任何值的 XML 属性,它存在或不存在时只有一个含义。

那有效吗?

4

3 回答 3

69

必须使用以下语法指定属性:

名称 Eq AttValue

其中 Name 是一个合法的 XML 名称,Eq 是= 前面或后面可选的空格,而 AttValue 是一个合法的属性值

这个定义对XML 1.0XML 1.1都是正确的。

如果您尝试指定如下属性:

<car owned/>

那么不,那是无效的。如果您尝试以这种方式指定它:

<car owned=""/>

那么是的,这是有效的。

于 2011-08-03T14:29:50.193 回答
25

不。

XML 中的布尔属性采用foo="foo".

即使在 SGML 中,您也必须提供值(它是名称=和可以省略的引号,这就是为什么您<select multiple>在 HTML 中具有类似内容的原因)。

于 2011-08-03T12:29:43.850 回答
2

您可以有一个属性,其唯一允许的值是空字符串“”。不过,我不确定这是不是好的设计。我通常会建议一个布尔属性,其值为真/假,默认值为假。

于 2011-08-03T13:31:45.263 回答