xml - 正确的 XML 格式

标签 xml

<分区>

Possible Duplicate:
Should I use Elements or Attributes in XML?

我正在用 XML 编写配置文件,我对整个 XML 热潮还很陌生。

我很好奇 SO 社区对应该如何在 XML 中表示各种值有何看法,因为我看到有几种方法可以做到这一点。

例如,值什么时候应该是属性,什么时候应该嵌套在标签中?

<node1 message="Hello world" id="1" />

对比

<node1>
  <message>Hello world</message>
  <id>1</id>
</node1>

显然,这是一个极其简单的示例……但是将某些类型作为属性与子节点相比,是否有利有弊?或者两者兼而有之?

最佳答案

我通常将属性视为元数据,或者关于节点内数据或限定数据的数据。

例如在你上面的例子中,我可能会把消息作为一个文本节点,并有一个与之相关的属性 id。

这里没有对错之分,但我发现上述启发式很有用。您可能希望在属性中存储尽可能多的一种情况是用于 SAX 解析,其中您的元素回调具有所有属性的参数。也就是说,您获得所有属性的一个回调,而不是“n”个回调,每个数据一个。然而,这是以这种方式构建文档的一个非常特殊的原因,在这样做之前我会仔细考虑。

关于xml - 正确的 XML 格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1305898/

相关文章:

java - Spring Security "No bean named ' filterChainProxy'可用“错误

java - 将 java 中的文件从本地 xml 文件解析为新文本文件时出现 ArrayOutOfBoundException

c# - 不需要的命名空间属性添加到根子元素

java - 从动画 xml 文件访问值 xml 文件

c++ - 搜索文件的特定位置

xml - 如果存在 XSD,XSLT 处理器是否验证输入和输出 XML 文件?

java - 如何在android中为textview/edittext添加星号红色标记,使其成为必填字段?

java - 确定 'Compile Order'

android - float 操作按钮图标不在中心

python - 如何使用 lxml 以编程方式实例化注释元素?