<?xml version="1.0"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
	targetNamespace="urn:test:foo"
	xmlns:foo="urn:test:foo">

	<!-- Substitution group heads. -->
	<xsd:element name="gh-A" abstract="true"/>
	<xsd:element name="gh-B" abstract="true"/>

	<!-- Substitution group members. -->
	<xsd:element name="gm-A-1" substitutionGroup="foo:gh-A"/>
	<xsd:element name="gm-A-2" substitutionGroup="foo:gh-A"/>

	<xsd:element name="gm-B-1" substitutionGroup="foo:gh-B"/>
	<xsd:element name="gm-B-2" substitutionGroup="foo:gh-B"/>

	<xsd:element name="foo">
		<xsd:complexType>
			<xsd:all>
				<xsd:element ref="foo:gh-A"/>
				<xsd:element ref="foo:gh-B"/>
			</xsd:all>
		</xsd:complexType>
	</xsd:element>

</xsd:schema>