使用元素还是属性
数据可被存储于子元素之中,或者在属性中也可以。
请看这些例子:
<person sex="female">
<firstname>Anna</firstname>
<lastname>Smith</lastname>
</person>
<person>
<sex>female</sex>
<firstname>Anna</firstname>
<lastname>Smith</lastname>
</person>
在第一个例子中,sex是一个属性。在第二个例子中,sex则是一个子元素。两个例子均可提供相同的信息。
没有规则可以告诉我们什么时候该使用属性,而什么时候该使用子元素。在XML中,我们应该尽量避免使用属性。
因使用属性而引起的一些问题:
属性无法包含多个值(子元素可以)
属性不易扩展(为未来的变化)
属性无法描述结构(子元素可以)
属性更难被编程代码处理
不易通过某个DTD对属性值进行测试 - DTD用来定义XML文档的合法元素
如果您使用属性作为数据的容器,那么就会造就难以阅读和维护的文档。请尽量使用元素来描述数据。而仅仅使用属性来提供与数据无关的信息。
我们应该坚持这样的理念:元数据(有关数据的数据)应当存储为属性,而数据本身应当存储为元素。
XML的详细教程在以下网站上:
http://www.w3school.com.cn/xml/index.asp