xsd:key和xsd:unique之间的区别

Joe*_*oep 11 xml xsd

使用xsd:unique和xsd:key有什么区别?

Bru*_*ert 11

xsd:unique不需要为选择器存在该字段.如果该字段存在,则其值应该是唯一的.

xsd:key要求所有选择器结果都存在该字段.选择器中的每个元素都应该有一个键.

请注意,xsd:keyref不是xsd:key的要求,xsd:key可以与任何xsd:keyref一起使用.


Joe*_*oep 5

我找到了自己的答案:

这一切都与基数有关:

xsd:key用于(0..N)和(1..1)多重性.xsd:unique用于可选(0..1)多重性.这也是为什么xsd:unique中的选定字段可以为nill的原因.

我的回答来源:http: //www.xml.com/lpt/a/987