我正在创建一个应用程序,它将在XML文件中存储一个分层的项目集合,我想知道用XML存储集合的行业标准。 以下哪两种格式是首选? (如果还有其他选项我没看到,请告知。)

选项A.

<School>
    <Student Name="Jack" />
    <Student Name="Jill" />
    <Class Name="English 101" />
    <Class Name="Math 101" />
</School>

选项B.

<School>
    <Students>
        <Student Name="Jack" />
        <Student Name="Jill" />
    </Students>
    <Classes>
        <Class Name="English 101" />
        <Class Name="Math 101" />
    </Classes>
</School>

===============>>#1 票数:4 已采纳

我不是XML专家,但我觉得选项B更具人性化,而且我认为它与机器可读性一样。我相信XML的设计既是人类又是机器可读的,所以我会选择Option B我自己。


在瑞安法利的帖子之后我才意识到其他事情。 如果学生或课程部分变得太大而且必须移动到另一个XML文件,那么复制节点并使用选项B从该节点创建新的XML文件似乎更容易。

===============>>#2 票数:4

绝对 - 选项B.

我不会在XML中混合学生和类,就像我不会在数据库中的同一个表中混合学生和类一样。

===============>>#3 票数:2

选项B ,绝对。 当存在类似项的逻辑分组时,它应该具有父项。 这样,我的解析器将不必逐步检查所有500个学生记录,以查看是否混合了类记录。

===============>>#4 票数:2

使用选项B的另一个令人信服的理由是错误检查。 如果在XML应用程序外修改原始文件,或者未应用XSD架构,则可能存在学生和班级数量不均匀的情况。

至少如果您将学生和班级组合在一起,您将能够轻松地判断每条记录是否完​​整,与任何其他记录无关。

  ask by Joseph Sturtevant translate from so

未解决问题?本站智能推荐: