blob: f498f54ef0ed1572b90aa7d14abc344beed91010 [file] [log] [blame]
<?xml version="1.0" encoding="utf-8"?>
<definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:conv="http://www.openuri.org/2002/04/soap/conversation/" xmlns:cw="http://www.openuri.org/2002/04/wsdl/conversation/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:jms="http://www.openuri.org/2002/04/wsdl/jms/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:s0="http://www.telkomsel.com/soa/ProductCatalog/WS" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" targetNamespace="http://www.telkomsel.com/soa/ProductCatalog/WS">
<types>
<s:schema xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:ns="http://www.telkomsel.com/soa/ProductCatalog/200606" xmlns:ws="http://www.telkomsel.com/soa/ProductCatalog/WS" xmlns:com="commonj.sdo" elementFormDefault="qualified" targetNamespace="http://www.telkomsel.com/soa/ProductCatalog/WS">
<s:import namespace="http://www.telkomsel.com/soa/ProductCatalog/200606"/>
<s:import namespace="commonj.sdo"/>
<s:element name="getPackageDefinition">
<s:complexType>
<s:sequence>
<s:element name="packageId" type="s:string" minOccurs="0"/>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="getPackageDefinitionResponse">
<s:complexType>
<s:sequence>
<s:element ref="ns:PackageDefinition"/>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="getPackageDefinitions">
<s:complexType>
<s:sequence/>
</s:complexType>
</s:element>
<s:element name="getPackageDefinitionsResponse">
<s:complexType>
<s:sequence>
<s:element name="getPackageDefinitionsResult" type="ws:ArrayOfPackageDefinitionDocument" minOccurs="0"/>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="ArrayOfPackageDefinitionDocument" nillable="true" type="ws:ArrayOfPackageDefinitionDocument"/>
<s:element name="getPackageDefinitionsByTariffId">
<s:complexType>
<s:sequence>
<s:element name="tariffId" type="s:string" minOccurs="0"/>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="getPackageDefinitionsByTariffIdResponse">
<s:complexType>
<s:sequence>
<s:element name="getPackageDefinitionsByTariffIdResult" type="ws:ArrayOfPackageDefinitionDocument" minOccurs="0"/>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="getPackageDefinitionsByType">
<s:complexType>
<s:sequence>
<s:element name="type" type="s:string" minOccurs="0"/>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="getPackageDefinitionsByTypeResponse">
<s:complexType>
<s:sequence>
<s:element name="getPackageDefinitionsByTypeResult" type="ws:ArrayOfPackageDefinitionDocument" minOccurs="0"/>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="getPackagedProducts">
<s:complexType>
<s:sequence>
<s:element name="packageCode" type="s:string" minOccurs="0"/>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="getPackagedProductsResponse">
<s:complexType>
<s:sequence>
<s:element name="getPackagedProductsResult" type="ws:ArrayOfPackagedProductDocument" minOccurs="0"/>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="ArrayOfPackagedProductDocument" nillable="true" type="ws:ArrayOfPackagedProductDocument"/>
<s:element name="getProductIsInPackages">
<s:complexType>
<s:sequence>
<s:element name="productCode" type="s:string" minOccurs="0"/>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="getProductIsInPackagesResponse">
<s:complexType>
<s:sequence>
<s:element name="getProductIsInPackagesResult" type="ws:ArrayOfPackagedProductDocument" minOccurs="0"/>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="submitArrayOfPackagedProduct">
<s:complexType>
<s:sequence>
<s:element name="rootDataObject" type="ws:ArrayOfDatagraphDocument" minOccurs="0"/>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="submitArrayOfPackagedProductResponse">
<s:complexType>
<s:sequence>
<s:element name="submitArrayOfPackagedProductResult" type="ws:ArrayOfProperties" minOccurs="0"/>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="submitPackageDefinition">
<s:complexType>
<s:sequence>
<s:element ref="com:datagraph"/>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="submitPackageDefinitionResponse">
<s:complexType>
<s:sequence>
<s:element name="submitPackageDefinitionResult" type="ws:ArrayOfProperties" minOccurs="0"/>
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="ArrayOfPackageDefinitionDocument">
<s:sequence>
<s:element ref="ns:PackageDefinition" minOccurs="0" maxOccurs="unbounded"/>
</s:sequence>
</s:complexType>
<s:complexType name="ArrayOfPackagedProductDocument">
<s:sequence>
<s:element ref="ns:PackagedProduct" minOccurs="0" maxOccurs="unbounded"/>
</s:sequence>
</s:complexType>
<s:complexType name="ArrayOfDatagraphDocument">
<s:sequence>
<s:element ref="com:datagraph" minOccurs="0" maxOccurs="unbounded"/>
</s:sequence>
</s:complexType>
<s:complexType name="ArrayOfProperties">
<s:sequence>
<s:element name="Properties" type="ws:Map" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
</s:sequence>
</s:complexType>
<s:complexType name="Map">
<s:sequence>
<s:element name="item" nillable="true" minOccurs="0" maxOccurs="unbounded">
<s:complexType>
<s:sequence>
<s:element name="key" type="s:anyType" nillable="true"/>
<s:element name="value" type="s:anyType" nillable="true"/>
</s:sequence>
</s:complexType>
</s:element>
</s:sequence>
</s:complexType>
</s:schema>
<!-- edited with XMLSpy v2006 sp2 U (http://www.altova.com) by Fajar Siswandaru (Visitek) -->
<!-- SCM Revision $Id: ProductServiceCatalog.xsd,v 1.4 2006/10/20 08:34:18 pangestu Exp $ -->
<xs:schema xmlns:pc="http://www.telkomsel.com/soa/ProductCatalog/200606" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.telkomsel.com/soa/ProductCatalog/200606" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:complexType name="AttributeType">
<xs:sequence>
<xs:element name="Value" type="xs:string" nillable="true" minOccurs="0">
<xs:annotation>
<xs:documentation>The value or default value of this attribute.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Description" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation>The description of this attribute</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="enumValues" minOccurs="0">
<xs:annotation>
<xs:documentation>Optional, only needed to state valid value based on enumeration or list of valid values.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="enumValue" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence minOccurs="0">
<xs:element name="description" type="xs:string" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="value" type="xs:string"/>
<xs:attribute name="parentID" type="xs:string" use="optional"/>
<xs:attribute name="attrName" type="xs:string" use="optional"/>
<xs:attribute name="sequence" type="xs:integer" use="optional"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="parentID" type="xs:string" use="optional"/>
<xs:attribute name="name" type="xs:string" use="required"/>
<xs:attribute name="sequence" type="xs:integer" use="optional"/>
<xs:attribute name="attrType" type="xs:string" use="optional" default="xs:string"/>
<xs:attribute name="isFinal" type="xs:boolean" use="optional" default="true"/>
<xs:attribute name="isNullable" type="xs:boolean" use="optional" default="true"/>
<xs:attribute name="domain" type="xs:string" use="optional"/>
</xs:complexType>
<xs:complexType name="SettingAttributeType">
<xs:complexContent>
<xs:extension base="pc:AttributeType">
<xs:sequence minOccurs="0">
<xs:element name="Pragma" type="xs:string" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ProductServiceProfileAttributeType">
<xs:complexContent>
<xs:extension base="pc:SettingAttributeType">
<xs:attribute name="attrLevel" type="xs:string" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ServiceStateAttributeType">
<xs:complexContent>
<xs:extension base="pc:ProductServiceProfileAttributeType">
<xs:attribute name="parentState" type="xs:string" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="EntityTypeDefinitionType">
<xs:sequence>
<xs:element name="description" type="xs:string" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="typeCode" type="xs:string" use="required"/>
<xs:attribute name="typeName"/>
</xs:complexType>
<xs:complexType name="ProductStateType">
<xs:sequence minOccurs="0">
<xs:element name="description" type="xs:string" minOccurs="0"/>
<xs:element name="ProductStateSpecs" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="ProductStateSpec" type="pc:StateSpecType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="productID" type="xs:string" use="required"/>
<xs:attribute name="state" type="xs:string" use="required"/>
</xs:complexType>
<xs:complexType name="ServiceStateType">
<xs:sequence minOccurs="0">
<xs:element name="description" type="xs:string" minOccurs="0"/>
<xs:element name="ServiceStateSpecs" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="ServiceStateSpec" type="pc:StateSpecType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="serviceID" type="xs:string" use="required"/>
<xs:attribute name="state" type="xs:string" use="required"/>
</xs:complexType>
<xs:complexType name="StateSpecType">
<xs:sequence>
<xs:element name="productID" type="xs:string" minOccurs="0"/>
<xs:element name="productState" type="xs:string" minOccurs="0"/>
<xs:element name="serviceID" minOccurs="0" type="xs:string"/>
<xs:element name="serviceState" minOccurs="0" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="AssociationType">
<xs:attribute name="to" type="xs:string" use="required"/>
<xs:attribute name="assocName" type="xs:string" use="required"/>
<xs:attribute name="entityType" type="xs:string" use="optional"/>
</xs:complexType>
<xs:complexType name="ReferenceType">
<xs:sequence>
<xs:element name="Name" type="xs:string" minOccurs="0"/>
<xs:element name="Description" type="xs:string" minOccurs="0"/>
<xs:element minOccurs="0" type="xs:string" name="Type"/>
<xs:element minOccurs="0" type="xs:string" name="TariffCode"/>
</xs:sequence>
<xs:attribute name="code" type="xs:string" use="required"/>
<xs:attribute name="version" type="xs:string" use="optional"/>
<xs:attribute name="status" type="xs:integer" use="optional"/>
</xs:complexType>
<xs:complexType name="DefinitionType">
<xs:sequence>
<xs:element name="Name" type="xs:string"/>
<xs:element name="Description" type="xs:string" minOccurs="0"/>
<xs:element ref="pc:Attributes" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="code" type="xs:string" use="required"/>
<xs:attribute name="version" type="xs:string" use="optional"/>
<xs:attribute name="status" type="xs:integer" use="optional" default="1">
<xs:annotation>
<xs:documentation>The status: 1 is for Active</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
<xs:complexType name="ServiceDefinitionType">
<xs:complexContent>
<xs:extension base="pc:DefinitionType">
<xs:sequence minOccurs="0">
<xs:element name="Dependencies" type="pc:ServiceDependenciesType" minOccurs="0">
<xs:annotation>
<xs:documentation>Dependencies to other services subscription state for this service to be sucessfully provisioned/unprovisioned/unregistered.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attribute name="typeCode" type="xs:string" use="optional">
<xs:annotation>
<xs:documentation>Used for logical grouping of services.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ProductDefinitionType">
<xs:complexContent>
<xs:extension base="pc:DefinitionType">
<xs:sequence>
<xs:element name="Associations" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="Association" type="pc:AssociationType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="PackageDefinitionType">
<xs:complexContent>
<xs:extension base="pc:DefinitionType">
<xs:sequence minOccurs="0">
<xs:element name="PackageType" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation>The package type, can be used for tagging like "Basic Package" or "Optional Package"</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="TariffId" type="xs:string" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="PackageSpecificationType">
<xs:complexContent>
<xs:extension base="pc:PackageDefinitionType">
<xs:sequence minOccurs="0">
<xs:element name="PackagedProducts" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element ref="pc:PackagedProduct" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ProductOfferingType">
<xs:complexContent>
<xs:extension base="pc:DefinitionType">
<xs:sequence>
<xs:element name="OfferedPackages" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="OfferedPackage" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:complexContent>
<xs:extension base="pc:ReferenceType">
<xs:attribute name="offeringTag" type="xs:string"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ServiceStateConfigType">
<xs:sequence minOccurs="0">
<xs:element name="AttributeSettings" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="ServiceAttribute" type="pc:SettingAttributeType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="serviceCode" type="xs:string" use="required"/>
<xs:attribute name="serviceName" type="xs:string" use="optional"/>
<xs:attribute name="subscriptionState" type="xs:string" use="optional" default="ACTIVE"/>
</xs:complexType>
<xs:complexType name="ServiceSpecificationType">
<xs:sequence>
<xs:element ref="pc:ServiceDefinition"/>
<xs:element name="SubscriptionConfigurations" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element ref="pc:ServiceSubscriptionConfig" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="OfferedInProducts" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="Product" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:complexContent>
<xs:extension base="pc:ReferenceType">
<xs:sequence minOccurs="0">
<xs:element name="StateMaps">
<xs:complexType>
<xs:sequence>
<xs:element ref="pc:StateMap" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element ref="pc:ServiceProfile" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ProductServiceProfileType">
<xs:sequence>
<xs:element name="Description" type="xs:string" minOccurs="0"/>
<xs:element name="ServicesProfile" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="Service" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="Attributes" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="ServiceAttribute" type="pc:ProductServiceProfileAttributeType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SubsDependencies" type="pc:ServiceDependenciesType" minOccurs="0">
<xs:annotation>
<xs:documentation>This element defines all provisioning / subscription dependencies for this service.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attribute name="serviceCode" type="xs:string" use="required"/>
<xs:attribute name="serviceState" type="xs:string" use="required"/>
<xs:attribute name="serviceName" type="xs:string" use="optional"/>
<xs:attribute name="serviceSubsTag" type="xs:string" use="optional"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="productCode" type="xs:string" use="optional"/>
<xs:attribute name="productSubState" type="xs:string" use="required"/>
</xs:complexType>
<xs:complexType name="ServiceStateAttributesType">
<xs:sequence>
<xs:element name="description" type="xs:string" minOccurs="0"/>
<xs:element name="Attributes" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="ServiceStateAttribute" type="pc:ServiceStateAttributeType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="serviceCode" type="xs:string" use="required"/>
<xs:attribute name="serviceState" type="xs:string" use="required"/>
</xs:complexType>
<xs:complexType name="ServiceDependenciesType">
<xs:sequence>
<xs:element ref="pc:ServiceDependency" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:element name="Attributes">
<xs:complexType>
<xs:sequence minOccurs="0">
<xs:element ref="pc:Attribute" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Attribute">
<xs:complexType>
<xs:complexContent>
<xs:extension base="pc:AttributeType"/>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="DomainProfile">
<xs:complexType>
<xs:sequence>
<xs:element name="Attribute" type="pc:AttributeType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="domain" type="xs:string" use="required"/>
<xs:attribute name="entityCode" type="xs:string" use="optional"/>
</xs:complexType>
</xs:element>
<xs:element name="ServiceTypeDefinition" type="pc:EntityTypeDefinitionType"/>
<xs:element name="ServiceReference" type="pc:ReferenceType"/>
<xs:element name="ServiceDefinition">
<xs:annotation>
<xs:documentation>Encapsulates the definition of service</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="pc:ServiceDefinitionType"/>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="ServiceDependency">
<xs:annotation>
<xs:documentation>The dependency definition to specific service subscription state.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="refServiceCode" type="xs:string" use="optional">
<xs:annotation>
<xs:documentation>The reference to a service which dependencies are being stated. (optional)</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="refSubState" type="xs:string" default="active">
<xs:annotation>
<xs:documentation>this dependency is applicable to set this service subscription state defined on this attribute. The default is to be active provisioned.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="toServiceCode" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>The reference to the dependent on service. Referenced by its service code.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="depSubState" type="xs:string" default="active">
<xs:annotation>
<xs:documentation>the referenced service must been already in the state defined by this attribute.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name="ServiceSpecification" type="pc:ServiceSpecificationType"/>
<xs:element name="ServiceSubscriptionConfig">
<xs:complexType>
<xs:sequence>
<xs:choice>
<xs:sequence>
<xs:element name="ServiceState" type="xs:string">
<xs:annotation>
<xs:documentation>used to specify this configuration is valid for specific subscription state regardless of product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Description" type="xs:string" nillable="true" minOccurs="0">
<xs:annotation>
<xs:documentation>The description of this subscription configuration which either based on state or bound to specific product. (ie: the description for a service subscription configuration with state = BLOCKOUTGOING for Call Barring service is "Block outgoing call")</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:element name="ProductCode" type="xs:string">
<xs:annotation>
<xs:documentation>used to specify this configuration is valid for only in the context of a subscription to a specific product regardless of service's state.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:element name="Attributes">
<xs:annotation>
<xs:documentation>The attribute setting / the service attribute configuration.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="ServiceAttribute" type="pc:SettingAttributeType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="serviceCode" type="xs:string" use="optional">
<xs:annotation>
<xs:documentation>The referenced service code which subscription configuration are defined under this element.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name="ServiceProfile">
<xs:complexType>
<xs:sequence>
<xs:element name="StateConfiguration" type="pc:ServiceStateConfigType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="serviceCode" type="xs:string" use="optional"/>
<xs:attribute name="inProductCode" type="xs:string" use="optional"/>
<xs:attribute name="serviceSubsTag" type="xs:string" use="optional"/>
</xs:complexType>
</xs:element>
<xs:element name="StateMap">
<xs:complexType>
<xs:attribute name="ProductSubscriptionState" type="xs:string" use="required"/>
<xs:attribute name="ServiceSubscriptionState" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="ProductOffering" type="pc:ProductOfferingType"/>
<xs:element name="ProductReference" type="pc:ReferenceType" nillable="true"/>
<xs:element name="ProductService">
<xs:complexType>
<xs:complexContent>
<xs:extension base="pc:ServiceDefinitionType">
<xs:attribute name="productCode" type="xs:string" use="optional"/>
<xs:attribute name="serviceSubsTag" type="xs:string" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="ProductDefinition" type="pc:ProductDefinitionType" nillable="true">
<xs:annotation>
<xs:documentation>Encapsulates the definition of product</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ProductSpecification">
<xs:complexType>
<xs:complexContent>
<xs:extension base="pc:ProductDefinitionType">
<xs:sequence>
<xs:element name="IncludedServices" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element ref="pc:ProductService" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SubscriptionConfiguration" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element ref="pc:ProductServiceProfile" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="ProductServiceProfile">
<xs:complexType>
<xs:complexContent>
<xs:extension base="pc:ProductServiceProfileType"/>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="PackageReference" type="pc:ReferenceType"/>
<xs:element name="PackageDefinition" type="pc:PackageDefinitionType" nillable="true">
<xs:annotation>
<xs:documentation>Encapsulates the definition of a package</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="PackageSpecification" type="pc:PackageSpecificationType" nillable="true"/>
<xs:element name="PackagedProduct" nillable="true">
<xs:complexType>
<xs:sequence>
<xs:element name="ProductCode" type="xs:string"/>
<xs:element name="PackagingTag" type="xs:string"/>
<xs:element name="TariffId" type="xs:string"/>
<xs:element name="ProductName" type="xs:string" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="packageCode" type="xs:string" use="required"/>
<xs:attribute name="packageName" type="xs:string" use="optional"/>
</xs:complexType>
</xs:element>
<xs:element name="ProductStates" nillable="true">
<xs:complexType>
<xs:sequence>
<xs:element name="ProductState" type="pc:ProductStateType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ServiceStates" nillable="true">
<xs:complexType>
<xs:sequence>
<xs:element name="ServiceState" type="pc:ServiceStateType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ServiceStatesAttributes" nillable="true">
<xs:complexType>
<xs:sequence>
<xs:element name="ServiceStateAttributes" type="pc:ServiceStateAttributesType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ArrayOfCodes">
<xs:complexType>
<xs:sequence>
<xs:element name="Code" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
<xsd:schema xmlns:sdo="commonj.sdo" xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="commonj.sdo">
<!-- Service Data Objects
Version 1.0
Licensed Materials - Property of BEA and IBM
© Copyright BEA Systems, Inc. and International Business Machines Corp 2003. All rights reserved.
-->
<xsd:element name="datagraph" type="sdo:DataGraphType"/>
<xsd:complexType name="DataGraphType">
<xsd:complexContent>
<xsd:extension base="sdo:BaseDataGraphType">
<xsd:sequence>
<xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="BaseDataGraphType" abstract="true">
<xsd:sequence>
<xsd:element name="models" type="sdo:ModelsType" minOccurs="0"/>
<xsd:element name="xsd" type="sdo:XSDType" minOccurs="0"/>
<xsd:element name="changeSummary" type="sdo:ChangeSummaryType" minOccurs="0"/>
</xsd:sequence>
<xsd:anyAttribute namespace="##other" processContents="lax"/>
</xsd:complexType>
<xsd:complexType name="ModelsType">
<xsd:annotation>
<xsd:documentation>Expected type is emof:Package.</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="XSDType">
<xsd:annotation>
<xsd:documentation>Expected type is xsd:schema.</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:any namespace="http://www.w3.org/2001/XMLSchema" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ChangeSummaryType">
<xsd:sequence>
<xsd:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:attribute name="create" type="xsd:string"/>
<xsd:attribute name="delete" type="xsd:string"/>
</xsd:complexType>
</xsd:schema>
</types>
<message name="getPackageDefinitionSoapIn">
<part name="parameters" element="s0:getPackageDefinition"/>
</message>
<message name="getPackageDefinitionSoapOut">
<part name="parameters" element="s0:getPackageDefinitionResponse"/>
</message>
<message name="getPackageDefinitionsSoapIn">
<part name="parameters" element="s0:getPackageDefinitions"/>
</message>
<message name="getPackageDefinitionsSoapOut">
<part name="parameters" element="s0:getPackageDefinitionsResponse"/>
</message>
<message name="getPackageDefinitionsByTariffIdSoapIn">
<part name="parameters" element="s0:getPackageDefinitionsByTariffId"/>
</message>
<message name="getPackageDefinitionsByTariffIdSoapOut">
<part name="parameters" element="s0:getPackageDefinitionsByTariffIdResponse"/>
</message>
<message name="getPackageDefinitionsByTypeSoapIn">
<part name="parameters" element="s0:getPackageDefinitionsByType"/>
</message>
<message name="getPackageDefinitionsByTypeSoapOut">
<part name="parameters" element="s0:getPackageDefinitionsByTypeResponse"/>
</message>
<message name="getPackagedProductsSoapIn">
<part name="parameters" element="s0:getPackagedProducts"/>
</message>
<message name="getPackagedProductsSoapOut">
<part name="parameters" element="s0:getPackagedProductsResponse"/>
</message>
<message name="getProductIsInPackagesSoapIn">
<part name="parameters" element="s0:getProductIsInPackages"/>
</message>
<message name="getProductIsInPackagesSoapOut">
<part name="parameters" element="s0:getProductIsInPackagesResponse"/>
</message>
<message name="submitArrayOfPackagedProductSoapIn">
<part name="parameters" element="s0:submitArrayOfPackagedProduct"/>
</message>
<message name="submitArrayOfPackagedProductSoapOut">
<part name="parameters" element="s0:submitArrayOfPackagedProductResponse"/>
</message>
<message name="submitPackageDefinitionSoapIn">
<part name="parameters" element="s0:submitPackageDefinition"/>
</message>
<message name="submitPackageDefinitionSoapOut">
<part name="parameters" element="s0:submitPackageDefinitionResponse"/>
</message>
<message name="getPackageDefinitionHttpGetIn">
<part name="packageId" type="s:string"/>
</message>
<message name="getPackageDefinitionHttpGetOut">
<part xmlns:s1="http://www.telkomsel.com/soa/ProductCatalog/200606" name="Body" element="s1:PackageDefinition"/>
</message>
<message name="getPackageDefinitionsHttpGetIn"/>
<message name="getPackageDefinitionsHttpGetOut">
<part name="Body" element="s0:ArrayOfPackageDefinitionDocument"/>
</message>
<message name="getPackageDefinitionsByTariffIdHttpGetIn">
<part name="tariffId" type="s:string"/>
</message>
<message name="getPackageDefinitionsByTariffIdHttpGetOut">
<part name="Body" element="s0:ArrayOfPackageDefinitionDocument"/>
</message>
<message name="getPackageDefinitionsByTypeHttpGetIn">
<part name="type" type="s:string"/>
</message>
<message name="getPackageDefinitionsByTypeHttpGetOut">
<part name="Body" element="s0:ArrayOfPackageDefinitionDocument"/>
</message>
<message name="getPackagedProductsHttpGetIn">
<part name="packageCode" type="s:string"/>
</message>
<message name="getPackagedProductsHttpGetOut">
<part name="Body" element="s0:ArrayOfPackagedProductDocument"/>
</message>
<message name="getProductIsInPackagesHttpGetIn">
<part name="productCode" type="s:string"/>
</message>
<message name="getProductIsInPackagesHttpGetOut">
<part name="Body" element="s0:ArrayOfPackagedProductDocument"/>
</message>
<message name="getPackageDefinitionHttpPostIn">
<part name="packageId" type="s:string"/>
</message>
<message name="getPackageDefinitionHttpPostOut">
<part xmlns:s1="http://www.telkomsel.com/soa/ProductCatalog/200606" name="Body" element="s1:PackageDefinition"/>
</message>
<message name="getPackageDefinitionsHttpPostIn"/>
<message name="getPackageDefinitionsHttpPostOut">
<part name="Body" element="s0:ArrayOfPackageDefinitionDocument"/>
</message>
<message name="getPackageDefinitionsByTariffIdHttpPostIn">
<part name="tariffId" type="s:string"/>
</message>
<message name="getPackageDefinitionsByTariffIdHttpPostOut">
<part name="Body" element="s0:ArrayOfPackageDefinitionDocument"/>
</message>
<message name="getPackageDefinitionsByTypeHttpPostIn">
<part name="type" type="s:string"/>
</message>
<message name="getPackageDefinitionsByTypeHttpPostOut">
<part name="Body" element="s0:ArrayOfPackageDefinitionDocument"/>
</message>
<message name="getPackagedProductsHttpPostIn">
<part name="packageCode" type="s:string"/>
</message>
<message name="getPackagedProductsHttpPostOut">
<part name="Body" element="s0:ArrayOfPackagedProductDocument"/>
</message>
<message name="getProductIsInPackagesHttpPostIn">
<part name="productCode" type="s:string"/>
</message>
<message name="getProductIsInPackagesHttpPostOut">
<part name="Body" element="s0:ArrayOfPackagedProductDocument"/>
</message>
<portType name="PackageDataSoap">
<operation name="getPackageDefinition">
<input message="s0:getPackageDefinitionSoapIn"/>
<output message="s0:getPackageDefinitionSoapOut"/>
</operation>
<operation name="getPackageDefinitions">
<input message="s0:getPackageDefinitionsSoapIn"/>
<output message="s0:getPackageDefinitionsSoapOut"/>
</operation>
<operation name="getPackageDefinitionsByTariffId">
<input message="s0:getPackageDefinitionsByTariffIdSoapIn"/>
<output message="s0:getPackageDefinitionsByTariffIdSoapOut"/>
</operation>
<operation name="getPackageDefinitionsByType">
<input message="s0:getPackageDefinitionsByTypeSoapIn"/>
<output message="s0:getPackageDefinitionsByTypeSoapOut"/>
</operation>
<operation name="getPackagedProducts">
<input message="s0:getPackagedProductsSoapIn"/>
<output message="s0:getPackagedProductsSoapOut"/>
</operation>
<operation name="getProductIsInPackages">
<input message="s0:getProductIsInPackagesSoapIn"/>
<output message="s0:getProductIsInPackagesSoapOut"/>
</operation>
<operation name="submitArrayOfPackagedProduct">
<input message="s0:submitArrayOfPackagedProductSoapIn"/>
<output message="s0:submitArrayOfPackagedProductSoapOut"/>
</operation>
<operation name="submitPackageDefinition">
<input message="s0:submitPackageDefinitionSoapIn"/>
<output message="s0:submitPackageDefinitionSoapOut"/>
</operation>
</portType>
<portType name="PackageDataHttpGet">
<operation name="getPackageDefinition">
<input message="s0:getPackageDefinitionHttpGetIn"/>
<output message="s0:getPackageDefinitionHttpGetOut"/>
</operation>
<operation name="getPackageDefinitions">
<input message="s0:getPackageDefinitionsHttpGetIn"/>
<output message="s0:getPackageDefinitionsHttpGetOut"/>
</operation>
<operation name="getPackageDefinitionsByTariffId">
<input message="s0:getPackageDefinitionsByTariffIdHttpGetIn"/>
<output message="s0:getPackageDefinitionsByTariffIdHttpGetOut"/>
</operation>
<operation name="getPackageDefinitionsByType">
<input message="s0:getPackageDefinitionsByTypeHttpGetIn"/>
<output message="s0:getPackageDefinitionsByTypeHttpGetOut"/>
</operation>
<operation name="getPackagedProducts">
<input message="s0:getPackagedProductsHttpGetIn"/>
<output message="s0:getPackagedProductsHttpGetOut"/>
</operation>
<operation name="getProductIsInPackages">
<input message="s0:getProductIsInPackagesHttpGetIn"/>
<output message="s0:getProductIsInPackagesHttpGetOut"/>
</operation>
</portType>
<portType name="PackageDataHttpPost">
<operation name="getPackageDefinition">
<input message="s0:getPackageDefinitionHttpPostIn"/>
<output message="s0:getPackageDefinitionHttpPostOut"/>
</operation>
<operation name="getPackageDefinitions">
<input message="s0:getPackageDefinitionsHttpPostIn"/>
<output message="s0:getPackageDefinitionsHttpPostOut"/>
</operation>
<operation name="getPackageDefinitionsByTariffId">
<input message="s0:getPackageDefinitionsByTariffIdHttpPostIn"/>
<output message="s0:getPackageDefinitionsByTariffIdHttpPostOut"/>
</operation>
<operation name="getPackageDefinitionsByType">
<input message="s0:getPackageDefinitionsByTypeHttpPostIn"/>
<output message="s0:getPackageDefinitionsByTypeHttpPostOut"/>
</operation>
<operation name="getPackagedProducts">
<input message="s0:getPackagedProductsHttpPostIn"/>
<output message="s0:getPackagedProductsHttpPostOut"/>
</operation>
<operation name="getProductIsInPackages">
<input message="s0:getProductIsInPackagesHttpPostIn"/>
<output message="s0:getProductIsInPackagesHttpPostOut"/>
</operation>
</portType>
<binding name="PackageDataSoap" type="s0:PackageDataSoap">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
<operation name="getPackageDefinition">
<soap:operation soapAction="http://www.telkomsel.com/soa/ProductCatalog/WS/getPackageDefinition" style="document"/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
<operation name="getPackageDefinitions">
<soap:operation soapAction="http://www.telkomsel.com/soa/ProductCatalog/WS/getPackageDefinitions" style="document"/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
<operation name="getPackageDefinitionsByTariffId">
<soap:operation soapAction="http://www.telkomsel.com/soa/ProductCatalog/WS/getPackageDefinitionsByTariffId" style="document"/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
<operation name="getPackageDefinitionsByType">
<soap:operation soapAction="http://www.telkomsel.com/soa/ProductCatalog/WS/getPackageDefinitionsByType" style="document"/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
<operation name="getPackagedProducts">
<soap:operation soapAction="http://www.telkomsel.com/soa/ProductCatalog/WS/getPackagedProducts" style="document"/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
<operation name="getProductIsInPackages">
<soap:operation soapAction="http://www.telkomsel.com/soa/ProductCatalog/WS/getProductIsInPackages" style="document"/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
<operation name="submitArrayOfPackagedProduct">
<soap:operation soapAction="http://www.telkomsel.com/soa/ProductCatalog/WS/submitArrayOfPackagedProduct" style="document"/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
<operation name="submitPackageDefinition">
<soap:operation soapAction="http://www.telkomsel.com/soa/ProductCatalog/WS/submitPackageDefinition" style="document"/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
</binding>
<binding name="PackageDataHttpGet" type="s0:PackageDataHttpGet">
<http:binding verb="GET"/>
<operation name="getPackageDefinition">
<http:operation location="/getPackageDefinition"/>
<input>
<http:urlEncoded/>
</input>
<output>
<mime:mimeXml part="Body"/>
</output>
</operation>
<operation name="getPackageDefinitions">
<http:operation location="/getPackageDefinitions"/>
<input>
<http:urlEncoded/>
</input>
<output>
<mime:mimeXml part="Body"/>
</output>
</operation>
<operation name="getPackageDefinitionsByTariffId">
<http:operation location="/getPackageDefinitionsByTariffId"/>
<input>
<http:urlEncoded/>
</input>
<output>
<mime:mimeXml part="Body"/>
</output>
</operation>
<operation name="getPackageDefinitionsByType">
<http:operation location="/getPackageDefinitionsByType"/>
<input>
<http:urlEncoded/>
</input>
<output>
<mime:mimeXml part="Body"/>
</output>
</operation>
<operation name="getPackagedProducts">
<http:operation location="/getPackagedProducts"/>
<input>
<http:urlEncoded/>
</input>
<output>
<mime:mimeXml part="Body"/>
</output>
</operation>
<operation name="getProductIsInPackages">
<http:operation location="/getProductIsInPackages"/>
<input>
<http:urlEncoded/>
</input>
<output>
<mime:mimeXml part="Body"/>
</output>
</operation>
</binding>
<binding name="PackageDataHttpPost" type="s0:PackageDataHttpPost">
<http:binding verb="POST"/>
<operation name="getPackageDefinition">
<http:operation location="/getPackageDefinition"/>
<input>
<mime:content type="application/x-www-form-urlencoded"/>
</input>
<output>
<mime:mimeXml part="Body"/>
</output>
</operation>
<operation name="getPackageDefinitions">
<http:operation location="/getPackageDefinitions"/>
<input>
<mime:content type="application/x-www-form-urlencoded"/>
</input>
<output>
<mime:mimeXml part="Body"/>
</output>
</operation>
<operation name="getPackageDefinitionsByTariffId">
<http:operation location="/getPackageDefinitionsByTariffId"/>
<input>
<mime:content type="application/x-www-form-urlencoded"/>
</input>
<output>
<mime:mimeXml part="Body"/>
</output>
</operation>
<operation name="getPackageDefinitionsByType">
<http:operation location="/getPackageDefinitionsByType"/>
<input>
<mime:content type="application/x-www-form-urlencoded"/>
</input>
<output>
<mime:mimeXml part="Body"/>
</output>
</operation>
<operation name="getPackagedProducts">
<http:operation location="/getPackagedProducts"/>
<input>
<mime:content type="application/x-www-form-urlencoded"/>
</input>
<output>
<mime:mimeXml part="Body"/>
</output>
</operation>
<operation name="getProductIsInPackages">
<http:operation location="/getProductIsInPackages"/>
<input>
<mime:content type="application/x-www-form-urlencoded"/>
</input>
<output>
<mime:mimeXml part="Body"/>
</output>
</operation>
</binding>
<service name="PackageData">
<port name="PackageDataSoap" binding="s0:PackageDataSoap">
<soap:address location="http://eaidapp1:7001/ProductCatalogWS/PackageData.jws"/>
</port>
<port name="PackageDataHttpGet" binding="s0:PackageDataHttpGet">
<http:address location="http://eaidapp1:7001/ProductCatalogWS/PackageData.jws"/>
</port>
<port name="PackageDataHttpPost" binding="s0:PackageDataHttpPost">
<http:address location="http://eaidapp1:7001/ProductCatalogWS/PackageData.jws"/>
</port>
</service>
</definitions>