Lists contain at least one item; selection sets are defined as lists; yet an item can be removed from a selection set and it remains valid.
- On the one hand, lists are 1+ items:
A subscript suffix “Symbollist” is shorthand for a list of one or more of that symbol, represented as an additional recursive production..
- SelectionSet is defined as { Selection List }
Fields are always optional within the context of a selection set, a field may be omitted and the selection set is still valid.
I assume that the last bullet point is wrong and the intent is to not support empty selection sets. Is that the case?