<?xml version="1.0" encoding="UTF-8"?>
<definitions
    xmlns="http://schemas.xmlsoap.org/wsdl/"
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    xmlns:tns=      "http://requester.mturk.amazonaws.com/doc/2007-06-21"
    targetNamespace="http://requester.mturk.amazonaws.com/doc/2007-06-21">

  <types>
	<xs:schema     
	    xmlns:xs="http://www.w3.org/2001/XMLSchema"
	    targetNamespace="http://requester.mturk.amazonaws.com/doc/2007-06-21"
	    xmlns:tns="http://requester.mturk.amazonaws.com/doc/2007-06-21"
	    elementFormDefault="qualified">
	    
	    <!-- GENERAL-->
	
	    <xs:complexType name="Claim">
	        <xs:sequence>
	            <xs:element name="Type" type="xs:string"/>
	            <xs:element name="Body" type="xs:string"/>
	        </xs:sequence>
	    </xs:complexType>
	    
	    <xs:complexType name="Price">
	        <xs:sequence>
	            <xs:element name="Amount" type="xs:decimal"/>
	            <xs:element name="CurrencyCode" type="xs:string"/>
	            <xs:element name="FormattedPrice" type="xs:string" minOccurs="0"/>
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:simpleType name="SortDirection">
	        <xs:restriction base="xs:string">
	            <xs:enumeration value="Ascending" />
	            <xs:enumeration value="Descending" />
	        </xs:restriction>
	    </xs:simpleType>
	
	    <xs:complexType name="QualificationRequirement">
	        <xs:sequence>
	            <xs:element name="QualificationTypeId" type="xs:string" />
	            <xs:element name="Comparator" type="tns:Comparator" />
	            <xs:element name="IntegerValue" type="xs:int" minOccurs="0" />
	            <xs:element name="LocaleValue" type="tns:Locale" minOccurs="0" />
	            <xs:element name="RequiredToPreview" type="xs:boolean" minOccurs="0" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:simpleType name="Comparator">
	        <xs:restriction base="xs:string">
	            <xs:enumeration value="LessThan" />
	            <xs:enumeration value="LessThanOrEqualTo" />
	            <xs:enumeration value="GreaterThan" />
	            <xs:enumeration value="GreaterThanOrEqualTo" />
	            <xs:enumeration value="EqualTo" />
	            <xs:enumeration value="NotEqualTo" />
	            <xs:enumeration value="Exists" />
	        </xs:restriction>
	    </xs:simpleType>
	
	    <xs:complexType name="Locale">
	        <xs:sequence>
	            <xs:element name="Country" type="xs:string" minOccurs="0" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <!-- HIT -->
	
	    <!-- Event Notification -->
	
	    <xs:simpleType name="EventType">
	        <xs:restriction base="xs:string">
	            <xs:enumeration value="AssignmentAccepted" />
	            <xs:enumeration value="AssignmentAbandoned" />
	            <xs:enumeration value="AssignmentReturned" />
	            <xs:enumeration value="AssignmentSubmitted" />
	            <xs:enumeration value="AssignmentAutoApproved" />
	            <xs:enumeration value="HITReviewable" />
	            <xs:enumeration value="HITExpired" />
	        </xs:restriction>
	    </xs:simpleType>
	
	    <xs:simpleType name="NotificationTransport">
	        <xs:restriction base="xs:string">
	            <xs:enumeration value="SOAP" />
	            <xs:enumeration value="REST" />
	            <xs:enumeration value="Email" />
	        </xs:restriction>
	    </xs:simpleType>
	
	    <xs:complexType name="NotificationSpecification">
	        <xs:sequence>
	            <xs:element name="Destination" type="xs:string" />
	            <xs:element name="Transport" type="tns:NotificationTransport" />
	            <xs:element name="Version" type="xs:string" />
	            <xs:element name="EventType" type="tns:EventType" minOccurs="0" maxOccurs="unbounded" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <!-- HIT helper structures -->
	    
	    <xs:simpleType name="HITStatus">
	        <xs:restriction base="xs:string">
	            <xs:enumeration value="Assignable" />
	            <xs:enumeration value="Unassignable" />
	            <xs:enumeration value="Reviewable" />
	            <xs:enumeration value="Reviewing" />
	            <xs:enumeration value="Disposed" />
	        </xs:restriction>
	    </xs:simpleType>
	
	    <xs:simpleType name="HITReviewStatus">
	        <xs:restriction base="xs:string">
	            <xs:enumeration value="NotReviewed" />
	            <xs:enumeration value="MarkedForReview" />
	            <xs:enumeration value="ReviewedAppropriate" />
	            <xs:enumeration value="ReviewedInappropriate" />
	        </xs:restriction>
	    </xs:simpleType>
	
	    <xs:complexType name="HIT">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0" />
	            <xs:element name="HITId" type="xs:string" minOccurs="0" />
	            <xs:element name="HITTypeId" type="xs:string" minOccurs="0" />
	            <xs:element name="CreationTime" type="xs:dateTime" minOccurs="0" />
	            <xs:element name="Title" type="xs:string" minOccurs="0" />
	            <xs:element name="Description" type="xs:string" minOccurs="0" />
	            <xs:element name="Question" type="xs:string" minOccurs="0" />
	            <xs:element name="Keywords" type="xs:string"  minOccurs="0" />
	            <xs:element name="HITStatus" type="tns:HITStatus" minOccurs="0" />
	            <xs:element name="MaxAssignments" type="xs:int" minOccurs="0" />
	            <xs:element name="Reward" type="tns:Price" minOccurs="0" />
	            <xs:element name="AutoApprovalDelayInSeconds" type="xs:long" minOccurs="0" />
	            <xs:element name="Expiration" type="xs:dateTime" minOccurs="0" />
	            <xs:element name="AssignmentDurationInSeconds" type="xs:long" minOccurs="0" />
	            <xs:element name="NumberOfSimilarHITs" type="xs:int" minOccurs="0" />
	            <xs:element name="RequesterAnnotation" type="xs:string" minOccurs="0" />
	            <xs:element name="QualificationRequirement" type="tns:QualificationRequirement" minOccurs="0" maxOccurs="unbounded" />
	            <xs:element name="HITReviewStatus" type="tns:HITReviewStatus" minOccurs="0" />
	            <xs:element name="NumberOfAssignmentsPending" type="xs:int" minOccurs="0" />
	            <xs:element name="NumberOfAssignmentsAvailable" type="xs:int" minOccurs="0" />
	            <xs:element name="NumberOfAssignmentsCompleted" type="xs:int" minOccurs="0" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <!-- Create HIT -->
	
	    <xs:element name="CreateHIT">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request" type="tns:CreateHITRequest" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="CreateHITRequest">
	        <xs:sequence>
	            <xs:element name="HITTypeId" type="xs:string" minOccurs="0" />
	            <xs:element name="MaxAssignments" type="xs:int" minOccurs="0" />
	            <xs:element name="AutoApprovalDelayInSeconds" type="xs:long" minOccurs="0" />
	            <xs:element name="LifetimeInSeconds" type="xs:long" />
	            <xs:element name="AssignmentDurationInSeconds" type="xs:long" minOccurs="0" />
	            <xs:element name="Reward" type="tns:Price" minOccurs="0" />
	            <xs:element name="Title" type="xs:string" minOccurs="0" />
	            <xs:element name="Keywords" type="xs:string" minOccurs="0" />
	            <xs:element name="Description" type="xs:string" minOccurs="0" />
	            <xs:element name="Question" type="xs:string" />
	            <xs:element name="RequesterAnnotation" type="xs:string" minOccurs="0" />
	            <xs:element name="QualificationRequirement" type="tns:QualificationRequirement" minOccurs="0" maxOccurs="unbounded" />
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="CreateHITResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0" />
	                <xs:element name="HIT" type="tns:HIT" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <!-- Register HITType -->
	
	    <xs:element name="RegisterHITType">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request" type="tns:RegisterHITTypeRequest" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="RegisterHITTypeRequest">
	        <xs:sequence>
	            <xs:element name="AutoApprovalDelayInSeconds" type="xs:long" minOccurs="0"/>
	            <xs:element name="AssignmentDurationInSeconds" type="xs:long" />
	            <xs:element name="Reward" type="tns:Price" />
	            <xs:element name="Title" type="xs:string" />
	            <xs:element name="Keywords" type="xs:string"  minOccurs="0" />
	            <xs:element name="Description" type="xs:string" />
	            <xs:element name="QualificationRequirement" type="tns:QualificationRequirement" minOccurs="0" maxOccurs="unbounded" />
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="RegisterHITTypeResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0" />
	                <xs:element name="RegisterHITTypeResult" type="tns:RegisterHITTypeResult" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="RegisterHITTypeResult">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0" />
	            <xs:element name="HITTypeId" type="xs:string" minOccurs="0" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <!-- Update HITType -->
	    
	    <xs:element name="SetHITTypeNotification">
		    <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request" type="tns:SetHITTypeNotificationRequest" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
		</xs:element>
	
		<xs:complexType name="SetHITTypeNotificationRequest">
	    	<xs:sequence>
	           <xs:element name="HITTypeId" type="xs:string" />
	           <xs:element name="Notification" type="tns:NotificationSpecification" minOccurs="0" />
	           <xs:element name="Active" type="xs:boolean" minOccurs="0" />
			</xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="SetHITTypeNotificationResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0" />
	                <xs:element name="SetHITTypeNotificationResult" type="tns:SetHITTypeNotificationResult" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="SetHITTypeNotificationResult">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <!-- Send Test Event Notification -->
	    
	    <xs:element name="SendTestEventNotification">
		        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request" type="tns:SendTestEventNotificationRequest" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
		</xs:element>
	
		<xs:complexType name="SendTestEventNotificationRequest">
			<xs:sequence>
	            <xs:element name="Notification" type="tns:NotificationSpecification" />
	            <xs:element name="TestEventType" type="tns:EventType" minOccurs="0" />
			</xs:sequence>
		</xs:complexType>
	
	    <xs:element name="SendTestEventNotificationResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0" />
	                <xs:element name="SendTestEventNotificationResult" type="tns:SendTestEventNotificationResult" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="SendTestEventNotificationResult">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <!-- Dispose reviewable HITs -->
	
	    <xs:element name="DisposeHIT">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request" type="tns:DisposeHITRequest" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="DisposeHITRequest">
	        <xs:sequence>
	            <xs:element name="HITId" type="xs:string" />
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="DisposeHITResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0" />
	                <xs:element name="DisposeHITResult" type="tns:DisposeHITResult" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="DisposeHITResult">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0" />
	        </xs:sequence>
	    </xs:complexType>
	
	
	    <!-- Disable HIT -->
	
	    <xs:element name="DisableHIT">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request" type="tns:DisableHITRequest" minOccurs="0"  maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="DisableHITRequest">
	        <xs:sequence>
	            <xs:element name="HITId" type="xs:string" />
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="DisableHITResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0" />
	                <xs:element name="DisableHITResult" type="tns:DisableHITResult" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="DisableHITResult">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <!-- Get HIT -->
	
	    <xs:element name="GetHIT">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0" />
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request" type="tns:GetHITRequest" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="GetHITRequest">
	        <xs:sequence>
	            <xs:element name="HITId" type="xs:string" />
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="GetHITResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0" />
	                <xs:element name="HIT" type="tns:HIT" minOccurs="0" maxOccurs="unbounded" />
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <!-- Get Reviewable HITs -->
	
	    <xs:simpleType name="ReviewableHITStatus">
	      <xs:restriction base="xs:string">
	        <xs:enumeration value="Reviewable"/>
	        <xs:enumeration value="Reviewing" />
	      </xs:restriction>
	    </xs:simpleType>
	
	    <xs:simpleType name="GetReviewableHITsSortProperty">
	        <xs:restriction base="xs:string">
	            <xs:enumeration value="Title" />
	            <xs:enumeration value="Reward" />
	            <xs:enumeration value="Expiration" />
	            <xs:enumeration value="CreationTime" />
	            <xs:enumeration value="Enumeration" />
	        </xs:restriction>
	    </xs:simpleType>
	
	    <xs:element name="GetReviewableHITs">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request" type="tns:GetReviewableHITsRequest" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="GetReviewableHITsRequest">
	        <xs:sequence>
	            <xs:element name="HITTypeId" type="xs:string" minOccurs="0" />
	            <xs:element name="Status" type="tns:ReviewableHITStatus" minOccurs="0" />
	            <xs:element name="SortDirection" type="tns:SortDirection" minOccurs="0"/>
	            <xs:element name="SortProperty" type="tns:GetReviewableHITsSortProperty" minOccurs="0"/>
	            <xs:element name="PageNumber" type="xs:int" minOccurs="0"/>
	            <xs:element name="PageSize" type="xs:int" minOccurs="0"/>
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="GetReviewableHITsResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0" />
	                <xs:element name="GetReviewableHITsResult" type="tns:GetReviewableHITsResult" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="GetReviewableHITsResult">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0" />
	            <xs:element name="PageNumber" type="xs:int" minOccurs="0" />
	            <xs:element name="NumResults" type="xs:int" minOccurs="0" />
	            <xs:element name="TotalNumResults" type="xs:int" minOccurs="0" />
	            <xs:element name="HIT" type="tns:HIT" minOccurs="0" maxOccurs="unbounded"/>
	        </xs:sequence>
	    </xs:complexType>
	
	    <!-- Get HITs For Qualification Type -->
	
	    <xs:element name="GetHITsForQualificationType">
		<xs:complexType>
		    <xs:sequence>
			<xs:element name="AWSAccessKeyId" type="xs:string" />
			<xs:element name="Timestamp" type="xs:dateTime" />
			<xs:element name="Signature" type="xs:string" />
			<xs:element name="Validate" type="xs:string" minOccurs="0"/>
			<xs:element name="Credential" type="xs:string" minOccurs="0" />
			<xs:element name="Request" type="tns:GetHITsForQualificationTypeRequest" minOccurs="0" maxOccurs="unbounded"/>
		    </xs:sequence>
		</xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="GetHITsForQualificationTypeRequest">
		<xs:sequence>
		    <xs:element name="QualificationTypeId" type="xs:string" />
		    <xs:element name="PageNumber" type="xs:int" minOccurs="0"/>
		    <xs:element name="PageSize" type="xs:int" minOccurs="0"/>
		    <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
		</xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="GetHITsForQualificationTypeResponse">
		<xs:complexType>
		    <xs:sequence>
			<xs:element ref="tns:OperationRequest" minOccurs="0" />
			<xs:element name="GetHITsForQualificationTypeResult" type="tns:GetHITsForQualificationTypeResult" minOccurs="0" maxOccurs="unbounded"/>
		    </xs:sequence>
		</xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="GetHITsForQualificationTypeResult">
		<xs:sequence>
		    <xs:element ref="tns:Request" minOccurs="0" />
		    <xs:element name="PageNumber" type="xs:int" minOccurs="0" />
		    <xs:element name="NumResults" type="xs:int" minOccurs="0" />
		    <xs:element name="TotalNumResults" type="xs:int" minOccurs="0" />
		    <xs:element name="HIT" type="tns:HIT" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	    </xs:complexType>
	
	   <!-- Get Qualifications For Qualification Type -->
	
	    <xs:element name="GetQualificationsForQualificationType">
		<xs:complexType>
		    <xs:sequence>
			<xs:element name="AWSAccessKeyId" type="xs:string" />
			<xs:element name="Timestamp" type="xs:dateTime" />
			<xs:element name="Signature" type="xs:string" />
			<xs:element name="Validate" type="xs:string" minOccurs="0"/>
			<xs:element name="Credential" type="xs:string" minOccurs="0" />
			<xs:element name="Request" type="tns:GetQualificationsForQualificationTypeRequest" minOccurs="0" maxOccurs="unbounded"/>
		    </xs:sequence>
		</xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="GetQualificationsForQualificationTypeRequest">
		<xs:sequence>
		    <xs:element name="QualificationTypeId" type="xs:string" />
	        <xs:element name="Status" type="tns:QualificationStatus" minOccurs="0" />
		    <xs:element name="PageNumber" type="xs:int" minOccurs="0"/>
		    <xs:element name="PageSize" type="xs:int" minOccurs="0"/>
		    <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
		</xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="GetQualificationsForQualificationTypeResponse">
		<xs:complexType>
		    <xs:sequence>
			<xs:element ref="tns:OperationRequest" minOccurs="0" />
			<xs:element name="GetQualificationsForQualificationTypeResult" type="tns:GetQualificationsForQualificationTypeResult" minOccurs="0" maxOccurs="unbounded"/>
		    </xs:sequence>
		</xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="GetQualificationsForQualificationTypeResult">
		<xs:sequence>
		    <xs:element ref="tns:Request" minOccurs="0" />
		    <xs:element name="PageNumber" type="xs:int" minOccurs="0" />
		    <xs:element name="NumResults" type="xs:int" minOccurs="0" />
		    <xs:element name="TotalNumResults" type="xs:int" minOccurs="0" />
		    <xs:element name="Qualification" type="tns:Qualification" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	    </xs:complexType>
	
	    <!-- SetHITAsReviewing -->
	
	    <xs:element name="SetHITAsReviewing">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request" type="tns:SetHITAsReviewingRequest" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="SetHITAsReviewingRequest">
	        <xs:sequence>
	            <xs:element name="HITId" type="xs:string" />
	            <xs:element name="Revert" type="xs:boolean" minOccurs="0" />
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="SetHITAsReviewingResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0" />
	                <xs:element name="SetHITAsReviewingResult" type="tns:SetHITAsReviewingResult" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="SetHITAsReviewingResult">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <!-- Extend HIT -->
	
	    <xs:element name="ExtendHIT">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request" type="tns:ExtendHITRequest" maxOccurs="unbounded"/>
	
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="ExtendHITRequest">
	        <xs:sequence>
	            <xs:element name="HITId" type="xs:string" />
	            <xs:element name="MaxAssignmentsIncrement" type="xs:int" minOccurs="0"/>
	            <xs:element name="ExpirationIncrementInSeconds" type="xs:long" minOccurs="0"/>
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="ExtendHITResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0" />
	                <xs:element name="ExtendHITResult" type="tns:ExtendHITResult" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="ExtendHITResult">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <!-- Force expiration of a  HIT -->
	
	    <xs:element name="ForceExpireHIT">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request" type="tns:ForceExpireHITRequest" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="ForceExpireHITRequest">
	        <xs:sequence>
	            <xs:element name="HITId" type="xs:string" />
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="ForceExpireHITResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0" />
	                <xs:element name="ForceExpireHITResult" type="tns:ForceExpireHITResult" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="ForceExpireHITResult">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <!-- ASSIGNMENT -->
	
	    <!-- Assignment helper structures -->
	
	    <xs:simpleType name="AssignmentStatus">
	        <xs:restriction base="xs:string">
	            <xs:enumeration value="Submitted" />
	            <xs:enumeration value="Approved" />
	            <xs:enumeration value="Rejected" />
	        </xs:restriction>
	    </xs:simpleType>
	
	    <xs:complexType name="Assignment">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0" />
	            <xs:element name="AssignmentId" type="xs:string" minOccurs="0" />
	            <xs:element name="WorkerId" type="xs:string" minOccurs="0" />
	            <xs:element name="HITId" type="xs:string" minOccurs="0" />
	            <xs:element name="AssignmentStatus" type="tns:AssignmentStatus" minOccurs="0" />
	            <xs:element name="AutoApprovalTime" type="xs:dateTime" minOccurs="0" />
	            <xs:element name="AcceptTime" type="xs:dateTime" minOccurs="0" />
	            <xs:element name="SubmitTime" type="xs:dateTime" minOccurs="0" />
	            <xs:element name="ApprovalTime" type="xs:dateTime" minOccurs="0" />
	            <xs:element name="RejectionTime" type="xs:dateTime" minOccurs="0" />
	            <xs:element name="Deadline" type="xs:dateTime" minOccurs="0" />
	            <xs:element name="Answer" type="xs:string" minOccurs="0" />
	            <xs:element name="RequesterFeedback" type="xs:string" minOccurs="0" />
	        </xs:sequence>
	    </xs:complexType>
	
	
	    <!-- Approve Assignment -->
	
	    <xs:element name="ApproveAssignment">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request" type="tns:ApproveAssignmentRequest" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="ApproveAssignmentRequest">
	        <xs:sequence>
	            <xs:element name="AssignmentId" type="xs:string" />
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
	            <xs:element name="RequesterFeedback" type="xs:string" minOccurs="0"/>
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="ApproveAssignmentResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0" />
	                <xs:element name="ApproveAssignmentResult" type="tns:ApproveAssignmentResult" minOccurs="0" maxOccurs="unbounded" />
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="ApproveAssignmentResult">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0"/>
	        </xs:sequence>
	    </xs:complexType>
	
	    <!-- Reject Assignment -->
	
	    <xs:element name="RejectAssignment">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request" type="tns:RejectAssignmentRequest" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="RejectAssignmentRequest">
	        <xs:sequence>
	            <xs:element name="AssignmentId" type="xs:string" />
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
	            <xs:element name="RequesterFeedback" type="xs:string" minOccurs="0"/>
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="RejectAssignmentResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0" />
	                <xs:element name="RejectAssignmentResult" type="tns:RejectAssignmentResult" minOccurs="0" maxOccurs="unbounded" />
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="RejectAssignmentResult">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0"/>
	        </xs:sequence>
	    </xs:complexType>
	
	    <!-- Get Assignments for HIT -->
	
	    <xs:simpleType name="GetAssignmentsForHITSortProperty">
	        <xs:restriction base="xs:string">
	          <xs:enumeration value="AcceptTime" />
	          <xs:enumeration value="SubmitTime" />
	          <xs:enumeration value="Answer" />
	          <xs:enumeration value="AssignmentStatus" />
	        </xs:restriction>
	    </xs:simpleType>
	
	    <xs:element name="GetAssignmentsForHIT">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request" type="tns:GetAssignmentsForHITRequest" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="GetAssignmentsForHITRequest">
	        <xs:sequence>
	            <xs:element name="HITId" type="xs:string" />
	            <xs:element name="SortDirection" type="tns:SortDirection" minOccurs="0"/>
	            <xs:element name="SortProperty" type="tns:GetAssignmentsForHITSortProperty" minOccurs="0"/>
	            <xs:element name="PageNumber" type="xs:int" minOccurs="0"/>
	            <xs:element name="PageSize" type="xs:int" minOccurs="0"/>
		    <xs:element name="AssignmentStatus" type="tns:AssignmentStatus" minOccurs="0" maxOccurs="unbounded" />
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="GetAssignmentsForHITResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0" />
	                <xs:element name="GetAssignmentsForHITResult" type="tns:GetAssignmentsForHITResult" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="GetAssignmentsForHITResult">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0" />
	            <xs:element name="PageNumber" type="xs:int" minOccurs="0" />
	            <xs:element name="NumResults" type="xs:int" minOccurs="0" />
	            <xs:element name="TotalNumResults" type="xs:int" minOccurs="0" />
	            <xs:element name="Assignment" type="tns:Assignment" minOccurs="0" maxOccurs="unbounded"/>
	        </xs:sequence>
	    </xs:complexType>
	    
	    <!-- Get short-lived URLs for Uploaded files For a single Assignment answer -->
	    <!-- Specified by the Assignment ID and the question identifier -->
	    <xs:element name="GetFileUploadURL">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request" type="tns:GetFileUploadURLRequest" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="GetFileUploadURLRequest">
	        <xs:sequence>
	            <xs:element name="AssignmentId" type="xs:string" />
	            <xs:element name="QuestionIdentifier" type="xs:string" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="GetFileUploadURLResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0" />
	                <xs:element name="GetFileUploadURLResult" type="tns:GetFileUploadURLResult" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="GetFileUploadURLResult">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0" />
	            <xs:element name="FileUploadURL" type="xs:string"/>
	        </xs:sequence>
	    </xs:complexType>
	
	    <!-- Search for HITs -->
	
	    <xs:simpleType name="SearchHITsSortProperty">
	        <xs:restriction base="xs:string">
	            <xs:enumeration value="Title" />
	            <xs:enumeration value="Reward" />
	            <xs:enumeration value="Expiration" />
	            <xs:enumeration value="CreationTime" />
	            <xs:enumeration value="Enumeration" />
	        </xs:restriction>
	    </xs:simpleType>
	
	    <xs:element name="SearchHITs">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request" type="tns:SearchHITsRequest" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="SearchHITsRequest">
	        <xs:sequence>
	            <xs:element name="SortDirection" type="tns:SortDirection" minOccurs="0"/>
	            <xs:element name="SortProperty" type="tns:SearchHITsSortProperty" minOccurs="0"/>
	            <xs:element name="PageNumber" type="xs:int" minOccurs="0"/>
	            <xs:element name="PageSize" type="xs:int" minOccurs="0"/>
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="SearchHITsResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0" />
	                <xs:element name="SearchHITsResult" type="tns:SearchHITsResult" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="SearchHITsResult">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0" />
	            <xs:element name="PageNumber" type="xs:int" minOccurs="0" />
	            <xs:element name="NumResults" type="xs:int" minOccurs="0" />
	            <xs:element name="TotalNumResults" type="xs:int" minOccurs="0" />
	            <xs:element name="HIT" type="tns:HIT" minOccurs="0" maxOccurs="unbounded" />
	        </xs:sequence>
	    </xs:complexType>
	    
	    <!-- Grant Bonus -->
	    
	    <xs:element name="GrantBonus">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request" type="tns:GrantBonusRequest" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	    
	    <xs:complexType name="GrantBonusRequest">
	        <xs:sequence>
	            <xs:element name="WorkerId" type="xs:string" />
	            <xs:element name="BonusAmount" type="tns:Price" />
	            <xs:element name="AssignmentId" type="xs:string" />
	            <xs:element name="Reason" type="xs:string" />
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="GrantBonusResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0" />
	                <xs:element name="GrantBonusResult" type="tns:GrantBonusResult" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="GrantBonusResult">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <!-- Get Bonus Payments-->
	    
	    <xs:complexType name="BonusPayment">
	      <xs:sequence>
	        <xs:element ref="tns:Request" minOccurs="0" />
	        <xs:element name="WorkerId" type="xs:string" minOccurs="0" />
	        <xs:element name="BonusAmount" type="tns:Price" minOccurs="0" />
	        <xs:element name="AssignmentId" type="xs:string" minOccurs="0" />
	        <xs:element name="Reason" type="xs:string" minOccurs="0" />
	        <xs:element name="GrantTime" type="xs:dateTime" minOccurs="0"/>
	      </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="GetBonusPayments">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request" type="tns:GetBonusPaymentsRequest" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	    
	    <xs:complexType name="GetBonusPaymentsRequest">
	        <xs:sequence>
	          <xs:element name="HITId" type="xs:string" minOccurs="0" />
	          <xs:element name="AssignmentId" type="xs:string" minOccurs="0"/>
	          <xs:element name="PageNumber" type="xs:int" minOccurs="0"/>
	          <xs:element name="PageSize" type="xs:int" minOccurs="0"/>
	          <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="GetBonusPaymentsResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0" />
	                <xs:element name="GetBonusPaymentsResult" type="tns:GetBonusPaymentsResult" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="GetBonusPaymentsResult">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0" />
	            <xs:element name="NumResults" type="xs:int" minOccurs="0" />
	            <xs:element name="PageNumber" type="xs:int" minOccurs="0" />
	            <xs:element name="TotalNumResults" type="xs:int" minOccurs="0" />
	            <xs:element name="BonusPayment" type="tns:BonusPayment" minOccurs="0" maxOccurs="unbounded"/>
	        </xs:sequence>
	    </xs:complexType>
	
	    <!-- Change HITType Of HIT -->
	
	    <xs:element name="ChangeHITTypeOfHIT">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request" type="tns:ChangeHITTypeOfHITRequest" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="ChangeHITTypeOfHITRequest">
	        <xs:sequence>
	            <xs:element name="HITId" type="xs:string"/>
	            <xs:element name="HITTypeId" type="xs:string"/>
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="ChangeHITTypeOfHITResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0" />
	                <xs:element name="ChangeHITTypeOfHITResult" type="tns:ChangeHITTypeOfHITResult" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="ChangeHITTypeOfHITResult">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <!-- QUALIFICATION TYPE -->
	
	    <xs:complexType name="QualificationType">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0" />
	            <xs:element name="QualificationTypeId" type="xs:string" minOccurs="0" />
	            <xs:element name="CreationTime" type="xs:dateTime" minOccurs="0" />
	            <xs:element name="Name" type="xs:string" minOccurs="0" />
	            <xs:element name="Description" type="xs:string" minOccurs="0" />
	            <xs:element name="Keywords" type="xs:string" minOccurs="0" />
	            <xs:element name="QualificationTypeStatus" type="tns:QualificationTypeStatus" minOccurs="0"/>
	            <xs:element name="Test" type="xs:string" minOccurs="0"/>
	            <xs:element name="TestDurationInSeconds" type="xs:long" minOccurs="0"/>
	            <xs:element name="AnswerKey" type="xs:string" minOccurs="0"/>
	            <xs:element name="RetryDelayInSeconds" type="xs:long" minOccurs="0" />
	            <xs:element name="IsRequestable" type="xs:boolean" minOccurs="0"/>
	            <xs:element name="AutoGranted" type="xs:boolean" minOccurs="0"/>
		    <xs:element name="AutoGrantedValue" type="xs:int" minOccurs="0"/>
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:simpleType name="QualificationTypeStatus">
	        <xs:restriction base="xs:string">
	            <xs:enumeration value="Active" />
	            <xs:enumeration value="Inactive" />
	        </xs:restriction>
	    </xs:simpleType>
	
	    <xs:complexType name="QualificationRequest">
	        <xs:sequence>
	            <xs:element name="QualificationRequestId" type="xs:string"/>
	            <xs:element name="QualificationTypeId" type="xs:string"/>
	            <xs:element name="SubjectId" type="xs:string"/>
	            <xs:element name="Test" type="xs:string" minOccurs="0"/>
	            <xs:element name="Answer" type="xs:string"  minOccurs="0"/>
	            <xs:element name="SubmitTime" type="xs:dateTime"/>
	        </xs:sequence>
	    </xs:complexType>
	
	    <!-- Create QualificationType -->
	
	    <xs:element name="CreateQualificationType">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request" type="tns:CreateQualificationTypeRequest" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="CreateQualificationTypeRequest">
	        <xs:sequence>
	            <xs:element name="Name" type="xs:string" />
	            <xs:element name="Keywords" type="xs:string" minOccurs="0" />
	            <xs:element name="Description" type="xs:string" minOccurs="0"/>
	            <xs:element name="QualificationTypeStatus" type="tns:QualificationTypeStatus" minOccurs="0" />
	            <xs:element name="RetryDelayInSeconds" type="xs:long" minOccurs="0" />
	            <xs:element name="Test" type="xs:string" minOccurs="0"/>
	            <xs:element name="AnswerKey" type="xs:string" minOccurs="0"/>
	            <xs:element name="TestDurationInSeconds" type="xs:long" minOccurs="0"/>
	            <xs:element name="AutoGranted" type="xs:boolean" minOccurs="0" />
	            <xs:element name="AutoGrantedValue" type="xs:int" minOccurs="0" />
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="CreateQualificationTypeResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0" />
	                <xs:element name="QualificationType" type="tns:QualificationType" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <!-- Get Qualification Requests -->
	
	    <xs:simpleType name="GetQualificationRequestsSortProperty">
	        <xs:restriction base="xs:string">
	            <xs:enumeration value="QualificationTypeId"/>
	            <xs:enumeration value="SubmitTime"/>
	        </xs:restriction>
	    </xs:simpleType>
	
	    <xs:element name="GetQualificationRequests">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request" type="tns:GetQualificationRequestsRequest" minOccurs="0" maxOccurs="unbounded" />
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="GetQualificationRequestsRequest">
	        <xs:sequence>
	            <xs:element name="QualificationTypeId" type="xs:string" minOccurs="0"/>
	            <xs:element name="SortDirection" type="tns:SortDirection" minOccurs="0"/>
	            <xs:element name="SortProperty" type="tns:GetQualificationRequestsSortProperty" minOccurs="0"/>
	            <xs:element name="PageNumber" type="xs:int" minOccurs="0"/>
	            <xs:element name="PageSize" type="xs:int" minOccurs="0"/>
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="GetQualificationRequestsResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0"/>
	                <xs:element name="GetQualificationRequestsResult" type="tns:GetQualificationRequestsResult" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="GetQualificationRequestsResult">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0"/>
	            <xs:element name="NumResults" type="xs:int" minOccurs="0"/>
	            <xs:element name="TotalNumResults" type="xs:int" minOccurs="0"/>
	            <xs:element name="PageNumber" type="xs:int" minOccurs="0"/>
	            <xs:element name="QualificationRequest" type="tns:QualificationRequest" minOccurs="0" maxOccurs="unbounded"/>
	        </xs:sequence>
	    </xs:complexType>
	
	    <!-- Reject Qualification Request -->
	
	    <xs:element name="RejectQualificationRequest">
		<xs:complexType>
		    <xs:sequence>
			<xs:element name="AWSAccessKeyId" type="xs:string" />
			<xs:element name="Timestamp" type="xs:dateTime" />
			<xs:element name="Signature" type="xs:string" />
			<xs:element name="Validate" type="xs:string" minOccurs="0"/>
			<xs:element name="Credential" type="xs:string" minOccurs="0" />
			<xs:element name="Request" type="tns:RejectQualificationRequestRequest" minOccurs="0" maxOccurs="unbounded" />
		    </xs:sequence>
		</xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="RejectQualificationRequestRequest">
		<xs:sequence>
		    <xs:element name="QualificationRequestId" type="xs:string" />
		    <xs:element name="Reason" type="xs:string" minOccurs="0"/>
		    <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="RejectQualificationRequestResponse">
		<xs:complexType>
		    <xs:sequence>
			<xs:element ref="tns:OperationRequest" minOccurs="0"/>
			<xs:element name="RejectQualificationRequestResult" type="tns:RejectQualificationRequestResult" minOccurs="0" maxOccurs="unbounded"/>
		    </xs:sequence>
		</xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="RejectQualificationRequestResult">
		<xs:sequence>
		    <xs:element ref="tns:Request" minOccurs="0"/>
		</xs:sequence>
	    </xs:complexType>
	
	    <!-- Grant Qualification -->
	
	    <xs:element name="GrantQualification">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request" type="tns:GrantQualificationRequest" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="GrantQualificationRequest">
	        <xs:sequence>
	            <xs:element name="QualificationRequestId" type="xs:string" />
	            <xs:element name="IntegerValue" type="xs:int" minOccurs="0" />
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="GrantQualificationResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0" />
	                <xs:element name="GrantQualificationResult" type="tns:GrantQualificationResult" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	
	    <xs:complexType name="GrantQualificationResult">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <!-- Assign Qualification -->
	
	    <xs:element name="AssignQualification">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request" type="tns:AssignQualificationRequest" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="AssignQualificationRequest">
	        <xs:sequence>
	            <xs:element name="QualificationTypeId" type="xs:string" />
	            <xs:element name="WorkerId" type="xs:string" />
	            <xs:element name="IntegerValue" type="xs:int" minOccurs="0" />
	            <xs:element name="SendNotification" type="xs:boolean" minOccurs="0" />
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="AssignQualificationResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0" />
	                <xs:element name="AssignQualificationResult" type="tns:AssignQualificationResult" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	
	    <xs:complexType name="AssignQualificationResult">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0" />
	        </xs:sequence>
	    </xs:complexType>
	
	
	    <!-- Revoke Qualification -->
	
	    <xs:element name="RevokeQualification">
		<xs:complexType>
		    <xs:sequence>
			<xs:element name="AWSAccessKeyId" type="xs:string" />
			<xs:element name="Timestamp" type="xs:dateTime" />
			<xs:element name="Signature" type="xs:string" />
			<xs:element name="Validate" type="xs:string" minOccurs="0"/>
			<xs:element name="Credential" type="xs:string" minOccurs="0" />
			<xs:element name="Request" type="tns:RevokeQualificationRequest" minOccurs="0" maxOccurs="unbounded" />
		    </xs:sequence>
		</xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="RevokeQualificationRequest">
		<xs:sequence>
		    <xs:element name="SubjectId" type="xs:string" />
		    <xs:element name="QualificationTypeId" type="xs:string" />
		    <xs:element name="Reason" type="xs:string" minOccurs="0"/>
		    <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="RevokeQualificationResponse">
		<xs:complexType>
		    <xs:sequence>
			<xs:element ref="tns:OperationRequest" minOccurs="0"/>
			<xs:element name="RevokeQualificationResult" type="tns:RevokeQualificationResult" minOccurs="0" maxOccurs="unbounded"/>
		    </xs:sequence>
		</xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="RevokeQualificationResult">
		<xs:sequence>
		    <xs:element ref="tns:Request" minOccurs="0"/>
		</xs:sequence>
	    </xs:complexType>
	
	    <!-- Update Qualification -->
	
		<xs:element name="UpdateQualificationScore">
		    <xs:complexType>
	                <xs:sequence>
	                    <xs:element name="AWSAccessKeyId" type="xs:string" />
	                    <xs:element name="Timestamp" type="xs:dateTime" />
	                    <xs:element name="Signature" type="xs:string" />
	                    <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                    <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                    <xs:element name="Request" type="tns:UpdateQualificationScoreRequest" minOccurs="0" maxOccurs="unbounded"/>
	                </xs:sequence>
	            </xs:complexType>
		</xs:element>
	
		<xs:complexType name="UpdateQualificationScoreRequest">
	            <xs:sequence>
	                <xs:element name="QualificationTypeId" type="xs:string" />
	                <xs:element name="SubjectId" type="xs:string"/>
	                <xs:element name="IntegerValue" type="xs:int" minOccurs="0" />
	                <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
	            </xs:sequence>
	        </xs:complexType>
	
	    <xs:element name="UpdateQualificationScoreResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0" />
	                <xs:element name="UpdateQualificationScoreResult" type="tns:UpdateQualificationScoreResult" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="UpdateQualificationScoreResult">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <!-- Get QualificationType -->
	
	    <xs:element name="GetQualificationType">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request" type="tns:GetQualificationTypeRequest" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="GetQualificationTypeRequest">
	        <xs:sequence>
	            <xs:element name="QualificationTypeId" type="xs:string"/>
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="GetQualificationTypeResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0" />
	                <xs:element name="QualificationType" type="tns:QualificationType" minOccurs="0" maxOccurs="unbounded" />
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <!-- Get Qualification -->
		<xs:element name="GetQualificationScore">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request" type="tns:GetQualificationScoreRequest" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="GetQualificationScoreRequest">
	        <xs:sequence>
	            <xs:element name="QualificationTypeId" type="xs:string"/>
	            <xs:element name="SubjectId" type="xs:string"/>
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="GetQualificationScoreResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0" />
	                <xs:element name="Qualification" type="tns:Qualification" minOccurs="0" maxOccurs="unbounded" />
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="Qualification">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0"/>
	            <xs:element name="QualificationTypeId" type="xs:string" minOccurs="0"/>
	            <xs:element name="SubjectId" type="xs:string" minOccurs="0"/>
	            <xs:element name="GrantTime" type="xs:dateTime" minOccurs="0"/>
	            <xs:element name="IntegerValue" type="xs:int" minOccurs="0" />
	            <xs:element name="LocaleValue" type="tns:Locale" minOccurs="0" />
	            <xs:element name="Status" type="tns:QualificationStatus" minOccurs="0" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:simpleType name="QualificationStatus">
		<xs:restriction base="xs:string">
		    <xs:enumeration value="Granted"/>
		    <xs:enumeration value="Revoked" />
		</xs:restriction>
	    </xs:simpleType>
	
	    <!-- Search QualificationTypes -->
	
	    <xs:simpleType name="SearchQualificationTypesSortProperty">
	        <xs:restriction base="xs:string">
	            <xs:enumeration value="Name" />
	        </xs:restriction>
	    </xs:simpleType>
	
	    <xs:element name="SearchQualificationTypes">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request" type="tns:SearchQualificationTypesRequest" minOccurs="0" maxOccurs="unbounded" />
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="SearchQualificationTypesRequest">
	        <xs:sequence>
	            <xs:element name="Query" type="xs:string" minOccurs="0"/>
		    <xs:element name="MustBeRequestable" type="xs:boolean"/>
	            <xs:element name="MustBeOwnedByCaller" type="xs:boolean" minOccurs="0" />
	            <xs:element name="SortDirection" type="tns:SortDirection" minOccurs="0"/>
	            <xs:element name="SortProperty" type="tns:SearchQualificationTypesSortProperty" minOccurs="0"/>
	            <xs:element name="PageNumber" type="xs:int" minOccurs="0"/>
	            <xs:element name="PageSize" type="xs:int" minOccurs="0"/>
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
	        </xs:sequence>
	    </xs:complexType>
	
	
	    <xs:element name="SearchQualificationTypesResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0" />
	                <xs:element name="SearchQualificationTypesResult" type="tns:SearchQualificationTypesResult" minOccurs="0" maxOccurs="unbounded" />
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="SearchQualificationTypesResult">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0" />
	            <xs:element name="NumResults" type="xs:int" minOccurs="0" />
	            <xs:element name="TotalNumResults" type="xs:int" minOccurs="0" />
	            <xs:element name="PageNumber" type="xs:int" minOccurs="0"/>
	            <xs:element name="QualificationType" type="tns:QualificationType" minOccurs="0" maxOccurs="unbounded"/>
	        </xs:sequence>
	    </xs:complexType>
	
	    <!-- Update QualificationType -->
	
	    <xs:element name="UpdateQualificationType">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request" type="tns:UpdateQualificationTypeRequest" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="UpdateQualificationTypeRequest">
	        <xs:sequence>
	            <xs:element name="QualificationTypeId" type="xs:string" />
	            <xs:element name="Description" type="xs:string" minOccurs="0"/>
	            <xs:element name="QualificationTypeStatus" type="tns:QualificationTypeStatus" minOccurs="0" />
	            <xs:element name="Test" type="xs:string" minOccurs="0"/>
	            <xs:element name="AnswerKey" type="xs:string" minOccurs="0"/>
	            <xs:element name="TestDurationInSeconds" type="xs:long" minOccurs="0"/>
	            <xs:element name="RetryDelayInSeconds" type="xs:long" minOccurs="0" />
	            <xs:element name="AutoGranted" type="xs:boolean" minOccurs="0" />
	            <xs:element name="AutoGrantedValue" type="xs:int" minOccurs="0" />
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="UpdateQualificationTypeResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0" />
	                <xs:element name="QualificationType" type="tns:QualificationType" minOccurs="0" maxOccurs="unbounded" />
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <!-- Account Balance -->
	
	    <xs:element name="GetAccountBalance">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request"  type="tns:GetAccountBalanceRequest" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="GetAccountBalanceRequest">
	        <xs:sequence>
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
	            <xs:element name="Unused" type="xs:string" minOccurs="0"/>
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="GetAccountBalanceResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0"/>
	                <xs:element name="GetAccountBalanceResult" type="tns:GetAccountBalanceResult" minOccurs="0" maxOccurs="unbounded" />
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="GetAccountBalanceResult">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0" />
	            <xs:element name="AvailableBalance" type="tns:Price" minOccurs="0" />
	            <xs:element name="OnHoldBalance" type="tns:Price" minOccurs="0" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <!-- GetRequesterStatistic -->
	
	    <xs:element name="GetRequesterStatistic">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request" type="tns:GetRequesterStatisticRequest" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="GetRequesterStatisticRequest">
	        <xs:sequence>
	            <xs:element name="Statistic" type="tns:RequesterStatistic"/>
	            <xs:element name="TimePeriod" type="tns:TimePeriod" minOccurs="0"/>
	            <xs:element name="Count" type="xs:int" minOccurs="0" />
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="GetRequesterStatisticResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0" />
	                <xs:element name="GetStatisticResult" type="tns:GetStatisticResult" minOccurs="0" maxOccurs="unbounded" />
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:simpleType name="RequesterStatistic">
	        <xs:restriction base="xs:string">
	            <xs:enumeration value="NumberHITsAssignable"/>
	            <xs:enumeration value="NumberHITsReviewable"/>
	            <xs:enumeration value="NumberHITsCreated"/>
	            <xs:enumeration value="NumberHITsCompleted"/>
	            <xs:enumeration value="TotalRewardPayout"/>
	            <xs:enumeration value="TotalRewardFeePayout"/>
	            <xs:enumeration value="TotalFeePayout"/>
	            <xs:enumeration value="TotalRewardAndFeePayout"/>
	            <xs:enumeration value="TotalBonusPayout"/>
	            <xs:enumeration value="TotalBonusFeePayout"/>
	            <xs:enumeration value="EstimatedFeeLiability"/>
	            <xs:enumeration value="EstimatedRewardLiability"/>
	            <xs:enumeration value="EstimatedTotalLiability"/>
	            <xs:enumeration value="NumberAssignmentsAvailable"/>
	            <xs:enumeration value="NumberAssignmentsAccepted"/>
	            <xs:enumeration value="NumberAssignmentsPending"/>
	            <xs:enumeration value="NumberAssignmentsApproved"/>
	            <xs:enumeration value="NumberAssignmentsRejected"/>
	            <xs:enumeration value="NumberAssignmentsReturned"/>
	            <xs:enumeration value="NumberAssignmentsAbandoned"/>
	            <xs:enumeration value="AverageRewardAmount"/>
	            <xs:enumeration value="PercentAssignmentsApproved"/>
	            <xs:enumeration value="PercentAssignmentsRejected"/>
	        </xs:restriction>
	    </xs:simpleType>
	
	  <!-- Notify Workers -->
	
	   <xs:element name="NotifyWorkers">
	     <xs:complexType>
	       <xs:sequence>
		 <xs:element name="AWSAccessKeyId" type="xs:string" />
	       <xs:element name="Timestamp" type="xs:dateTime" />
	       <xs:element name="Signature" type="xs:string" />
		   <xs:element name="Validate" type="xs:string" minOccurs="0"/>
		   <xs:element name="Credential" type="xs:string" minOccurs="0" />
		   <xs:element name="Request" type="tns:NotifyWorkersRequest" maxOccurs="unbounded"/>
		 </xs:sequence>
	     </xs:complexType>
	   </xs:element>
	
	   <xs:complexType name="NotifyWorkersRequest">
	     <xs:sequence>
	       <xs:element name="Subject" type="xs:string" minOccurs="0" />
	       <xs:element name="MessageText" type="xs:string" />
	       <xs:element name="WorkerId" type="xs:string" maxOccurs="100" />
	       <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
	     </xs:sequence>
	   </xs:complexType>
	
	   <xs:element name="NotifyWorkersResponse">
	     <xs:complexType>
	       <xs:sequence>
		 <xs:element ref="tns:OperationRequest" minOccurs="0" />
		 <xs:element name="NotifyWorkersResult" type="tns:NotifyWorkersResult" minOccurs="0" maxOccurs="unbounded" />
	       </xs:sequence>
	     </xs:complexType>
	   </xs:element>
	
	   <xs:complexType name="NotifyWorkersResult">
	     <xs:sequence>
	       <xs:element ref="tns:Request" minOccurs="0" />
	     </xs:sequence>
	   </xs:complexType>
	
	    <!-- Statistic helper structures -->
	
	    <xs:complexType name="GetStatisticResult">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0" />
	            <xs:element name="DataPoint" type="tns:DataPoint" minOccurs="0" maxOccurs="unbounded"/>
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:complexType name="DataPoint">
	        <xs:sequence>
	            <xs:element name="Date" type="xs:dateTime"/>
	            <xs:element name="LongValue" type="xs:long" minOccurs="0"/>
	            <xs:element name="DoubleValue" type="xs:double" minOccurs="0"/>
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:simpleType name="TimePeriod">
	        <xs:restriction base="xs:string">
	            <xs:enumeration value="OneDay"/>
	            <xs:enumeration value="SevenDays"/>
	            <xs:enumeration value="ThirtyDays"/>
	            <xs:enumeration value="LifeToDate"/>
	        </xs:restriction>
	    </xs:simpleType>
	
	    <!-- WorkerAcceptLimit structures -->
	
	    <xs:simpleType name="LimitGroupType">
	        <xs:restriction base="xs:string">
	            <xs:enumeration value="Default" />
	            <xs:enumeration value="HITType" />
	        </xs:restriction>
	    </xs:simpleType>
	
	    <xs:element name="SetWorkerAcceptLimit">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request"  type="tns:SetWorkerAcceptLimitRequest" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="SetWorkerAcceptLimitRequest">
	        <xs:sequence>
	            <xs:element name="MaxWorkerAcceptLimit" type="xs:int" />
	            <xs:element name="LimitGroupType" type="tns:LimitGroupType" />
	            <xs:element name="LimitGroupId" type="xs:string" minOccurs="0" />
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="SetWorkerAcceptLimitResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0"/>
	                <xs:element name="SetWorkerAcceptLimitResult" type="tns:SetWorkerAcceptLimitResult" minOccurs="0" maxOccurs="unbounded" />
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="SetWorkerAcceptLimitResult">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="GetWorkerAcceptLimit">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" />
	                <xs:element name="Timestamp" type="xs:dateTime" />
	                <xs:element name="Signature" type="xs:string" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0" />
	                <xs:element name="Request"  type="tns:GetWorkerAcceptLimitRequest" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="GetWorkerAcceptLimitRequest">
	        <xs:sequence>
	            <xs:element name="LimitGroupType" type="tns:LimitGroupType" />
	            <xs:element name="LimitGroupId" type="xs:string" minOccurs="0" />
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="GetWorkerAcceptLimitResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0"/>
	                <xs:element name="GetWorkerAcceptLimitResult" type="tns:GetWorkerAcceptLimitResult" minOccurs="0" maxOccurs="unbounded" />
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="GetWorkerAcceptLimitResult">
	        <xs:sequence>
	            <xs:element name="MaxWorkerAcceptLimit" type="xs:int" />
	            <xs:element ref="tns:Request" minOccurs="0" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <!--  Block Worker structures -->
	
	    <xs:element name="BlockWorker">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string"/>
	                <xs:element name="Timestamp" type="xs:dateTime"/>
	                <xs:element name="Signature" type="xs:string"/>
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0"/>
	                <xs:element name="Request" type="tns:BlockWorkerRequest" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="BlockWorkerRequest">
	        <xs:sequence>
	            <xs:element name="WorkerId" type="xs:string"/>
	            <xs:element name="Reason" type="xs:string"/>
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="BlockWorkerResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0"/>
	                <xs:element name="BlockWorkerResult" type="tns:BlockWorkerResult" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="BlockWorkerResult">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0"/>
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="UnblockWorker">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string"/>
	                <xs:element name="Timestamp" type="xs:dateTime"/>
	                <xs:element name="Signature" type="xs:string"/>
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Credential" type="xs:string" minOccurs="0"/>
	                <xs:element name="Request" type="tns:UnblockWorkerRequest" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="UnblockWorkerRequest">
	        <xs:sequence>
	            <xs:element name="WorkerId" type="xs:string"/>
	            <xs:element name="Reason" type="xs:string" minOccurs="0" />
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
	        </xs:sequence>
	    </xs:complexType>
	
	    <xs:element name="UnblockWorkerResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest"  minOccurs="0" />
	                <xs:element name="UnblockWorkerResult" type="tns:UnblockWorkerResult" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="UnblockWorkerResult">
	        <xs:sequence>
	            <xs:element ref="tns:Request" minOccurs="0" />
	        </xs:sequence>
	    </xs:complexType>
	
	    <!--  Help and related structures -->
	
	    <xs:element name="OperationRequest">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:HTTPHeaders" minOccurs="0"/>
	                <xs:element name="RequestId" type="xs:string" minOccurs="0"/>
	                <xs:element ref="tns:Arguments" minOccurs="0"/>
	                <xs:element ref="tns:Errors" minOccurs="0"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:element name="Request">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="IsValid" type="xs:string" minOccurs="0"/>
	                <xs:element name="CreateHITRequest" type="tns:CreateHITRequest" minOccurs="0"/>
	                <xs:element name="RegisterHITTypeRequest" type="tns:RegisterHITTypeRequest" minOccurs="0"/>
	                <xs:element name="DisposeHITRequest" type="tns:DisposeHITRequest" minOccurs="0" />
	                <xs:element name="DisableHITRequest" type="tns:DisableHITRequest" minOccurs="0"/>
	                <xs:element name="GetHITRequest" type="tns:GetHITRequest" minOccurs="0"/>
	                <xs:element name="GetReviewableHITsRequest" type="tns:GetReviewableHITsRequest" minOccurs="0"/>
	                <xs:element name="GetHITsForQualificationTypeRequest" type="tns:GetHITsForQualificationTypeRequest" minOccurs="0"/>
	                <xs:element name="GetQualificationsForQualificationTypeRequest" type="tns:GetQualificationsForQualificationTypeRequest" minOccurs="0"/>
	                <xs:element name="SetHITAsReviewingRequest" type="tns:SetHITAsReviewingRequest" minOccurs="0"/>
	                <xs:element name="SearchHITsRequest" type="tns:SearchHITsRequest" minOccurs="0" />
	                <xs:element name="ExtendHITRequest" type="tns:ExtendHITRequest" minOccurs="0" />
	                <xs:element name="ForceExpireHITRequest" type="tns:ForceExpireHITRequest" minOccurs="0" />
	                <xs:element name="ChangeHITTypeOfHITRequest" type="tns:ChangeHITTypeOfHITRequest" minOccurs="0"/>
	                <xs:element name="CreateQualificationTypeRequest" type="tns:CreateQualificationTypeRequest" minOccurs="0"/>
	                <xs:element name="GrantQualificationRequest" type="tns:GrantQualificationRequest" minOccurs="0"/>
	                <xs:element name="AssignQualificationRequest" type="tns:AssignQualificationRequest" minOccurs="0"/>
	                <xs:element name="RevokeQualificationRequest" type="tns:RevokeQualificationRequest" minOccurs="0"/>
	                <xs:element name="GetQualificationRequestsRequest" type="tns:GetQualificationRequestsRequest" minOccurs="0"/>
	                <xs:element name="RejectQualificationRequestRequest" type="tns:RejectQualificationRequestRequest" minOccurs="0"/>
	                <xs:element name="GetQualificationTypeRequest" type="tns:GetQualificationTypeRequest" minOccurs="0"/>
	                <xs:element name="SearchQualificationTypesRequest" type="tns:SearchQualificationTypesRequest" minOccurs="0"/>
	                <xs:element name="UpdateQualificationTypeRequest" type="tns:UpdateQualificationTypeRequest" minOccurs="0"/>
	                <xs:element name="ApproveAssignmentRequest" type="tns:ApproveAssignmentRequest" minOccurs="0"/>
	                <xs:element name="RejectAssignmentRequest" type="tns:RejectAssignmentRequest" minOccurs="0"/>
	                <xs:element name="GetAssignmentsForHIT" type="tns:GetAssignmentsForHITRequest" minOccurs="0"/>
	                <xs:element name="GetFileUploadURL" type="tns:GetFileUploadURLRequest" minOccurs="0"/>
	                <xs:element name="GrantBonusRequest" type="tns:GrantBonusRequest" minOccurs="0" />
	                <xs:element name="GetBonusPaymentsRequest" type="tns:GetBonusPaymentsRequest" minOccurs="0" />
	                <xs:element name="GetAccountBalanceRequest" type="tns:GetAccountBalanceRequest" minOccurs="0"/>
	                <xs:element name="NotifyWorkersRequest" type="tns:NotifyWorkersRequest" minOccurs="0"/>
	                <xs:element name="SetWorkerAcceptLimitRequest" type="tns:SetWorkerAcceptLimitRequest" minOccurs="0" />
	                <xs:element name="GetWorkerAcceptLimitRequest" type="tns:GetWorkerAcceptLimitRequest" minOccurs="0" />
	                <xs:element name="BlockWorkerRequest" type="tns:BlockWorkerRequest" minOccurs="0" />
	                <xs:element name="UnblockWorkerRequest" type="tns:UnblockWorkerRequest" minOccurs="0"/>
	                <xs:element name="HelpRequest" type="tns:HelpRequest" minOccurs="0"/>
	                <xs:element ref="tns:Errors" minOccurs="0"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	
	    <!-- Standard AWS Platform types -->
	    
	    <xs:element name="HTTPHeaders">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="Header" minOccurs="0" maxOccurs="unbounded">
	                    <xs:complexType>
	                        <xs:attribute name="Name" type="xs:string" use="required"/>
	                        <xs:attribute name="Value" type="xs:string" use="required"/>
	                    </xs:complexType>
	                </xs:element>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	    
	    <xs:element name="Arguments">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="Argument" maxOccurs="unbounded">
	                    <xs:complexType>
	                        <xs:attribute name="Name" type="xs:string" use="required"/>
	                        <xs:attribute name="Value" type="xs:string" use="required"/>
	                    </xs:complexType>
	                </xs:element>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	    <xs:complexType name="KeyValuePair">
	        <xs:sequence>
	            <xs:element name="Key" type="xs:string"/>
	            <xs:element name="Value" type="xs:string"/>
	        </xs:sequence>
	    </xs:complexType>
	    
	    <xs:element name="Errors">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="Error" maxOccurs="unbounded">
	                    <xs:complexType>
	                        <xs:sequence>
	                            <xs:element name="Code" type="xs:string"/>
	                            <xs:element name="Message" type="xs:string"/>
	                            <xs:element name="Data" type="tns:KeyValuePair" minOccurs="0" maxOccurs="unbounded"/>
	                        </xs:sequence>
	                    </xs:complexType>
	                </xs:element>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	    
	    <xs:element name="Help">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="AWSAccessKeyId" type="xs:string" minOccurs="0"/>
	                <xs:element name="Timestamp" type="xs:dateTime" minOccurs="0" />
	                <xs:element name="Signature" type="xs:string" minOccurs="0" />
	                <xs:element name="Validate" type="xs:string" minOccurs="0"/>
	                <xs:element name="Request" type="tns:HelpRequest" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	    
	    <xs:complexType name="HelpRequest">
	        <xs:sequence>
	            <xs:element name="About" type="xs:string" maxOccurs="unbounded"/>
	            <xs:element name="HelpType" minOccurs="0">
	                <xs:simpleType>
	                    <xs:restriction base="xs:string">
	                        <xs:enumeration value="Operation"/>
	                        <xs:enumeration value="ResponseGroup"/>
	                    </xs:restriction>
	                </xs:simpleType>
	            </xs:element>
	            <xs:element name="ResponseGroup" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
	        </xs:sequence>
	    </xs:complexType>
	    
	    <xs:element name="HelpResponse">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:OperationRequest" minOccurs="0"/>
	                <xs:element ref="tns:Information" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	    
	    <xs:element name="Information">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element ref="tns:Request" minOccurs="0"/>
	                <xs:element ref="tns:OperationInformation" minOccurs="0" maxOccurs="unbounded"/>
	                <xs:element ref="tns:ResponseGroupInformation" minOccurs="0" maxOccurs="unbounded"/>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	    
	    <xs:element name="OperationInformation">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="Name" type="xs:string" minOccurs="0"/>
	                <xs:element name="Description" type="xs:string" minOccurs="0"/>
	                <xs:element name="RequiredParameters" minOccurs="0">
	                    <xs:complexType>
	                        <xs:sequence>
	                            <xs:element name="Parameter" type="xs:string" maxOccurs="unbounded"/>
	                        </xs:sequence>
	                    </xs:complexType>
	                </xs:element>
	                <xs:element name="AvailableParameters" minOccurs="0">
	                    <xs:complexType>
	                        <xs:sequence>
	                            <xs:element name="Parameter" type="xs:string" maxOccurs="unbounded"/>
	                        </xs:sequence>
	                    </xs:complexType>
	                </xs:element>
	                <xs:element name="DefaultResponseGroups" minOccurs="0">
	                    <xs:complexType>
	                        <xs:sequence>
	                            <xs:element name="ResponseGroup" type="xs:string" maxOccurs="unbounded"/>
	                        </xs:sequence>
	                    </xs:complexType>
	                </xs:element>
	                <xs:element name="AvailableResponseGroups" minOccurs="0">
	                    <xs:complexType>
	                        <xs:sequence>
	                            <xs:element name="ResponseGroup" type="xs:string" maxOccurs="unbounded"/>
	                        </xs:sequence>
	                    </xs:complexType>
	                </xs:element>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	    
	    <xs:element name="ResponseGroupInformation">
	        <xs:complexType>
	            <xs:sequence>
	                <xs:element name="Name" type="xs:string" minOccurs="0"/>
	                <xs:element name="CreationDate" type="xs:string" minOccurs="0"/>
	                <xs:element name="ValidOperations" minOccurs="0">
	                    <xs:complexType>
	                        <xs:sequence>
	                            <xs:element name="Operation" type="xs:string" maxOccurs="unbounded"/>
	                        </xs:sequence>
	                    </xs:complexType>
	                </xs:element>
	                <xs:element name="Elements" minOccurs="0">
	                    <xs:complexType>
	                        <xs:sequence>
	                            <xs:element name="Element" type="xs:string" maxOccurs="unbounded"/>
	                        </xs:sequence>
	                    </xs:complexType>
	                </xs:element>
	            </xs:sequence>
	        </xs:complexType>
	    </xs:element>
	
	</xs:schema>
	
  </types>

  <message name="CreateHITRequestMsg">
    <part name="body" element="tns:CreateHIT" /> 
  </message>
  <message name="CreateHITResponseMsg">
    <part name="body" element="tns:CreateHITResponse" /> 
  </message>
  <message name="RegisterHITTypeRequestMsg">
    <part name="body" element="tns:RegisterHITType" />
  </message>
  <message name="RegisterHITTypeResponseMsg">
    <part name="body" element="tns:RegisterHITTypeResponse" />
  </message>
  <message name="SetHITTypeNotificationRequestMsg">
    <part name="body" element="tns:SetHITTypeNotification" />
  </message>
  <message name="SetHITTypeNotificationResponseMsg">
    <part name="body" element="tns:SetHITTypeNotificationResponse" />
  </message>
  <message name="SendTestEventNotificationRequestMsg">
    <part name="body" element="tns:SendTestEventNotification" />
  </message>
  <message name="SendTestEventNotificationResponseMsg">
    <part name="body" element="tns:SendTestEventNotificationResponse" />
  </message>
  <message name="DisposeHITRequestMsg">
    <part name="body" element="tns:DisposeHIT" /> 
  </message>
  <message name="DisposeHITResponseMsg">
    <part name="body" element="tns:DisposeHITResponse" /> 
  </message>
  <message name="DisableHITRequestMsg">
    <part name="body" element="tns:DisableHIT" /> 
  </message>
  <message name="DisableHITResponseMsg">
    <part name="body" element="tns:DisableHITResponse" /> 
  </message>
  <message name="GetHITRequestMsg">
    <part name="body" element="tns:GetHIT" /> 
  </message>
  <message name="GetHITResponseMsg">
    <part name="body" element="tns:GetHITResponse" /> 
  </message>
  <message name="GetReviewableHITsRequestMsg">
    <part name="body" element="tns:GetReviewableHITs" /> 
  </message>
  <message name="GetReviewableHITsResponseMsg">
    <part name="body" element="tns:GetReviewableHITsResponse" /> 
  </message>
  <message name="GetHITsForQualificationTypeRequestMsg">
    <part name="body" element="tns:GetHITsForQualificationType" /> 
  </message>
  <message name="GetHITsForQualificationTypeResponseMsg">
    <part name="body" element="tns:GetHITsForQualificationTypeResponse" /> 
  </message>
  <message name="GetQualificationsForQualificationTypeRequestMsg">
    <part name="body" element="tns:GetQualificationsForQualificationType" /> 
  </message>
  <message name="GetQualificationsForQualificationTypeResponseMsg">
    <part name="body" element="tns:GetQualificationsForQualificationTypeResponse" /> 
  </message>
  <message name="SetHITAsReviewingRequestMsg">
    <part name="body" element="tns:SetHITAsReviewing" />
  </message>
  <message name="SetHITAsReviewingResponseMsg">
    <part name="body" element="tns:SetHITAsReviewingResponse" />
  </message>
  <message name="ExtendHITRequestMsg">
    <part name="body" element="tns:ExtendHIT" /> 
  </message>
  <message name="ExtendHITResponseMsg">
    <part name="body" element="tns:ExtendHITResponse" /> 
  </message>
  <message name="ForceExpireHITRequestMsg">
    <part name="body" element="tns:ForceExpireHIT" /> 
  </message>
  <message name="ForceExpireHITResponseMsg">
    <part name="body" element="tns:ForceExpireHITResponse" /> 
  </message>
  <message name="ApproveAssignmentRequestMsg">
    <part name="body" element="tns:ApproveAssignment" /> 
  </message>
  <message name="ApproveAssignmentResponseMsg">
    <part name="body" element="tns:ApproveAssignmentResponse" /> 
  </message>
  <message name="RejectAssignmentRequestMsg">
    <part name="body" element="tns:RejectAssignment" /> 
  </message>
  <message name="RejectAssignmentResponseMsg">
    <part name="body" element="tns:RejectAssignmentResponse" /> 
  </message>
  <message name="GetAssignmentsForHITRequestMsg">
    <part name="body" element="tns:GetAssignmentsForHIT" /> 
  </message>
  <message name="GetAssignmentsForHITResponseMsg">
    <part name="body" element="tns:GetAssignmentsForHITResponse" /> 
  </message>  
  <message name="GetFileUploadURLRequestMsg">
    <part name="body" element="tns:GetFileUploadURL" /> 
  </message>
  <message name="GetFileUploadURLResponseMsg">
    <part name="body" element="tns:GetFileUploadURLResponse" /> 
  </message>  
  <message name="SearchHITsRequestMsg">
    <part name="body" element="tns:SearchHITs" />
  </message>
  <message name="SearchHITsResponseMsg">
    <part name="body" element="tns:SearchHITsResponse" />
  </message>
  <message name="ChangeHITTypeOfHITRequestMsg">
    <part name="body" element="tns:ChangeHITTypeOfHIT"/>
  </message>
  <message name="ChangeHITTypeOfHITResponseMsg">
    <part name="body" element="tns:ChangeHITTypeOfHITResponse"/>
  </message>

  <!--  Grant bonus messages -->  
  <message name="GrantBonusRequestMsg">
    <part name="body" element="tns:GrantBonus" />
  </message>
  <message name="GrantBonusResponseMsg">
    <part name="body" element="tns:GrantBonusResponse" />
  </message>   

  <!--  Get bonus payments messages -->  

  <message name="GetBonusPaymentsRequestMsg">
    <part name="body" element="tns:GetBonusPayments" />
  </message>
  <message name="GetBonusPaymentsResponseMsg">
    <part name="body" element="tns:GetBonusPaymentsResponse" />
  </message>   

  <!-- QualificationType messages -->
  <message name="CreateQualificationTypeRequestMsg">
    <part name="body" element="tns:CreateQualificationType" /> 
  </message>
  <message name="CreateQualificationTypeResponseMsg">
    <part name="body" element="tns:CreateQualificationTypeResponse" /> 
  </message>
  <message name="GetQualificationRequestsRequestMsg">
    <part name="body" element="tns:GetQualificationRequests" />
  </message>
  <message name="GetQualificationRequestsResponseMsg">
    <part name="body" element="tns:GetQualificationRequestsResponse" />
  </message>
  <message name="RejectQualificationRequestRequestMsg">
    <part name="body" element="tns:RejectQualificationRequest"/>
  </message>
  <message name="RejectQualificationRequestResponseMsg">
    <part name="body" element="tns:RejectQualificationRequestResponse"/>
  </message>
  <message name="GrantQualificationRequestMsg">
    <part name="body" element="tns:GrantQualification" /> 
  </message>
  <message name="GrantQualificationResponseMsg">
    <part name="body" element="tns:GrantQualificationResponse" /> 
  </message>
  <message name="AssignQualificationRequestMsg">
    <part name="body" element="tns:AssignQualification" /> 
  </message>
  <message name="AssignQualificationResponseMsg">
    <part name="body" element="tns:AssignQualificationResponse" /> 
  </message>
  <message name="RevokeQualificationRequestMsg">
    <part name="body" element="tns:RevokeQualification"/>
  </message>
  <message name="RevokeQualificationResponseMsg">
    <part name="body" element="tns:RevokeQualificationResponse"/>
  </message>
  <message name="UpdateQualificationScoreRequestMsg">
  	<part name="body" element="tns:UpdateQualificationScore"/>
  </message>
  <message name="UpdateQualificationScoreResponseMsg">
    <part name="body" element="tns:UpdateQualificationScoreResponse"/>
  </message>
  <message name="GetQualificationScoreRequestMsg">
  	<part name="body" element="tns:GetQualificationScore"/>
  </message>
  <message name="GetQualificationScoreResponseMsg">
    <part name="body" element="tns:GetQualificationScoreResponse"/>
  </message>
  <message name="GetQualificationTypeRequestMsg">
    <part name="body" element="tns:GetQualificationType" /> 
  </message>
  <message name="GetQualificationTypeResponseMsg">
    <part name="body" element="tns:GetQualificationTypeResponse" /> 
  </message>
  <message name="UpdateQualificationTypeRequestMsg">
    <part name="body" element="tns:UpdateQualificationType" /> 
  </message>
  <message name="UpdateQualificationTypeResponseMsg">
    <part name="body" element="tns:UpdateQualificationTypeResponse" /> 
  </message>
  <message name="SearchQualificationTypesRequestMsg">
    <part name="body" element="tns:SearchQualificationTypes" /> 
  </message>
  <message name="SearchQualificationTypesResponseMsg">
    <part name="body" element="tns:SearchQualificationTypesResponse" /> 
  </message>

  <!-- Statistic messages -->
  <message name="GetRequesterStatisticRequestMsg">
    <part name="body" element="tns:GetRequesterStatistic" />
  </message>
  <message name="GetRequesterStatisticResponseMsg">
    <part name="body" element="tns:GetRequesterStatisticResponse" /> 
  </message>

  <!--  Notification messages -->  
  <message name="NotifyWorkersRequestMsg">
    <part name="body" element="tns:NotifyWorkers" />
  </message>
  <message name="NotifyWorkersResponseMsg">
    <part name="body" element="tns:NotifyWorkersResponse" />
  </message>     

  <!-- Account balance messages -->
  <message name="GetAccountBalanceRequestMsg">
    <part name="body" element="tns:GetAccountBalance" /> 
  </message>
  <message name="GetAccountBalanceResponseMsg">
    <part name="body" element="tns:GetAccountBalanceResponse" /> 
  </message>

  <!-- WorkerAcceptLimit messages -->
  <message name="SetWorkerAcceptLimitRequestMsg">
    <part name="body" element="tns:SetWorkerAcceptLimit" />
  </message>
  <message name="SetWorkerAcceptLimitResponseMsg">
    <part name="body" element="tns:SetWorkerAcceptLimitResponse" />
  </message>
  <message name="GetWorkerAcceptLimitRequestMsg">
    <part name="body" element="tns:GetWorkerAcceptLimit" />
  </message>
  <message name="GetWorkerAcceptLimitResponseMsg">
    <part name="body" element="tns:GetWorkerAcceptLimitResponse" />
  </message>

  <!-- BlockWorker messages -->
  <message name="BlockWorkerRequestMsg">
    <part name="body" element="tns:BlockWorker" />
  </message>
  <message name="BlockWorkerResponseMsg">
    <part name="body" element="tns:BlockWorkerResponse" />
  </message>
  <message name="UnblockWorkerRequestMsg">
    <part name="body" element="tns:UnblockWorker" />
  </message>
  <message name="UnblockWorkerResponseMsg">
    <part name="body" element="tns:UnblockWorkerResponse" />
  </message>

  <!-- Help messages -->
  <message name="HelpRequestMsg">
    <part name="body" element="tns:Help"/>
  </message>    
  <message name="HelpResponseMsg">
    <part name="body" element="tns:HelpResponse"/>
  </message>

  <portType name="AWSMechanicalTurkRequesterPortType">
    <operation name="CreateHIT">
      <input message="tns:CreateHITRequestMsg"/>
      <output message="tns:CreateHITResponseMsg"/>
    </operation>
    <operation name="RegisterHITType">
      <input message="tns:RegisterHITTypeRequestMsg"/>
      <output message="tns:RegisterHITTypeResponseMsg"/>
    </operation>
    <operation name="SetHITTypeNotification">
      <input message="tns:SetHITTypeNotificationRequestMsg"/>
      <output message="tns:SetHITTypeNotificationResponseMsg"/>
    </operation>
    <operation name="SendTestEventNotification">
      <input message="tns:SendTestEventNotificationRequestMsg"/>
      <output message="tns:SendTestEventNotificationResponseMsg"/>
    </operation>
    <operation name="DisposeHIT">
      <input message="tns:DisposeHITRequestMsg"/>
      <output message="tns:DisposeHITResponseMsg"/>
    </operation>
    <operation name="DisableHIT">
      <input message="tns:DisableHITRequestMsg"/>
      <output message="tns:DisableHITResponseMsg"/>
    </operation>
    <operation name="GetHIT">
      <input message="tns:GetHITRequestMsg"/>
      <output message="tns:GetHITResponseMsg"/>
    </operation>
    <operation name="GetReviewableHITs">
      <input message="tns:GetReviewableHITsRequestMsg"/>
      <output message="tns:GetReviewableHITsResponseMsg"/>
    </operation>
    <operation name="GetHITsForQualificationType">
      <input message="tns:GetHITsForQualificationTypeRequestMsg"/>
      <output message="tns:GetHITsForQualificationTypeResponseMsg"/>
    </operation>
    <operation name="GetQualificationsForQualificationType">
      <input message="tns:GetQualificationsForQualificationTypeRequestMsg"/>
      <output message="tns:GetQualificationsForQualificationTypeResponseMsg"/>
    </operation>
    <operation name="SetHITAsReviewing">
      <input message="tns:SetHITAsReviewingRequestMsg"/>
      <output message="tns:SetHITAsReviewingResponseMsg"/>
    </operation>
    <operation name="ExtendHIT">
      <input message="tns:ExtendHITRequestMsg"/>
      <output message="tns:ExtendHITResponseMsg"/>
    </operation>
    <operation name="ForceExpireHIT">
      <input message="tns:ForceExpireHITRequestMsg"/>
      <output message="tns:ForceExpireHITResponseMsg"/>
    </operation>
    <operation name="ApproveAssignment">
      <input message="tns:ApproveAssignmentRequestMsg"/>
      <output message="tns:ApproveAssignmentResponseMsg"/>
    </operation>
    <operation name="RejectAssignment">
      <input message="tns:RejectAssignmentRequestMsg"/>
      <output message="tns:RejectAssignmentResponseMsg"/>
    </operation>
    <operation name="GetAssignmentsForHIT">
      <input message="tns:GetAssignmentsForHITRequestMsg"/>
      <output message="tns:GetAssignmentsForHITResponseMsg"/>
    </operation>
    <operation name="GetFileUploadURL">
      <input message="tns:GetFileUploadURLRequestMsg"/>
      <output message="tns:GetFileUploadURLResponseMsg"/>
    </operation>
    <operation name="SearchHITs">
      <input message="tns:SearchHITsRequestMsg"/>
      <output message="tns:SearchHITsResponseMsg"/>
    </operation>
    <operation name="GrantBonus">
      <input message="tns:GrantBonusRequestMsg"/>
      <output message="tns:GrantBonusResponseMsg"/>
    </operation>
    <operation name="GetBonusPayments">
      <input message="tns:GetBonusPaymentsRequestMsg"/>
      <output message="tns:GetBonusPaymentsResponseMsg"/>
    </operation>
    <operation name="ChangeHITTypeOfHIT">
      <input message="tns:ChangeHITTypeOfHITRequestMsg"/>
      <output message="tns:ChangeHITTypeOfHITResponseMsg"/>
    </operation>

    <!-- QualificationType operations -->
    <operation name="CreateQualificationType">
      <input message="tns:CreateQualificationTypeRequestMsg"/>
      <output message="tns:CreateQualificationTypeResponseMsg"/>
    </operation>
    <operation name="GrantQualification">
      <input message="tns:GrantQualificationRequestMsg"/>
      <output message="tns:GrantQualificationResponseMsg"/>
    </operation>
    <operation name="AssignQualification">
      <input message="tns:AssignQualificationRequestMsg"/>
      <output message="tns:AssignQualificationResponseMsg"/>
    </operation>
    <operation name="RevokeQualification">
      <input message="tns:RevokeQualificationRequestMsg"/>
      <output message="tns:RevokeQualificationResponseMsg"/>
    </operation>
    <operation name="GetQualificationType">
      <input message="tns:GetQualificationTypeRequestMsg"/>
      <output message="tns:GetQualificationTypeResponseMsg"/>
    </operation>
    <operation name="GetQualificationRequests">
      <input message="tns:GetQualificationRequestsRequestMsg"/>
      <output message="tns:GetQualificationRequestsResponseMsg"/>
    </operation>
    <operation name="RejectQualificationRequest">
      <input message="tns:RejectQualificationRequestRequestMsg"/>
      <output message="tns:RejectQualificationRequestResponseMsg"/>
    </operation>
    <operation name="UpdateQualificationType">
      <input message="tns:UpdateQualificationTypeRequestMsg"/>
      <output message="tns:UpdateQualificationTypeResponseMsg"/>
    </operation>
    <operation name="SearchQualificationTypes">
      <input message="tns:SearchQualificationTypesRequestMsg"/>
      <output message="tns:SearchQualificationTypesResponseMsg"/>
    </operation>
    <operation name="GetQualificationScore">
      <input message="tns:GetQualificationScoreRequestMsg"/>
      <output message="tns:GetQualificationScoreResponseMsg"/>
    </operation>
    <operation name="UpdateQualificationScore">
      <input message="tns:UpdateQualificationScoreRequestMsg"/>
      <output message="tns:UpdateQualificationScoreResponseMsg"/>
    </operation>

    <!-- Statistic operation -->
    <operation name="GetRequesterStatistic">
      <input message="tns:GetRequesterStatisticRequestMsg"/>
      <output message="tns:GetRequesterStatisticResponseMsg"/>
    </operation>
    
    <!-- Notification operation -->
    <operation name="NotifyWorkers">
	  <input message="tns:NotifyWorkersRequestMsg"/>
	  <output message="tns:NotifyWorkersResponseMsg"/>
    </operation>

    <!-- Account Balance operation -->
    <operation name="GetAccountBalance">
      <input message="tns:GetAccountBalanceRequestMsg"/>
      <output message="tns:GetAccountBalanceResponseMsg"/>
    </operation>

    <!-- WorkerAcceptLimit operations -->
    <operation name="SetWorkerAcceptLimit">
      <input message="tns:SetWorkerAcceptLimitRequestMsg"/>
      <output message="tns:SetWorkerAcceptLimitResponseMsg"/>
    </operation>
    <operation name="GetWorkerAcceptLimit">
      <input message="tns:GetWorkerAcceptLimitRequestMsg"/>
      <output message="tns:GetWorkerAcceptLimitResponseMsg"/>
    </operation>

    <!-- BlockWorker operations -->
    <operation name="BlockWorker">
      <input message="tns:BlockWorkerRequestMsg"/>
      <output message="tns:BlockWorkerResponseMsg"/>
    </operation>
    <operation name="UnblockWorker">
      <input message="tns:UnblockWorkerRequestMsg"/>
      <output message="tns:UnblockWorkerResponseMsg"/>
    </operation>

    <!-- Help Operation -->
    <operation name="Help">
      <input message="tns:HelpRequestMsg"/>
      <output message="tns:HelpResponseMsg"/>
    </operation>

  </portType>

  <binding name="AWSMechanicalTurkRequesterBinding" type="tns:AWSMechanicalTurkRequesterPortType">
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>

    <operation name="CreateHIT">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
	<soap:body use="literal"/>
      </input>
      <output>
	<soap:body use="literal"/>
      </output>
    </operation>
    
    <operation name="RegisterHITType">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
        <soap:body use="literal"/>
      </input>
      <output>
        <soap:body use="literal"/>
      </output>
    </operation>

    <operation name="SetHITTypeNotification">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
        <soap:body use="literal"/>
      </input>
      <output>
        <soap:body use="literal"/>
      </output>
    </operation>

    <operation name="SendTestEventNotification">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
        <soap:body use="literal"/>
      </input>
      <output>
        <soap:body use="literal"/>
      </output>
    </operation>

    <operation name="DisposeHIT">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
	<soap:body use="literal"/>
      </input>
      <output>
	<soap:body use="literal"/>
      </output>
    </operation>

    <operation name="DisableHIT">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
	<soap:body use="literal"/>
      </input>
      <output>
	<soap:body use="literal"/>
      </output>
    </operation>

    <operation name="GetHIT">
      <soap:operation soapAction="http://soap.amazon.com"/> 
      <input>
	<soap:body use="literal" />
      </input>
      <output>
	<soap:body use="literal" />
      </output>
    </operation>

    <operation name="GetReviewableHITs">
      <soap:operation soapAction="http://soap.amazon.com"/> 
      <input>
	<soap:body use="literal" />
      </input>
      <output>
	<soap:body use="literal" />
      </output>
    </operation>

    <operation name="GetHITsForQualificationType">
      <soap:operation soapAction="http://soap.amazon.com"/> 
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>

    <operation name="GetQualificationsForQualificationType">
      <soap:operation soapAction="http://soap.amazon.com"/> 
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>

    <operation name="SetHITAsReviewing">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>

    <operation name="ExtendHIT">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
	<soap:body use="literal"/>
      </input>
      <output>
	<soap:body use="literal"/>
      </output>
    </operation>

    <operation name="ForceExpireHIT">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
	<soap:body use="literal"/>
      </input>
      <output>
	<soap:body use="literal"/>
      </output>
    </operation>

    <operation name="ApproveAssignment">
      <soap:operation soapAction="http://soap.amazon.com"/> 
      <input>
	<soap:body use="literal" />
      </input>
      <output>
	<soap:body use="literal" />
      </output>
    </operation>

    <operation name="RejectAssignment">
      <soap:operation soapAction="http://soap.amazon.com"/> 
      <input>
	<soap:body use="literal" />
      </input>
      <output>
	<soap:body use="literal" />
      </output>
    </operation>

    <operation name="GetAssignmentsForHIT">
      <soap:operation soapAction="http://soap.amazon.com"/> 
      <input>
	<soap:body use="literal" />
      </input>
      <output>
	<soap:body use="literal" />
      </output>
    </operation>
    
    <operation name="GetFileUploadURL">
      <soap:operation soapAction="http://soap.amazon.com"/> 
      <input>
	<soap:body use="literal" />
      </input>
      <output>
	<soap:body use="literal" />
      </output>
    </operation>

    <operation name="SearchHITs">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
	<soap:body use="literal" />
      </input>
      <output>
	<soap:body use="literal" />
      </output>
    </operation>
    
    <operation name="GrantBonus">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
	<soap:body use="literal" />
      </input>
      <output>
	<soap:body use="literal" />
      </output>
    </operation>

    <operation name="GetBonusPayments">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
	<soap:body use="literal" />
      </input>
      <output>
	<soap:body use="literal" />
      </output>
    </operation>

    <operation name="ChangeHITTypeOfHIT">
        <soap:operation soapAction="http://soap.amazon.com"/>
        <input>
            <soap:body use="literal"/>
        </input>
        <output>
            <soap:body use="literal"/>
        </output>
    </operation>

    <operation name="CreateQualificationType">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
	<soap:body use="literal"/>
      </input>
      <output>
	<soap:body use="literal"/>
      </output>
    </operation>

    <operation name="GetQualificationRequests">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
	<soap:body use="literal"/>
      </input>
      <output>
	<soap:body use="literal"/>
      </output>
    </operation>

    <operation name="RejectQualificationRequest">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
        <soap:body use="literal"/>
      </input>
      <output>
        <soap:body use="literal"/>
      </output>
    </operation>   

    <operation name="GetQualificationType">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
	<soap:body use="literal"/>
      </input>
      <output>
	<soap:body use="literal"/>
      </output>
    </operation>   

    <operation name="GrantQualification">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
	<soap:body use="literal"/>
      </input>
      <output>
	<soap:body use="literal"/>
      </output>
    </operation>

    <operation name="AssignQualification">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
	<soap:body use="literal"/>
      </input>
      <output>
	<soap:body use="literal"/>
      </output>
    </operation>

    <operation name="RevokeQualification">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
        <soap:body use="literal"/>
      </input>
      <output>
        <soap:body use="literal"/>
      </output>
    </operation>  

    <operation name="SearchQualificationTypes">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
	<soap:body use="literal"/>
      </input>
      <output>
	<soap:body use="literal"/>
      </output>
    </operation>   

    <operation name="UpdateQualificationType">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
	<soap:body use="literal"/>
      </input>
      <output>
	<soap:body use="literal"/>
      </output>
    </operation>
    
    <operation name="GetQualificationScore">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
	<soap:body use="literal"/>
      </input>
      <output>
	<soap:body use="literal"/>
      </output>
    </operation> 
    
    <operation name="UpdateQualificationScore">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
	<soap:body use="literal"/>
      </input>
      <output>
	<soap:body use="literal"/>
      </output>
    </operation>     

    <operation name="GetAccountBalance">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
	<soap:body use="literal"/>
      </input>
      <output>
	<soap:body use="literal"/>
      </output>
    </operation>
 
    <operation name="GetRequesterStatistic">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
	<soap:body use="literal"/>
      </input>
      <output>
	<soap:body use="literal"/>
      </output>
    </operation>

    <!-- Notification bindings -->   
    <operation name="NotifyWorkers">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
	<soap:body use="literal"/>
      </input>
      <output>
	<soap:body use="literal"/>
      </output>
    </operation>   

    <operation name="SetWorkerAcceptLimit">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
	<soap:body use="literal"/>
      </input>
      <output>
	<soap:body use="literal"/>
      </output>
    </operation>   

    <operation name="GetWorkerAcceptLimit">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
	<soap:body use="literal"/>
      </input>
      <output>
	<soap:body use="literal"/>
      </output>
    </operation>   

    <operation name="BlockWorker">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
	<soap:body use="literal"/>
      </input>
      <output>
	<soap:body use="literal"/>
      </output>
    </operation>   

    <operation name="UnblockWorker">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
	<soap:body use="literal"/>
      </input>
      <output>
	<soap:body use="literal"/>
      </output>
    </operation>   

    <operation name="Help">
      <soap:operation soapAction="http://soap.amazon.com"/>
      <input>
	<soap:body use="literal"/>
      </input>
      <output>
	<soap:body use="literal"/>
      </output>
    </operation>

  </binding>
  
  <service name="AWSMechanicalTurkRequester">
    <port name="AWSMechanicalTurkRequesterPort" binding="tns:AWSMechanicalTurkRequesterBinding">
      <soap:address location="http://mechanicalturk.amazonaws.com/?Service=AWSMechanicalTurkRequester"/>
    </port>
  </service>

</definitions>
