- From: Michael Kay <mike@saxonica.com>
- Date: Wed, 12 Jan 2011 09:29:08 +0000
- To: "C. M. Sperberg-McQueen" <cmsmcq@blackmesatech.com>
- CC: "Henry S. Thompson" <ht@inf.ed.ac.uk>, bugzilla@jessica.w3.org, www-xml-schema-comments@w3.org
> Thanks for the clarification. I think 'exactly' does no work in the sentence,
> so I don't think it's a loss. (As a test: what would a node set look like if it
> had inexactly one node?)
In 1.0 the text was "a node-set with exactly one member, which must have
a simple type. "
In 1.1 the text is "that only contains ˇskippedˇ nodes and at most one
node whose ˇgoverningˇ type definition is either a simple type
definition or a complex type definition with {variety} simple.
So the difference is that 1.1 allows a node-set containing (one node
with a simple type plus three nodes with a complex type), whereas 1.0
didn't. That change was surely not intended.
I would suggest rephrasing clause 3 along the following lines:
3 For each node N in the ˇtarget node setˇ and for each field F in
{fields} all the following are true:
3.1 F.{expression}, evaluated with N as the context node (as defined in
XPath Evaluation (§3.13.4.2)), evaluates to a sequence of nodes S
3.2 Let S' be the subset of S after removing all ˇskippedˇ nodes
3.3 S' contains at most one node: call it G
3.4 G, if it exists, is an element node or an attribute node
3.4 G, if it exists, has a ˇgoverningˇ type definition that is either a
simple type definition or a complex type definition with {variety} simple.
3.5 Let K(N,F) be the [schema actual value] of G if it exists, or
.absent. if G does not exist
3.6 [Definition:] Call the sequence of values K(N,F) for the {fields}
in order the key-sequence of N.
Michael Kay
Saxonica
Received on Wednesday, 12 January 2011 09:29:41 UTC