<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XML Spy v4.4 U (http://www.xmlspy.com) by Andrea Martinotti (OmniTicket Network Administration) -->
<!-- edited with XMLSpy v2015 (x64) (http://www.altova.com) by Davide S. (OmniTicket Network / VGS Systems Engineering) -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xs:include schemaLocation="../xsd/APICommon.xsd"/>
	<xs:complexType name="DMGCATEGORYINFO">
		<xs:all>
			<xs:element name="CODE" type="xs:string">
				<xs:annotation>
					<xs:documentation>Is the category code</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="TYPE" type="xs:integer">
				<xs:annotation>
					<xs:documentation>Is the category type (1 means standard)</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="ID" type="xs:integer">
				<xs:annotation>
					<xs:documentation>Is the category ID</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="NAME" type="xs:string">
				<xs:annotation>
					<xs:documentation>Is the category name</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="DESCRIPTION" type="xs:string">
				<xs:annotation>
					<xs:documentation>Is the category description</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="MASKLIST" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Object that contains the list of masks</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence>
						<xs:element name="MASK" type="MASK" maxOccurs="unbounded">
							<xs:annotation>
								<xs:documentation>Object that contains info about the masks</xs:documentation>
							</xs:annotation>
						</xs:element>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="AK" type="xs:string">
				<xs:annotation>
					<xs:documentation>Is the category AK</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:all>
	</xs:complexType>
	<xs:complexType name="MASK">
		<xs:all>
			<xs:element name="NAME" type="xs:string">
				<xs:annotation>
					<xs:documentation>Is the mask name</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="DESCRIPTION" type="xs:string">
				<xs:annotation>
					<xs:documentation>Is the mask description</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="ID" type="xs:integer">
				<xs:annotation>
					<xs:documentation>Is the mask ID</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="FIELDLIST" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Object that contains the list of fields</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence>
						<xs:element name="FIELD" type="FIELD" maxOccurs="unbounded">
							<xs:annotation>
								<xs:documentation>Object that contains the info about the fields</xs:documentation>
							</xs:annotation>
						</xs:element>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="AK" type="xs:string">
				<xs:annotation>
					<xs:documentation>Is the mask AK</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:all>
	</xs:complexType>
	<xs:complexType name="FIELD">
		<xs:all>
			<xs:element name="SEARCHTYPE" type="xs:string"/>
			<xs:element name="DEFAULTVALUE" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Is the default value of the field</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="LABEL" type="xs:string">
				<xs:annotation>
					<xs:documentation>Is the label of the field</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="OBJTYPE" type="xs:integer">
				<xs:annotation>
					<xs:documentation>Is the object type of the field</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="DATATYPE" type="xs:string">
				<xs:annotation>
					<xs:documentation>Is the data type of the field (1 = textbox, 2 = drowdown, 3 = ComboBox, 4 = image, 5 = memo, 6 = attachment, 7 = radio, 8 = checkbox)</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="FIELDTYPE" type="xs:integer" minOccurs="0"/>
			<xs:element name="I18NLIST" type="I18NLIST">
				<xs:annotation>
					<xs:documentation>Object that contains the hint translations</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="FILTERLIST" type="xs:string"/>
			<xs:element name="DATAPROVIDER" type="xs:string">
				<xs:annotation>
					<xs:documentation>Is the dataprovider associated with this field</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="VISIBLELV" type="xs:integer">
				<xs:annotation>
					<xs:documentation>Is the visibility level of the field</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="EDITLV" type="xs:integer">
				<xs:annotation>
					<xs:documentation>Is the editability level of the field</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="VALIDATION" type="VALIDATION">
				<xs:annotation>
					<xs:documentation>Object that contains the info about validations</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="DISPLAY" type="DISPLAY">
				<xs:annotation>
					<xs:documentation>Object that contains the info about display</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="MASK" type="MASK" minOccurs="0">
				<xs:annotation>
					<xs:documentation>if the data type of the field is 13 = Detail Mask</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:all>
	</xs:complexType>
	<xs:complexType name="VALIDATION">
		<xs:all>
			<xs:element name="MINLENGTH" type="xs:int">
				<xs:annotation>
					<xs:documentation>Minimum length of the field</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="MAXLENGTH" type="xs:int">
				<xs:annotation>
					<xs:documentation>Maximum length of the field</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="REQUIRED" type="xs:boolean">
				<xs:annotation>
					<xs:documentation>The field is required</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="EQUALTO" type="xs:int" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The field must match the content of the field with this object type</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="DISPLAYFORMAT" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Required formato of the field</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="DIGITS" type="xs:boolean">
				<xs:annotation>
					<xs:documentation>The field accepts only digits</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="EMAIL" type="xs:boolean">
				<xs:annotation>
					<xs:documentation>The field accepts only emails</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="LETTERSONLY" type="xs:boolean">
				<xs:annotation>
					<xs:documentation>The field accpets only letters</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="DATE" type="xs:boolean">
				<xs:annotation>
					<xs:documentation>The field accepts only dates</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="MIN" type="xs:integer">
				<xs:annotation>
					<xs:documentation>Minumum value</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="MAX" type="xs:integer">
				<xs:annotation>
					<xs:documentation>Maximum value</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="RANGE" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Accepted range of values (array)</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="ALPHANUMERIC" type="xs:boolean">
				<xs:annotation>
					<xs:documentation>The field accepts only alphanumeric values</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="CHOICES" minOccurs="0">
				<xs:complexType>
					<xs:all>
						<xs:element name="MIN" type="xs:integer"/>
						<xs:element name="MAX" type="xs:integer"/>
					</xs:all>
				</xs:complexType>
			</xs:element>
			<xs:element name="DEPENDS" minOccurs="0">
				<xs:complexType>
					<xs:all>
						<xs:element name="VALUE" type="xs:string">
							<xs:annotation>
								<xs:documentation>Value of the dependent field</xs:documentation>
							</xs:annotation>
						</xs:element>
						<xs:element name="CHECKTYPE" type="xs:int"/>
						<xs:element name="OBJTYPE" type="xs:int">
							<xs:annotation>
								<xs:documentation>The field is dependent to the field with this object type</xs:documentation>
							</xs:annotation>
						</xs:element>
					</xs:all>
				</xs:complexType>
			</xs:element>
		</xs:all>
	</xs:complexType>
	<xs:complexType name="DISPLAY">
		<xs:all>
			<xs:element name="COLUMN" type="xs:integer">
				<xs:annotation>
					<xs:documentation>Column position of field</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="ROW" type="xs:integer">
				<xs:annotation>
					<xs:documentation>Row position of field</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="COLSPAN" type="xs:integer">
				<xs:annotation>
					<xs:documentation>Colspan of field</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="WIDTH" type="xs:integer">
				<xs:annotation>
					<xs:documentation>Width of field</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="TABORDER" type="xs:integer" minOccurs="0"/>
		</xs:all>
	</xs:complexType>
	<xs:complexType name="FINDALLACCOUNTCATEGORIESRESP">
		<xs:all>
			<xs:element name="ERROR" type="ERROR"/>
			<xs:element name="DMGCATEGORYLIST" minOccurs="0">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="DMGCATEGORY" type="DMGCATEGORYINFO" maxOccurs="unbounded"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:all>
	</xs:complexType>
	<xs:complexType name="READACCOUNTCATEGORYBYCODERESP">
		<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="DMGCATEGORY" type="DMGCATEGORYINFO" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Object that contains info about the demographic category</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:all>
	</xs:complexType>
	<xs:complexType name="READACCOUNTCATEGORYBYAKRESP">
		<xs:all>
			<xs:element name="ERROR" type="ERROR"/>
			<xs:element name="DMGCATEGORY" type="DMGCATEGORYINFO" minOccurs="0"/>
		</xs:all>
	</xs:complexType>
	<xs:complexType name="READDATAPROVIDERBYCODERESP">
		<xs:all>
			<xs:element name="ERROR" type="ERROR"/>
			<xs:element name="DATAPROVIDER" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Object containing the data provider details</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:all>
						<xs:element name="CODE" type="xs:string">
							<xs:annotation>
								<xs:documentation>Data provider code</xs:documentation>
							</xs:annotation>
						</xs:element>
						<xs:element name="NAME" type="xs:string">
							<xs:annotation>
								<xs:documentation>Data provider Name</xs:documentation>
							</xs:annotation>
						</xs:element>
						<xs:element name="ITEMLIST">
							<xs:annotation>
								<xs:documentation>Object containing the data provider item list</xs:documentation>
							</xs:annotation>
							<xs:complexType>
								<xs:sequence>
									<xs:element name="ITEM" maxOccurs="unbounded">
										<xs:annotation>
											<xs:documentation>Object containing the data provider item details</xs:documentation>
										</xs:annotation>
										<xs:complexType>
											<xs:all>
												<xs:element name="CODE" type="xs:string">
													<xs:annotation>
														<xs:documentation>Item Code</xs:documentation>
													</xs:annotation>
												</xs:element>
												<xs:element name="DESCRIPTION" type="xs:string">
													<xs:annotation>
														<xs:documentation>Item description</xs:documentation>
													</xs:annotation>
												</xs:element>
												<xs:element name="SORTORDER" type="xs:int">
													<xs:annotation>
														<xs:documentation>Item sort order</xs:documentation>
													</xs:annotation>
												</xs:element>
												<xs:element name="ADDITIONALCODE" type="xs:string">
													<xs:annotation>
														<xs:documentation>Item additional code</xs:documentation>
													</xs:annotation>
												</xs:element>
												<xs:element name="DIMENSION" type="DIMENSION" minOccurs="0"/>
											</xs:all>
										</xs:complexType>
									</xs:element>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
					</xs:all>
				</xs:complexType>
			</xs:element>
		</xs:all>
	</xs:complexType>
	<xs:complexType name="READEXTENEDINFOBYAKRESP">
		<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="DMGCATEGORY" type="DMGCATEGORYINFO" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Object that contains info about the demographic category</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:all>
	</xs:complexType>
	<xs:complexType name="READEXTENEDINFOBYCODERESP">
		<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="DMGCATEGORY" type="DMGCATEGORYINFO" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Object that contains info about the demographic category</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:all>
	</xs:complexType>
	<xs:complexType name="READIMAGEBYAKRESP">
		<xs:all>
			<xs:element name="ERROR" type="ERROR"/>
			<xs:element name="IMAGE">
				<xs:complexType>
					<xs:all>
						<xs:element name="VALUE" type="xs:string"/>
						<xs:element name="FILENAME" type="xs:string"/>
					</xs:all>
				</xs:complexType>
			</xs:element>
		</xs:all>
	</xs:complexType>
	<xs:complexType name="READATTACHMENTBYAKRESP">
		<xs:all>
			<xs:element name="ERROR" type="ERROR"/>
			<xs:element name="ATTACHMENT">
				<xs:complexType>
					<xs:all>
						<xs:element name="VALUE" type="xs:string"/>
						<xs:element name="FILENAME" type="xs:string"/>
					</xs:all>
				</xs:complexType>
			</xs:element>
		</xs:all>
	</xs:complexType>
	<xs:complexType name="SEARCHDATAMASKREQ">
		<xs:all>
			<xs:element name="DMGCATEGORYAKLIST" minOccurs="0">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="DMGCATEGORYAKITEM" maxOccurs="unbounded">
							<xs:complexType>
								<xs:all>
									<xs:element name="DMGCATEGORYAK" type="xs:string"/>
								</xs:all>
							</xs:complexType>
						</xs:element>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="MATRIXCELLAK" type="xs:string" minOccurs="0"/>
			<xs:element name="SEARCHINALLDATAMASKCATEGORIES" type="xs:integer" minOccurs="0">
				<xs:annotation>
					<xs:documentation>If = 1 the search will be done in all DataMask categories and not only in Account Categories. </xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="PAGEREQ" minOccurs="0">
				<xs:complexType>
					<xs:complexContent>
						<xs:extension base="PAGEREQ">
							<xs:sequence>
								<xs:element name="SORTFIELD" minOccurs="0">
									<xs:simpleType>
										<xs:restriction base="xs:string">
											<xs:enumeration value="TYPE"/>
											<xs:enumeration value="AK"/>
											<xs:enumeration value="NAME"/>
											<xs:enumeration value="DESCRIPTION"/>
										</xs:restriction>
									</xs:simpleType>
								</xs:element>
							</xs:sequence>
						</xs:extension>
					</xs:complexContent>
				</xs:complexType>
			</xs:element>
		</xs:all>
	</xs:complexType>
	<xs:complexType name="SEARCHDATAMASKRESP">
		<xs:all>
			<xs:element name="ERROR" type="ERROR"/>
			<xs:element name="DMGCATEGORYLIST" minOccurs="0">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="DMGCATEGORY" type="DMGCATEGORYINFO" maxOccurs="unbounded"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="PAGERESP" type="PAGERESP"/>
		</xs:all>
	</xs:complexType>
	<xs:complexType name="SAVEDMGTRANSLATIONREQ">
		<xs:sequence>
			<xs:element name="LANGUAGEAK" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Is the language AK</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="DMGTYPE" type="xs:int">
				<xs:annotation>
					<xs:documentation>Identify the type of Mask Category                           7=Event             8=Performance</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="ENTITYAK" type="xs:string">
				<xs:annotation>
					<xs:documentation>Identify the Item AK linked to the Dmg (Event or Performance)</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="FIELDLIST">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="FIELD" maxOccurs="unbounded">
							<xs:annotation>
								<xs:documentation>Object that contains the info about the field translations</xs:documentation>
							</xs:annotation>
							<xs:complexType>
								<xs:all>
									<xs:element name="OBJTYPE" type="xs:int">
										<xs:annotation>
											<xs:documentation>Is the field object type</xs:documentation>
										</xs:annotation>
									</xs:element>
									<xs:element name="VALUE" type="xs:string">
										<xs:annotation>
											<xs:documentation>Is the field value .. in case of Image or Attachment it contains the File content (hexadecimal value ).</xs:documentation>
										</xs:annotation>
									</xs:element>
									<xs:element name="FIELDDATATYPE" type="xs:integer">
										<xs:annotation>
											<xs:documentation>1= TEXT                            4=IMAGE                      5= MEMO            6=ATTACHMENT           10=HTML MEMO</xs:documentation>
										</xs:annotation>
									</xs:element>
									<xs:element name="FILENAME" type="xs:string" minOccurs="0">
										<xs:annotation>
											<xs:documentation>Name of the Image or Attachment file ( mandatory for Images and Attachments )</xs:documentation>
										</xs:annotation>
									</xs:element>
								</xs:all>
							</xs:complexType>
						</xs:element>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="SAVEDMGTRANSLATIONRESP">
		<xs:all>
			<xs:element name="ERROR" type="ERROR"/>
		</xs:all>
	</xs:complexType>
	<xs:complexType name="SAVEMASKTABLEITEMREQ">
		<xs:sequence>
			<xs:element name="MASKTABLECODE" type="xs:string"/>
			<xs:element name="MASKTABLEITEMLIST">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="MASKTABLEITEM" maxOccurs="unbounded">
							<xs:complexType>
								<xs:sequence>
									<xs:element name="CODE" type="xs:string">
										<xs:annotation>
											<xs:documentation>If code exists data will be updated</xs:documentation>
										</xs:annotation>
									</xs:element>
									<xs:element name="DESCRIPTION" type="xs:string"/>
									<xs:element name="ENABLED" type="xs:boolean"/>
									<xs:element name="ATTRIBUTEAK" type="xs:string" minOccurs="0"/>
									<xs:element name="ADDITIONALCODE" type="xs:string" minOccurs="0"/>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="SAVEMASKTABLEITEMRESP">
		<xs:sequence>
			<xs:element name="ERROR" type="ERROR"/>
			<xs:element name="MASKTABLEITEMLIST">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="MASKTABLEITEM" maxOccurs="unbounded">
							<xs:complexType>
								<xs:sequence>
									<xs:element name="CODE" type="xs:string"/>
									<xs:element name="ERROR" type="ERROR"/>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
</xs:schema>
