<definitions xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
xmlns:cai3g="http://schemas.ericsson.com/cai3g1.2/"
targetNamespace="http://schemas.ericsson.com/cai3g1.2
/">
<import namespace="http://schemas.ericsson.com/cai3g1.2
/"
location="cai3g1.2_.xsd"/>
<message name="CreateRequest">
<part name="parameters" element="cai3g:Create"/>
</message>
<message name="CreateResponse">
<part name="parameters" element="cai3g:CreateResponse"/>
</message>
<message name="GetRequest">
<part name="parameters" element="cai3g:Get"/>
</message>
<message name="GetResponse">
<part name="parameters" element="cai3g:GetResponse"/>
</message>
<message name="SetRequest">
<part name="parameters" element="cai3g:Set"/>
</message>
<message name="SetResponse">
<part name="parameters" element="cai3g:SetResponse"/>
</message>
<message name="DeleteRequest">
<part name="parameters" element="cai3g:Delete"/>
</message>
<message name="DeleteResponse">
<part name="parameters" element="cai3g:DeleteResponse"/>
69 2/155 19-FAY 302 0003 Uen A2 2008-07-25
Generic CAI3G Interface 1.2
</message>
<message name="SearchRequest">
<part name="parameters" element="cai3g:Search"/>
</message>
<message name="SearchResponse">
<part name="parameters" element="cai3g:SearchResponse"/>
</message>
<message name="LoginRequest">
<part name="parameters" element="cai3g:Login"/>
</message>
<message name="LoginResponse">
<part name="parameters" element="cai3g:LoginResponse"/>
</message>
<message name="LogoutRequest">
<part name="parameters" element="cai3g:Logout"/>
</message>
<message name="LogoutResponse">
<part name="parameters" element="cai3g:LogoutResponse"/>
</message>
<message name="NotifyResponse">
<part name="parameters" element="cai3g:NotifyResponse"/>
</message>
<message name="UnsubscribeResponse">
<part name="parameters" element="cai3g:UnsubscribeResponse"/>
</message>
<message name="HeadInfo">
<part name="sessionId" element="cai3g:SessionId"/>
<part name="transactionId" element="cai3g:TransactionId"/>
<part name="sequenceId" element="cai3g:SequenceId"/>
</message>
<message name="SubscribeRequest">
<part name="parameters" element="cai3g:Subscribe"/>
</message>
<message name="SubscribeResponse">
<part name="parameters" element="cai3g:SubscribeResponse"/>
</message>
<message name="UnsubscribeRequest">
<part name="parameters" element="cai3g:Unsubscribe"/>
</message>
<message name="NotifyRequest">
<part name="parameters" element="cai3g:Notify"/>
</message>
<message name="Cai3gFault">
<part name="parameters" element="cai3g:Cai3gFault"/>
</message>
<message name="Cai3gHeaderFault">
<part name="sessionIdFault" type="cai3g:SessionIdFault"/>
<part name="transactionIdFault"
type="cai3g:TransactionIdFault"/>
<part name="sequenceIdFault" type="cai3g:SequenceIdFault"/>
</message>
70 2/155 19-FAY 302 0003 Uen A2 2008-07-25
Appendix B (Provisioning Service WSDL File)
<portType name="Provisioning">
<operation name="Create">
<input message="cai3g:CreateRequest"/>
<output message="cai3g:CreateResponse"/>
<fault name="Cai3gFault" message="cai3g:Cai3gFault"/>
</operation>
<operation name="Delete">
<input message="cai3g:DeleteRequest"/>
<output message="cai3g:DeleteResponse"/>
<fault name="Cai3gFault" message="cai3g:Cai3gFault"/>
</operation>
<operation name="Get">
<input message="cai3g:GetRequest"/>
<output message="cai3g:GetResponse"/>
<fault name="Cai3gFault" message="cai3g:Cai3gFault"/>
</operation>
<operation name="Set">
<input message="cai3g:SetRequest"/>
<output message="cai3g:SetResponse"/>
<fault name="Cai3gFault" message="cai3g:Cai3gFault"/>
</operation>
<operation name="Search">
<input message="cai3g:SearchRequest"/>
<output message="cai3g:SearchResponse"/>
<fault name="Cai3gFault" message="cai3g:Cai3gFault"/>
</operation>
</portType>
<portType name="SessionControl">
<operation name="Login">
<input message="cai3g:LoginRequest"/>
<output message="cai3g:LoginResponse"/>
<fault name="Cai3gFault" message="cai3g:Cai3gFault"/>
</operation>
<operation name="Logout">
<input message="cai3g:LogoutRequest"/>
<output message="cai3g:LogoutResponse"/>
<fault name="Cai3gFault" message="cai3g:Cai3gFault"/>
</operation>
</portType>
<portType name="Notification">
<operation name="Subscribe">
<input message="cai3g:SubscribeRequest"/>
<output message="cai3g:SubscribeResponse"/>
<fault name="Cai3gFault" message="cai3g:Cai3gFault"/>
</operation>
<operation name="Notify">
<input message="cai3g:NotifyRequest"/>
<output message="cai3g:NotifyResponse"/>
</operation>
<operation name="Unsubscribe">
<input message="cai3g:UnsubscribeRequest"/>
71 2/155 19-FAY 302 0003 Uen A2 2008-07-25
Generic CAI3G Interface 1.2
<output message="cai3g:UnsubscribeResponse"/>
<fault name="Cai3gFault" message="cai3g:Cai3gFault"/>
</operation>
</portType>
<binding name="Provisioning" type="cai3g:Provisioning">
<soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="Create">
<soap:operation soapAction="CAI3G#Create" style="document"/>
<input>
<soap:body use="literal"/>
<soap:header message="cai3g:HeadInfo" part="sessionId"
use="literal"/>
<soap:header message="cai3g:HeadInfo" part="transactionId"
use="literal"/>
<soap:header message="cai3g:HeadInfo" part="sequenceId"
use="literal"/>
</input>
<output>
<soap:body use="literal"/>
<soap:header message="cai3g:HeadInfo" part="sessionId"
use="literal">
<soap:headerfault message="cai3g:Cai3gHeaderFault"
part="sessionIdFault" use="literal"/>
</soap:header>
<soap:header message="cai3g:HeadInfo" part="transactionId"
use="literal">
<soap:headerfault message="cai3g:Cai3gHeaderFault"
part="transactionIdFault" use="literal"/>
</soap:header>
<soap:header message="cai3g:HeadInfo" part="sequenceId"
use="literal">
<soap:headerfault message="cai3g:Cai3gHeaderFault"
part="sequenceIdFault" use="literal"/>
</soap:header>
</output>
<fault name="Cai3gFault">
<soap:fault name="Cai3gFault" use="literal"/>
</fault>
</operation>
<operation name="Delete">
<soap:operation soapAction="CAI3G#Delete" style=
"document"/>
<input>
<soap:body use="literal"/>
<soap:header message="cai3g:HeadInfo" part="sessionId"
use="literal"/>
<soap:header message="cai3g:HeadInfo" part="transactionId"
use="literal"/>
<soap:header message="cai3g:HeadInfo" part="sequenceId"
use="literal"/>
72 2/155 19-FAY 302 0003 Uen A2 2008-07-25
Appendix B (Provisioning Service WSDL File)
</input>
<output>
<soap:body use="literal"/>
<soap:header message="cai3g:HeadInfo" part="sessionId"
use="literal">
<soap:headerfault message="cai3g:Cai3gHeaderFault"
part="sessionIdFault" use="literal"/>
</soap:header>
<soap:header message="cai3g:HeadInfo" part="transactionId"
use="literal">
<soap:headerfault message="cai3g:Cai3gHeaderFault"
part="transactionIdFault" use="literal"/>
</soap:header>
<soap:header message="cai3g:HeadInfo" part="sequenceId"
use="literal">
<soap:headerfault message="cai3g:Cai3gHeaderFault"
part="sequenceIdFault" use="literal"/>
</soap:header>
</output>
<fault name="Cai3gFault">
<soap:fault name="Cai3gFault" use="literal"/>
</fault>
</operation>
<operation name="Get">
<soap:operation soapAction="CAI3G#Get" style=
"document"/>
<input>
<soap:body use="literal"/>
<soap:header message="cai3g:HeadInfo" part="sessionId"
use="literal"/>
<soap:header message="cai3g:HeadInfo" part="transactionId"
use="literal"/>
<soap:header message="cai3g:HeadInfo" part="sequenceId"
use="literal"/>
</input>
<output>
<soap:body use="literal"/>
<soap:header message="cai3g:HeadInfo" part="sessionId"
use="literal">
<soap:headerfault message="cai3g:Cai3gHeaderFault"
part="sessionIdFault" use="literal"/>
</soap:header>
<soap:header message="cai3g:HeadInfo" part="transactionId"
use="literal">
<soap:headerfault message="cai3g:Cai3gHeaderFault"
part="transactionIdFault" use="literal"/>
</soap:header>
<soap:header message="cai3g:HeadInfo" part="sequenceId"
use="literal">
<soap:headerfault message="cai3g:Cai3gHeaderFault"
part="sequenceIdFault" use="literal"/>
73 2/155 19-FAY 302 0003 Uen A2 2008-07-25
Generic CAI3G Interface 1.2
</soap:header>
</output>
<fault name="Cai3gFault">
<soap:fault name="Cai3gFault" use="literal"/>
</fault>
</operation>
<operation name="Set">
<soap:operation soapAction="CAI3G#Set" style="document"/>
<input>
<soap:body use="literal"/>
<soap:header message="cai3g:HeadInfo" part="sessionId"
use="literal"/>
<soap:header message="cai3g:HeadInfo" part="transactionId"
use="literal"/>
<soap:header message="cai3g:HeadInfo" part="sequenceId"
use="literal"/>
</input>
<output>
<soap:body use="literal"/>
<soap:header message="cai3g:HeadInfo" part="sessionId"
use="literal">
<soap:headerfault message="cai3g:Cai3gHeaderFault"
part="sessionIdFault" use="literal"/>
</soap:header>
<soap:header message="cai3g:HeadInfo" part="transactionId"
use="literal">
<soap:headerfault message="cai3g:Cai3gHeaderFault"
part="transactionIdFault" use="literal"/>
</soap:header>
<soap:header message="cai3g:HeadInfo" part="sequenceId"
use="literal">
<soap:headerfault message="cai3g:Cai3gHeaderFault"
part="sequenceIdFault" use="literal"/>
</soap:header>
</output>
<fault name="Cai3gFault">
<soap:fault name="Cai3gFault" use="literal"/>
</fault>
</operation>
<operation name="Search">
<soap:operation soapAction="CAI3G#Search" style="document"/>
<input>
<soap:body use="literal"/>
<soap:header message="cai3g:HeadInfo" part="sessionId"
use="literal"/>
<soap:header message="cai3g:HeadInfo" part="transactionId"
use="literal"/>
<soap:header message="cai3g:HeadInfo" part="sequenceId"
use="literal"/>
</input>
<output>
74 2/155 19-FAY 302 0003 Uen A2 2008-07-25
Appendix B (Provisioning Service WSDL File)
<soap:body use="literal"/>
<soap:header message="cai3g:HeadInfo" part="sessionId"
use="literal">
<soap:headerfault message="cai3g:Cai3gHeaderFault"
part="sessionIdFault" use="literal"/>
</soap:header>
<soap:header message="cai3g:HeadInfo" part="transactionId"
use="literal">
<soap:headerfault message="cai3g:Cai3gHeaderFault"
part="transactionIdFault" use="literal"/>
</soap:header>
<soap:header message="cai3g:HeadInfo" part="sequenceId"
use="literal">
<soap:headerfault message="cai3g:Cai3gHeaderFault"
part="sequenceIdFault" use="literal"/>
</soap:header>
</output>
<fault name="Cai3gFault">
<soap:fault name="Cai3gFault" use="literal"/>
</fault>
</operation>
</binding>
<binding name="SessionControl" type="cai3g:SessionControl">
<soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="Login">
<soap:operation soapAction="CAI3G#Login" style="document"/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
<fault name="Cai3gFault">
<soap:fault name="Cai3gFault" use="literal"/>
</fault>
</operation>
<operation name="Logout">
<soap:operation soapAction="CAI3G#Logout" style="document"/>
<input>
<soap:body use="literal"/>
<soap:header message="cai3g:HeadInfo" part="sessionId"
use="literal"/>
</input>
<output>
<soap:body use="literal"/>
<soap:header message="cai3g:HeadInfo" part="sessionId"
use="literal">
<soap:headerfault message="cai3g:Cai3gHeaderFault"
part="sessionIdFault" use="literal"/>
</soap:header>
75 2/155 19-FAY 302 0003 Uen A2 2008-07-25
Generic CAI3G Interface 1.2
</output>
<fault name="Cai3gFault">
<soap:fault name="Cai3gFault" use="literal"/>
</fault>
</operation>
</binding>
<binding name="Notification" type="cai3g:Notification">
<soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="Subscribe">
<soap:operation soapAction="CAI3G#Subscribe" style="document"/>
<input>
<soap:body use="literal"/>
<soap:header message="cai3g:HeadInfo" part="sessionId"
use="literal"/>
<soap:header message="cai3g:HeadInfo" part="transactionId"
use="literal"/>
<soap:header message="cai3g:HeadInfo" part="sequenceId"
use="literal"/>
</input>
<output>
<soap:body use="literal"/>
<soap:header message="cai3g:HeadInfo" part="sessionId"
use="literal">
<soap:headerfault message="cai3g:Cai3gHeaderFault"
part="sessionIdFault" use="literal"/>
</soap:header>
<soap:header message="cai3g:HeadInfo" part="transactionId"
use="literal">
<soap:headerfault message="cai3g:Cai3gHeaderFault"
part="transactionIdFault" use="literal"/>
</soap:header>
<soap:header message="cai3g:HeadInfo" part="sequenceId"
use="literal">
<soap:headerfault message="cai3g:Cai3gHeaderFault"
part="sequenceIdFault" use="literal"/>
</soap:header>
</output>
<fault name="Cai3gFault">
<soap:fault name="Cai3gFault" use="literal"/>
</fault>
</operation>
<operation name="Unsubscribe">
<soap:operation soapAction="CAI3G#Unsubscribe" style="document"/>
<input>
<soap:body use="literal"/>
<soap:header message="cai3g:HeadInfo" part="sessionId"
use="literal"/>
<soap:header message="cai3g:HeadInfo" part="transactionId"
use="literal"/>
<soap:header message="cai3g:HeadInfo" part="sequenceId"
76 2/155 19-FAY 302 0003 Uen A2 2008-07-25
Appendix B (Provisioning Service WSDL File)
use="literal"/>
</input>
<output>
<soap:body use="literal"/>
<soap:header message="cai3g:HeadInfo" part="sessionId"
use="literal">
<soap:headerfault message="cai3g:Cai3gHeaderFault"
part="sessionIdFault" use="literal"/>
</soap:header>
<soap:header message="cai3g:HeadInfo" part="transactionId"
use="literal">
<soap:headerfault message="cai3g:Cai3gHeaderFault"
part="transactionIdFault" use="literal"/>
</soap:header>
<soap:header message="cai3g:HeadInfo" part="sequenceId"
use="literal">
<soap:headerfault message="cai3g:Cai3gHeaderFault"
part="sequenceIdFault" use="literal"/>
</soap:header>
</output>
<fault name="Cai3gFault">
<soap:fault name="Cai3gFault" use="literal"/>
</fault>
</operation>
<operation name="Notify">
<soap:operation soapAction="CAI3G#Notify" style="document"/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
</binding>
<service name="CAI3G">
<port name="Provisioning" binding="cai3g:Provisioning">
<soap:address
location="http://anyema.anyprovisioningprovider.com/cai3g"/>
</port>
<port name="SessionControl" binding="cai3g:SessionControl">
<soap:address
location="http://anyema.anyprovisioningprovider.com/cai3g"/>
</port>
<port name="Notification" binding="cai3g:Notification">
<soap:address
location="http://anyema.anyprovisioningprovider.com/cai3g"/>
</port>
</service>
</definitions>
77 2/155 19-FAY 302 0003 Uen A2 2008-07-25
Generic CAI3G Interface 1.2
This WSDL file imports the XML schema file for generic CAI3G type definition.
The schema file looks like:
<?xml version="1.0" encoding="UTF-8"?>
<!-- 2004/2/19 ewuwang Update in EMA32 for notification .
1)change the namespace
2)change NotificationFiltersType
3)change NotificationHeaderType
4)change NotificationOperationType, e.g: ObjectCreation ->
Create
5)Naming convention, e.g: moType -> MOType ,
NotificationHeader -> notificationHeader
6)Remove "KeyString" definition and replace its usage
with "UserIdType"-->
<!-- 2004/3/24 ewuwang Update in EMA32 DFU
1)change the cai3gUser in NotificationFilterType from
UserIdType to xs:string
2)change the userid in Login from UserIdType to xs:string
3)remove simpletype "UserIdType"
-->
<!-- 2004/3/30 ewuwang Update in EMA32 DFU
1)change the eventTime in NotificationHeaderType from
xs:time to xs:dateTime
-->
<!-- 2004/4/7 rdcdape Update in EMA32 DFU
1)remove some unnessesary type definition
2)adjust the order of some eleement definition
-->
<!-- 2004/11/23 rdcdape Update in EMA40
1)Add definition for "Search" request/response
2)Add a optional input parameter to Create/Delete/Get/Set
/Search operation to contain any extension data except MOType,
MOId and MOAttributes
-->
<!-- 2004/12/14 rdcdape Update in EMA40
1)Add "filters" to the "selector" xpath in the
"OperationUnique" definition
-->
<!-- 2004/12/31 rdcdape Update in EMA40
1)Add "MOId" and " MOAttributes" as optional response
for Delete operation
-->
<!-- 2006/10/17 ebinqin Update in EMA50
1)Add "Extension" as out for Create/Set/Get/Delete operations
-->
<!-- 2007/06/11 ehuapei Update in EMA50
1)Add "MOAtrributes" to get request.
2)Add "MOAtrributes" to delete request.
-->
<xs:schema targetNamespace="http://schemas.ericsson.com/cai3g1.2/
" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http:
78 2/155 19-FAY 302 0003 Uen A2 2008-07-25
Appendix B (Provisioning Service WSDL File)
//schemas.ericsson.com/cai3g1.2/" elementFormDefault="qualified"
attributeFormDefault="unqualified">
<xs:element name="Create">
<xs:complexType>
<xs:sequence>
<xs:element name="MOType" type="MoType"/>
<xs:element name="MOId" type="AnyMOIdType" minOccurs="0"/>
<xs:element name="MOAttributes" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element ref="CreateMODefinition"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="extension" type="AnySequenceType"
minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="CreateResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="MOId" type="AnyMOIdType"/>
<xs:element name="MOAttributes" type=
"GetResponseMOAttributesType" minOccurs="0"/>
<xs:element name="extension" type="AnySequenceType"
minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Get">
<xs:complexType>
<xs:sequence>
<xs:element name="MOType" type="MoType"/>
<xs:element name="MOId" type="AnyMOIdType" minOccurs="0"/>
<xs:element name="MOAttributes" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element ref="GetRequestMODefinition"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="extension" type="AnySequenceType"
minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="GetResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="MOId" type="AnyMOIdType" minOccurs="0"
79 2/155 19-FAY 302 0003 Uen A2 2008-07-25
Generic CAI3G Interface 1.2
maxOccurs="unbounded"/>
<xs:element name="MOAttributes" type=
"GetResponseMOAttributesType" minOccurs="0"/>
<xs:element name="extension" type="AnySequenceType"
minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Set">
<xs:complexType>
<xs:sequence>
<xs:element name="MOType" type="MoType"/>
<xs:element name="MOId" type="AnyMOIdType"/>
<xs:element name="MOAttributes">
<xs:complexType>
<xs:sequence>
<xs:element ref="SetMODefinition"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="extension" type="AnySequenceType"
minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SetResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="MOAttributes" type=
"GetResponseMOAttributesType" minOccurs="0"/>
<xs:element name="extension" type="AnySequenceType"
minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Delete">
<xs:complexType>
<xs:sequence>
<xs:element name="MOType" type="MoType"/>
<xs:element name="MOId" type="AnyMOIdType"/>
<xs:element name="MOAttributes" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element ref="DeleteRequestMODefinition"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="extension" type="AnySequenceType"
minOccurs="0"/>
</xs:sequence>
</xs:complexType>
80 2/155 19-FAY 302 0003 Uen A2 2008-07-25
Appendix B (Provisioning Service WSDL File)
</xs:element>
<xs:element name="DeleteResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="MOId" type="AnyMOIdType" minOccurs="0"/>
<xs:element name="MOAttributes" type=
"GetResponseMOAttributesType" minOccurs="0"/>
<xs:element name="extension" type="AnySequenceType"
minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Search">
<xs:complexType>
<xs:sequence>
<xs:element name="MOType" type="MoType"/>
<xs:element name="filters" type="SearchFiltersType"/>
<xs:element name="extension" type="AnySequenceType"
minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SearchResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="MOId" type="AnyMOIdType" minOccurs="0"
maxOccurs="unbounded"/>
<xs:element name="extension" type="AnySequenceType"
minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Login">
<xs:complexType>
<xs:sequence>
<xs:element name="userId" type="xs:string"/>
<xs:element name="pwd" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="LoginResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="sessionId" type="SessionIdType"/>
<xs:element name="baseSequenceId" type="xs:unsignedLong"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Logout">
<xs:complexType>
<xs:sequence>
81 2/155 19-FAY 302 0003 Uen A2 2008-07-25
Generic CAI3G Interface 1.2
<xs:element name="sessionId" type="SessionIdType"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="LogoutResponse">
<xs:complexType/>
</xs:element>
<xs:element name="Subscribe">
<xs:complexType>
<xs:sequence>
<xs:element name="managerRef" type="xs:anyURI"/>
<xs:element name="filters" type="NotificationFiltersType"/>
</xs:sequence>
</xs:complexType>
<xs:unique name="OperationUnique">
<xs:selector xpath="filters/filter/operation"/>
<xs:field xpath="."/>
</xs:unique>
</xs:element>
<xs:element name="SubscribeResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="subscriptionId" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Unsubscribe">
<xs:complexType>
<xs:sequence>
<xs:element name="managerRef" type="xs:anyURI"/>
<xs:element name="subscriptionId" type="xs:string"
minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="UnsubscribeResponse">
<xs:complexType/>
</xs:element>
<xs:element name="Notify">
<xs:complexType>
<xs:sequence>
<xs:element name="notificationHeader" type=
"NotificationHeaderType"/>
<xs:element name="correlatedNotifications" type="xs:string"
minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="additionalText" type="xs:string"
minOccurs="0"/>
<xs:element name="sourceIndicator" type="xs:anyURI"
minOccurs="0"/>
<xs:element name="notificationData">
<xs:complexType>
82 2/155 19-FAY 302 0003 Uen A2 2008-07-25
Appendix B (Provisioning Service WSDL File)
<xs:sequence>
<xs:any namespace="##any" processContents="lax"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="NotifyResponse">
<xs:complexType/>
</xs:element>
<xs:complexType name="GetResponseMOAttributesType">
<xs:sequence>
<xs:element ref="GetMODefinition"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="AbstractCreateAttributeType"
abstract="true"/>
<xs:complexType name="AbstractGetRequestAttributeType"
abstract="true"/>
<xs:complexType name="AbstractDeleteRequestAttributeType"
abstract="true"/>
<xs:complexType name="AbstractSetAttributeType" abstract=
"true"/>
<xs:complexType name="AbstractGetAttributeType" abstract=
"true"/>
<xs:element name="CreateMODefinition" type=
"AbstractCreateAttributeType" abstract="true"/>
<xs:element name="GetRequestMODefinition" type=
"AbstractGetRequestAttributeType" abstract="true"/>
<xs:element name="DeleteRequestMODefinition" type=
"AbstractDeleteRequestAttributeType" abstract="true"/>
<xs:element name="SetMODefinition" type=
"AbstractSetAttributeType" abstract="true"/>
<xs:element name="GetMODefinition" type=
"AbstractGetAttributeType" abstract="true"/>
<xs:complexType name="AnyMOIdType">
<xs:sequence>
<xs:any namespace="##any" processContents=
"lax" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="AnySequenceType">
<xs:sequence>
<xs:any namespace="##any" processContents=
"lax" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="MoType">
<xs:restriction base="xs:string">
83 2/155 19-FAY 302 0003 Uen A2 2008-07-25
Generic CAI3G Interface 1.2
<xs:pattern value="[A-Za-z][_A-Za-z0-9]*@.*"/>
</xs:restriction>
</xs:simpleType>
<xs:element name="SessionId" type="SessionIdType"/>
<xs:element name="TransactionId" type="xs:unsignedLong"/>
<xs:element name="SequenceId" type="xs:unsignedLong"/>
<xs:simpleType name="SessionIdType">
<xs:restriction base="xs:string">
<xs:pattern value="[\d\w]{1,}"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="SearchFiltersType">
<xs:sequence>
<xs:element name="filter" type="SearchFilterType"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="SearchFilterType">
<xs:sequence>
<xs:element name="MOAttributes" type="xs:string"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="NotificationHeaderType">
<xs:sequence>
<xs:element name="cai3gUser" type="xs:string"/>
<xs:element name="MOType" type="MoType"/>
<xs:element name="MOId" type="AnyMOIdType"/>
<xs:element name="notificationId" type="xs:string"
minOccurs="0"/>
<xs:element name="eventTime" type="xs:dateTime"/>
<xs:element name="notificationActor" type="xs:anyURI"
minOccurs="0"/>
<xs:element name="operation" type="NotificationOperationType"/>
<xs:element name="subscriptionId" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="NotificationFilterType">
<xs:sequence>
<xs:element name="cai3gUser" type="xs:string"
minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="MOType" type="xs:string"
minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="operation" type=
"NotificationOperationType" minOccurs="0" maxOccurs="3"/>
<xs:element name="MOId" type="xs:string" minOccurs=
"0" maxOccurs="unbounded"/>
<xs:element name="MOAttributes" type="xs:string"
minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<!-- How to make sure there must exist one element -->
84 2/155 19-FAY 302 0003 Uen A2 2008-07-25
Appendix B (Provisioning Service WSDL File)
</xs:complexType>
<xs:complexType name="NotificationFiltersType">
<xs:sequence>
<xs:element name="filter" type="NotificationFilterType"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="NotificationOperationType">
<xs:restriction base="xs:string">
<xs:enumeration value="Create"/>
<xs:enumeration value="Delete"/>
<xs:enumeration value="Set"/>
</xs:restriction>
</xs:simpleType>
<xs:element name="Cai3gFault">
<xs:complexType>
<xs:sequence>
<xs:element name="faultcode" type="xs:integer"/>
<xs:element name="faultreason">
<xs:complexType>
<xs:sequence>
<xs:element name="reasonText" type="xs:string"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="faultrole" type="xs:string"/>
<xs:element name="details" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:any namespace="##any" processContents="lax"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name="HeaderFaultType">
<xs:sequence>
<xs:element name="faultactor" type="xs:string"/>
<xs:element name="description" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="SessionIdFault" final="restriction">
<xs:complexContent>
<xs:extension base="HeaderFaultType">
<xs:sequence>
<xs:element name="faultcode">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Invalid SessionId"/>
85 2/155 19-FAY 302 0003 Uen A2 2008-07-25
Generic CAI3G Interface 1.2
<xs:enumeration value="Session Timeout"/>
<xs:enumeration value="SessionId Syntax Error"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SequenceIdFault" final="restriction">
<xs:complexContent>
<xs:extension base="HeaderFaultType">
<xs:sequence>
<xs:element name="faultcode">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Invalid SequenceId"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TransactionIdFault" final="restriction">
<xs:complexContent>
<xs:extension base="HeaderFaultType">
<xs:sequence>
<xs:element name="faultcode">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Invalid TransactionId"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:schema>
