<?xml version="1.0" encoding="UTF-8"?>
<grammar xmlns="http://relaxng.org/ns/structure/1.0"
    xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
    datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
    <define name="anything">
        <zeroOrMore>
            <choice>
                <attribute>
                    <anyName/>
                </attribute>
                <element>
                    <!-- why does this cause conflicting ID-types for attribute collection of memberof element? -->
                    <anyName/>
                    <ref name="anything"/>
                </element>
            </choice>
        </zeroOrMore>
    </define>
    <start>
        <element name="request">
            <ref name="anything"/>
        </element>
    </start>
</grammar>
