1<?xml version="1.0" encoding="ISO-8859-1"?> 2<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> 3 4 <xs:element name="family" type="family_type"> 5 <xs:key name="sibling_key"> 6 <xs:selector xpath="siblings/sibling"/> 7 <xs:field xpath="@name"/> 8 </xs:key> 9 <xs:keyref name="sibling_key_ref" refer="sibling_key"> 10 <xs:selector xpath="sisters/sister"/> 11 <xs:field xpath="@name"/> 12 </xs:keyref> 13 </xs:element> 14 <xs:complexType name="family_type"> 15 <xs:sequence> 16 <xs:element name="siblings" type="siblings_type" /> 17 <xs:element name="sisters" type="sisters_type" /> 18 </xs:sequence> 19 <xs:attribute name="name" type="xs:string"/> 20 </xs:complexType> 21 <xs:complexType name="siblings_type"> 22 <xs:sequence> 23 <xs:element name="sibling" type="sibling_type" minOccurs="0" 24maxOccurs="unbounded" /> 25 </xs:sequence> 26 </xs:complexType> 27 <xs:complexType name="sisters_type"> 28 <xs:sequence> 29 <xs:element name="sister" type="sister_type" minOccurs="0" 30maxOccurs="unbounded" /> 31 </xs:sequence> 32 </xs:complexType> 33 <xs:complexType name="sibling_type"> 34 <xs:attribute name="name" type="xs:string"/> 35 </xs:complexType> 36 <xs:complexType name="sister_type"> 37 <xs:attribute name="name" type="xs:string"/> 38 </xs:complexType> 39</xs:schema> 40