> I think the simplest solution will be to say that <key> and <keyRef> don't
> match empty strings even if the included pattern can match an empty string,
"" (the string of length 0) is not the only one. To be precise, "empty
string" is a string that consists of #x20,#xD,#xA.
Because patterns like
<element name="foo">
<choice>
<empty/>
<key>
<data type="string">
</key>
</choice>
</element>
and an instance <foo> &xD; </foo> is still ambiguous.
regards,
--
Kohsuke KAWAGUCHI +1 650 786 0721
Sun Microsystems