Given an XML layout like this, I\'m trying to create a XSD schema to validate it.
Update: In XSD 1.1m some of the constraints on all
-groups have been lifted. See the answers here and here.
Not a simple one but seems doable. Difficult part here is that Schema definitions must be deterministic. Approach I used was to visualize the problem by drawing a finite state automata of it and then to write a regular expression that corresponded that automata. It is not at all as complicated as it might sound. Still, using some other validation system would have likely provided simpler answer.
I have done some testing but missing out some special cases is easy. Please comment if you spot an error.
...and here is the code: