A.3 Rules for NRM extensions

32.7363GPPIP Multimedia Subsystem (IMS) Network Resource Model (NRM) Integration Reference Point (IRP)Release 11Solution Set (SS) definitionsTelecommunication managementTS

This clause discusses how the models and IDL definitions provided in the present document can be extended for a particular implementation and still remain compliant with 3GPP SA5’s specifications.

A.3.1 Allowed extensions

Vendor-specific MOCs may be supported. The vendor-specific MOCs may support new types of attributes. The 3GPP SA5-specified notifications may be issued referring to the vendor-specific MOCs and vendor-specific attributes. New MOCs shall be distinguishable from 3GPP SA5 MOCs by name. 3GPP SA5-specified and vendor-specific attributes may be used in vendor-specific MOCs. Vendor-specific attribute names shall be distinguishable from existing attribute names.

NRM MOCs may be subclassed. Subclassed MOCs shall maintain the specified behaviour of the 3GPP SA5’s superior classes. They may add vendor-specific behaviour with vendor-specific attributes. When subclassing, naming attributes cannot be changed. The subclassed MOC shall support all attributes of its superior class. Vendor-specific attributes cannot be added to 3GPP SA5 NRM MOCs without subclassing.

When subclassing, the 3GPP SA5-specified containment rules and their specified cardinality shall still be followed. As an example, ManagementNode (or its subclasses) shall be contained under SubNetwork (or its subclasses).

Managed Object Instances may be instantiated as CORBA objects. This requires that the MOCs be represented in IDL. 3GPP SA5’s NRM MOCs are not currently specified in IDL, but may be specified in IDL for instantiation or subclassing purposes. However, management information models should not require that IRPManagers access the instantiated managed objects other than through supported methods in the present document.

Extension rules related to notifications (Notification categories, Event Types, Extended Event Types etc.) are for further study.

A.3.2 Extensions not allowed

The IDL specifications in the present document cannot be edited or altered. Any additional IDL specifications shall be specified in separate IDL files.

IDL interfaces (note: not MOCs) specified in the present document may not be subclassed or extended. New interfaces may be defined with vendor-specific methods.

A.4 Solution Set definitions

A.4.1 IDL definition structure

Clause A.4.2 defines the MO classes for the IMS NRM IRP.

A.4.2 IDL specification “IMSNRMDefs.idl”

// File: IMSNRMDefs.idl

#ifndef _IMSNRMDEFS_IDL_

#define _IMSNRMDEFS_IDL_

#include "GenericNetworkResourcesNRMDefs.idl"

#pragma prefix "3gppsa5.org"

/**

* This module defines constants for each MO class name and

* the attribute names for each defined MO class.

*/

module IMSNRMDefs

{

/**

* Definitions for MO class ASFunction

*/

interface ASFunction : GenericNetworkResourcesNRMDefs::ManagedFunction

{

const string CLASS = "ASFunction";

// Attribute Names

//

const string asFunctionId = "asFunctionId";

const string linkList = "linkList";

};

/**

* Definitions for MO class SIPASFunction

*/

interface SIPASFunction : ASFunction

{

const string CLASS = "SIPASFunction";

// All Attributes inherited from ASFunction

};

/**

* Definitions for MO class OSASCSASFunction

*/

interface OSASCSASFunction : ASFunction

{

const string CLASS = "OSASCSASFunction";

// All Attributes inherited from ASFunction

};

/**

* Definitions for MO class CAMELIMSSFASFunction

*/

interface CAMELIMSSFASFunction : ASFunction

{

const string CLASS = "CAMELIMSSFASFunction";

// All Attributes inherited from ASFunction

};

/**

* Definitions for MO class BGCFFunction

*/

interface BGCFFunction : GenericNetworkResourcesNRMDefs::ManagedFunction

{

const string CLASS = "BGCFFunction";

// Attribute Names

//

const string bgcfFunctionId = "bgcfFunctionId";

const string linkList = "linkList";

};

/**

* Definitions for MO class CSCFFunction

*/

interface CSCFFunction : GenericNetworkResourcesNRMDefs::ManagedFunction

{

const string CLASS = "CSCFFunction";

// Attribute Names

//

const string cscfFunctionId = "cscfFunctionId";

const string linkList = "linkList";

};

/**

* Definitions for MO class ICSCFFunction

*/

interface ICSCFFunction : CSCFFunction

{

const string CLASS = "ICSCFFunction";

// All Attributes inherited from CSCFFunction

//

};

* Definitions for MO class IMSMGWFunction

*/

interface IMSMGWFunction : GenericNetworkResourcesNRMDefs::ManagedFunction

{

const string CLASS = "IMSMGWFunction";

// Attribute Names

//

const string imsMgwFunctionId = "imsMgwFunctionId";

const string linkList = "linkList";

};

/**

* Definitions for MO class MGCFFunction

*/

interface MGCFFunction : GenericNetworkResourcesNRMDefs::ManagedFunction

{

const string CLASS = "MGCFFunction";

// Attribute Names

//

const string mgcfFunctionId = "mgcfFunctionId";

const string linkList = "linkList";

};

/**

* Definitions for MO class MRFCFunction

*/

interface MRFCFunction : GenericNetworkResourcesNRMDefs::ManagedFunction

{

const string CLASS = "MRFCFunction";

// Attribute Names

//

const string mrfcFunctionId = "mrfcFunctionId";

const string linkList = "linkList";

};

/**

* Definitions for MO class MRFPFunction

*/

interface MRFPFunction : GenericNetworkResourcesNRMDefs::ManagedFunction

{

const string CLASS = "MRFPFunction";

// Attribute Names

//

const string mrfpFunctionId = "mrfpFunctionId";

const string linkList = "linkList";

};

/**

* Definitions for MO class PCSCFFunction

*/

interface PCSCFFunction : CSCFFunction

{

const string CLASS = "PCSCFFunction";

// All Attributes inherited from CSCFFunction

//

};

/**

* Definitions for MO class SCSCFFunction

*/

interface SCSCFFunction : CSCFFunction

{

const string CLASS = "SCSCFFunction";

// All Attributes inherited from CSCFFunction

//

};

/**

* Definitions for MO class SLFFunction

*/

interface SLFFunction : GenericNetworkResourcesNRMDefs::ManagedFunction

{

const string CLASS = "SLFFunction";

// Attribute Names

//

const string slfFunctionId = "slfFunctionId";

const string linkList = "linkList";

};

/**

* Definitions for MO class ECSCFFunction

*/

interface ECSCFFunction : CSCFFunction

{

const string CLASS = "ECSCFFunction";

// All Attributes inherited from CSCFFunction

//

};

/**

* Definitions for MO class Link_AS_SCSCF

*/

interface Link_AS_SCSCF : GenericNetworkResourcesNRMDefs::Link

{

const string CLASS = "Link_AS_SCSCF";

// All Attributes inherited from Link

};

/**

* Definitions for MO class Link_AS_SLF

*/

interface Link_AS_SLF : GenericNetworkResourcesNRMDefs::Link

{

const string CLASS = "Link_AS_SLF";

// All Attributes inherited from Link

};

/**

* Definitions for MO class Link_BGCF_BGCF

*/

interface Link_BGCF_BGCF : GenericNetworkResourcesNRMDefs::Link

{

const string CLASS = "Link_BGCF_BGCF";

// All Attributes inherited from Link

};

/**

* Definitions for MO class Link_BGCF_MGCF

*/

interface Link_BGCF_MGCF : GenericNetworkResourcesNRMDefs::Link

{

const string CLASS = "Link_BGCF_MGCF";

// All Attributes inherited from Link

};

/**

* Definitions for MO class Link_BGCF_SCSCF

*/

interface Link_BGCF_SCSCF : GenericNetworkResourcesNRMDefs::Link

{

const string CLASS = "Link_BGCF_SCSCF";

// All Attributes inherited from Link

};

/**

* Definitions for MO class Link_SCSCF_ICSCF

*/

interface Link_SCSCF_ICSCF: GenericNetworkResourcesNRMDefs::Link

{

const string CLASS = "Link_SCSCF_ICSCF";

// All Attributes inherited from Link

};

/**

* Definitions for MO class Link_ICSCF_Mgcf

*/

interface Link_ICSCF_Mgcf: GenericNetworkResourcesNRMDefs::Link

{

const string CLASS = "Link_ICSCF_Mgcf";

// All Attributes inherited from Link

};

/**

* Definitions for MO class Link_ICSCF_PCSCF

*/

interface Link_ICSCF_PCSCF: GenericNetworkResourcesNRMDefs::Link

{

const string CLASS = "Link_ICSCF_PCSCF";

// All Attributes inherited from Link

};

/**

* Definitions for MO class Link_PCSCF_SCSCF

*/

interface Link_PCSCF_SCSCF: GenericNetworkResourcesNRMDefs::Link

{

const string CLASS = "Link_PCSCF_SCSCF";

// All Attributes inherited from Link

};

/**

* Definitions for MO class Link_ICSCF_SLF

*/

interface Link_ICSCF_SLF : GenericNetworkResourcesNRMDefs::Link

{

const string CLASS = "Link_ICSCF_SLF";

// All Attributes inherited from Link

};

/**

* Definitions for MO class Link_IMSMGW_MGCF

*/

interface Link_IMSMGW_MGCF : GenericNetworkResourcesNRMDefs::Link

{

const string CLASS = "Link_IMSMGW_MGCF";

// All Attributes inherited from Link

};

/**

* Definitions for MO class Link_MGCF_SCSCF

*/

interface Link_MGCF_SCSCF : GenericNetworkResourcesNRMDefs::Link

{

const string CLASS = "Link_MGCF_SCSCF";

// All Attributes inherited from Link

};

/**

* Definitions for MO class Link_MRFC_MRFP

*/

interface Link_MRFC_MRFP : GenericNetworkResourcesNRMDefs::Link

{

const string CLASS = "Link_MRFC_MRFP";

// All Attributes inherited from Link

};

/**

* Definitions for MO class Link_MRFC_SCSCF

*/

interface Link_MRFC_SCSCF : GenericNetworkResourcesNRMDefs::Link

{

const string CLASS = "Link_MRFC_SCSCF";

// All Attributes inherited from Link

};

/**

* Definitions for MO class Link_SCSCF_SCSCF

*/

interface Link_SCSCF_SCSCF : GenericNetworkResourcesNRMDefs::Link

{

const string CLASS = "Link_SCSCF_SCSCF";

// All Attributes inherited from Link

};

/**

* Definitions for MO class Link_SCSCF_SLF

*/

interface Link_SCSCF_SLF : GenericNetworkResourcesNRMDefs::Link

{

const string CLASS = "Link_SCSCF_SLF";

// All Attributes inherited from Link

};

/**

* Definitions for MO class HSSFunction

*/

interface HSSFunction : GenericNetworkResourcesNRMDefs::ManagedFunction

{

const string CLASS = "HSSFunction";

// Attribute Names

//

const string hssFunctionId = "hssFunctionId";

const string linkList = "linkList";

};

/**

* Definitions for MO class Link_HSS_SCSCF

*/

interface Link_HSS_SCSCF : GenericNetworkResourcesNRMDefs::Link

{

const string CLASS = "Link_HSS_SCSCF";

// All Attributes inherited from Link

};

/**

* Definitions for MO class Link_HSS_ICSCF

*/

interface Link_HSS_ICSCF : GenericNetworkResourcesNRMDefs::Link

{

const string CLASS = "Link_HSS_ICSCF";

// All Attributes inherited from Link

};

/**

* Definitions for MO class Link_HSS_SIPAS

*/

interface Link_HSS_SIPAS : GenericNetworkResourcesNRMDefs::Link

{

const string CLASS = "Link_HSS_SIPAS";

// All Attributes inherited from Link

};

/**

* Definitions for MO class Link_HSS_OSASCSAS

*/

interface Link_HSS_OSASCSAS : GenericNetworkResourcesNRMDefs::Link

{

const string CLASS = "Link_HSS_OSASCSAS";

// All Attributes inherited from Link

};

/**

* Definitions for MO class Link_CAMELIMSSFAS_HSS

*/

interface Link_CAMELIMSSFAS_HSS : GenericNetworkResourcesNRMDefs::Link

{

const string CLASS = "Link_CAMELIMSSFAS_HSS";

// All Attributes inherited from Link

};

/**

* Definitions for MO class Link_AS_ICSCF

*/

interface Link_AS_ICSCF : GenericNetworkResourcesNRMDefs::Link

{

const string CLASS = "Link_AS_ICSCF";

// All Attributes inherited from Link

};

/**

* Definitions for MO class Link_PCSCF_ECSCF

*/

interface Link_PCSCF_ECSCF : GenericNetworkResourcesNRMDefs::Link

{

const string CLASS = "Link_PCSCF_ECSCF";

// All Attributes inherited from Link

};

/**

* Definitions for MO class Link_BGCF_ECSCF

*/

interface Link_BGCF_ECSCF : GenericNetworkResourcesNRMDefs::Link

{

const string CLASS = "Link_BGCF_ECSCF";

// All Attributes inherited from Link

};

/**

* Definitions for MO class Link_MGCF_ECSCF

*/

interface Link_MGCF_ECSCF : GenericNetworkResourcesNRMDefs::Link

{

const string CLASS = "Link_MGCF_ECSCF";

// All Attributes inherited from Link

};

};

#endif // _IMSNRMDEFS_IDL_

Annex B (normative):
XML definitions

This annex provides the NRM-specific part related to the IMS NRM IRP [3] of the XML file format definition for the Bulk Configuration Management IRP IS [8].

The main part of this XML file format definition is provided by 3GPP TS 32.616 [9].

Bulk CM XML file formats are based on XML [10], XML Schema [11] [12] [13] and XML Namespace [7] standards.