让我们说我想建一个家谱。所以我有:
<family name="Smith">
<member name="Tom">
<children> ... </children>
</member>
<member name="John">
<father> ... </father>
</member>
</family>
汤姆是约翰的父亲。
所以我的问题是:
father
将与解散后的汤姆相同?json
中表达相同内容的等效方式是什么?请注意,在此处的特定示例中,name
不应作为密钥/ ID,因为一个家庭拥有多个共享相同名称的人是非常正常的:
<family name="Bush">
<member name="George">
<children> ... </children>
</member>
<member name="George">
<father> ... </father>
</member>
</family>
我想知道是否有办法直接标记元素。
答案 0 :(得分:1)
您可以使用@XmlID
&amp;这个用例@XmlIDREF
。 @XmlID
注释将属性标记为关键(您需要一个具有唯一值的属性,即name
并不是唯一的,因为在您的示例中它看起来像布什家族中的那样父亲和儿子名叫乔治),@XmlIDREF
作为外键。每个对象也需要通过嵌套关系引用(在您的示例中,这可以通过members
上的Family
属性来完成。
了解更多信息
我在博客上写了更多关于此用例的内容: