
<xs:schema xmlns:tns="http://schemas.bioid.com/2012/02/BWSMessages" xmlns:xs="http://www.w3.org/2001/XMLSchema" id="BWSMessages" targetNamespace="http://schemas.bioid.com/2012/02/BWSMessages" elementFormDefault="qualified">
<xs:annotation>
<xs:documentation xml:lang="en">Schema for messages returned by most of the BWS operations.</xs:documentation>
</xs:annotation>
<xs:simpleType name="trait">
<xs:restriction base="xs:string">
<xs:enumeration value="Face"/>
<xs:enumeration value="Voice"/>
<xs:enumeration value="Periocular"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="cartesian">
<xs:attribute name="X" type="xs:float" use="required"/>
<xs:attribute name="Y" type="xs:float" use="required"/>
</xs:complexType>
<xs:complexType name="tags">
<xs:sequence>
<xs:element name="RightEye" minOccurs="0" maxOccurs="1" type="tns:cartesian"/>
<xs:element name="LeftEye" minOccurs="0" maxOccurs="1" type="tns:cartesian"/>
<xs:element name="HeadMovementDirection" minOccurs="0" maxOccurs="1" type="xs:integer"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="eyecoordinates">
<xs:sequence>
<xs:element name="RightEye" minOccurs="0" maxOccurs="1" type="tns:cartesian"/>
<xs:element name="LeftEye" minOccurs="0" maxOccurs="1" type="tns:cartesian"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="statistics">
<xs:sequence>
<xs:element name="ProcessingTime" minOccurs="0" maxOccurs="1" type="xs:time"/>
<xs:element name="TotalServiceTime" minOccurs="0" maxOccurs="1" type="xs:time"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="error">
<xs:sequence>
<xs:element name="Code" minOccurs="1" maxOccurs="1" type="xs:string"/>
<xs:element name="Message" minOccurs="1" maxOccurs="1" type="xs:string"/>
<xs:element name="Details" minOccurs="0" maxOccurs="1" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="sample">
<xs:sequence>
<xs:element name="Errors" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="Error" minOccurs="0" maxOccurs="unbounded" type="tns:error"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Tags" minOccurs="0" maxOccurs="1" type="tns:tags"/>
<xs:element name="FoundFaces" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="EyeCoordinates" minOccurs="0" maxOccurs="unbounded" type="tns:eyecoordinates"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="Trait" use="required" type="tns:trait"/>
<xs:attribute name="Suitable" use="required" type="xs:boolean"/>
</xs:complexType>
<xs:element name="OperationResults">
<xs:complexType>
<xs:sequence>
<xs:element name="JobID" minOccurs="1" maxOccurs="1" type="xs:string"/>
<xs:element name="Command" minOccurs="1" maxOccurs="1" type="xs:string"/>
<xs:element name="Succeeded" minOccurs="1" maxOccurs="1" type="xs:boolean"/>
<xs:element name="Face" minOccurs="0" maxOccurs="1" type="xs:boolean"/>
<xs:element name="Periocular" minOccurs="0" maxOccurs="1" type="xs:boolean"/>
<xs:element name="Voice" minOccurs="0" maxOccurs="1" type="xs:boolean"/>
<xs:element name="Samples" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="Sample" minOccurs="0" maxOccurs="unbounded" type="tns:sample"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Errors" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="Error" minOccurs="0" maxOccurs="unbounded" type="tns:error"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Statistics" minOccurs="0" maxOccurs="1" type="tns:statistics"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>