我开始学习一点xml和xslt,我读了 w3c W3Schools,他们建议你使用元素而不是属性。什么是你的练习,为什么你不想要属性 -
你真的想要它们吗?
答案 0 :(得分:4)
属性是元素包含的数据的规范。 例如:标题是元素,标题的语言是属性。
<title lang="en">A simple title</title>
永远不需要渲染属性。它们应包含有关数据的其他信息,而不是数据本身。
答案 1 :(得分:2)
属性的主要技术限制:
属性名称在其装饰元素的范围内是唯一的。
属性顺序不重要; XML处理器不需要按照它们在文档中出现的物理顺序处理元素的属性。
属性值必须是文本内容。它们不能包含元素,注释或处理指令。它们不能包含CDATA。它们不能包含未转义的标记字符。
这些限制非常严格地控制它的含义,并且不适合使用属性。使用属性来建模一个地图或字典,其键是XML名称,其值可以合理地表示为字符串:good。使用属性来序列化处理顺序很重要的数据:不好。 (我正在看着你,XAML。)在一个属性值中存储序列化的XML:可能,但通常表明你做错了。
元素用于数据和属性的元素是元数据的回归,这是对XML未用作通用序列化格式的回归。它被广泛忽略,主要是因为在很多情况下,简洁地表示名称/值对的能力比数据和元数据之间的分离更为明显。