<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
            xmlns="http://www.netdimensions.com/2005/10/users"
            targetNamespace="http://www.netdimensions.com/2005/10/users"
            elementFormDefault="qualified">

  <xsd:element name="users">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element name="user" type="user" minOccurs="0" maxOccurs="unbounded"/>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>

  <xsd:complexType name="user">
    <xsd:sequence>
      <xsd:element name="id" type="xsd:ID"/>
      <xsd:element name="familyName" type="xsd:string"/>
      <xsd:element name="givenName" type="xsd:string"/>
      <xsd:element name="otherName" type="xsd:string"/>
      <xsd:element name="gender" type="gender" minOccurs="0"/>
      <xsd:element name="email" type="xsd:string"/>
      <xsd:element name="locale" type="xsd:string"/>
      <xsd:element name="role" type="role"/>
      <xsd:element name="employeeNumber" type="xsd:string"/>
      <xsd:element name="organization" type="organization" minOccurs="0" maxOccurs="unbounded"/>
      <xsd:element name="attribute" type="attribute" minOccurs="0" maxOccurs="unbounded"/>
    </xsd:sequence>
  </xsd:complexType>

  <xsd:simpleType name="gender">
    <xsd:restriction base="xsd:NCName">
      <xsd:enumeration value="female"/>
      <xsd:enumeration value="male"/>
    </xsd:restriction>
  </xsd:simpleType>

  <xsd:complexType name="role">
    <xsd:sequence>
      <xsd:element name="id" type="xsd:string"/>
      <xsd:element name="name" type="xsd:string"/>
    </xsd:sequence>
  </xsd:complexType>

  <xsd:complexType name="organization">
    <xsd:sequence>
      <xsd:element name="id" type="xsd:string"/>
      <xsd:element name="name" type="xsd:string"/>
    </xsd:sequence>
  </xsd:complexType>

  <xsd:complexType name="attribute">
    <xsd:sequence>
      <xsd:element name="code" type="xsd:string"/>
      <xsd:element name="description" type="xsd:string"/>
    </xsd:sequence>
  </xsd:complexType>

</xsd:schema>
