Unique constraint.

Hi,

Proposed change for the definition is:


3.11.4 Identity-constraint Definition Validation Rules

...
 
4.1.1 The  <http://www.w3.org/TR/xmlschema-1/#key-tns> ·target node set· is a subset of the   <http://www.w3.org/TR/xmlschema-1/#key-qns> ·qualified node set·, that is, every member of the  <http://www.w3.org/TR/xmlschema-1/#key-tns> ·target node set· is also a member of the  <http://www.w3.org/TR/xmlschema-1/#key-qns> ·qualified node set· however not every member of   <http://www.w3.org/TR/xmlschema-1/#key-qns> ·taget node set· is a member of  <http://www.w3.org/TR/xmlschema-1/#key-qns> ·qualified node set·.
...


Why this is important?

Xerces parser has a bug 18405, which has not been resolved since 2003.
The reason for not fixing is :
" ... I (and some others I've asked) think
that the spec seems open to interpretation here; so I'm marking this bug
invalid for now.  I'd encourage you to pose a question to the Schema working
group via their comments list; if you get a response that demonstrates that
your reading is correct, please reopen this bug with the appropriate text and
I'll try and fix it when I get a chance."

The below is the comment from Xerces parser BUG 18405 report:
================================================
"3 For each node in the
·target node set·
all of the
{fields},
with that node as the context node, evaluate to either an empty node-set or a
node-set with exactly one member, which must have a simple type."

The target node set is the set of nodes on which the selector is matched.  Note
that this condition must hold for *any* identity constraint; only in bullet 4
of the tableau are the differences between key and unique described. 
Therefore, it seems clear that, if a selector matches, then either all of the
fields must match or none of them must match; even for xsd:unique, you can't
have some fields matching.
=========================================================


Thanks,
Eugene





This e-mail and any attachments may contain confidential information. Any
distributing, copying or reliance upon the contents of this e-mail by anyone other
than the intended recipient is strictly prohibited. If you have received this e-mail
accidentally, please delete it and notify the sender. Although this message has been
screened for viruses, we cannot guarantee that our virus scanner will detect all
viruses and take no responsibility for any damage or loss that may be caused by its
contents.

Received on Monday, 5 December 2005 23:08:10 UTC