<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2015 (x64) (http://www.altova.com) by Fulvio Di Palma (OmniTicket Network / VGS Systems Engineering) -->
<!-- edited with XML Spy v4.4 U (http://www.xmlspy.com) by Andrea Martinotti (OmniTicket Network Administration) -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xs:include schemaLocation="../xsd/APICommon.xsd"/>
	<xs:complexType name="CODE">
		<xs:sequence>
			<xs:element name="CODE" type="xs:string"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="PAYMENTMETHODLIST">
		<xs:sequence>
			<xs:element name="PAYMENTMETHOD" type="PAYMENTMETHOD" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Object that contains the info about the payment Method</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="PRICELISTLIST">
		<xs:sequence>
			<xs:element name="PRICELIST" type="PRICELIST" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Object that contains the info about the price list</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="ROLE">
		<xs:sequence>
			<xs:element name="NAME" type="xs:string"/>
			<xs:element name="DEFAULTROLE" type="xs:boolean"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="ROLELIST">
		<xs:sequence minOccurs="0">
			<xs:element name="ROLE" type="ROLE" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="SAVEUSERROLE">
		<xs:sequence>
			<xs:element name="AK">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:enumeration value="AK"/>
						<xs:enumeration value="DATETIME"/>
						<xs:enumeration value="NAME"/>
						<xs:enumeration value="STATUS"/>
						<xs:enumeration value="PRICETABLE.AK"/>
						<xs:enumeration value="OPENINGTIME"/>
						<xs:enumeration value="CLOSINGTIME"/>
						<xs:enumeration value="EVENT.AK"/>
						<xs:enumeration value="OPENINGSALE"/>
						<xs:enumeration value="CLOSINGSALE"/>
						<xs:enumeration value="SELLABLE"/>
						<xs:enumeration value="BLOCKED"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="DEFAULTROLE" type="xs:boolean"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="SAVEUSERROLELIST">
		<xs:sequence minOccurs="0">
			<xs:element name="ROLE" type="SAVEUSERROLE" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="SEARCHAKLIST">
		<xs:sequence>
			<xs:element name="AK" type="CODE" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="SEARCHCODELIST">
		<xs:sequence>
			<xs:element name="CODE" type="CODE" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="SEARCHROLELIST">
		<xs:sequence>
			<xs:element name="ROLE" type="CODE" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="USERINFO">
		<xs:all>
			<xs:element name="AK" type="xs:string"/>
			<xs:element name="CODE" type="xs:string"/>
			<xs:element name="NAME" type="xs:string"/>
			<xs:element name="DESCRIPTION" type="xs:string"/>
			<xs:element name="EXTAUTH" type="xs:string"/>
			<xs:element name="NOTE" type="xs:string"/>
			<xs:element name="STATUS" type="xs:string"/>
			<xs:element name="ROLELIST" type="ROLELIST" minOccurs="0"/>
			<xs:element name="EXPIRATIONDATE" type="xs:date" minOccurs="0"/>
		</xs:all>
	</xs:complexType>
	<xs:complexType name="USERINFOLIST">
		<xs:sequence>
			<xs:element name="USERINFO" type="USERINFO" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="USERROLE">
		<xs:sequence>
			<xs:element name="AK" type="xs:string"/>
			<xs:element name="CODE" type="xs:string"/>
			<xs:element name="NAME" type="xs:string"/>
			<xs:element name="DESCRIPTION" type="xs:string"/>
			<xs:element name="NOTE" type="xs:string"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="USERROLELIST">
		<xs:sequence>
			<xs:element name="USERROLE" type="USERROLE" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="CHECKSESSIONRESP">
		<xs:all>
			<xs:element name="ERROR" type="ERROR"/>
			<xs:element name="APPSERVERVERSION" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Is the version of the Application Server</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:all>
	</xs:complexType>
	<xs:complexType name="FINDALLPAYMENTRESP">
		<xs:all>
			<xs:element name="ERROR" type="ERROR">
				<xs:annotation>
					<xs:documentation>Object that contains info about the result of the operation</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="PAYMENTMETHODLIST" type="PAYMENTMETHODLIST" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Object that contains the info about the payment method associated to the logged in workstation</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:all>
	</xs:complexType>
	<xs:complexType name="SAVEUSERREQ">
		<xs:sequence>
			<xs:element name="AK" type="xs:string" minOccurs="0"/>
			<xs:element name="CODE" type="xs:string" minOccurs="0"/>
			<xs:element name="NAME" type="xs:string" minOccurs="0"/>
			<xs:element name="DESC" type="xs:string" minOccurs="0"/>
			<xs:element name="EXTAUTH" type="xs:string" minOccurs="0"/>
			<xs:element name="NOTE" type="xs:string" minOccurs="0"/>
			<xs:element name="ROLELIST" type="SAVEUSERROLELIST" minOccurs="0"/>
			<xs:element name="STATUS" type="STATUS" minOccurs="0"/>
			<xs:element name="PASSWORD" type="xs:string" minOccurs="0"/>
			<xs:element name="RESETPASSWORD" type="xs:boolean" minOccurs="0"/>
			<xs:element name="EXPIRATIONDATE" type="xs:date" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="SAVEUSERRESP">
		<xs:all>
			<xs:element name="ERROR" type="ERROR"/>
			<xs:element name="USERINFOLIST" type="USERINFOLIST" minOccurs="0"/>
		</xs:all>
	</xs:complexType>
	<xs:complexType name="SEARCHUSERREQ">
		<xs:sequence>
			<xs:element name="AKLIST" type="SEARCHAKLIST" minOccurs="0"/>
			<xs:element name="CODELIST" type="SEARCHCODELIST" minOccurs="0"/>
			<xs:element name="ROLELIST" type="SEARCHROLELIST" minOccurs="0"/>
			<xs:element name="NAME" type="xs:string" minOccurs="0"/>
			<xs:element name="DESC" type="xs:string" minOccurs="0"/>
			<xs:element name="EXTAUTH" type="xs:string" minOccurs="0"/>
			<xs:element name="STATUS" type="STATUS" minOccurs="0"/>
			<xs:element name="PAGEREQ" minOccurs="0">
				<xs:complexType>
					<xs:complexContent>
						<xs:extension base="PAGEREQ">
							<xs:sequence>
								<xs:element name="SORTFIELD" minOccurs="0">
									<xs:annotation>
										<xs:documentation>AK
CODE
NAME
STATUS</xs:documentation>
									</xs:annotation>
									<xs:simpleType>
										<xs:restriction base="xs:string">
											<xs:enumeration value="AK"/>
											<xs:enumeration value="CODE"/>
											<xs:enumeration value="NAME"/>
											<xs:enumeration value="STATUS"/>
										</xs:restriction>
									</xs:simpleType>
								</xs:element>
							</xs:sequence>
						</xs:extension>
					</xs:complexContent>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="SEARCHUSERRESP">
		<xs:all>
			<xs:element name="ERROR" type="ERROR"/>
			<xs:element name="USERINFOLIST" type="USERINFOLIST" minOccurs="0"/>
			<xs:element name="PAGERESP" type="PAGERESP"/>
		</xs:all>
	</xs:complexType>
	<xs:complexType name="SEARCHUSERROLEREQ">
		<xs:sequence>
			<xs:element name="AKLIST" type="SEARCHAKLIST" minOccurs="0"/>
			<xs:element name="CODELIST" type="SEARCHCODELIST" minOccurs="0"/>
			<xs:element name="PAGEREQ" minOccurs="0">
				<xs:complexType>
					<xs:complexContent>
						<xs:extension base="PAGEREQ">
							<xs:sequence>
								<xs:element name="SORTFIELD" minOccurs="0">
									<xs:annotation>
										<xs:documentation>AK
CODE
NAME
STATUS</xs:documentation>
									</xs:annotation>
									<xs:simpleType>
										<xs:restriction base="xs:string">
											<xs:enumeration value="AK"/>
											<xs:enumeration value="CODE"/>
											<xs:enumeration value="NAME"/>
											<xs:enumeration value="STATUS"/>
										</xs:restriction>
									</xs:simpleType>
								</xs:element>
							</xs:sequence>
						</xs:extension>
					</xs:complexContent>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="SEARCHUSERROLERESP">
		<xs:all>
			<xs:element name="ERROR" type="ERROR">
				<xs:annotation>
					<xs:documentation>Object that contains info about the result of the operation</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="USERROLELIST" type="USERROLELIST" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Object that contains the info about the user group</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="PAGERESP" type="PAGERESP"/>
		</xs:all>
	</xs:complexType>
	<xs:simpleType name="STATUS">
		<xs:restriction base="xs:int">
			<xs:enumeration value="0"/>
			<xs:enumeration value="1"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="USERLOGINRESP">
		<xs:all>
			<xs:element name="ERROR" type="ERROR">
				<xs:annotation>
					<xs:documentation>Object that contains info about the result of the operation</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="SESSIONID" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Is the token that need to be used for all the following web services calls</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="USERCODE" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Is the user used to login</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="APPSERVERVERSION" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Is the version of the Application Server</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="LANGUAGEID" type="xs:integer" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Is the default language for the logged in user (-1 means unset)</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="PASSWORDEXPIRATION" type="xs:date" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Is the password expiration date</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="USERAK" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Is the AK of the logged in user</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="PRICELISTLIST" type="PRICELISTLIST" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Object that contains the info about the price lists associated to the logged in workstation</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="PAYMENTMETHODLIST" type="PAYMENTMETHODLIST" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Object that contains the info about the payment method associated to the logged in workstation</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:all>
	</xs:complexType>
	<xs:complexType name="USERLOGOUTRESP">
		<xs:all>
			<xs:element name="ERROR" type="ERROR"/>
		</xs:all>
	</xs:complexType>
	<xs:complexType name="RESETISAPICACHERESP">
		<xs:all>
			<xs:element name="ERROR" type="ERROR"/>
		</xs:all>
	</xs:complexType>
</xs:schema>
