属性vs子节点

| 我是XML新手,想知道何时应该使用Attribute, 以及何时应该使用Child节点。 我的猜测是,如果我想像索引一样使用该字段,则应该使用属性。 例如,我目前(出于了解XML的目的)正在制作一个程序来保存日志,因此我有两个主要字段“ datetime”和“ text” 我认为也许“ datetime”应该是一个属性     
已邀请:
        属性的主要问题是每个元素都是唯一的。这意味着不能多次使用相同的名称声明属性,因此通常最好使用它们来存储不应有多个值的内容。同样由于语法和它们在element标签中声明的事实,我发现将它们用于与该元素密切相关的事物(例如id)很有用。 另一个经验法则是,我不会对具有ver long值的东西使用属性,因为它会使读取混乱。就像您的日志文本一样。 对于您的特定问题,我将为时间戳使用一个属性,并将文本放置在element标签之间。 关于XML的另一条建议,特别是因为您刚刚开始使用XML提供的XML对象来创建和编写XML(如果尚未开始的话)。然后,将XML手动写入字符串可能会更冗长,但可以避免您在中间意外添加非法字符。 例如,如果您是带有<的日志记录文本,则创建类似以下内容: <根>          这会破坏XML <就在那里。    <根> 此XML文件将被破坏。 XML对象将自动转义非法值,看起来像 <根>          这会破坏XML&lt;在那里。    我希望这个帮助能祝你好运。     
        属性不能具有CData(特殊字符),而节点可以具有。 因此,如果必须放置CData,则不能将其置于属性中。 这是我在做出决定时要考虑的主要问题。     

要回复问题请先登录注册