B.4 Solution Set definitions

28.3113GPPPolicy management for Network Function Virtualization (NFV) based mobile networksRelease 16TS

B.4.1 WSDL definition structure

The present document defines the main part of what are supported by the policy management IRP agent.

B.4.2 Graphical Representation

The graphical representation is not present in the current version of the present document.

B.4.3 WSDL specification “PolicyManagementIRPSystem.wsdl”

<?xml version="1.0" encoding="UTF-8"?>

<definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:PolicyManagement IRPSystem=http://www.3gpp.org/ftp/Specs/archive/28_series/28.311/schema/28311/PolicyManagementIRPSystem

xmlns:xs="http://www.w3.org/2001/XMLSchema"

targetNamespace="http://www.3gpp.org/ftp/Specs/archive/28_series/28.311/schema/28311/GenericIRPSystem">

<types>

<!—createPolicy Request –>

<element name="createPolicy">

<complexType>

<sequence>

<element name="designer" type="string"/>

<element name="name" type="string"/>

<element name="policyPriority" type="string"/>

<element name="policyStatus" type="string"/>

<element name="policyType" type="string"/>

<element name="policyContent" type="string"/>

</sequence>

</complexType>

</element>

<!– createPolicy Response –>

<element name=" createPolicyResponse">

<complexType>

<sequence>

<element name="designer" type="string"/>

<element name="name" type="string"/>

<element name="policyId " type="Identifier"/>

<element name="policyPriority" type="string"/>

<element name="policyStatus" type="string"/>

<element name="policyType" type="string"/>

<element name="policyContent" type="string"/>

</sequence>

</complexType>

</element>

<!– deletePolicy Request –>

<element name="deletePolicy">

<complexType>

<sequence>

<element name="policyId" type="string"/>

</sequence>

</complexType>

</element>

<!– deletePolicy Response –>

<element name="deletePolicyResponse">

<complexType>

<sequence>

<element name="designer" type="string"/>

<element name="name" type="string"/>

<element name="policyId " type="Identifier"/>

<element name="policyPriority" type="string"/>

<element name="policyStatus" type="string"/>

<element name="policyType" type="string"/>

<element name="policyContent" type="string"/>

</sequence>

</complexType>

</element>

<!– updatePolicy Request –>

<element name="updatePolicy">

<complexType>

<sequence>

<element name="designer" type="string"/>

<element name="name" type="string"/>

<element name="policyId " type="Identifier"/>

<element name="policyPriority" type="string"/>

<element name="policyStatus" type="string"/>

<element name="policyType" type="string"/>

<element name="policyContent" type="string"/>

</sequence>

</complexType>

</element>

<!– updatePolicy Response –>

<element name="updatePolicy">

<complexType>

<sequence>

<element name="designer" type="string"/>

<element name="name" type="string"/>

<element name="policyId " type="Identifier"/>

<element name="policyPriority" type="string"/>

<element name="policyStatus" type="string"/>

<element name="policyType" type="string"/>

<element name="policyContent" type="string"/>

</sequence>

</complexType>

</element>

<!– queryPolicy Request –>

<element name="queryPolicy">

<complexType>

<sequence>

<element name="policyId " type="Identifier"/>

</sequence>

</complexType>

</element>

<!– queryPolicy Response –>

<element name="queryPolicyResponse">

<complexType>

<sequence>

<element name="designer" type="string"/>

<element name="name" type="string"/>

<element name="policyId " type="Identifier"/>

<element name="policyPriority" type="string"/>

<element name="policyStatus" type="string"/>

<element name="policyType" type="string"/>

<element name="policyContent" type="string"/>

</sequence>

</complexType>

</element>

<!– activatePolicy Request –>

<element name="activatePolicy">

<complexType>

<sequence>

<element name="policyId " type="Identifier"/>

</sequence>

</complexType>

</element>

<!– activatePolicy Response –>

<element name=" activatePolicyResponse">

<complexType>

<sequence>

<element name="designer" type="string"/>

<element name="name" type="string"/>

<element name="policyId " type="Identifier"/>

<element name="policyPriority" type="string"/>

<element name="policyStatus" type="string"/>

<element name="policyType" type="string"/>

<element name="policyContent" type="string"/>

</sequence>

</complexType>

</element>

<!– deactivatePolicy Request –>

<element name="deactivatePolicy">

<complexType>

<sequence>

<element name="policyId " type="Identifier"/>

</sequence>

</complexType>

</element>

<!– deactivatePolicy Response –>

<element name=" deactivatePolicyResponse">

<complexType>

<sequence>

<element name="designer" type="string"/>

<element name="name" type="string"/>

<element name="policyId " type="Identifier"/>

<element name="policyPriority" type="string"/>

<element name="policyStatus" type="string"/>

<element name="policyType" type="string"/>

<element name="policyContent" type="string"/>

</sequence>

</complexType>

</element>

<!– queryPolicyList Request –>

<element name="queryPolicyList">

<complexType>

<sequence>

<element name="policyListId" type="Identifier"/>

</sequence>

</complexType>

</element>

<!– queryPolicyList Response –>

<element name="queryPolicyList">

<complexType>

<sequence>

<element name="policyListId" type="Identifier"/>

<element name="policyIdList" type="array"/>

</sequence>

</complexType>

</element>

<!– policyConflictNotification Request –>

<element name="policyConflictNotification">

<complexType>

<sequence>

<element name="activatedPolicyList" type="Identifier"/>

</sequence>

</complexType>

</element>

</types>

<message name="createPolicy Request">

<part name="parameter" element="createPolicy"/>

</message>

<message name="createPolicy Response">

<part name="parameter" element="createPolicyResponse"/>

</message>

<message name="deletePolicy Request ">

<part name="parameter" element="deletePolicy"/>

</message>

<message name="deletePolicy Response">

<part name="parameter" element="deletePolicyResponse"/>

</message>

<message name="updatePolicy Request ">

<part name="parameter" element="PolicyUpdate"/>

</message>

<message name="updatePolicy Response">

<part name="parameter" element="updatePolicyResponse"/>

</message>

<message name="queryPolicyRequest ">

<part name="parameter" element="queryPolicy"/>

</message>

<message name="queryPolicyResponse">

<part name="parameter" element="queryPolicyResponse"/>

</message>

<message name="activePolicyRequest ">

<part name="parameter" element="ActivePolicy"/>

</message>

<message name="activePolicyResponse">

<part name="parameter" element="ActivePolicyResponse"/>

</message>

<message name="deactivePolicyRequest ">

<part name="parameter" element="deactivePolicy"/>

</message>

<message name="deactivePolicyResponse">

<part name="parameter" element="deactivePolicyResponse"/>

</message>

<message name="queryPolicyListRequest">

<part name="parameter" element="queryPolicyList"/>

</message>

<message name="queryPolicyListResponse">

<part name="parameter" element="queryPolicyListResponse"/>

</message>

<message name="policyConflictNotificaitonRequest">

<part name="parameter" element="policyConflictsNotificaiton"/>

</message>

<portType name="PolicyMangementIRPPortType">

<operation name="createPolicy">

<input message="PolicyMangementIRPSystem:createPolicyRequest"/>

<output message="PolicyMangementIRPSystem:createPolicyResponse"/>

</operation>

<operation name="deletePolicy">

<input message="PolicyMangementIRPSystem:deletePolicyRequest"/>

<output message="PolicyMangementIRPSystem:deletePolicyResponse"/>

</operation>

<operation name="updatePolicy">

<input message="PolicyMangementIRPSystem:updatePolicyRequest"/>

<output message="PolicyMangementIRPSystem:updatePolicyResponse"/>

</operation>

<operation name="queryPolicy">

<input message="PolicyQueryIRPSystem:queryPolicyRequest"/>

<output message="PolicyQueryIRPSystem:queryPolicyResponse"/>

</operation>

<operation name="activePolicy">

<input message="PolicyMangementIRPSystem:activePolicyRequest"/>

<output message="PolicyMangementIRPSystem:activePolicyResponse"/>

</operation>

<operation name="deactivePolicy">

<input message="PolicyMangementIRPSystem:deactivePolicyRequest"/>

<output message="PolicyMangementIRPSystem:deactivePolicyResponse"/>

</operation>

<operation name="queryPolicyList">

<input message="PolicyMangementIRPSystem:queryPolicyListRequest"/>

<output message="PolicyMangementIRPSystem:queryPolicyListResponse"/>

</operation>

<operation name="PolicyConflictNotification">

<input message="PolicyMangementIRPSystem:policyConflictNotificationRequest"/>

</operation>

</portType>

<binding name="PolicyManagementIRPBinding" type="PolicyManagementIRPSystem: PolicyManagementIRPPortType">

<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>

<operation name="createPolicy">

<soap:operation soapAction="http://www.3gpp.org/ftp/specs/archive/28_series/28.311# createPolicy" style="document"/>

<input>

<soap:body use="literal"/>

</input>

<output>

<soap:body use="literal"/>

</output>

</operation>

<operation name="deletePolicy">

<soap:operation soapAction="http://www.3gpp.org/ftp/specs/archive/28_series/28.311# deletePolicy" style="document"/>

<input>

<soap:body use="literal"/>

</input>

<output>

<soap:body use="literal"/>

</output>

</operation>

<operation name="updatePolicy">

<soap:operation soapAction="http://www.3gpp.org/ftp/specs/archive/28_series/28.311# updatePolicy" style="document"/>

<input>

<soap:body use="literal"/>

</input>

<output>

<soap:body use="literal"/>

</output>

</operation>

<operation name="queryPolicy">

<soap:operation soapAction="http://www.3gpp.org/ftp/specs/archive/28_series/28.311# queryPolicy" style="document"/>

<input>

<soap:body use="literal"/>

</input>

<output>

<soap:body use="literal"/>

</output>

</operation>

<operation name="activePolicy">

<soap:operation soapAction="http://www.3gpp.org/ftp/specs/archive/28_series/28.311# activePolicy" style="document"/>

<input>

<soap:body use="literal"/>

</input>

<output>

<soap:body use="literal"/>

</output>

</operation>

<operation name="deactivePolicy">

<soap:operation soapAction="http://www.3gpp.org/ftp/specs/archive/28_series/28.311# deactivePolicy" style="document"/>

<input>

<soap:body use="literal"/>

</input>

<output>

<soap:body use="literal"/>

</output>

</operation>

<operation name="queryPolicyList">

<soap:operation soapAction="http://www.3gpp.org/ftp/specs/archive/28_series/28.311# queryPolicyList" style="document"/>

<input>

<soap:body use="literal"/>

</input>

<output>

<soap:body use="literal"/>

</output>

</operation>

<operation name="policyConflictNofitication">

<soap:operation soapAction="http://www.3gpp.org/ftp/specs/archive/28_series/28.311#PolicyConflictNofitication" style="document"/>

<input>

<soap:body use="literal"/>

</input>

<output>

<soap:body use="literal"/>

</output>

</operation>

</binding>

<service name="PolicyMangementIRPService">

<port name="PolicyMangementIRPPort" binding="PolicyMangementIRPSystem: PolicyMangementIRPBinding">

<soap:address location="http://www.3gpp.org/ftp/specs/archive/28_series/28.311#BulkCMIRP"/>

</port>

<port name="GenericIRPPort" binding="genericIRPSystem:GenericIRPBinding">

<soap:address location="http://www.3gpp.org/ftp/specs/archive/28_series/28.311#GenericIRP"/>

</port>

</service>

</definitions>

Annex C (informative):
Change history

Change history

Date

Meeting

TDoc

CR

Rev

Cat

Subject/Comment

New version

2018-09

Skeleton

0.0.0

2018-10

SA5#121

S5-186398

S5-186468

Update to implement the agreed pCRs in SA5#121:

S5-186398  pCR 28.311 Add Scope

S5-186468 Rel-16 draft TS Skeleton 28.311

0.1.0

2018-11

SA5#122

S5-187385

S5-187386

Update to implement the agreed pCRs in SA5#122:

S5-187385  Add Policy management architecture

S5-187386 Add Business level requirements

0.2.0

2019-06

SA5#125Adhoc

S5-194428

S5-194429

S5-194430

S5-194431

S5-194432

S5-194433

S5-194434

S5-194435

Update to implement the agreed pCRs in SA5#125Adhoc:

S5-194428 Policy Management Procedures

S5-194429 Policy Creation

S5-194430 Policy Deletion

S5-194431 Policy Update

S5-194432 Policy Query

S5-194433 Policy Activation

S5-194434 Policy Deactivation

S5-194435 Policy Conflicts Notification

0.3.0

2019-08

SA5#126

S5-195179

S5-195843

S5-195845

S5-195846

S5-195847

Update to implement the agreed pCRs in SA5#126:

S5-195179 Add abbreviations

S5-195843 Add references

S5-195845 Add overview

S5-195846 Rewrite business level requirements

S5-195847 Add specification level requirements

0.4.0

2019-10

SA5#127

S5-196658

Update to implement the agreed pCRs in SA5#127:

S5-196658 Add Solution Set(SS) definitions

0.5.0

2019-11

SA5#128

S5-197763 S5-197764 S5-197765

S5-197766

Update to implement the agreed pCRs in SA5#128:

S5-197763 pCR 28.311 Add Information Object Classes

S5-197764 pCR 28.311 Add XML definition

S5-197765 pCR 28.311 Add SOAP Solution Set

S5-197766 pCR 28.311 Rewrite interface

0.6.0

2019-12

SA#86

SP-191185

Presented for information and approval

1.0.0

2019-12

SA#86

Change control version

16.0.0