Можно использовать комбинацию xs:group и xs:choice.
Пример:
XSD
<xs:element name="masters" type="masters-type">
<xs:complexType name="masters-type">
<xs:sequence>
<xs:group ref="content" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:group name="content">
<xs:choice>
<xs:element name="master">
<xs:complexType mixed="true">
<xs:attribute name="id" type="xs:ID"/>
</xs:complexType>
</xs:element>
<xs:element name="noise" type="xs:string"/>
</xs:choice>
</xs:group>
Определенные внутри группы элементы <master/> и <noise/> могут встречаться в любом количестве и в любом порядке
Вот такой фрагмент XML будет валидным:
<master id="id1">мастер-1</master>
<noise>бла-бла-бла</noise>
<master id="id2">мастер-2</master>
<master id="id3">мастер-3</master>
<noise>бла-бла-бла</noise>