<?xml version="1.0" encoding="UTF-8"?>
<!-- $Id:$ -->
<!-- edited with XMLSpy v2008 (http://www.altova.com) by NCSI Australia Pty Ltd (NCSI Australia Pty Ltd) -->
<!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Admin (Admin) -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xs:include schemaLocation="WSGNetworkStatus.xsd"/>
	<!--Version 2 : This comment specifies the XSD version reference. Updated for Project Mary-->
	<!--This XSD is used for the definitions of common Soap Header Message and the Status Reply header fields that WSG uses to receive/send messages from/to Service Provider-->
	<xs:simpleType name="WsgDate">
		<xs:annotation>
			<xs:documentation>This is a basic Date type created to receive the Date value in YYYY-MM-DD format as this is the default format in xs:date type</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:date"/>
	</xs:simpleType>
	<xs:simpleType name="WsgString">
		<xs:annotation>
			<xs:documentation>This is the default string data type used across all the elements to refer a common 'Any' data type</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:token">
			<xs:whiteSpace value="collapse"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="WsgTime">
		<xs:annotation>
			<xs:documentation>This is a basic Time type created to receive the Time value in HHMMSS format as this is the default format in xs:time type</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:time">
			<xs:whiteSpace value="collapse"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="WsgNum">
		<xs:annotation>
			<xs:documentation>This is the default Number data type used across all the elements to refer a common 'positiveInteger' data type</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:positiveInteger">
			<xs:whiteSpace value="collapse"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="WsgDateTime">
		<xs:annotation>
			<xs:documentation>This is a basic DateTime type created to receive the Date value in YYYY-MM-DDTHHMMSS.nnn format as this is the default format in xs:dateTime type</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:dateTime"/>
	</xs:simpleType>
	<xs:simpleType name="WsgNumBoolean">
		<xs:annotation>
			<xs:documentation>This is a basic Numeric boolean type accepting 0 or 1 value</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:boolean">
			<xs:pattern value="0|1"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="WsgBoolean">
		<xs:annotation>
			<xs:documentation>This is a basic boolean type accepting Y or N value</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:boolean"/>
	</xs:simpleType>
	<xs:element name="SoapHeaderMsg">
		<xs:annotation>
			<xs:documentation>This is the common header request element used as a SOAP Header message across different web services</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element name="ContextId" type="WsgString"/>
				<xs:element name="DealerId">
					<xs:simpleType>
						<xs:restriction base="WsgString">
							<xs:length value="5"/>
						</xs:restriction>
					</xs:simpleType>
				</xs:element>
				<xs:element name="DealerSubId" minOccurs="0">
					<xs:simpleType>
						<xs:restriction base="WsgString">
							<xs:maxLength value="5"/>
						</xs:restriction>
					</xs:simpleType>
				</xs:element>
				<xs:element name="BillingOption">
					<xs:simpleType>
						<xs:restriction base="WsgString">
							<xs:maxLength value="25"/>
							<xs:enumeration value="prepaid"/>
							<xs:enumeration value="postpaid"/>
						</xs:restriction>
					</xs:simpleType>
				</xs:element>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="StatusReply">
		<xs:annotation>
			<xs:documentation>This is the common status reply element used acrossed different messages</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element name="StatusFlag">
					<xs:simpleType>
						<xs:restriction base="WsgString">
							<xs:pattern value="Y|N"/>
						</xs:restriction>
					</xs:simpleType>
				</xs:element>
				<xs:element name="ErrorNumber" type="WsgString" minOccurs="0"/>
				<xs:element name="StatusText" minOccurs="0">
					<xs:simpleType>
						<xs:restriction base="WsgString">
							<xs:maxLength value="500"/>
						</xs:restriction>
					</xs:simpleType>
				</xs:element>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="Acknowledgement">
		<xs:annotation>
			<xs:documentation>This is the element used to send acknowledgement message to SP for receipt of a message</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element name="CurrentDate" type="WsgDate"/>
				<xs:element name="CurrentTime" type="WsgTime"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:complexType name="Fault">
		<xs:annotation>
			<xs:documentation>This is the SOAP Fault element type message</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="faultcode" type="WsgString"/>
			<xs:element name="faultstring" type="WsgString"/>
			<xs:element name="detail" type="WsgString"/>
		</xs:sequence>
	</xs:complexType>
	<xs:element name="EnquireTransactionStatusRequest">
		<xs:annotation>
			<xs:documentation>A status query can be carried out for a transaction for which a reply has not yet been received.</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element name="TransactionContextId">
					<xs:simpleType>
						<xs:restriction base="WsgNum"/>
					</xs:simpleType>
				</xs:element>
				<xs:element name="TransactionDetailFlag">
					<xs:simpleType>
						<xs:restriction base="WsgString">
							<xs:pattern value="Y|N|B"/>
						</xs:restriction>
					</xs:simpleType>
				</xs:element>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="EnquireTransactionStatusReply">
		<xs:annotation>
			<xs:documentation>Reply message for the EnquireTransactionStatusRequest</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="StatusReply"/>
				<xs:element name="MessageName">
					<xs:simpleType>
						<xs:restriction base="WsgString">
							<xs:maxLength value="32"/>
						</xs:restriction>
					</xs:simpleType>
				</xs:element>
				<xs:element name="StatusSummary">
					<xs:simpleType>
						<xs:restriction base="WsgString">
							<xs:maxLength value="500"/>
						</xs:restriction>
					</xs:simpleType>
				</xs:element>
				<xs:element name="EventDetails" minOccurs="0" maxOccurs="unbounded">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="EventDateTime" type="WsgDateTime"/>
							<xs:element name="EventDescription">
								<xs:simpleType>
									<xs:restriction base="WsgString">
										<xs:maxLength value="100"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="EventStatus">
								<xs:simpleType>
									<xs:restriction base="WsgString">
										<xs:maxLength value="100"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="ServiceOrderCompleteReply">
		<xs:annotation>
			<xs:documentation>Common Reply message for the Service Order Service Messages</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="StatusReply"/>
				<xs:element ref="NetworkStatus" minOccurs="0"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="FileTransferReply">
		<xs:annotation>
			<xs:documentation>Reply message for the File Transfer Request Message in the WsgFinancialService</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="StatusReply"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="Fault" type="Fault"/>
</xs:schema>
