XML中的引号.单人还是双人?

Ser*_*lov 54 xml formatting

我听说使用单引号来包围XML属性值是一种"糟糕的风格".它是否正确?

我应该总是写:

<element attr="value">
Run Code Online (Sandbox Code Playgroud)

或者可以写:

<element attr='value'>
Run Code Online (Sandbox Code Playgroud)

或者我使用哪种风格无关紧要?

Ode*_*ded 73

两者都是合法的.选择一个并坚持下去.没关系.

规格:

AttValue       ::=      '"' ([^<&"] | Reference)* '"'
                     |  "'" ([^<&'] | Reference)* "'"
Run Code Online (Sandbox Code Playgroud)

显示两者都是有效的,就像在元素中混合两个样式一样,每个属性(尽管我建议在任何单个文档/文档集中保持一致).


Mic*_*Kay 21

双引号更常见,对于任何特定社区而言,为了保持一致性而采用房屋风格是完全可以接受的,但是一种全面的说法是,一种做法更好的做法没有任何理由.

提出这样的建议也很危险,因为它鼓励那些尝试使用正则表达式而不是使用真正的XML解析器来解析XML的"绝望的黑客",并且总是只能成功处理XML合法允许的子集.

如果我从Java应用程序手动生成XML,我倾向于使用单引号 - 尽管我越来越倾向于认为手工生成XML几乎和手工解析它一样危险.