2

我对人们如何使用此功能感兴趣:什么领域,什么关系(如果调查问题不合适,请道歉)。

XML 自然地使用包含来表示树;但它也可以表示图,使用引用 ID 的 IDREF:许多元素可以引用同一个元素(多引用);嵌套元素可以引用祖先(循环)。使用 ID 和 IDREF 也可能很方便,因此 XML 结构可以匹配另一种存储格式,例如数据库外键。

你用 ID/IDREF 代表什么

编辑还包括<key>/<keyref>来自 XML Schema。

4

2 回答 2

2

我主要使用 XML 进行发布,而不是存储数据,因此我使用 ID/IDREF 进行链接和交叉引用(其中 IDREF 元素的内容将从具有 ID 的元素中提取)。

于 2009-07-09T06:46:18.713 回答
2

我使用 XML 进行序列化,因此我使用 ID/IDREF 来打破循环并防止重复序列化。我还考虑过使用它来“预先声明”对附加到我的图表但未作为其中一部分序列化的外部对象的引用。

这些方法的问题在于很难哄骗序列化框架(即 JAX-B)在运行时动态确定对象是否应该就地序列化或作为参考。

于 2009-07-09T12:54:01.003 回答