[xquery-talk] SequenceType matching in For/Some/Every expressions
martin at x-hive.com
Wed Sep 28 17:00:39 PDT 2005
I think there is a (somewhat minor) bug in the XQuery specification
about sequence type matching. The grammar states:
 ForClause ::= <"for" "$"> VarName TypeDeclaration? ...
 TypeDeclaration ::= "as" SequenceType
 SequenceType ::= (ItemType OccurrenceIndicator?)
| <"empty-sequence" "(" ")">
and similar rules for Some, Every and Let. I think these rules should
rather reference/descend directly into ItemType as the following
statements do not make any sense to me (same for some&every):
for $x as xs:string* in ...
for $x as xs:string+ in ...
for $x as xs:string? in ...
for $x as empty-sequence() in ...
The only thing that adds any semantic meaning is the empty-sequence()
statement which I would interpret as "give an error if this yields
something". But it's really cryptic and there are better ways to do
Am I missing something or is this an issue? The description for for/let
clauses doesn't mention occurrences at all.
More information about the talk