<!-- In my view, this isn't an error because (A? | B) is inherently
optional, and therefore is treated as if it were (A? | B)?
[414:10-12].  Excluding A has the same effect as if the group were
(B)?, and there if therefore no change to the required or optional
status of the group. -->
<!doctype doc [
<!element doc - - (a? | b) -(a)>
<!element (a | b) - - (#pcdata)>
]>
<doc>
</doc>
