<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd='http://www.w3.org/2001/XMLSchema'>

 <xsd:element name="personnel">
  <xsd:complexType>
   <xsd:sequence>
     <xsd:element ref="person" minOccurs='1' maxOccurs='unbounded'/>
   </xsd:sequence>
  </xsd:complexType>
 </xsd:element>

 <xsd:element name="person">
  <xsd:complexType>
   <xsd:sequence>
     <xsd:element ref="name"/>
     <xsd:element ref="email" minOccurs='0' maxOccurs='unbounded'/>
     <xsd:element ref="url"   minOccurs='0' maxOccurs='unbounded'/>
     <xsd:element ref="link"  minOccurs='0' maxOccurs='1'/>
     <xsd:element name="note" type="xsd:string"/>
     <xsd:element name="salary" type="xsd:int"/>
   </xsd:sequence>
   <xsd:attribute name="id"  type="ID" use='required'/>

   <xsd:attribute name="contr" xsd:default="false">
    <xsd:simpleType>
     <xsd:restriction base="xsd:string">
       <xsd:enumeration value="true"/>
       <xsd:enumeration value="false"/>
     </xsd:restriction>
    </xsd:simpleType>
   </xsd:attribute>

  <xsd:attribute name="age" type="xsd:integer"/>
  <xsd:attribute name="x" type="xsd:int"/>
  <xsd:attribute name="d" type="xsd:date"/>
  <xsd:attribute name="dt" type="xsd:dateTime"/>
  </xsd:complexType>
 </xsd:element>

 <xsd:element name="name">
  <xsd:complexType>
   <xsd:all>
    <xsd:element ref="family"/>
    <xsd:element ref="given"/>
   </xsd:all>
  </xsd:complexType>
 </xsd:element>

 <xsd:element name="family" type='xsd:string'/>

 <xsd:element name="given" type='xsd:string'/>

 <xsd:element name="email" type='xsd:string'/>

 <xsd:element name="url">
  <xsd:complexType>
   <xsd:attribute name="href" type="xsd:string" xsd:default="http://"/>
  </xsd:complexType>
 </xsd:element>

 <xsd:element name="link">
  <xsd:complexType>
   <xsd:attribute name="manager" type="IDREF"/>
   <xsd:attribute name="subordinates" type="IDREFS"/>
  </xsd:complexType>
 </xsd:element>

 <xsd:notation name='gif' public='-//APP/Photoshop/4.0' system='photoshop.exe'/>

</xsd:schema>
