Is an xml attribute without a value, valid?

2020-01-27 06:26发布

I want to have an XML attribute without any value, which simply has one meaning when it exists or does not exist.

Is that valid?

3条回答
Bombasti
2楼-- · 2020-01-27 06:44

An attribute must be specified with the following syntax:

Name Eq AttValue

where Name is a legal XML name, Eq is = optionally preceded or followed by whitespace, and AttValue is a legal attribute value.

This definition is true for both XML 1.0 and XML 1.1.

If you are trying to specify an attribute as below:

<car owned/>

then no, that is not valid. If you are trying to specify it this way:

<car owned=""/>

then yes, that is valid.

查看更多
祖国的老花朵
3楼-- · 2020-01-27 06:44

Yes. You can have an attribute whose only permitted value is the empty string, "". I't not sure it's good design, though: I would normally suggest a boolean attribute with values true/false, and a default value of false.

查看更多
家丑人穷心不美
4楼-- · 2020-01-27 06:48

No.

Boolean attributes in XML are of the form foo="foo".

Even in SGML, you must provide the value, (it is the name, = and quotes that you can omit, which is why you have things like <select multiple> in HTML).

查看更多
登录 后发表回答