496 lines
18 KiB
XML
496 lines
18 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
|
<xs:schema
|
|
xmlns:tns="http://ws.gdsp.vodafone.com/"
|
|
xmlns:xs="http://www.w3.org/2001/XMLSchema"
|
|
version="1.0"
|
|
targetNamespace="http://ws.gdsp.vodafone.com/">
|
|
|
|
<!-- Common types -->
|
|
|
|
<xs:element name="gdspHeader" nillable="true" type="tns:gdspHeader"></xs:element>
|
|
|
|
<xs:complexType name="gdspHeader">
|
|
<xs:sequence>
|
|
<xs:element name="gdspCredentials" type="tns:gdspCredentials" minOccurs="1"></xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="gdspCredentials">
|
|
<xs:sequence>
|
|
<xs:element name="customerId" type="xs:long" minOccurs="0"></xs:element>
|
|
<xs:element name="password" type="tns:tPassword" minOccurs="1"></xs:element>
|
|
<xs:element name="userId" type="tns:tUserId" minOccurs="1"></xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="returnCode">
|
|
<xs:sequence>
|
|
<xs:element name="majorReturnCode" type="xs:string" minOccurs="0"></xs:element>
|
|
<xs:element name="minorReturnCode" type="xs:string" minOccurs="0"></xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
|
|
<xs:simpleType name="tYesNoOptions">
|
|
<xs:restriction base="xs:string">
|
|
<xs:enumeration value="Y" />
|
|
<xs:enumeration value="N" />
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
|
|
<xs:simpleType name="tSmsMessageTypeOptions">
|
|
<xs:restriction base="xs:string">
|
|
<xs:enumeration value="Text" />
|
|
<xs:enumeration value="Binary" />
|
|
<xs:enumeration value="Unicode" />
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="tSmsPriorityOptions">
|
|
<xs:restriction base="xs:int">
|
|
<xs:enumeration value="0">
|
|
<xs:annotation>
|
|
<xs:documentation>Lowest Priority</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:enumeration>
|
|
<xs:enumeration value="1" />
|
|
<xs:enumeration value="2" />
|
|
<xs:enumeration value="3">
|
|
<xs:annotation>
|
|
<xs:documentation>Highest Priority</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:enumeration>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
|
|
<xs:simpleType name="tTriggerType">
|
|
<xs:restriction base="xs:string">
|
|
<xs:enumeration value="SMS" />
|
|
<xs:enumeration value="CSD">
|
|
<xs:annotation>
|
|
<xs:documentation>Note: CSD is not supported in this release</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:enumeration>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="tEntityNameOptions">
|
|
<xs:restriction base="xs:string">
|
|
<xs:enumeration value="CUSTOMER" />
|
|
<xs:enumeration value="CUSTOMERSERVICEPROFILE" />
|
|
<xs:enumeration value="DEVICE" />
|
|
<xs:enumeration value="USER" />
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
|
|
<xs:simpleType name="tDeviceUserId">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
The name identifying the user, for a device's credentials
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:restriction base="xs:string">
|
|
<xs:minLength value="1" />
|
|
<xs:maxLength value="16" />
|
|
<xs:pattern value="([\p{L}\p{N}_]+[\p{Pd}]*)+" />
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="tUserId">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
The name identifying the user
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:restriction base="xs:string">
|
|
<xs:minLength value="1" />
|
|
<xs:maxLength value="32" />
|
|
<xs:pattern value="([\p{L}\p{N}_]+[\p{Pd}]*)+" />
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="tUserName">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
The name identifying the user
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:restriction base="xs:string">
|
|
<xs:minLength value="1" />
|
|
<xs:maxLength value="32" />
|
|
<xs:pattern value="([\p{L}\p{N}_]+[\p{Pd}]*)+" />
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
|
|
|
|
<xs:simpleType name="tProvisioningProfileName">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
Provisioning Profile Name
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:restriction base="xs:string">
|
|
<xs:minLength value="0" />
|
|
<xs:maxLength value="64" />
|
|
<xs:pattern value="([\p{L}\p{N}_]+[.\p{Zs}\p{Pd}]*)*" />
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="tDeviceId">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
The device identifier. This is an IMSI
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:restriction base="xs:string">
|
|
<xs:minLength value="15" />
|
|
<xs:maxLength value="15" />
|
|
<xs:pattern value="[0-9]{15}" />
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="tCountryCode">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
The 2 character country code
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:restriction base="xs:string">
|
|
<xs:minLength value="0" />
|
|
<xs:maxLength value="2" />
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="tIccid">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
The device ICCID
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:restriction base="xs:string">
|
|
<xs:minLength value="18" />
|
|
<xs:maxLength value="20" />
|
|
<xs:pattern value="[0-9]{18,20}" />
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="tDeviceState">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
The device state. Obtain the list of values using getDeviceStateList
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:restriction base="xs:string">
|
|
<xs:minLength value="1" />
|
|
<xs:maxLength value="1" />
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="tImei">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
The IMEI
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:restriction base="xs:string">
|
|
<xs:minLength value="14" />
|
|
<xs:maxLength value="16" />
|
|
<xs:pattern value="[0-9]{14,16}" />
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="tTac">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
The TAC - the fist 6 or 8 digits of the IMEI
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:restriction base="xs:string">
|
|
<xs:minLength value="0" />
|
|
<xs:maxLength value="8" />
|
|
<xs:pattern value="([0-9]{6,8})?" />
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="tPassword">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
User Password
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:restriction base="xs:string">
|
|
<xs:minLength value="8" />
|
|
<xs:maxLength value="32" />
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="tDevicePassword">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
Device Password (RADIUS authentication)
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:restriction base="xs:string">
|
|
<xs:minLength value="1" />
|
|
<xs:maxLength value="16" />
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="tFullName">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
The full name of the user
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:restriction base="xs:string">
|
|
<xs:minLength value="0" />
|
|
<xs:maxLength value="40" />
|
|
<xs:pattern value="([\p{L}\p{N}_]+[.\p{Zs}\p{Pd}]*)+" />
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
|
|
<xs:simpleType name="tIpV4Address">
|
|
<xs:annotation>
|
|
<xs:documentation>Represents a dotted IP address.</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:restriction base="xs:string">
|
|
<xs:whiteSpace value="collapse" />
|
|
<xs:minLength value="0" />
|
|
<xs:maxLength value="15" />
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="tCustomerCode">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
The code identifying the customer
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:restriction base="xs:string">
|
|
<xs:minLength value="1" />
|
|
<xs:maxLength value="32" />
|
|
<xs:pattern value="([\p{L}\p{N}_]+[\p{Pd}]*)+" />
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="tCustomerName">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
The descriptive name of the customer
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:restriction base="xs:string">
|
|
<xs:minLength value="1" />
|
|
<xs:maxLength value="80" />
|
|
<xs:pattern value="[\p{L}\p{N}\p{P}\p{S}\p{Zs}]*" />
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="tCustomerServiceProfileName">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
The name identifying the customer service profile
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:restriction base="xs:string">
|
|
<xs:minLength value="0" />
|
|
<xs:maxLength value="32" />
|
|
<xs:pattern value="([\p{L}\p{N}_]+[.\p{Zs}\p{Pd}]*)+" />
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="tCustomerServiceProfileNameNillable">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
The name identifying the customer service profile
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:restriction base="xs:string">
|
|
<xs:minLength value="0" />
|
|
<xs:maxLength value="32" />
|
|
<xs:pattern value="([\p{L}\p{N}_]+[.\p{Zs}\p{Pd}]*)*" />
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="tCustomerServiceProfileDescription">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
The descriptive name of the customer service profile
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:restriction base="xs:string">
|
|
<xs:minLength value="1" />
|
|
<xs:maxLength value="80" />
|
|
<xs:pattern value="[\p{L}\p{N}\p{P}\p{S}\p{Zs}]*" />
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<!-- API Specific types -->
|
|
|
|
<!-- getDeviceDetails -->
|
|
<xs:element name="getDeviceDetails" type="tns:getDeviceDetails"></xs:element>
|
|
|
|
<xs:element name="getDeviceDetailsResponse" type="tns:getDeviceDetailsResponse"></xs:element>
|
|
|
|
<xs:complexType name="getDeviceDetails">
|
|
<xs:sequence>
|
|
<xs:element name="deviceId" type="tns:tDeviceId" minOccurs="1"></xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="getDeviceDetailsResponse">
|
|
<xs:sequence>
|
|
<xs:element name="return" type="tns:getDeviceDetailsResponseItem" minOccurs="0"></xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="getDeviceDetailsResponseItem">
|
|
<xs:sequence>
|
|
<xs:element name="returnCode" type="tns:returnCode" minOccurs="0"></xs:element>
|
|
<xs:element name="deviceId" type="tns:tDeviceId" minOccurs="1"></xs:element>
|
|
<xs:element name="customerServiceProfile" type="xs:string" minOccurs="1"></xs:element>
|
|
<xs:element name="state" type="xs:string" minOccurs="1"></xs:element>
|
|
<xs:element name="imei" type="xs:string" minOccurs="1"></xs:element>
|
|
<xs:element name="baseCountry" type="xs:string" minOccurs="1"></xs:element>
|
|
<xs:element name="customAttribute1" type="xs:string" minOccurs="1"></xs:element>
|
|
<xs:element name="customAttribute2" type="xs:string" minOccurs="1"></xs:element>
|
|
<xs:element name="customAttribute3" type="xs:string" minOccurs="1"></xs:element>
|
|
<xs:element name="customAttribute4" type="xs:string" minOccurs="1"></xs:element>
|
|
<xs:element name="customAttribute5" type="xs:string" minOccurs="1"></xs:element>
|
|
<xs:element name="deviceInformationList" type="tns:tDeviceInformationList" minOccurs="1"></xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="tDeviceInformationList">
|
|
<xs:sequence>
|
|
<xs:element name="deviceInformationItem" type="tns:tDeviceInformationItem" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="tDeviceInformationItem">
|
|
<xs:sequence>
|
|
<xs:element name="itemName" type="xs:string" minOccurs="1"></xs:element>
|
|
<xs:element name="itemType" type="xs:string" minOccurs="1"></xs:element>
|
|
<xs:element name="itemValue" type="xs:string" minOccurs="1"></xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
|
|
<!-- setDeviceDetailsv2 -->
|
|
<xs:element name="setDeviceDetailsv2" type="tns:setDeviceDetailsv2"></xs:element>
|
|
|
|
<xs:element name="setDeviceDetailsv2Response" type="tns:setDeviceDetailsv2Response"></xs:element>
|
|
|
|
<xs:complexType name="setDeviceDetailsv2">
|
|
<xs:sequence>
|
|
<xs:element name="deviceId" type="tns:tDeviceId" minOccurs="1"/>
|
|
<xs:element name="state" type="tns:tDeviceState" minOccurs="0"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="setDeviceDetailsv2Response">
|
|
<xs:sequence>
|
|
<xs:element name="return" type="tns:setDeviceDetailsv2ResponseItem" minOccurs="0"></xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="setDeviceDetailsv2ResponseItem">
|
|
<xs:sequence>
|
|
<xs:element name="returnCode" type="tns:returnCode" minOccurs="0"></xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
|
|
<!-- submitWUTrigger -->
|
|
<xs:element name="submitWUTrigger" type="tns:submitWUTrigger"></xs:element>
|
|
|
|
<xs:complexType name="submitWUTrigger">
|
|
<xs:sequence>
|
|
<xs:element name="deviceId" type="tns:tDeviceId" minOccurs="0"></xs:element>
|
|
<xs:element name="sourceId" type="xs:string" minOccurs="0"></xs:element>
|
|
<xs:element name="triggerType" type="tns:tTriggerType" minOccurs="0"></xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
|
|
<xs:element name="submitWUTriggerResponse" type="tns:submitWUTriggerResponse"></xs:element>
|
|
|
|
<xs:complexType name="submitWUTriggerResponse">
|
|
<xs:sequence>
|
|
<xs:element name="return" type="tns:wuTriggerResponse" minOccurs="0"></xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="wuTriggerResponse">
|
|
<xs:sequence>
|
|
<xs:element name="deviceId" type="tns:tDeviceId" minOccurs="0"></xs:element>
|
|
<xs:element name="returnCode" type="tns:returnCode" minOccurs="0"></xs:element>
|
|
<xs:element name="triggerType" type="xs:string" minOccurs="0"></xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
|
|
<!-- submitWUTriggerv2 -->
|
|
<xs:element name="submitWUTriggerv2" type="tns:submitWUTriggerv2"></xs:element>
|
|
|
|
<xs:complexType name="submitWUTriggerv2">
|
|
<xs:sequence>
|
|
<xs:element name="deviceId" type="tns:tDeviceId" minOccurs="0"></xs:element>
|
|
<xs:element name="sourceId" type="xs:string" minOccurs="0"></xs:element>
|
|
<xs:element name="triggerType" type="tns:tTriggerType" minOccurs="0"></xs:element>
|
|
<xs:element name="priority" type="tns:tSmsPriorityOptions" minOccurs="0"></xs:element>
|
|
<xs:element name="validityPeriod" type="xs:string" minOccurs="0"></xs:element>
|
|
<xs:element name="replaceIfPresent" type="tns:tYesNoOptions" minOccurs="0"></xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
|
|
<xs:element name="submitWUTriggerv2Response" type="tns:submitWUTriggerv2Response"></xs:element>
|
|
|
|
<xs:complexType name="submitWUTriggerv2Response">
|
|
<xs:sequence>
|
|
<xs:element name="return" type="tns:wuTriggerv2Response" minOccurs="0"></xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="wuTriggerv2Response">
|
|
<xs:sequence>
|
|
<xs:element name="deviceId" type="tns:tDeviceId" minOccurs="0"></xs:element>
|
|
<xs:element name="returnCode" type="tns:returnCode" minOccurs="0"></xs:element>
|
|
<xs:element name="triggerType" type="xs:string" minOccurs="0"></xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
|
|
<!-- submitSMSv2 -->
|
|
<xs:element name="submitSMSv2" type="tns:submitSMSv2"></xs:element>
|
|
|
|
<xs:element name="submitSMSv2Response" type="tns:submitSMSv2Response"></xs:element>
|
|
|
|
<xs:complexType name="submitSMSv2">
|
|
<xs:sequence>
|
|
<xs:element name="deviceId" type="tns:tDeviceId" minOccurs="0"></xs:element>
|
|
<xs:element name="sourceId" type="xs:string" minOccurs="0"></xs:element>
|
|
<xs:element name="messageData" type="xs:base64Binary" minOccurs="0"></xs:element>
|
|
<xs:element name="messageType" type="tns:tSmsMessageTypeOptions" minOccurs="0"></xs:element>
|
|
<xs:element name="messageUDH" type="tns:tYesNoOptions" minOccurs="0"></xs:element>
|
|
<xs:element name="priority" type="tns:tSmsPriorityOptions" minOccurs="0"></xs:element>
|
|
<xs:element name="validityPeriod" type="xs:string" minOccurs="0"></xs:element>
|
|
<xs:element name="replaceIfPresent" type="tns:tYesNoOptions" minOccurs="0"></xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="submitSMSv2Response">
|
|
<xs:sequence>
|
|
<xs:element name="return" type="tns:smsv2Response" minOccurs="0"></xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="smsv2Response">
|
|
<xs:sequence>
|
|
<xs:element name="deviceId" type="xs:string" minOccurs="0"></xs:element>
|
|
<xs:element name="messageReference" type="xs:string" minOccurs="0"></xs:element>
|
|
<xs:element name="returnCode" type="tns:returnCode" minOccurs="0"></xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
|
|
</xs:schema> |