<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://iperity.com/compass"
	xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
	xmlns="http://iperity.com/compass" xmlns:jxb="http://java.sun.com/xml/ns/jaxb"
	jxb:version="1.0">

	<!-- Requests -->
	<xs:simpleType name="requestType">
		<xs:restriction base="xs:string">
			<xs:enumeration value="GET" />
			<xs:enumeration value="GET_COMPANY" />
		</xs:restriction>
	</xs:simpleType>

	<xs:element name="request" type="request">
	</xs:element>

	<xs:complexType name="request">
		<xs:attribute name="type" type="xs:string" use="required" />
		<xs:attribute name="company" type="xs:string" use="optional" />
	</xs:complexType>

	<xs:complexType name="getRequest">
		<xs:complexContent>
			<xs:extension base="request">
				<xs:sequence>
					<xs:element type="filter" name="filter" />
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>

	<xs:simpleType name="filterType">
		<xs:restriction base="xs:string">
			<xs:enumeration value="company" />
			<xs:enumeration value="user" />
			<xs:enumeration value="queue" />
			<xs:enumeration value="call" />
			<xs:enumeration value="callpoint" />
		</xs:restriction>
	</xs:simpleType>

	<xs:element name="filter" type="filter">
	</xs:element>

	<xs:complexType name="filter">
		<xs:attribute name="type" type="xs:string" use="required" />
		<xs:attribute name="id" type="xs:string" use="optional" />
	</xs:complexType>

	<xs:complexType name="getResult">
		<xs:complexContent>
			<xs:extension base="result">
				<xs:sequence>
					<xs:any minOccurs="1" maxOccurs="unbounded" processContents="strict" />
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>

	<xs:element name="result" type="result" />

	<xs:complexType name="result">
	</xs:complexType>

	<xs:complexType name="anyResult">
		<xs:complexContent>
			<xs:extension base="result">
				<xs:sequence>
					<xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded" />
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>

	<xs:complexType name="getCompanyResult">
		<xs:complexContent>
			<xs:extension base="result">
				<xs:sequence>
					<xs:element name="id" type="xs:string" />
					<xs:element name="name" type="xs:string" />
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>

</xs:schema>
