This question already has answers here:
XML attribute vs XML element

(20个答案)


5年前关闭。




创建新的xml文件时,如何正确地或最佳方式构造文件。通过结构(在这种情况下可能不是最好的词),我的意思是说如何在使某个元素成为元素或元素的属性之间进行选择。例如,如果我创建一个包含Persons列表的Person.xml文件,最好执行以下操作:
<Person>
    <FirstName>John</FirstName>
    <LastName>Doe</LastName>
    <Age>23</Age>
</Person>

还是做这样的事更好还是更重要?
<Person FirstName="John" LastName="Doe" Age="23"></Person>

最佳答案

XML文件的结构(不启动一场圣战)应如下所示:

如果是数据或可以更改的内容,则应如下所示:

<Person>
  <FirstName>John</FirstName>
  <LastName>Smith</LastName>
  <Age>23</Age>
</Person>

如果它是Person的属性,则应该像这样:
<Person Type="Human">
  <FirstName>John</FirstName>
  <LastName>Smith</LastName>
  <Age>23</Age>
</Person>

这种做法有多种原因,其中最重要的原因包括,无论何时更改检索人员数据的方法,都易于修复XSLT转换。

这确实是重要的部分:属性定义有关数据(人员类型)的信息,而数据就是要填补这些空缺的东西。如果您决定如何更改这些漏洞的填充方式,那么当您以后要转换XML时,如果让它们成为“属性”而不是“数据”,就会变得更加困难。

10-05 22:52
查看更多